[jboss-user] [JBoss AOP] - Problem to get custom interceptor stack up and running.

Jonas Heineson do-not-reply at jboss.com
Mon Apr 12 09:51:25 EDT 2010


Jonas Heineson [http://community.jboss.org/people/heineson] created the discussion

"Problem to get custom interceptor stack up and running."

To view the discussion, visit: http://community.jboss.org/message/536906#536906

--------------------------------------------------------------
Hello,

I have a problem getting an interceptor stack up and running on my JBoss (4.2.3.GA). The jboss starts fine, without any error messages, but when I connect a client to the server I get a NullPointerException suggesting that my Interceptor is not loaded (since it is the first one on the stack):

...
Caused by: java.lang.NullPointerException
    at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
    at org.jboss.ejb3.stateless.StatelessClusteredProxy.invoke(StatelessClusteredProxy.java:112)
...

The stack in question is a modified version of the default ClusteredStatelessSessionClientInterceptors stack defined in ejb3-interceptors-aop.xml:

jboss-aop.xml:
  <interceptor scope="PER_VM"/>

  <stack name="MtClusteredStatelessSessionClientInterceptors">
    <!--interceptor-ref name="org.jboss.ejb3.remoting.ClusteredIsLocalInterceptor"/-->    
    <interceptor-ref name="com.computas.mt.jboss.clustering.FixedServerInterceptor"/>
    <interceptor-ref name="org.jboss.aspects.security.SecurityClientInterceptor"/>
    <interceptor-ref name="org.jboss.aspects.tx.ClientTxPropagationInterceptor"/>
    <interceptor-ref name="org.jboss.aspects.remoting.ClusterChooserInterceptor"/>
    <interceptor-ref name="org.jboss.aspects.remoting.InvokeRemoteInterceptor"/>
  </stack>

Annotations of SLSB class:
@Stateless(name="EJBSingletonInvoker")
@Clustered(loadBalancePolicy = FixedServerBalancer.class)
@RemoteBinding(interceptorStack = "MtClusteredStatelessSessionClientInterceptors")
public class MtEJBSingletonInvokerBean { ...}

Interceptor:
public class FixedServerInterceptor extends ClusteredIsLocalInterceptor {
  @Override
  public Object invoke(Invocation invocation) throws Throwable {
    // doing some extra stuff
    return super.invoke(invocation);
}

The jboss-aop.xml and the custom interceptor are both located in a module called mt-aop-<version>.aop which is in turn placed in an .ear together with the other modules of the application.

Have also turned on instrumentation in the jboss-aop-jdk50.deployer/META-INF/jboss-service.xml
What am I missing / doing wrong here?


Regards
Jonas Heineson

--------------------------------------------------------------

Reply to this message by going to Community
[http://community.jboss.org/message/536906#536906]

Start a new discussion in JBoss AOP at Community
[http://community.jboss.org/choose-container!input.jspa?contentType=1&containerType=14&container=2027]

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/jboss-user/attachments/20100412/cc275d70/attachment.html 


More information about the jboss-user mailing list