This is with Seam current from CVS, on OS X 1.4.8 with Eclipse 3.2.2.
When I run a SeamTest in which a declared business exception is thrown, an
UndeclaredThrowableException is thrown from the generated proxy rather than the
declared exception. It all runs fine when I deploy the application in JBoss.
Just not via SeamTest. And the exception is declared in the SLSB interface so
UndeclaredThrowableException isn't appropriate.
I'm stuck stepping through the source because the problem appears to be in the
generated proxy for the SLSB, and I don't know where that's created. I've
traced through the JDK, JBoss embedded EJB and AOP code and didn't notice
anything odd until the exception makes its way back into the proxy (though I'm
not familiar with the above code so maybe I missed something?
I'm not really sure what I sould provide on this, so forgive me for being a bit
on the verbose side.
Any idea what's going on here? This feels like a problem in SeamTest because
it runs in Jboss, but I'm not on familiar enough ground here to actually spot
what's going on.
Now for details.
First, in the debugger, here's where the exception will be rethrown as an
UndeclaredThrowableException:
| $Proxy66.ingest(byte[], CsvFeedDefinition, Map) line: not available
| StatelessLocalProxy.invoke(Object, Method, Object[]) line: 79
| StatelessContainer.localInvoke(Method, Object[], FutureHolder) line: 181
| EJBContainerInvocation(MethodInvocation).invokeNext() line: 98
|
The SLSB method generating the original IngestWithValidationErrorsException is:
| public FeedIngestResult ingest
| (byte [] feedFile, CsvFeedDefinition feedDefinition,
| Map<String, FeedItem> previousFeedItemMap)
| throws IngestWithValidationErrorsException
| {
| ....
|
The top exception I see is:
|
| java.lang.reflect.UndeclaredThrowableException
| at $Proxy67.processFeedImport(Unknown Source)
| 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.seam.intercept.RootInvocationContext.proceed(RootInvocationContext.java:31)
| at
org.jboss.seam.intercept.ClientSideInterceptor$1.proceed(ClientSideInterceptor.java:72)
| at
org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:57)
| at
org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:103)
| at
org.jboss.seam.intercept.ClientSideInterceptor.invoke(ClientSideInterceptor.java:50)
| at
org.javassist.tmp.java.lang.Object_$$_javassist_2.processFeedImport(Object_$$_javassist_2.java)
| at
com.fb.core.action.FeedMappingAction.applyMappingsToFeed(FeedMappingAction.java:267)
| ...trimmed out lots of lines that probably aren't interesting
|
caused by
| 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.jboss.seam.intercept.RootInvocationContext.proceed(RootInvocationContext.java:31)
| at
org.jboss.seam.intercept.ClientSideInterceptor$1.proceed(ClientSideInterceptor.java:72)
| at
org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:57)
| at
org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:103)
| at
org.jboss.seam.intercept.ClientSideInterceptor.invoke(ClientSideInterceptor.java:50)
| at
org.javassist.tmp.java.lang.Object_$$_javassist_3.ingest(Object_$$_javassist_3.java)
| at
com.fb.core.business.IngestServiceImpl.processFeedImport(IngestServiceImpl.java:56)
|
caused by
| Caused by:
com.fb.core.business.exception.IngestWithValidationErrorsException
| at
com.fb.core.business.ingest.CsvIngestUtil.ingest(CsvIngestUtil.java:109)
| 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.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:109)
| at
org.jboss.ejb3.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:166)
| at
org.jboss.seam.intercept.EJBInvocationContext.proceed(EJBInvocationContext.java:37)
| at
org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:57)
| at
org.jboss.seam.interceptors.MethodContextInterceptor.aroundInvoke(MethodContextInterceptor.java:27)
| at
org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:69)
| at
org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:103)
| at
org.jboss.seam.intercept.SessionBeanInterceptor.aroundInvoke(SessionBeanInterceptor.java:53)
| at sun.reflect.GeneratedMethodAccessor23.invoke(Unknown Source)
| 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:118)
| at
org.jboss.ejb3.interceptor.EJB3InterceptorsInterceptor.invoke(EJB3InterceptorsInterceptor.java:63)
| at
org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:98)
| at
org.jboss.ejb3.entity.TransactionScopedEntityManagerInterceptor.invoke(TransactionScopedEntityManagerInterceptor.java:54)
| 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.invokeInCallerTx(TxPolicy.java:126)
| at
org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java:201)
| 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:62)
| 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:181)
| at
org.jboss.ejb3.stateless.StatelessLocalProxy.invoke(StatelessLocalProxy.java:79)
| at $Proxy66.ingest(Unknown Source)
|
View the original post :
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4027013#4027013
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4027013
_______________________________________________
jboss-user mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/jboss-user