You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@geronimo.apache.org by "Kevan Miller (JIRA)" <ji...@apache.org> on 2007/04/10 23:15:32 UTC

[jira] Updated: (GERONIMO-3087) ConnectionTrackingCoordinator.invoke() does not properly convert Exceptions

     [ https://issues.apache.org/jira/browse/GERONIMO-3087?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Kevan Miller updated GERONIMO-3087:
-----------------------------------

    Affects Version/s: 1.2
             Assignee: Kevan Miller

> ConnectionTrackingCoordinator.invoke() does not properly convert Exceptions
> ---------------------------------------------------------------------------
>
>                 Key: GERONIMO-3087
>                 URL: https://issues.apache.org/jira/browse/GERONIMO-3087
>             Project: Geronimo
>          Issue Type: Bug
>      Security Level: public(Regular issues) 
>    Affects Versions: 1.2, 2.0-M4, 2.0-M5
>            Reporter: Kevan Miller
>         Assigned To: Kevan Miller
>             Fix For: 2.0-M5
>
>
> ConnectionTrackingCoordinator.invoke() uses reflection to invoke the appropriate method on an object. If an exception occurs during the method invocation, the exception is converted into an InvocationTargetException. 
> ConnectionTrackingCoordinator.invoke() needs to turn the exception back into it's original form. Otherwise, you'll get incorrect exceptions returned to client code and exceptions of the form:
> java.lang.reflect.UndeclaredThrowableException
> 	at $Proxy33.start(Unknown Source)
> 	at MyTestClass.closeAClosedConnection(MyTestClass.java:53)	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.apache.openejb.core.interceptor.ReflectionInvocationContext$Invocation.invoke(ReflectionInvocationContext.java:136)
> 	at org.apache.openejb.core.interceptor.ReflectionInvocationContext.proceed(ReflectionInvocationContext.java:119)
> 	at org.apache.openejb.core.interceptor.InterceptorStack.invoke(InterceptorStack.java:72)
> 	at org.apache.openejb.core.stateful.StatefulContainer._invoke(StatefulContainer.java:420)
> 	at org.apache.openejb.core.stateful.StatefulContainer.businessMethod(StatefulContainer.java:382)
> 	at org.apache.openejb.core.stateful.StatefulContainer.invoke(StatefulContainer.java:257)
> 	at org.apache.openejb.server.ejbd.EjbRequestHandler.doEjbObject_BUSINESS_METHOD(EjbRequestHandler.java:198)
> 	at org.apache.openejb.server.ejbd.EjbRequestHandler.processRequest(EjbRequestHandler.java:113)
> 	at org.apache.openejb.server.ejbd.EjbDaemon.processEjbRequest(EjbDaemon.java:149)
> 	at org.apache.openejb.server.ejbd.EjbDaemon.service(EjbDaemon.java:107)
> 	at org.apache.openejb.server.ejbd.EjbDaemon.service(EjbDaemon.java:80)
> 	at org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java:60)
> 	at org.apache.openejb.server.ServiceLogger.service(ServiceLogger.java:75)
> 	at org.apache.openejb.server.ServiceAccessController.service(ServiceAccessController.java:55)
> 	at org.apache.openejb.server.ServiceDaemon$1.run(ServiceDaemon.java:117)
> 	at java.lang.Thread.run(Thread.java:613)
> Caused by: java.lang.reflect.InvocationTargetException
> 	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.apache.geronimo.connector.outbound.connectiontracking.ConnectionTrackingCoordinator$ConnectionInvocationHandler.invoke(ConnectionTrackingCoordinator.java:329)
> 	... 29 more
> Caused by: javax.jms.IllegalStateException: The Connection is closed
> 	at org.apache.activemq.ra.ManagedConnectionProxy.getConnection(ManagedConnectionProxy.java:93)
> 	at org.apache.activemq.ra.ManagedConnectionProxy.start(ManagedConnectionProxy.java:200)
> 	... 34 more
> I have not reproduced this problem on 1.2, but sure looks like it would cause a problem there, also...

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.