incubator-yoko-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Mosur Ravi, Balaji" <br...@iona.com>
Subject RE: BindException from PortableRemoteObject.narrow
Date Wed, 08 Nov 2006 15:00:12 GMT
Hi rick,

Agreed... Also, seen this in type of usage in the binding module also...


Actually, we need to get the ORB specific system properties & add those
to the property bundle.

- Balaji

-----Original Message-----
From: Rick McGuire [mailto:rickmcg@gmail.com] 
Sent: Tuesday, November 07, 2006 8:11 AM
To: yoko-dev@incubator.apache.org
Subject: Re: BindException from PortableRemoteObject.narrow

Dain Sundstrom wrote:
> Any idea what is causing this?  BTW the error message is quite useless

> as it doesn't even tell you the port and interface that it was 
> attempting to bind to.
>
> org.omg.CORBA.COMM_FAILURE: bind() failed: java.net.BindException: 
> Address already in use  minor code: 0x4f4f0008  completed: No
>         at 
>
org.apache.yoko.orb.OCI.IIOP.Acceptor_impl.<init>(Acceptor_impl.java:434
)
>         at 
>
org.apache.yoko.orb.OCI.IIOP.AccFactory_impl.create_acceptor(AccFactory_
impl.java:148) 
>
>         at 
>
org.apache.yoko.orb.OBPortableServer.POAManagerFactory_impl.create_POAMa
nager(POAManagerFactory_impl.java:250) 
>
>         at 
>
org.apache.yoko.orb.OB.ORBControl.initializeRootPOA(ORBControl.java:515)
>         at 
>
org.apache.yoko.orb.OBCORBA.ORB_impl.resolve_initial_references(ORB_impl
.java:1073) 
>
>         at org.apache.yoko.rmi.impl.RMIState.<init>(RMIState.java:73)
>         at 
>
org.apache.yoko.rmi.impl.PortableRemoteObjectExtImpl.getCurrentState(Por
tableRemoteObjectExtImpl.java:45) 
>
>         at 
>
org.apache.yoko.rmi.api.PortableRemoteObjectExt.getState(PortableRemoteO
bjectExt.java:65) 
>
>         at
org.apache.yoko.rmi.impl.RMIState.current(RMIState.java:152)
>         at 
>
org.apache.yoko.rmi.impl.PortableRemoteObjectImpl.getTypeRepository(Port
ableRemoteObjectImpl.java:42) 
>
>         at 
>
org.apache.yoko.rmi.impl.PortableRemoteObjectImpl.narrow(PortableRemoteO
bjectImpl.java:103) 
>
>         at 
> javax.rmi.PortableRemoteObject.narrow(PortableRemoteObject.java:56)
>
> The code is just doing this:
>
>     String ior = getIor();
>     ORB orb = (ORB) ORB.init(new String[0], null);
>     org.omg.CORBA.Object object = orb.string_to_object(ior);
>     MyObject myObj = (MyObject) PortableRemoteObject.narrow(object, 
> MyObject.class);
I think I figured out what's going on here.  A lot of code within Yoko 
is doing the following to instantiate an ORB instance:

Properties props = System.getProperties();
props.put(...);

ORB orb = ORB.init(args, props);

By setting the properties directly into the property bundle returned by 
System.getProperties(), this code is inadvertently setting the system 
property, leaving junk that can be picked up later.  In this case, it 
was the NamingService code that was leaving an endpoint property set 
that was causing the duplicate. 


>
> Thanks
>
> -dain
>


Mime
View raw message