Finding EJB JNDIs on different WebSphere servers

I have two separate WebSphere installations. (This is actually WebSphere Application Server V6.1 with EJB 3.0 and web service packages, and the other server is WebSphere ESB Server V6.2). However, I know that the ESB is really built on top of WAS, so it has all the configuration settings that the regualr WAS server has.

On my ESB server, I am trying to open a service written as EJB 3.0 that will be deployed to a WAS 6.1 server. My question is not how to get EJB 2.1 calls to call in EJB 3.0. We have already done this. My question is how to invoke physical virtual machines. The WebSphere application server runs in its own cell / node / server from the ESB server. From what I read in the IBM documentation, you can configure namespace binding on WAS to point to remote EJB on another instance of WAS. That way, you can use JNDI to find the bean in one WAS instance, which really resides in another WAS instance. The beauty of this method is that the EJB location you want is abstracted to the container level, and you don’t need to drag and drop IP address and port property files,which you need to access the bean if it changes servers, etc. You just do a standard JNDI lookup on the remote EJB and you get it.

It seems like you can do it. (See the following links: http://publib.boulder.ibm.com/infocenter/wasinfo/v6r1/index.jsp?topic=/com.ibm.websphere.express.doc/info/exp/ae/tnam_view_bindings.html ) The links to the EJB bindings and the indirect namespace should especially follow.

But for a while I hit my head about it. It makes sense. It seems like you can do it. And binding an indirect namespace looks the most promising. But I can not get it to work correctly. My ESB server continues to complain that it did not find comp / env / ejb in the context in which I request it. Very puzzled by this.

Just wondering if anyone had done this before. Can you give me a concrete example of how you set it up in WAS to do this? Any help is appreciated

+3
3

, IBM , , . , EJB EJB , EJB RMI IIOP. JNDI , bean ( ).

( ) ( ) , , IBM -. , , "" . , EJB RMI CORBA, , . , , IP CORBA ( , ).

, , . , , WebSphere.

+4

tomcat

  • IBM JDK runtime tomcat
  • bootstab, iiop PROVIDER_URL
0

I had the same problem. Having tried to enable all websphere and ibm orb jars, I found this article in ibm How to search for EJB and other resources in WebSphere Application Server using the Oracle JDK client - http://www-01.ibm.com/support/docview.wss?uid= swg21382740

mainly used by CNCtxFactory instead of WsnInitialContextFactory

//props.put(Context.INITIAL_CONTEXT_FACTORY,"com.ibm.websphere.naming.WsnInitialContextFactory");
Hashtable env = new Hashtable();
            env.put("java.naming.factory.initial", "com.sun.jndi.cosnaming.CNCtxFactory");
            env.put("java.naming.provider.url", iioppath);
0
source

Source: https://habr.com/ru/post/1714915/


All Articles