Hi, which version of jboss/tomcat are you using ?
normally in the latest one jboss2.1beta + embedded tomcat 3.2.
this error would go away if both are in the same EAR.
though it would still happen if they are not in the same EAR of if they 
are deployed directly as jar.

It's an issue about classloader and object that are not marshalled from 
one to an other.

I have send a couple of post to this mailing list regarding this subject 
about a week ago, browse the archive for more details : www.mail-archive.com

Someone has made a fix but i don't know if it has been added to the CVS 
tree.

regards,
Elouan



Jim Archer wrote:

> Hi All...
> 
> I am having a problem with jBoss-tomcat beta, which I installed from the 
> binary distribution and run on Sun JDK 1.3 on Windows 2000.
> 
> I have a servlet that calls a stateless session bean that creates an 
> entity bean. If the entity already exists, my applicationthrown a 
> RnDuplicateUarException, which I wrote. The intention is for the servlet 
> to catch this exception and return an error to the client application 
> via HTTP or XML.
> 
> The problem is that the exception dossen't seem to be getting back to 
> the servlet. Instead, an:
> 
> java.lang.reflect.UndeclaredThrowableException: 
> com.regtek.ex.RnDuplicateUarException: This UAR ID already exists
> 
> seems to be generated by jBoss. I am running the servlet in a WAR and 
> the EJBs in a JAR and both are in the same EAR. I have tried making sure 
> my exception implements serializable, but I get the same result whether 
> it does or not. Its a very simple exception. All it does is subclass my 
> base exception which just subclasses Exception (I'll past the code below).
> 
> Could someone suggest what I might be doing wrong?
> 
> Thanks!!!
> 
> Jim
> 
> Exception code:
> 
> 
> // RnBaseException.java
> 
> package com.regtek.ex;
> 
> public class RnBaseException extends Exception implements 
> java.io.Serializable
> {
>     public RnBaseException()
>     {
>     }
>     
>     public RnBaseException(String s)
>     {
>         super(s);
>     }
> }
> 
> 
> 
> // RnDuplicateUarException
> 
> package com.regtek.ex;
> 
> public class RnDuplicateUarException extends RnBaseException implements 
> java.io.Serializable
> {
>     public RnDuplicateUarException()
>     {
>     }
>     
>     public RnDuplicateUarException(String s)
>     {
>         super(s);
>     }
> }
> 
> 
> 
> 
> 
> This is what was returned to my client, which is a perl script talking 
> to the servlet via HTTP:
> 
> <h1>Error: 500</h1>
> <h2>Location: /regnet/MakeUAR</h2><b>Internal Servlet 
> Error:</b><br><pre>java.la
> ng.reflect.UndeclaredThrowableException: 
> com.regtek.ex.RnDuplicateUarException:
> This UAR ID already exists
>        at 
> com.regtek.slsb.CreateNewUARBean.createUarEb(CreateNewUARBean.java:27
> 4)
>        at 
> com.regtek.slsb.CreateNewUARBean.makeNew(CreateNewUARBean.java:87)
>        at java.lang.reflect.Method.invoke(Native Method)
>        at 
> org.jboss.ejb.StatelessSessionContainer$ContainerInterceptor.invoke(S
> tatelessSessionContainer.java:472)
>        at 
> org.jboss.ejb.plugins.StatelessSessionInstanceInterceptor.invoke(Stat
> elessSessionInstanceInterceptor.java:87)
>        at 
> org.jboss.ejb.plugins.TxInterceptorCMT.invokeNext(TxInterceptorCMT.ja
> va:133)
>        at 
> org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxIntercep
> torCMT.java:264)
>        at 
> org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:9
> 9)
>        at 
> org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.
> java:137)
>        at 
> org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:195)
>        at 
> org.jboss.ejb.StatelessSessionContainer.invoke(StatelessSessionContai
> ner.java:271)
>        at 
> org.jboss.ejb.plugins.jrmp.server.JRMPContainerInvoker.invoke(JRMPCon
> tainerInvoker.java:381)
>        at 
> org.jboss.ejb.plugins.jrmp.server.JRMPContainerInvoker.invoke(JRMPCon
> tainerInvoker.java:452)
>        at 
> org.jboss.ejb.plugins.jrmp.interfaces.StatelessSessionProxy.invoke(St
> atelessSessionProxy.java:152)
>        at $Proxy384.makeNew(Unknown Source)
>        at com.regtek.protocol_servlets.MakeUAR.doPost(MakeUAR.java:141)
>        at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
>        at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
>        at 
> org.apache.tomcat.core.ServletWrapper.doService(ServletWrapper.java:4
> 04)
>        at org.apache.tomcat.core.Handler.service(Handler.java:286)
>        at 
> org.apache.tomcat.core.ServletWrapper.service(ServletWrapper.java:372
> )
>        at 
> org.apache.tomcat.core.ContextManager.internalService(ContextManager.
> java:797)
>        at 
> org.apache.tomcat.core.ContextManager.service(ContextManager.java:743
> )
>        at 
> org.apache.tomcat.service.http.HttpConnectionHandler.processConnectio
> n(HttpConnectionHandler.java:210)
>        at 
> org.apache.tomcat.service.TcpWorkerThread.runIt(PoolTcpEndpoint.java:
> 416)
>        at 
> org.apache.tomcat.util.ThreadPool$ControlRunnable.run(ThreadPool.java
> :498)
>        at java.lang.Thread.run(Unknown Source)
> </pre>
> 
> 
> 
> 
> 
> This is from the end of the jBoss log:
> 
> 
> [CreateNewUARSlsb] CreateNewUarBean Tue Mar 06 23:51:43 EST 2001 method 
> createUa
> rEb() entered
> 2001-03-06 11:51:43 - Ctx( /regnet ): Exception in: R( /regnet + 
> /MakeUAR + null
> ) - java.lang.reflect.UndeclaredThrowableException: 
> com.regtek.ex.RnDuplicateUar
> Exception: This UAR ID already exists
>        at 
> com.regtek.slsb.CreateNewUARBean.createUarEb(CreateNewUARBean.java:27
> 4)
>        at 
> com.regtek.slsb.CreateNewUARBean.makeNew(CreateNewUARBean.java:87)
>        at java.lang.reflect.Method.invoke(Native Method)
>        at 
> org.jboss.ejb.StatelessSessionContainer$ContainerInterceptor.invoke(S
> tatelessSessionContainer.java:472)
>        at 
> org.jboss.ejb.plugins.StatelessSessionInstanceInterceptor.invoke(Stat
> elessSessionInstanceInterceptor.java:87)
>        at 
> org.jboss.ejb.plugins.TxInterceptorCMT.invokeNext(TxInterceptorCMT.ja
> va:133)
>        at 
> org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxIntercep
> torCMT.java:264)
>        at 
> org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:9
> 9)
>        at 
> org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.
> java:137)
>        at 
> org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:195)
>        at 
> org.jboss.ejb.StatelessSessionContainer.invoke(StatelessSessionContai
> ner.java:271)
>        at 
> org.jboss.ejb.plugins.jrmp.server.JRMPContainerInvoker.invoke(JRMPCon
> tainerInvoker.java:381)
>        at 
> org.jboss.ejb.plugins.jrmp.server.JRMPContainerInvoker.invoke(JRMPCon
> tainerInvoker.java:452)
>        at 
> org.jboss.ejb.plugins.jrmp.interfaces.StatelessSessionProxy.invoke(St
> atelessSessionProxy.java:152)
>        at $Proxy384.makeNew(Unknown Source)
>        at com.regtek.protocol_servlets.MakeUAR.doPost(MakeUAR.java:141)
>        at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
>        at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
>        at 
> org.apache.tomcat.core.ServletWrapper.doService(ServletWrapper.java:4
> 04)
>        at org.apache.tomcat.core.Handler.service(Handler.java:286)
>        at 
> org.apache.tomcat.core.ServletWrapper.service(ServletWrapper.java:372
> )
>        at 
> org.apache.tomcat.core.ContextManager.internalService(ContextManager.
> java:797)
>        at 
> org.apache.tomcat.core.ContextManager.service(ContextManager.java:743
> )
>        at 
> org.apache.tomcat.service.http.HttpConnectionHandler.processConnectio
> n(HttpConnectionHandler.java:210)
>        at 
> org.apache.tomcat.service.TcpWorkerThread.runIt(PoolTcpEndpoint.java:
> 416)
>        at 
> org.apache.tomcat.util.ThreadPool$ControlRunnable.run(ThreadPool.java
> :498)
>        at java.lang.Thread.run(Unknown Source)
> 
> 
> 
> ********************************************
> I shall be telling this with a sigh
> Somewhere ages and ages hence:
> Two roads diverged in a wood, and I -
> I took the one less traveled by,
> And that has made all the difference.
> 
> - Robert Frost, 1916
> 
> 
> 
> -- 
> --------------------------------------------------------------
> To subscribe:        [EMAIL PROTECTED]
> To unsubscribe:      [EMAIL PROTECTED]



--
--------------------------------------------------------------
To subscribe:        [EMAIL PROTECTED]
To unsubscribe:      [EMAIL PROTECTED]

Reply via email to