[ 
http://issues.apache.org/jira/browse/GERONIMO-1145?page=comments#action_12357104
 ] 

David Jencks commented on GERONIMO-1145:
----------------------------------------

The calls in question are made during the process of serializing a handle or 
home handle by the ejb whose handle is being serialized, so in-vm access is 
certainly possible.  Access to another ejb via an ejb-ref which includes a 
css-bean reference providing the information needed to construct the 
connection.  We still have a problem if there are 3 ejbs A, B, and C and B 
sends a handle for A to  C: C has no infomation about the CSS settings it 
should use to contact A.  However, this needs an entire CSS configuration, not 
just knowledge of which orb to use.

> Too many ORBs (or possibly not enough)
> --------------------------------------
>
>          Key: GERONIMO-1145
>          URL: http://issues.apache.org/jira/browse/GERONIMO-1145
>      Project: Geronimo
>         Type: Bug
>   Components: OpenEJB
>     Versions: 1.0-M5
>  Environment: All
>     Reporter: Rick McGuire

>
> This is sort of complicated problem to describe, but there is a problem with 
> the wrong ORB getting used with remote references passed in with a request.  
> In the current architecture, when a CORBA bean is started, it calls 
> Util.setORB() to register itself as the server ORB.  Util.setORB() ignores 
> all registration calls after the first. so the first CORBABean started in the 
> server will determine the ORB instance returned by all 
> context.lookup("java:comp/ORB") calls in the server.  This value is set in 
> StandardServant using:
>         // create ReadOnlyContext
>         Map componentContext = new HashMap(2);
>         componentContext.put("ORB", Util.getORB());
>         componentContext.put("HandleDelegate", new CORBAHandleDelegate());
>         try {
>             enc = new SimpleReadOnlyContext(componentContext);
>         } catch (NamingException e) {
>             throw new RuntimeException(e);
>         }
> which uses the ORB object returned from Util.getORB().  This ORB value is 
> used for a lot during request processing, particularly when accessing 
> information from remote references passed to this EBJ.  If there are multiple 
> CORBA beans configured for the server, this can create connection problems 
> when the beans are configured with different TSSConfigs.  In the case we ran 
> into, an ORB instance configured for non-secure transports was trying to 
> (correctly) use an SSL connection to perform an operation.  The connection 
> failed in this case because the ORB did not have the correct transport-level 
> security configuration needed to make the connection. 
> The appropriate solution would be for the StandardServant to set up the 
> comp/ORB value to be the ORB associated with the owning POA instance (created 
> in the TSSBean). 

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira

Reply via email to