[JBoss-dev] jrmp invoker issue

Jaroslaw Kijanowski jaroslaw.kijanowski at jboss.com
Tue Aug 29 13:41:28 EDT 2006


Hello,
  there's a test, org.jboss.test.pooled.test.BeanStressTestCase, which fails because StatelessSession isn't bound. The original testsuite/src/resources/pooled/META-INF/jboss.xml file looks like this:
****************************
<jboss>
   <enterprise-beans>
      <session>
         <ejb-name>StatelessSession</ejb-name>
         <jndi-name>StatelessSession</jndi-name>
         <invoker-bindings>
            <invoker>
               <invoker-proxy-binding-name>stateless-pooled-invoker</invoker-proxy-binding-name>
               <jndi-name>PooledStatelessSession</jndi-name>
            </invoker>
         </invoker-bindings>
      </session>
.
.
.
   <invoker-proxy-bindings>
      <invoker-proxy-binding>
         <name>stateless-pooled-invoker</name>
         <invoker-mbean>jboss:service=invoker,type=pooled</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>
****************************
But this isn't enough to bind StatelessSession (PooledStatelessSession is bound right). Exception is thrown. I looked in the 4_0_4 Branch on jboss.xml and I added these missing lines of code to jboss.xml:
 ****************************************
 <jboss>
    <enterprise-beans>
       <session>
          <ejb-name>StatelessSession</ejb-name>
          <jndi-name>StatelessSession</jndi-name>
          <invoker-bindings>
             <invoker>
                <invoker-proxy-binding-name>stateless-pooled-invoker</invoker-proxy-binding-name>
                <jndi-name>PooledStatelessSession</jndi-name>
             </invoker>
 
 <!-- copied from jboss.xml in JBAS 4_0_4 -->
             <invoker>
                <invoker-proxy-binding-name>stateless-rmi-invoker</invoker-proxy-binding-name>
                <jndi-name>StatelessSession</jndi-name>
             </invoker>
 <!-- end -->
 
          </invoker-bindings>
       </session> 
****************************************

But the test fails again, because I can't use "stateless-rmi-invoker", because it is no longer defined in server/src/etc/conf/default/standardjboss.xml in JBAS 5.0.0beta, why?
I've copied the following section from JBAS4_0_4 to JBAS5 and now the test works fine. But is this the right way? 
****************************************
    <invoker-proxy-binding>
      <name>stateless-rmi-invoker</name>
      <invoker-mbean>jboss:service=invoker,type=jrmp</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 call-by-value="false">org.jboss.invocation.InvokerInterceptor</interceptor>
            <interceptor call-by-value="true">org.jboss.invocation.MarshallingInvokerInterceptor</interceptor>
          </home>
          <bean>
            <interceptor>org.jboss.proxy.ejb.StatelessSessionInterceptor</interceptor>
            <interceptor>org.jboss.proxy.SecurityInterceptor</interceptor>
            <interceptor>org.jboss.proxy.TransactionInterceptor</interceptor>
            <interceptor call-by-value="false">org.jboss.invocation.InvokerInterceptor</interceptor>
            <interceptor call-by-value="true">org.jboss.invocation.MarshallingInvokerInterceptor</interceptor>
          </bean>
        </client-interceptors>
      </proxy-factory-config>
    </invoker-proxy-binding>

Thanks,
  Jaroslaw

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/jboss-development/attachments/20060829/b3571a93/attachment.html 


More information about the jboss-development mailing list