Now it's ok
thanks
Il 26/08/2012 15:45, Romain Manni-Bucau ha scritto:
can you give it a try with an up to date snapshot please?
*Romain Manni-Bucau*
*Twitter: @rmannibucau*
*Blog: http://rmannibucau.wordpress.com*
2012/8/26 Enrico Olivelli <[email protected]>
The problem appears on "start", if I restart TomEE there is no problem
when you click "Run" on a webapp actually NetBeans calls:
-- un deploy
undeploy?path=/**SecureApplication
-- deploy (first call, with good classloader)
deploy?config=file%3A%2FC%3A%**2FUsers%2FUtente%2FAppData%**
2FLocal%2FTemp%**2Fcontext3376652197219720975.**
xml&path=/SecureApplication
-- start (second call, with /manager contextclassloader in TomEE)
start?path=/SecureApplication
this is the "second call", the bad one
at org.apache.tomee.catalina.**TomcatWebAppBuilder.**afterStart(**
TomcatWebAppBuilder.java:991)
Il 26/08/2012 08:35, Enrico Olivelli ha scritto:
Hi,
I was writing a Tomcat patch to enable JAASRealm to load configuration
from webapp classssloader.
I noticed that sometimes my realm was "started" using a bad
ContextClassLoader (the loader of /manager servlet)
I was (of course!) using my local TomEE snapshot....
On a simple Tomcat this problem does not happen, on TomEE Realm
startInternal is called sometimes with a good CL, sometimes with the bad one
Bad stacktrace on TomEE:
java.lang.Exception: cl=WebappClassLoader
context: /manager
delegate: false
repositories:
----------> Parent Classloader:
org.apache.catalina.loader.**StandardClassLoader@9fa0f19
at org.apache.catalina.realm.**LocalConfigJAASRealm.**
parseClassNames(**LocalConfigJAASRealm.java:78)
at org.apache.catalina.realm.**JAASRealm.startInternal(**
JAASRealm.java:606)
at org.apache.catalina.util.**LifecycleBase.start(**
LifecycleBase.java:150)
at org.apache.catalina.realm.**CombinedRealm.startInternal(**
CombinedRealm.java:201)
at org.apache.catalina.util.**LifecycleBase.start(**
LifecycleBase.java:150)
at org.apache.catalina.core.**ContainerBase.setRealm(**
ContainerBase.java:791)
at org.apache.tomee.catalina.**TomcatWebAppBuilder.**afterStart(**
TomcatWebAppBuilder.java:991)
at org.apache.tomee.catalina.**GlobalListenerSupport.**
lifecycleEvent(**GlobalListenerSupport.java:**104)
at org.apache.catalina.util.**LifecycleSupport.**fireLifecycleEvent(*
*LifecycleSupport.java:119)
at org.apache.catalina.util.**LifecycleBase.**fireLifecycleEvent(**
LifecycleBase.java:90)
at org.apache.catalina.util.**LifecycleBase.**setStateInternal(**
LifecycleBase.java:401)
at org.apache.catalina.util.**LifecycleBase.start(**
LifecycleBase.java:168)
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:618)
at org.apache.catalina.startup.**HostConfig.deployDescriptor(**
HostConfig.java:650)
at org.apache.catalina.startup.**HostConfig.deployApps(**
HostConfig.java:531)
at org.apache.catalina.startup.**HostConfig.check(HostConfig.**
java:1468)
at sun.reflect.**NativeMethodAccessorImpl.**invoke0(Native Method)
at sun.reflect.**NativeMethodAccessorImpl.**invoke(**
NativeMethodAccessorImpl.java:**57)
at sun.reflect.**DelegatingMethodAccessorImpl.**invoke(**
DelegatingMethodAccessorImpl.**java:43)
at java.lang.reflect.Method.**invoke(Method.java:601)
at org.apache.tomcat.util.**modeler.BaseModelMBean.invoke(**
BaseModelMBean.java:301)
at com.sun.jmx.interceptor.**DefaultMBeanServerInterceptor.**invoke(*
*DefaultMBeanServerInterceptor.**java:819)
at com.sun.jmx.mbeanserver.**JmxMBeanServer.invoke(**
JmxMBeanServer.java:791)
at org.apache.catalina.manager.**ManagerServlet.check(**
ManagerServlet.java:1436)
at org.apache.catalina.manager.**ManagerServlet.deploy(**
ManagerServlet.java:856)
at org.apache.catalina.manager.**ManagerServlet.doGet(**
ManagerServlet.java:353)
at javax.servlet.http.**HttpServlet.service(**HttpServlet.java:621)
at javax.servlet.http.**HttpServlet.service(**HttpServlet.java:722)
at org.apache.catalina.core.**ApplicationFilterChain.**
internalDoFilter(**ApplicationFilterChain.java:**305)
at org.apache.catalina.core.**ApplicationFilterChain.**doFilter(**
ApplicationFilterChain.java:**210)
at org.apache.catalina.filters.**SetCharacterEncodingFilter.**
doFilter(**SetCharacterEncodingFilter.**java:108)
at org.apache.catalina.core.**ApplicationFilterChain.**
internalDoFilter(**ApplicationFilterChain.java:**243)
at org.apache.catalina.core.**ApplicationFilterChain.**doFilter(**
ApplicationFilterChain.java:**210)
at org.apache.catalina.core.**StandardWrapperValve.invoke(**
StandardWrapperValve.java:225)
at org.apache.catalina.core.**StandardContextValve.invoke(**
StandardContextValve.java:123)
at org.apache.tomee.catalina.**OpenEJBValve.invoke(**
OpenEJBValve.java:45)
at org.apache.catalina.**authenticator.**AuthenticatorBase.invoke(**
AuthenticatorBase.java:581)
at org.apache.catalina.core.**StandardHostValve.invoke(**
StandardHostValve.java:168)
at org.apache.catalina.valves.**ErrorReportValve.invoke(**
ErrorReportValve.java:98)
at org.apache.catalina.valves.**AccessLogValve.invoke(**
AccessLogValve.java:927)
Good stacktrace on TomEE
java.lang.Exception: cl=WebappClassLoader
context: /SecureApplication
delegate: false
repositories:
/WEB-INF/classes/
----------> Parent Classloader:
org.apache.catalina.loader.**StandardClassLoader@9fa0f19
at org.apache.catalina.realm.**LocalConfigJAASRealm.**
parseClassNames(**LocalConfigJAASRealm.java:78)
at org.apache.catalina.realm.**JAASRealm.startInternal(**
JAASRealm.java:605)
at org.apache.catalina.util.**LifecycleBase.start(**
LifecycleBase.java:150)
at org.apache.catalina.core.**StandardContext.startInternal(**
StandardContext.java:5168)
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:618)
at org.apache.catalina.startup.**HostConfig.deployDescriptor(**
HostConfig.java:650)
at org.apache.catalina.startup.**HostConfig.deployApps(**
HostConfig.java:531)
at org.apache.catalina.startup.**HostConfig.check(HostConfig.**
java:1468)
at sun.reflect.**NativeMethodAccessorImpl.**invoke0(Native Method)
at sun.reflect.**NativeMethodAccessorImpl.**invoke(**
NativeMethodAccessorImpl.java:**57)
at sun.reflect.**DelegatingMethodAccessorImpl.**invoke(**
DelegatingMethodAccessorImpl.**java:43)
at java.lang.reflect.Method.**invoke(Method.java:601)
at org.apache.tomcat.util.**modeler.BaseModelMBean.invoke(**
BaseModelMBean.java:301)
at com.sun.jmx.interceptor.**DefaultMBeanServerInterceptor.**invoke(*
*DefaultMBeanServerInterceptor.**java:819)
at com.sun.jmx.mbeanserver.**JmxMBeanServer.invoke(**
JmxMBeanServer.java:791)
at org.apache.catalina.manager.**ManagerServlet.check(**
ManagerServlet.java:1436)
at org.apache.catalina.manager.**ManagerServlet.deploy(**
ManagerServlet.java:856)
at org.apache.catalina.manager.**ManagerServlet.doGet(**
ManagerServlet.java:353)
at javax.servlet.http.**HttpServlet.service(**HttpServlet.java:621)
at javax.servlet.http.**HttpServlet.service(**HttpServlet.java:722)
at org.apache.catalina.core.**ApplicationFilterChain.**
internalDoFilter(**ApplicationFilterChain.java:**305)
at org.apache.catalina.core.**ApplicationFilterChain.**doFilter(**
ApplicationFilterChain.java:**210)
at org.apache.catalina.filters.**SetCharacterEncodingFilter.**
doFilter(**SetCharacterEncodingFilter.**java:108)
at org.apache.catalina.core.**ApplicationFilterChain.**
internalDoFilter(**ApplicationFilterChain.java:**243)
at org.apache.catalina.core.**ApplicationFilterChain.**doFilter(**
ApplicationFilterChain.java:**210)
at org.apache.catalina.core.**StandardWrapperValve.invoke(**
StandardWrapperValve.java:225)
at org.apache.catalina.core.**StandardContextValve.invoke(**
StandardContextValve.java:123)
at org.apache.tomee.catalina.**OpenEJBValve.invoke(**
OpenEJBValve.java:45)
at org.apache.catalina.**authenticator.**AuthenticatorBase.invoke(**
AuthenticatorBase.java:581)
at org.apache.catalina.core.**StandardHostValve.invoke(**
StandardHostValve.java:168)
at org.apache.catalina.valves.**ErrorReportValve.invoke(**
ErrorReportValve.java:98)
at org.apache.catalina.valves.**AccessLogValve.invoke(**
AccessLogValve.java:927)
at org.apache.catalina.core.**StandardEngineValve.invoke(**
StandardEngineValve.java:118)
at org.apache.catalina.connector.**CoyoteAdapter.service(**
CoyoteAdapter.java:407)
at org.apache.coyote.http11.**AbstractHttp11Processor.**process(**
AbstractHttp11Processor.java:**1001)
at org.apache.coyote.**AbstractProtocol$**AbstractConnectionHandler.*
*process(AbstractProtocol.java:**585)
at org.apache.tomcat.util.net.**JIoEndpoint$SocketProcessor.**
run(JIoEndpoint.java:312)
at java.util.concurrent.**ThreadPoolExecutor.runWorker(**
ThreadPoolExecutor.java:1110)
at java.util.concurrent.**ThreadPoolExecutor$Worker.run(**
ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.**java:722)
Good stacktrace on Tomcat 7.0.29
java.lang.Exception: cl=WebappClassLoader
context: /SecureApplication
delegate: false
repositories:
/WEB-INF/classes/
----------> Parent Classloader:
org.apache.catalina.loader.**StandardClassLoader@5faf89c5
at org.apache.catalina.realm.**LocalConfigJAASRealm.**
parseClassNames(**LocalConfigJAASRealm.java:78)
at org.apache.catalina.realm.**JAASRealm.startInternal(**
JAASRealm.java:606)
at org.apache.catalina.util.**LifecycleBase.start(**
LifecycleBase.java:150)
at org.apache.catalina.core.**StandardContext.startInternal(**
StandardContext.java:5156)
at org.apache.catalina.util.**LifecycleBase.start(**
LifecycleBase.java:150)
at org.apache.catalina.core.**ContainerBase.**addChildInternal(**
ContainerBase.java:895)
at org.apache.catalina.core.**ContainerBase.addChild(**
ContainerBase.java:871)
at org.apache.catalina.core.**StandardHost.addChild(**
StandardHost.java:615)
at org.apache.catalina.startup.**HostConfig.deployDescriptor(**
HostConfig.java:649)
at org.apache.catalina.startup.**HostConfig.deployApps(**
HostConfig.java:530)
at org.apache.catalina.startup.**HostConfig.check(HostConfig.**
java:1471)
at sun.reflect.**NativeMethodAccessorImpl.**invoke0(Native Method)
at sun.reflect.**NativeMethodAccessorImpl.**invoke(**
NativeMethodAccessorImpl.java:**57)
at sun.reflect.**DelegatingMethodAccessorImpl.**invoke(**
DelegatingMethodAccessorImpl.**java:43)
at java.lang.reflect.Method.**invoke(Method.java:601)
at org.apache.tomcat.util.**modeler.BaseModelMBean.invoke(**
BaseModelMBean.java:301)
at com.sun.jmx.interceptor.**DefaultMBeanServerInterceptor.**invoke(*
*DefaultMBeanServerInterceptor.**java:819)
at com.sun.jmx.mbeanserver.**JmxMBeanServer.invoke(**
JmxMBeanServer.java:791)
at org.apache.catalina.manager.**ManagerServlet.check(**
ManagerServlet.java:1436)
at org.apache.catalina.manager.**ManagerServlet.deploy(**
ManagerServlet.java:856)
at org.apache.catalina.manager.**ManagerServlet.doGet(**
ManagerServlet.java:353)
at javax.servlet.http.**HttpServlet.service(**HttpServlet.java:621)
at javax.servlet.http.**HttpServlet.service(**HttpServlet.java:722)
at org.apache.catalina.core.**ApplicationFilterChain.**
internalDoFilter(**ApplicationFilterChain.java:**305)
at org.apache.catalina.core.**ApplicationFilterChain.**doFilter(**
ApplicationFilterChain.java:**210)
at org.netbeans.modules.web.**monitor.server.MonitorFilter.**
doFilter(MonitorFilter.java:**393)
at org.apache.catalina.core.**ApplicationFilterChain.**
internalDoFilter(**ApplicationFilterChain.java:**243)
at org.apache.catalina.core.**ApplicationFilterChain.**doFilter(**
ApplicationFilterChain.java:**210)
at org.apache.catalina.filters.**SetCharacterEncodingFilter.**
doFilter(**SetCharacterEncodingFilter.**java:108)
at org.apache.catalina.core.**ApplicationFilterChain.**
internalDoFilter(**ApplicationFilterChain.java:**243)
at org.apache.catalina.core.**ApplicationFilterChain.**doFilter(**
ApplicationFilterChain.java:**210)
at org.apache.catalina.core.**StandardWrapperValve.invoke(**
StandardWrapperValve.java:225)
at org.apache.catalina.core.**StandardContextValve.invoke(**
StandardContextValve.java:169)
at org.apache.catalina.**authenticator.**AuthenticatorBase.invoke(**
AuthenticatorBase.java:581)
at org.apache.catalina.core.**StandardHostValve.invoke(**
StandardHostValve.java:168)
at org.apache.catalina.valves.**ErrorReportValve.invoke(**
ErrorReportValve.java:98)
at org.apache.catalina.valves.**AccessLogValve.invoke(**
AccessLogValve.java:927)
at org.apache.catalina.core.**StandardEngineValve.invoke(**
StandardEngineValve.java:118)
at org.apache.catalina.connector.**CoyoteAdapter.service(**
CoyoteAdapter.java:407)
at org.apache.coyote.http11.**AbstractHttp11Processor.**process(**
AbstractHttp11Processor.java:**999)
at org.apache.coyote.**AbstractProtocol$**AbstractConnectionHandler.*
*process(AbstractProtocol.java:**565)
at org.apache.tomcat.util.net.**JIoEndpoint$SocketProcessor.**
run(JIoEndpoint.java:309)
at java.util.concurrent.**ThreadPoolExecutor.runWorker(**
ThreadPoolExecutor.java:1110)
at java.util.concurrent.**ThreadPoolExecutor$Worker.run(**
ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.**java:722)