JBoss Community

Re: IIOP Subsystem Issues

created by David Lloyd in JBoss AS7 Development - View the full discussion

Stefan Guilhen wrote:

 

Flavia told me about the asynchronous way but I didn't really find a good way to implement it. The ORB Thread just calls orb.run() and blocks for the lifetime of the ORB - actually not much happens when run() is called, the thread just waits for a shutdown from another to notify it. I didn't see a good way to call context.complete() since the thread just completes after the whole thing has shut down.

It looks like ORB.destroy() might block until the thread is shut down?  If so, you could use another thread - or a thread pool - to shut it down and hit the callback when it completes?

 

 

Stefan Guilhen wrote:

David Lloyd wrote:

First I would verify that the "system" module is not among the list of imports for the jacorb module or any of its transitives; this is the simplest possible explanation for the problem you see.  Using endorsed is definitely not something we want to do.  I'm pretty sure though that the problem you're seeing is due to using the "system" module.  Removing org.omg and its children from javax.api and adding an new org.omg.api module is definitely the right thing to do.

Well, that's a problem. I had to add a dependency to javax.api since JacORB needs the javax.rmi.CORBA.Stub class (and maybe some other classes from the javax.rmi package). It doesn't define it's own version of those classes.

 

OK yeah like Jason said I didn't mean javax.api, which is among the few modules which correctly depends on "system".  I think at the moment it's safe to say that any module in the current upstream tree with a dependency on "system" has it for a good reason (and filters it down as appropriate). The important takeaway is, remove the CORBA stuff from the list of filters in javax.api before introducing your own API.

Reply to this message by going to Community

Start a new discussion in JBoss AS7 Development at Community