Hi,
i'm testing EJB3 on Jboss 4.0.5 with EJB3 profile (RC9) and i encounter this problem
:
i use two invokers to bind my ejb in jboss.xml file - one works with compression and the
other not. (It works fine with native Jboss 4.0.5 and EJB2).
My problem is that only the last invoker is used to bind my EJB. Here is my jboss.xml
configuration file :
| <?xml version="1.0" encoding="ISO-8859-1"?>
| <jboss>
| <enterprise-beans>
| <session>
| <ejb-name>FTimeService</ejb-name>
| <jndi-name>ejb3/FTimeService</jndi-name>
| <configuration-name>
| Standard Stateless SessionBean
| </configuration-name>
| <invoker-bindings>
| <invoker>
| <invoker-proxy-binding-name>
| stateless-rmi-invoker
| </invoker-proxy-binding-name>
| <jndi-name>ejb3_u/FTimeService</jndi-name>
| </invoker>
| <invoker>
| <invoker-proxy-binding-name>
| stateless-compression-invoker
| </invoker-proxy-binding-name>
| <jndi-name>ejb3_c/FTimeService</jndi-name>
| </invoker>
| </invoker-bindings>
| </session>
| </enterprise-beans>
| <invoker-proxy-bindings>
| <invoker-proxy-binding>
| <name>stateless-compression-invoker</name>
| <invoker-mbean>
| fr.sce.jtech:service=invoker,type=jrmp,socketType=CompressionSocketFactory
| </invoker-mbean>
| <proxy-factory>
| org.jboss.proxy.ejb.ProxyFactory
| </proxy-factory>
| <proxy-factory-config>
| <client-interceptors>
| <home>
| <interceptor>
| org.jboss.proxy.ejb.HomeInterceptor
| </interceptor>
| <interceptor>
| org.jboss.proxy.SecurityInterceptor
| </interceptor>
| <interceptor>
| org.jboss.proxy.TransactionInterceptor
| </interceptor>
| <interceptor>
| org.jboss.invocation.InvokerInterceptor
| </interceptor>
| </home>
| <bean>
| <interceptor>
| org.jboss.proxy.ejb.StatelessSessionInterceptor
| </interceptor>
| <interceptor>
| org.jboss.proxy.SecurityInterceptor
| </interceptor>
| <interceptor>
| org.jboss.proxy.TransactionInterceptor
| </interceptor>
| <interceptor>
| org.jboss.invocation.InvokerInterceptor
| </interceptor>
| </bean>
| </client-interceptors>
| </proxy-factory-config>
| </invoker-proxy-binding>
| </invoker-proxy-bindings>
| </jboss>
|
and here'is the JNDI view from Jmx console after deployment :
| +- TopicConnectionFactory (class: org.jboss.naming.LinkRefPair)
| +- jmx (class: org.jnp.interfaces.NamingContext)
| | +- invoker (class: org.jnp.interfaces.NamingContext)
| | | +- RMIAdaptor (proxy: $Proxy45 implements interface
org.jboss.jmx.adaptor.rmi.RMIAdaptor,interface org.jboss.jmx.adaptor.rmi.RMIAdaptorExt)
| | +- rmi (class: org.jnp.interfaces.NamingContext)
| | | +- RMIAdaptor[link -> jmx/invoker/RMIAdaptor] (class:
javax.naming.LinkRef)
| +- HTTPXAConnectionFactory (class: org.jboss.mq.SpyXAConnectionFactory)
| +- ConnectionFactory (class: org.jboss.mq.SpyConnectionFactory)
| +- UserTransactionSessionFactory (proxy: $Proxy12 implements interface
org.jboss.tm.usertx.interfaces.UserTransactionSessionFactory)
| +- HTTPConnectionFactory (class: org.jboss.mq.SpyConnectionFactory)
| +- XAConnectionFactory (class: org.jboss.mq.SpyXAConnectionFactory)
| +- UserTransaction (class: org.jboss.tm.usertx.client.ClientUserTransaction)
| +- UILXAConnectionFactory[link -> XAConnectionFactory] (class:
javax.naming.LinkRef)
| +- UIL2XAConnectionFactory[link -> XAConnectionFactory] (class:
javax.naming.LinkRef)
| +- queue (class: org.jnp.interfaces.NamingContext)
| | +- A (class: org.jboss.mq.SpyQueue)
| | +- testQueue (class: org.jboss.mq.SpyQueue)
| | +- ex (class: org.jboss.mq.SpyQueue)
| | +- DLQ (class: org.jboss.mq.SpyQueue)
| | +- D (class: org.jboss.mq.SpyQueue)
| | +- C (class: org.jboss.mq.SpyQueue)
| | +- B (class: org.jboss.mq.SpyQueue)
| +- topic (class: org.jnp.interfaces.NamingContext)
| | +- testDurableTopic (class: org.jboss.mq.SpyTopic)
| | +- testTopic (class: org.jboss.mq.SpyTopic)
| | +- securedTopic (class: org.jboss.mq.SpyTopic)
| +- console (class: org.jnp.interfaces.NamingContext)
| | +- PluginManager (proxy: $Proxy46 implements interface
org.jboss.console.manager.PluginManagerMBean)
| +- ejb3_c (class: org.jnp.interfaces.NamingContext)
| | +- FTimeService (proxy: $Proxy64 implements interface
fr.sce.test.ejb3.ejb.test.TimeService3,interface org.jboss.ejb3.JBossProxy,interface
javax.ejb.EJBObject)
| +- UIL2ConnectionFactory[link -> ConnectionFactory] (class:
javax.naming.LinkRef)
| +- HiLoKeyGeneratorFactory (class:
org.jboss.ejb.plugins.keygenerator.hilo.HiLoKeyGeneratorFactory)
| +- UILConnectionFactory[link -> ConnectionFactory] (class: javax.naming.LinkRef)
| +- QueueConnectionFactory (class: org.jboss.naming.LinkRefPair)
| +- UUIDKeyGeneratorFactory (class:
org.jboss.ejb.plugins.keygenerator.uuid.UUIDKeyGeneratorFactory)
| +- ATestEJB3 (class: org.jnp.interfaces.NamingContext)
| | +- FTimeService (class: org.jnp.interfaces.NamingContext)
| | | +- local (proxy: $Proxy66 implements interface
fr.sce.test.ejb3.ejb.test.TimeService3,interface org.jboss.ejb3.JBossProxy,interface
javax.ejb.EJBLocalObject)
|
Other informations :
- i do not use RemoteBinding annotation on my ejb bean,
- when i reverse the invokers, the last one is is the only one i can reach with my client,
it's why i can say that only the last invoker is considered during deployment.
Any idea ?
Thanks.
View the original post :
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4150362#...
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&a...