Discussion:
javax.ws.rs.core.SecurityContext is not visible from class loader
Tom Molloy
2015-06-18 17:29:54 UTC
Permalink
We are running an app that uses Glassfish Jersey and the javax.ws.rs 2.0.
This is an existing app that we are attempting run on TomEE Plus 1.7x. I
realize that TomEE ships with the rs 1.0 implementation. We were able to
get over some classloader issues by including the property setting in the
system.props. openejb.classloader.forced-load = javax.ws.rs.

That allowed our app to run, but we are getting a startup error. Any
thoughts or ways to suppress? It's not affecting functionality but clients
are not big fans of random stack traces.

Jun 18, 2015 12:48:52 PM org.apache.openejb.cdi.CdiBuilder initSingleton
INFO: Existing thread singleton service in SystemInstance():
***@750221a1
Jun 18, 2015 12:48:52 PM
org.apache.openejb.observer.ObserverManager$MethodInvocation invoke
SEVERE: error invoking
***@10e3059a
java.lang.IllegalArgumentException: interface
javax.ws.rs.core.SecurityContext is not visible from class loader
at java.lang.reflect.Proxy$ProxyClassFactory.apply(Unknown Source)
at java.lang.reflect.Proxy$ProxyClassFactory.apply(Unknown Source)
at java.lang.reflect.WeakCache$Factory.get(Unknown Source)
at java.lang.reflect.WeakCache.get(Unknown Source)
at java.lang.reflect.Proxy.getProxyClass0(Unknown Source)
at java.lang.reflect.Proxy.newProxyInstance(Unknown Source)
at
org.apache.openejb.server.cxf.rs.CxfRSService$ContextBean.<init>(CxfRSService.java:184)
at
org.apache.openejb.server.cxf.rs.CxfRSService.contextCDIIntegration(CxfRSService.java:104)
at
org.apache.openejb.server.cxf.rs.CxfRSService.integrateCDIAndJaxRsInjections(CxfRSService.java:98)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at
org.apache.openejb.observer.ObserverManager$MethodInvocation.invoke(ObserverManager.java:399)
at
org.apache.openejb.observer.ObserverManager.doFire(ObserverManager.java:110)
at
org.apache.openejb.observer.ObserverManager.fireEvent(ObserverManager.java:99)
at
org.apache.openejb.loader.SystemInstance.fireEvent(SystemInstance.java:134)
at
org.apache.openejb.cdi.ThreadSingletonServiceImpl.initialize(ThreadSingletonServiceImpl.java:150)
at org.apache.openejb.cdi.CdiBuilder.build(CdiBuilder.java:41)
at
org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:797)
at
org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:623)
at
org.apache.tomee.catalina.TomcatWebAppBuilder.startInternal(TomcatWebAppBuilder.java:1248)
at
org.apache.tomee.catalina.TomcatWebAppBuilder.configureStart(TomcatWebAppBuilder.java:1087)
at
org.apache.tomee.catalina.GlobalListenerSupport.lifecycleEvent(GlobalListenerSupport.java:130)
at
org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
at
org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)
at
org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5378)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at
org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:649)
at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:1083)
at
org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1880)
at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)




--
View this message in context: http://tomee-openejb.979440.n4.nabble.com/javax-ws-rs-core-SecurityContext-is-not-visible-from-class-loader-tp4675356.html
Sent from the TomEE Users mailing list archive at Nabble.com.
Romain Manni-Bucau
2015-06-18 18:40:54 UTC
Permalink
Hi

Did you try skipping jaxrs api without rekying on child first behavior:
http://tomee.apache.org/tip-jersey-client.html?
Post by Tom Molloy
We are running an app that uses Glassfish Jersey and the javax.ws.rs 2.0.
This is an existing app that we are attempting run on TomEE Plus 1.7x. I
realize that TomEE ships with the rs 1.0 implementation. We were able to
get over some classloader issues by including the property setting in the
system.props. openejb.classloader.forced-load = javax.ws.rs.
That allowed our app to run, but we are getting a startup error. Any
thoughts or ways to suppress? It's not affecting functionality but clients
are not big fans of random stack traces.
Jun 18, 2015 12:48:52 PM org.apache.openejb.cdi.CdiBuilder initSingleton
Jun 18, 2015 12:48:52 PM
org.apache.openejb.observer.ObserverManager$MethodInvocation invoke
SEVERE: error invoking
java.lang.IllegalArgumentException: interface
javax.ws.rs.core.SecurityContext is not visible from class loader
at java.lang.reflect.Proxy$ProxyClassFactory.apply(Unknown Source)
at java.lang.reflect.Proxy$ProxyClassFactory.apply(Unknown Source)
at java.lang.reflect.WeakCache$Factory.get(Unknown Source)
at java.lang.reflect.WeakCache.get(Unknown Source)
at java.lang.reflect.Proxy.getProxyClass0(Unknown Source)
at java.lang.reflect.Proxy.newProxyInstance(Unknown Source)
at
org.apache.openejb.server.cxf.rs.CxfRSService$ContextBean.<init>(CxfRSService.java:184)
at
org.apache.openejb.server.cxf.rs.CxfRSService.contextCDIIntegration(CxfRSService.java:104)
at
org.apache.openejb.server.cxf.rs.CxfRSService.integrateCDIAndJaxRsInjections(CxfRSService.java:98)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at
org.apache.openejb.observer.ObserverManager$MethodInvocation.invoke(ObserverManager.java:399)
at
org.apache.openejb.observer.ObserverManager.doFire(ObserverManager.java:110)
at
org.apache.openejb.observer.ObserverManager.fireEvent(ObserverManager.java:99)
at
org.apache.openejb.loader.SystemInstance.fireEvent(SystemInstance.java:134)
at
org.apache.openejb.cdi.ThreadSingletonServiceImpl.initialize(ThreadSingletonServiceImpl.java:150)
at org.apache.openejb.cdi.CdiBuilder.build(CdiBuilder.java:41)
at
org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:797)
at
org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:623)
at
org.apache.tomee.catalina.TomcatWebAppBuilder.startInternal(TomcatWebAppBuilder.java:1248)
at
org.apache.tomee.catalina.TomcatWebAppBuilder.configureStart(TomcatWebAppBuilder.java:1087)
at
org.apache.tomee.catalina.GlobalListenerSupport.lifecycleEvent(GlobalListenerSupport.java:130)
at
org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
at
org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)
at
org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5378)
at
org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at
org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)
at
org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)
at
org.apache.catalina.core.StandardHost.addChild(StandardHost.java:649)
at
org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:1083)
at
org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1880)
at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
--
http://tomee-openejb.979440.n4.nabble.com/javax-ws-rs-core-SecurityContext-is-not-visible-from-class-loader-tp4675356.html
Sent from the TomEE Users mailing list archive at Nabble.com.
Tom Molloy
2015-06-18 18:46:20 UTC
Permalink
Depends what you mean by skipping. We also have this property set that cured
another error. Is this what you are referring to?
openejb.jaxrs.application = false



--
View this message in context: http://tomee-openejb.979440.n4.nabble.com/javax-ws-rs-core-SecurityContext-is-not-visible-from-class-loader-tp4675356p4675359.html
Sent from the TomEE Users mailing list archive at Nabble.com.
Romain Manni-Bucau
2015-06-18 19:32:19 UTC
Permalink
No openejb.api.javax.ws.rs.Path.validation=false
Post by Tom Molloy
Depends what you mean by skipping. We also have this property set that cured
another error. Is this what you are referring to?
openejb.jaxrs.application = false
--
http://tomee-openejb.979440.n4.nabble.com/javax-ws-rs-core-SecurityContext-is-not-visible-from-class-loader-tp4675356p4675359.html
Sent from the TomEE Users mailing list archive at Nabble.com.
Tom Molloy
2015-06-18 20:18:33 UTC
Permalink
Thanks for clarifying. I gave that a try. Same result. Thanks for the
thought.



--
View this message in context: http://tomee-openejb.979440.n4.nabble.com/javax-ws-rs-core-SecurityContext-is-not-visible-from-class-loader-tp4675356p4675361.html
Sent from the TomEE Users mailing list archive at Nabble.com.
Romain Manni-Bucau
2015-06-18 21:13:26 UTC
Permalink
Then no trivial way to solve it ATM. TomEE 7 will implicitely solve it btw
and is close to release
Post by Tom Molloy
Thanks for clarifying. I gave that a try. Same result. Thanks for the
thought.
--
http://tomee-openejb.979440.n4.nabble.com/javax-ws-rs-core-SecurityContext-is-not-visible-from-class-loader-tp4675356p4675361.html
Sent from the TomEE Users mailing list archive at Nabble.com.
Loading...