[
https://issues.jboss.org/browse/WFLY-72?page=com.atlassian.jira.plugin.sy...
]
Alessio Soldano commented on WFLY-72:
-------------------------------------
As per IRC discussion with David, the TCCL association is not a problem. Provided PR for
the PrivilegedInterceptor thing instead.
JAX-WS invocations are missing key interceptors
-----------------------------------------------
Key: WFLY-72
URL:
https://issues.jboss.org/browse/WFLY-72
Project: WildFly
Issue Type: Bug
Components: Web Services
Reporter: David Lloyd
Assignee: Alessio Soldano
Fix For: 8.0.0.Alpha2
Judging from the following stack trace (gotten while testing security restrictions):
{noformat}
00:51:15,836 ERROR [org.jboss.as.webservices.invocation.InvocationHandlerJAXWS]
(http-/127.0.0.1:8080-10) JBAS015594: Method invocation failed with exception: Failed
check for permission ("java.lang.reflect.ReflectPermission"
"suppressAccessChecks"): java.security.AccessControlException: Failed check for
permission ("java.lang.reflect.ReflectPermission"
"suppressAccessChecks")
at org.jboss.as.server.Main$1.checkPermission(Main.java:130)
at org.jboss.as.server.Main$1.checkPermission(Main.java:91)
at java.lang.reflect.AccessibleObject.setAccessible(AccessibleObject.java:128)
[rt.jar:1.7.0_15]
at
org.jboss.weld.interceptor.proxy.SimpleInterceptionChain.invokeNextInterceptor(SimpleInterceptionChain.java:83)
[weld-core-1.1.11.Final.jar:2013-02-28 09:52]
at
org.jboss.weld.interceptor.proxy.InterceptorInvocationContext.proceed(InterceptorInvocationContext.java:127)
[weld-core-1.1.11.Final.jar:2013-02-28 09:52]
at
org.jboss.as.test.integration.ws.cdi.interceptor.POJOInterceptorImpl.intercept(POJOInterceptorImpl.java:38)
[classes:]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [rt.jar:1.7.0_15]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
[rt.jar:1.7.0_15]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[rt.jar:1.7.0_15]
at java.lang.reflect.Method.invoke(Method.java:601) [rt.jar:1.7.0_15]
at
org.jboss.weld.interceptor.proxy.SimpleMethodInvocation.invoke(SimpleMethodInvocation.java:30)
[weld-core-1.1.11.Final.jar:2013-02-28 09:52]
at
org.jboss.weld.interceptor.proxy.SimpleInterceptionChain.invokeNextInterceptor(SimpleInterceptionChain.java:69)
[weld-core-1.1.11.Final.jar:2013-02-28 09:52]
at
org.jboss.weld.interceptor.proxy.InterceptorMethodHandler.executeInterception(InterceptorMethodHandler.java:112)
[weld-core-1.1.11.Final.jar:2013-02-28 09:52]
at
org.jboss.weld.interceptor.proxy.InterceptorMethodHandler.invoke(InterceptorMethodHandler.java:88)
[weld-core-1.1.11.Final.jar:2013-02-28 09:52]
at
org.jboss.weld.bean.proxy.CombinedInterceptorAndDecoratorStackMethodHandler.invoke(CombinedInterceptorAndDecoratorStackMethodHandler.java:55)
[weld-core-1.1.11.Final.jar:2013-02-28 09:52]
at
org.jboss.as.test.integration.ws.cdi.interceptor.POJOEndpointImpl$Proxy$_$$_WeldSubclass.echo(POJOEndpointImpl$Proxy$_$$_WeldSubclass.java)
[classes:]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [rt.jar:1.7.0_15]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
[rt.jar:1.7.0_15]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[rt.jar:1.7.0_15]
at java.lang.reflect.Method.invoke(Method.java:601) [rt.jar:1.7.0_15]
at
org.jboss.as.ee.component.ManagedReferenceMethodInterceptorFactory$ManagedReferenceMethodInterceptor.processInvocation(ManagedReferenceMethodInterceptorFactory.java:72)
[jboss-as-ee-8.0.0.Alpha1-SNAPSHOT.jar:8.0.0.Alpha1-SNAPSHOT]
at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:289)
[jboss-invocation-1.2.0.Beta1.jar:1.2.0.Beta1]
at org.jboss.invocation.WeavedInterceptor.processInvocation(WeavedInterceptor.java:53)
[jboss-invocation-1.2.0.Beta1.jar:1.2.0.Beta1]
at
org.jboss.as.ee.component.interceptors.UserInterceptorFactory$1.processInvocation(UserInterceptorFactory.java:58)
[jboss-as-ee-8.0.0.Alpha1-SNAPSHOT.jar:8.0.0.Alpha1-SNAPSHOT]
at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:289)
[jboss-invocation-1.2.0.Beta1.jar:1.2.0.Beta1]
at org.jboss.invocation.WeavedInterceptor.processInvocation(WeavedInterceptor.java:53)
[jboss-invocation-1.2.0.Beta1.jar:1.2.0.Beta1]
at
org.jboss.as.ee.component.interceptors.UserInterceptorFactory$1.processInvocation(UserInterceptorFactory.java:58)
[jboss-as-ee-8.0.0.Alpha1-SNAPSHOT.jar:8.0.0.Alpha1-SNAPSHOT]
at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:289)
[jboss-invocation-1.2.0.Beta1.jar:1.2.0.Beta1]
at org.jboss.invocation.InitialInterceptor.processInvocation(InitialInterceptor.java:21)
[jboss-invocation-1.2.0.Beta1.jar:1.2.0.Beta1]
at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:289)
[jboss-invocation-1.2.0.Beta1.jar:1.2.0.Beta1]
at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:61)
[jboss-invocation-1.2.0.Beta1.jar:1.2.0.Beta1]
at
org.jboss.as.ee.component.interceptors.ComponentDispatcherInterceptor.processInvocation(ComponentDispatcherInterceptor.java:53)
[jboss-as-ee-8.0.0.Alpha1-SNAPSHOT.jar:8.0.0.Alpha1-SNAPSHOT]
at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:289)
[jboss-invocation-1.2.0.Beta1.jar:1.2.0.Beta1]
at
org.jboss.as.webservices.deployers.WSComponentInstanceAssociationInterceptor.processInvocation(WSComponentInstanceAssociationInterceptor.java:49)
at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:289)
[jboss-invocation-1.2.0.Beta1.jar:1.2.0.Beta1]
at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:61)
[jboss-invocation-1.2.0.Beta1.jar:1.2.0.Beta1]
at org.jboss.as.ee.component.ViewService$View.invoke(ViewService.java:165)
[jboss-as-ee-8.0.0.Alpha1-SNAPSHOT.jar:8.0.0.Alpha1-SNAPSHOT]
at
org.jboss.as.webservices.invocation.AbstractInvocationHandler.invoke(AbstractInvocationHandler.java:111)
at org.jboss.wsf.stack.cxf.JBossWSInvoker.performInvocation(JBossWSInvoker.java:149)
at org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:96)
at
org.apache.cxf.jaxws.AbstractJAXWSMethodInvoker.invoke(AbstractJAXWSMethodInvoker.java:178)
at org.apache.cxf.jaxws.JAXWSMethodInvoker.invoke(JAXWSMethodInvoker.java:68)
at org.jboss.wsf.stack.cxf.JBossWSInvoker.invoke(JBossWSInvoker.java:129)
at
org.apache.cxf.interceptor.ServiceInvokerInterceptor$1.run(ServiceInvokerInterceptor.java:58)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
[rt.jar:1.7.0_15]
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) [rt.jar:1.7.0_15]
at java.util.concurrent.FutureTask.run(FutureTask.java:166) [rt.jar:1.7.0_15]
at org.apache.cxf.workqueue.SynchronousExecutor.execute(SynchronousExecutor.java:37)
at
org.apache.cxf.interceptor.ServiceInvokerInterceptor.handleMessage(ServiceInvokerInterceptor.java:107)
at
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:271)
at
org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:121)
at
org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractHTTPDestination.java:239)
at
org.jboss.wsf.stack.cxf.RequestHandlerImpl.handleHttpRequest(RequestHandlerImpl.java:95)
at
org.jboss.wsf.stack.cxf.transport.ServletHelper.callRequestHandler(ServletHelper.java:156)
at org.jboss.wsf.stack.cxf.CXFServletExt.invoke(CXFServletExt.java:87)
at
org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:243)
at
org.apache.cxf.transport.servlet.AbstractHTTPServlet.doPost(AbstractHTTPServlet.java:163)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:754)
[jboss-servlet-api_3.0_spec-1.0.2.Final.jar:1.0.2.Final]
at org.jboss.wsf.stack.cxf.CXFServletExt.service(CXFServletExt.java:135)
at org.jboss.wsf.spi.deployment.WSFServlet.service(WSFServlet.java:140)
[jbossws-spi-2.1.1.Final.jar:2.1.1.Final]
at javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
[jboss-servlet-api_3.0_spec-1.0.2.Final.jar:1.0.2.Final]
at sun.reflect.GeneratedMethodAccessor58.invoke(Unknown Source) [:1.7.0_15]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[rt.jar:1.7.0_15]
at java.lang.reflect.Method.invoke(Method.java:601) [rt.jar:1.7.0_15]
at org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:263)
[jbossweb-7.2.0.Final.jar:7.2.0.Final]
at org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:261)
[jbossweb-7.2.0.Final.jar:7.2.0.Final]
at java.security.AccessController.doPrivileged(Native Method) [rt.jar:1.7.0_15]
at javax.security.auth.Subject.doAsPrivileged(Subject.java:536) [rt.jar:1.7.0_15]
at org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:295)
[jbossweb-7.2.0.Final.jar:7.2.0.Final]
at org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:155)
[jbossweb-7.2.0.Final.jar:7.2.0.Final]
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:288)
[jbossweb-7.2.0.Final.jar:7.2.0.Final]
at
org.apache.catalina.core.ApplicationFilterChain.access$000(ApplicationFilterChain.java:59)
[jbossweb-7.2.0.Final.jar:7.2.0.Final]
at
org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:197)
[jbossweb-7.2.0.Final.jar:7.2.0.Final]
at java.security.AccessController.doPrivileged(Native Method) [rt.jar:1.7.0_15]
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
[jbossweb-7.2.0.Final.jar:7.2.0.Final]
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
[jbossweb-7.2.0.Final.jar:7.2.0.Final]
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:149)
[jbossweb-7.2.0.Final.jar:7.2.0.Final]
at
org.jboss.as.web.security.SecurityContextAssociationValve.invoke(SecurityContextAssociationValve.java:169)
[jboss-as-web-8.0.0.Alpha1-SNAPSHOT.jar:8.0.0.Alpha1-SNAPSHOT]
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:145)
[jbossweb-7.2.0.Final.jar:7.2.0.Final]
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:97)
[jbossweb-7.2.0.Final.jar:7.2.0.Final]
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:102)
[jbossweb-7.2.0.Final.jar:7.2.0.Final]
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:336)
[jbossweb-7.2.0.Final.jar:7.2.0.Final]
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856)
[jbossweb-7.2.0.Final.jar:7.2.0.Final]
at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:653)
[jbossweb-7.2.0.Final.jar:7.2.0.Final]
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:920)
[jbossweb-7.2.0.Final.jar:7.2.0.Final]
at java.lang.Thread.run(Thread.java:722) [rt.jar:1.7.0_15]
{noformat}
...it appears that we are missing interceptors for:
* TCCL assocation
* The basic PrivilegedInterceptor (should be first) (to be fair this was just added in
the past several days)
I'm not quite clear on how this interceptor chain is being assembled so, here's
the "punt".
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see:
http://www.atlassian.com/software/jira