I have an EAR file set up as follows:
- jar with entity and session beans, annotated with Seam/EJB3. Also has 
WsServlet class, which is a regular "Hello World" servlet, but looks up an SLSB.
- war file that uses Seam/JSF
- another war file that just has a web.xml that defines WsServlet

When I make a request to WsServlet, I get the following stacktrace:


  | 16:58:38,180 ERROR [[WsServlet]] Servlet.service() for servlet WsServlet 
threw exception
  | javax.ejb.EJBException: java.lang.NullPointerException
  |         at 
org.jboss.ejb3.tx.Ejb3TxPolicy.handleExceptionInOurTx(Ejb3TxPolicy.java:69)
  |         at org.jboss.aspects.tx.TxPolicy.invokeInOurTx(TxPolicy.java:83)
  |         at 
org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java:192)
  |         at 
org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:98)
  |         at 
org.jboss.aspects.tx.TxPropagationInterceptor.invoke(TxPropagationInterceptor.java:76)
  |         at 
org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:98)
  |         at 
org.jboss.ejb3.stateless.StatelessInstanceInterceptor.invoke(StatelessInstanceInterceptor.java:54)
  |         at 
org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:98)
  |         at 
org.jboss.aspects.security.AuthenticationInterceptor.invoke(AuthenticationInterceptor.java:78)
  |         at 
org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:98)
  |         at 
org.jboss.ejb3.ENCPropagationInterceptor.invoke(ENCPropagationInterceptor.java:47)
  |         at 
org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:98)
  |         at 
org.jboss.ejb3.asynchronous.AsynchronousInterceptor.invoke(AsynchronousInterceptor.java:106)
  |         at 
org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:98)
  |         at 
org.jboss.ejb3.stateless.StatelessContainer.localInvoke(StatelessContainer.java:178)
  |         at 
org.jboss.ejb3.stateless.StatelessLocalProxy.invoke(StatelessLocalProxy.java:74)
  |         at $Proxy187.find(Unknown Source)
  |         at com.inertiabev.ws.WsServlet.doPost(WsServlet.java:45)
  |         at com.inertiabev.ws.WsServlet.doGet(WsServlet.java:32)
  |         at javax.servlet.http.HttpServlet.service(HttpServlet.java:697)
  |         at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
  |         at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
  |         at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
  |         at 
org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
  |         at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
  |         at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
  |         at 
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
  |         at 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
  |         at 
org.jboss.web.tomcat.security.CustomPrincipalValve.invoke(CustomPrincipalValve.java:54)
  |         at 
org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:174)
  |         at 
org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74)
  |         at 
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
  |         at 
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
  |         at 
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
  |         at 
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
  |         at 
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:868)
  |         at 
org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:663)
  |         at 
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
  |         at 
org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
  |         at java.lang.Thread.run(Thread.java:595)
  | Caused by: java.lang.NullPointerException
  |         at org.jboss.seam.Component.forName(Component.java:1011)
  |         at 
org.jboss.seam.ejb.SeamInterceptor.getSeamComponent(SeamInterceptor.java:61)
  |         at 
org.jboss.seam.ejb.SeamInterceptor.aroundInvoke(SeamInterceptor.java:34)
  |         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  |         at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
  |         at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  |         at java.lang.reflect.Method.invoke(Method.java:585)
  |         at 
org.jboss.ejb3.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:120)
  |         at 
org.jboss.ejb3.interceptor.EJB3InterceptorsInterceptor.invoke(EJB3InterceptorsInterceptor.java:62)
  |         at 
org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:98)
  |         at 
org.jboss.ejb3.AllowedOperationsInterceptor.invoke(AllowedOperationsInterceptor.java:47)
  |         at 
org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:98)
  |         at org.jboss.aspects.tx.TxPolicy.invokeInOurTx(TxPolicy.java:79)
  |         ... 38 more
  | 

The servlet code is as follows:

  |   public void doPost (HttpServletRequest request, HttpServletResponse 
response)
  |     throws ServletException,
  |       IOException
  |   {
  |     try {
  |       PrintWriter out = response.getWriter () ;
  |       out.println ("Hello World!") ;
  |       
  |       InitialContext ctx = new InitialContext () ;
  |       BaseDao baseDao = (BaseDao) ctx.lookup ("biggie/BaseDaoBean/local") ;
  |       State state = baseDao.find (State.class, "NY") ;
  |       out.println (state.toString()) ;
  |       
  |       out.close () ;
  |       return;
  |     }
  |     catch (NamingException e) {
  |       e.printStackTrace();
  |       throw new ServletException (e) ;
  |     }
  |   }
  | 

BaseDao is an SLSB that is also a Seam component (uses the @Interceptors 
annotation). State is an @Entity bean.

I'm somewhat new to EJBs, so I might be doing something wrong with the EJB3 
context lookup. However, the SeamInterceptor comes up in the stack trace, so I 
just wanted to make sure that there wasn't anything in Seam that would prevent 
me from looking up a Seam component as a regular EJB.

I suppose the fallback is to lookup the BaseDaoBean from the Seam context?


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

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


-------------------------------------------------------
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
JBoss-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jboss-user

Reply via email to