Hi, i have a problem with JNDI Remote Binding in my client application with the 
new JBossAS4.0.4-EJB3.
The deploy-jar structrue here:

  | infonds2server.ear:
  |     |----META-INF
  |             |----application.xml
  |             |----jboss-app.xml
  |     |----business.jar
  |     |----entities.jar
  |             |----META-INF
  |                     |----persistence.xml
  | 
application.xml:

  | <?xml version="1.0" encoding="UTF-8"?>
  | <application xmlns="http://java.sun.com/xml/ns/j2ee"; version="1.4"
  |     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; 
  |     xsi:schemaLocation="http://java.sun.com /xml/ns/j2ee 
http://java.sun.com/xml/ns/j2ee/application_1_4.xsd";>
  |     <display-name>infonds2</display-name>
  |     <description>Cleversoft Infonds2</description>
  | 
  |     <module>
  |       <ejb>beans.jar</ejb>
  |     </module>
  | 
  |     <module>
  |       <ejb>sessions.jar</ejb>
  |     </module>
  | 
  | </application>
  | 
jboss-app.xml:

  | <!DOCTYPE jboss-app
  |           PUBLIC "-//JBoss//DTD J2EE Application 1.4//EN"
  |           "http://www.jboss.org/j2ee/dtd/jboss-app_4_0.dtd";>
  | <jboss-app>
  |   <loader-repository>
  |     infonds2:app=ejb3
  |   </loader-repository>
  | </jboss-app>
  | 
persistence.xml

  | <entity-manager>
  |   <name>infonds2</name>
  |   <jta-data-source>java:/infonds2</jta-data-source>
  |   <properties>
  |     <property name="hibernate.dialect" 
value="org.hibernate.dialect.MySQLInnoDBDialect"/>
  |     <property name="hibernate.show_sql"
  | value="true"/>                
  |   </properties>
  | </entity-manager>
  | 
the Stateless SessionBean:

  | @Stateless
  | @Local ({IInfondsQuery.class})
  | @LocalBinding (jndiBinding="infonds2/LocalInfondsQuery")
  | @Remote ({IInfondsQuery.class})
  | @RemoteBinding (jndiBinding="infonds2/RemoteInfondsQuery")
  | public class InfondsQueryBean implements IInfondsQuery, Serializable {
  | 
  |     private static final Log log = 
InfondsLogger.newLog(InfondsQueryBean.class);
  | 
  |     @PersistenceContext(unitName = "infonds2")
  |     private EntityManager entityManager;
  | ......
  | ......
  | 
the remote client application:

  |     public IInfondsQuery getInfondsQuery(){
  |             try {
  |                     Properties env = new Properties();
  |                     env.setProperty(Context.PROVIDER_URL,"localhost:1099");
  |                     
env.setProperty(Context.URL_PKG_PREFIXES,"org.jboss.naming:org.jnp.interfaces");
  |                     
env.setProperty(Context.INITIAL_CONTEXT_FACTORY,"org.jnp.interfaces.NamingContextFactory");
  |                     ctx = new InitialContext(env);
  |                     
  |                     return (IInfondsQuery) 
ctx.lookup("infonds2/RemoteInfondsQuery");
  |             } catch (NamingException e) {
  |                     e.printStackTrace();
  |             }
  |             return null;
  |     }
  | 
the ejb3 deployment-info in JBossAS4.0.4:

  | 10:20:40,562 INFO  [EARDeployer] Init J2EE application: 
file:/D:/server/jboss-4.0.4RC1/server/default/deploy/infonds2server.ear
  | 10:20:41,093 INFO  [Ejb3Deployment] EJB3 deployment time took: 281
  | 10:20:41,250 INFO  [Ejb3AnnotationHandler] found EJB3: 
ejbName=InfondsErrorBean, 
class=eu.cleversoft.infonds2.business.InfondsErrorBean, type=STATEFUL
  | 10:20:41,343 INFO  [Ejb3AnnotationHandler] found EJB3: 
ejbName=InfondsLoginBean, 
class=eu.cleversoft.infonds2.business.InfondsLoginBean, type=STATEFUL
  | 10:20:41,359 INFO  [Ejb3AnnotationHandler] found EJB3: 
ejbName=InfondsPersistenceBean, 
class=eu.cleversoft.infonds2.business.InfondsPersistenceBean, type=STATEFUL
  | 10:20:41,390 INFO  [Ejb3AnnotationHandler] found EJB3: 
ejbName=InfondsQueryBean, 
class=eu.cleversoft.infonds2.business.InfondsQueryBean, type=STATELESS
  | 10:20:41,453 INFO  [Ejb3AnnotationHandler] found EJB3: 
ejbName=InfondsSecurityBean, 
class=eu.cleversoft.infonds2.business.InfondsSecurityBean, type=STATEFUL
  | 10:20:41,453 INFO  [Ejb3Deployment] EJB3 deployment time took: 328
  | 10:20:41,468 INFO  [EJB3Deployer] Deployed: 
file:/D:/server/jboss-4.0.4RC1/server/default/tmp/deploy/tmp8434infonds2server.ear-contents/beans.jar
  | 10:20:41,609 INFO  [JmxKernelAbstraction] installing MBean: 
jboss.j2ee:service=EJB3,ear=infonds2server.ear,jar=sessions.jar,name=InfondsErrorBean
 with dependencies:
  | 10:20:41,609 INFO  [JmxKernelAbstraction]   
persistence.units:unitName=infonds2
  | 10:20:41,609 INFO  [JmxKernelAbstraction] installing MBean: 
jboss.j2ee:service=EJB3,ear=infonds2server.ear,jar=sessions.jar,name=InfondsLoginBean
 with dependencies:
  | 10:20:41,609 INFO  [JmxKernelAbstraction]   
persistence.units:unitName=infonds2
  | 10:20:41,625 INFO  [JmxKernelAbstraction] installing MBean: 
jboss.j2ee:service=EJB3,ear=infonds2server.ear,jar=sessions.jar,name=InfondsPersistenceBean
 with dependencies:
  | 10:20:41,625 INFO  [JmxKernelAbstraction]   
persistence.units:unitName=infonds2
  | 10:20:41,625 INFO  [JmxKernelAbstraction] installing MBean: 
jboss.j2ee:service=EJB3,ear=infonds2server.ear,jar=sessions.jar,name=InfondsQueryBean
 with dependencies:
  | 10:20:41,625 INFO  [JmxKernelAbstraction]   
persistence.units:unitName=infonds2
  | 10:20:41,625 INFO  [JmxKernelAbstraction] installing MBean: 
jboss.j2ee:service=EJB3,ear=infonds2server.ear,jar=sessions.jar,name=InfondsSecurityBean
 with dependencies:
  | 10:20:41,625 INFO  [JmxKernelAbstraction]   
persistence.units:unitName=infonds2
  | 10:20:41,640 INFO  [EJB3Deployer] Deployed: 
file:/D:/server/jboss-4.0.4RC1/server/default/tmp/deploy/tmp8434infonds2server.ear-contents/sessions.jar
  | 10:20:41,656 INFO  [EARDeployer] Started J2EE application: 
file:/D:/server/jboss-4.0.4RC1/server/default/deploy/infonds2server.ear
  | 
So if i run this test in the client application, it throws this Exception:

  | javax.naming.NameNotFoundException: infonds2 not bound
  |     at org.jnp.server.NamingServer.getBinding(NamingServer.java:529)
  |     at org.jnp.server.NamingServer.getBinding(NamingServer.java:537)
  |     at org.jnp.server.NamingServer.getObject(NamingServer.java:543)
  |     at org.jnp.server.NamingServer.lookup(NamingServer.java:267)
  |     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  |     at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
  |     at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
  |     at java.lang.reflect.Method.invoke(Unknown Source)
  |     at sun.rmi.server.UnicastServerRef.dispatch(Unknown Source)
  |     at sun.rmi.transport.Transport$1.run(Unknown Source)
  |     at java.security.AccessController.doPrivileged(Native Method)
  |     at sun.rmi.transport.Transport.serviceCall(Unknown Source)
  |     at sun.rmi.transport.tcp.TCPTransport.handleMessages(Unknown Source)
  |     at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(Unknown 
Source)
  |     at java.lang.Thread.run(Unknown Source)
  |     at 
sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(Unknown Source)
  |     at sun.rmi.transport.StreamRemoteCall.executeCall(Unknown Source)
  |     at sun.rmi.server.UnicastRef.invoke(Unknown Source)
  |     at org.jnp.server.NamingServer_Stub.lookup(Unknown Source)
  |     at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:625)
  |     at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:587)
  |     at javax.naming.InitialContext.lookup(Unknown Source)
  |     at 
eu.cleversoft.infonds2.servicelocator.ServiceLocator.getInfondsQuery(ServiceLocator.java:104)
  |     at 
eu.cleversoft.infonds2.ui.tools.databinding.Test.testUpdateInfondsPartner(Test.java:61)
  |     at eu.cleversoft.infonds2.ui.tools.databinding.Test.main(Test.java:26)
  | Exception in thread "main" java.lang.NullPointerException
  |     at 
eu.cleversoft.infonds2.ui.tools.databinding.Test.testUpdateInfondsPartner(Test.java:61)
  |     at eu.cleversoft.infonds2.ui.tools.databinding.Test.main(Test.java:26)
  | 

I have also testet for "return (IInfondsQuery) 
ctx.lookup(IInfondsQuery.class.getName());" and "return (IInfondsQuery) 
ctx.lookup("java:/infonds2/InfondsQueryBean/remote");", but have the same error.

I find in the 
link(http://trailblazer.demo.jboss.com/EJB3Trail/background/deploy/index.html) 
of Trailbrazers & Demo about new jndi config for remote binding in JBossAS4.0.4 
is perhaps not clearly, or perhaps i have a mistake. Thanks for your feedbacks!

View the original post : 
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3922818#3922818

Reply to the post : 
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3922818


-------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems?  Stop!  Download the new AJAX search engine that makes
searching your log files as easy as surfing the  web.  DOWNLOAD SPLUNK!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=103432&bid=230486&dat=121642
_______________________________________________
JBoss-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/jboss-user

Reply via email to