users@jersey.java.net

Re: [Jersey] Re: Using Netbeans 6.9.1/Gassfish 3.0.1 and Jersey 1.5

From: John Lister <john.lister_at_kickstone.com>
Date: Mon, 04 Oct 2010 20:38:45 +0100

  I've copied this to the list as well, in case others find it useful...
I was going to say in my prematurely sent email, that either use the
domain.xml config file or the admin console, but paul beat me to it :)

Anyway, I've tried it but get the following exception (which I may have
been getting before - I had actually modified the code to fallback to
this method of initialising if the new code didn't work rather than
setting the flag). For now I've been using Jersey 1.2 from the contrib
glassfish repository or you can build from source, but you need to check
out version 3866 which is just before the CDI changes went it.

Anyway, exception below - this is from a stock 3.0.1 glassfish with
existing jersey modules removed and the new ones inserted (note I'm not
using the gf-bundle but separate jars - which maybe a problem?)

John

org.glassfish.deployment.common.DeploymentException: Exception #0 :null
         at org.glassfish.weld.WeldDeployer.event(WeldDeployer.java:167)
         at org.glassfish.kernel.event.EventsImpl.send(EventsImpl.java:125)
         at
org.glassfish.internal.data.ApplicationInfo.load(ApplicationInfo.java:224)
         at
com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:338)
         at
com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:183)
         at
org.glassfish.deployment.admin.DeployCommand.execute(DeployCommand.java:272)
         at
com.sun.enterprise.v3.admin.CommandRunnerImpl$1.execute(CommandRunnerImpl.java:305)
         at
com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:320)
         at
com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:1176)
         at
com.sun.enterprise.v3.admin.CommandRunnerImpl.access$900(CommandRunnerImpl.java:83)
         at
com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1235)
         at
com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1224)
         at
com.sun.enterprise.v3.admin.AdminAdapter.doCommand(AdminAdapter.java:365)
         at
com.sun.enterprise.v3.admin.AdminAdapter.service(AdminAdapter.java:204)
         at
com.sun.grizzly.tcp.http11.GrizzlyAdapter.service(GrizzlyAdapter.java:166)
         at
com.sun.enterprise.v3.server.HK2Dispatcher.dispath(HK2Dispatcher.java:100)
         at
com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:245)
         at
com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:791)
         at
com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:693)
         at
com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:954)
         at
com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:170)
         at
com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:135)
         at
com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:102)
         at
com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:88)
         at
com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:76)
         at
com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:53)
         at
com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:57)
         at com.sun.grizzly.ContextTask.run(ContextTask.java:69)
         at
com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:330)
         at
com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:309)
         at java.lang.Thread.run(Thread.java:619)
Caused by: org.jboss.weld.exceptions.DefinitionException: Exception #0 :null
         at
org.jboss.weld.bootstrap.events.AbstractDefinitionContainerEvent.fire(AbstractDefinitionContainerEvent.java:55)
         at
org.jboss.weld.bootstrap.events.AfterBeanDiscoveryImpl.fire(AfterBeanDiscoveryImpl.java:41)
         at
org.jboss.weld.bootstrap.WeldBootstrap.deployBeans(WeldBootstrap.java:379)
         at org.glassfish.weld.WeldDeployer.event(WeldDeployer.java:165)
         ... 30 more



On 04/10/2010 15:49, Jan Algermissen wrote:
> Hmm, does not work for me. Same error.
>
> John, did you manage to get it running?
>
> I even removed felix cache. will try rebooting.
>
> Jan
>
>
> Config now. Just one set of options in the domain.xml (prop is at end):
>
> <java-config debug-options="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=9009" system-classpath="" classpath-suffix="">
> <jvm-options>-XX:MaxPermSize=192m</jvm-options>
> <jvm-options>-client</jvm-options>
> <jvm-options>-XX:+UnlockDiagnosticVMOptions</jvm-options>
> <jvm-options>-XX:+LogVMOutput</jvm-options>
> <jvm-options>-XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log</jvm-options>
> <jvm-options>-Djava.endorsed.dirs=${com.sun.aas.installRoot}/modules/endorsed${path.separator}${com.sun.aas.installRoot}/lib/endorsed</jvm-options>
> <jvm-options>-Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy</jvm-options>
> <jvm-options>-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf</jvm-options>
> <jvm-options>-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as</jvm-options>
> <jvm-options>-Xmx512m</jvm-options>
> <jvm-options>-Djavax.net.ssl.keyStore=${com.sun.aas.instanceRoot}/config/keystore.jks</jvm-options>
> <jvm-options>-Djavax.net.ssl.trustStore=${com.sun.aas.instanceRoot}/config/cacerts.jks</jvm-options>
> <jvm-options>-Djava.ext.dirs=${com.sun.aas.javaRoot}/lib/ext${path.separator}${com.sun.aas.javaRoot}/jre/lib/ext${path.separator}${com.sun.aas.instan
> ceRoot}/lib/ext</jvm-options>
> <jvm-options>-Djdbc.drivers=org.apache.derby.jdbc.ClientDriver</jvm-options>
> <jvm-options>-DANTLR_USE_DIRECT_CLASS_LOADING=true</jvm-options>
> <jvm-options>-Dcom.sun.enterprise.config.config_environment_factory_class=com.sun.enterprise.config.serverbeans.AppserverConfigEnvironmentFactory</jv
> m-options>
> <jvm-options>-Dosgi.shell.telnet.port=6666</jvm-options>
> <jvm-options>-Dosgi.shell.telnet.maxconn=1</jvm-options>
> <jvm-options>-Dosgi.shell.telnet.ip=127.0.0.1</jvm-options>
> <jvm-options>-Dfelix.fileinstall.dir=${com.sun.aas.installRoot}/modules/autostart/</jvm-options>
> <jvm-options>-Dfelix.fileinstall.poll=5000</jvm-options>
> <jvm-options>-Dfelix.fileinstall.debug=1</jvm-options>
> <jvm-options>-Dfelix.fileinstall.bundles.new.start=true</jvm-options>
> <jvm-options>-Dorg.glassfish.web.rfc2109_cookie_names_enforced=false</jvm-options>
> <jvm-options>-XX:NewRatio=2</jvm-options>
> <jvm-options>-Dcom.sun.jersey.server.impl.cdi.lookupExtensionInBeanManager=true</jvm-options>
> </java-config>
>
>
>
>
>
>
>
>
>
> On Oct 4, 2010, at 4:23 PM, Paul Sandoz wrote:
>
>> On Oct 4, 2010, at 4:01 PM, Jan Algermissen wrote:
>>
>>> Paul, John
>>>
>>> Excuse my lack of knowledge....
>>>
>>> Can you tell me where I set that property when using the NB built-in glassfish?
>>>
>> Go to the Services tab and look at the Servers list. Select the properties of the GF server and look at the "Domains folder" text field value.
>>
>> cd into that folder then edit
>>
>> domains1/config/domain.xml
>>
>> Seach for an XML element:
>>
>> jvm-options
>>
>> add the system property/value to the each set of jvm-option elements present in the file e.g.:
>>
>> <jvm-options>-Dcom.sun.jersey.server.impl.cdi.lookupExtensionInBeanManager=true</jvm-options>
>>
>> then restart GF.
>>
>> Paul.
>>
>>> Jan
>>>
>>> On 04.10.2010, at 14:38, Paul Sandoz<Paul.Sandoz_at_oracle.com> wrote:
>>>
>>>> Hi Jan, John,
>>>>
>>>> The main problem is a regression in CDI/Weld that we attempted to work around but did not anticipate the NPE.
>>>>
>>>> For GF 3.0.1 we set up a backdoor to avoid the workaround. Set the following system property when running GF:
>>>>
>>>> com.sun.jersey.server.impl.cdi.lookupExtensionInBeanManager
>>>>
>>>> to a value of:
>>>>
>>>> true
>>>>
>>>>
>>>> For 3.1 I am currently not sure what we can do until a new version of CDI/Weld is integrated that fixes the regression.
>>>>
>>>> Paul.
>>>>
>>>>
>>>>
>>>> On Oct 1, 2010, at 12:55 PM, Jan Algermissen wrote:
>>>>
>>>>> John,
>>>>>
>>>>> On Oct 1, 2010, at 12:34 PM, John Lister wrote:
>>>>>
>>>>>> Hi, this looks to be an already reported issue with CDI and was introduced in one of the 1.4 builds (see https://jersey.dev.java.net/servlets/ReadMsg?list=users&msgNo=12459)
>>>>>>
>>>>> thanks for reporting that.
>>>>>
>>>>> As this (seems to) hold up working with Jersey 1.4 and above in a non-maven NetBeans environment, I'd really like to do something about it.
>>>>>
>>>>> Can anyone provide a clue how I start debugging that error?
>>>>>
>>>>> Thanks,
>>>>> Jan
>>>>>
>>>>>
>>>>>
>>>>>> John
>>>>>>
>>>>>> On 19:59, Jan Algermissen wrote:
>>>>>>> Hi,
>>>>>>>
>>>>>>> I have been trying to use NB/GF with Jersey 1.5 as described in section 12.2. [1] (see also [2]).
>>>>>>>
>>>>>>> At some point that worked, but (I think) after a really fresh install of NB (including removing the NB files in my home directory) it did not work any more.
>>>>>>>
>>>>>>> When I run an example JAX-RS Web application via 'run' from within NB and then try to access a resource class via curl I see the exception below in GlassFish logs.
>>>>>>>
>>>>>>> Can anyone provide me with a clue what to do to find out what is missing there and in which JAR I'll be able to find that?
>>>>>>>
>>>>>>> Jan
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> [1] https://jersey.dev.java.net/nonav/documentation/latest/user-guide.html
>>>>>>> [2] http://www.nordsc.com/blog/?p=574
>>>>>>>
>>>>>>>
>>>>>>> SEVERE: WebModule[/R1]StandardWrapper.Throwable
>>>>>>> java.lang.NullPointerException
>>>>>>> at com.sun.jersey.server.impl.cdi.CDIComponentProviderFactory.<init>(CDIComponentProviderFactory.java:94)
>>>>>>> at com.sun.jersey.server.impl.cdi.CDIComponentProviderFactoryInitializer.initialize(CDIComponentProviderFactoryInitializer.java:75)
>>>>>>> at com.sun.jersey.spi.container.servlet.WebComponent.configure(WebComponent.java:554)
>>>>>>> at com.sun.jersey.spi.container.servlet.ServletContainer$InternalWebComponent.configure(ServletContainer.java:280)
>>>>>>> at com.sun.jersey.spi.container.servlet.WebComponent.load(WebComponent.java:586)
>>>>>>> at com.sun.jersey.spi.container.servlet.WebComponent.init(WebComponent.java:213)
>>>>>>> at com.sun.jersey.spi.container.servlet.ServletContainer.init(ServletContainer.java:342)
>>>>>>> at com.sun.jersey.spi.container.servlet.ServletContainer.init(ServletContainer.java:516)
>>>>>>> at javax.servlet.GenericServlet.init(GenericServlet.java:242)
>>>>>>> at org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1428)
>>>>>>> at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:1073)
>>>>>>> at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:187)
>>>>>>> at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:188)
>>>>>>> at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:641)
>>>>>>> at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:97)
>>>>>>> at com.sun.enterprise.web.PESessionLockingStandardPipeline.invoke(PESessionLockingStandardPipeline.java:85)
>>>>>>> at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:185)
>>>>>>> at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:325)
>>>>>>> at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:226)
>>>>>>> at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:165)
>>>>>>> at com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:791)
>>>>>>> at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:693)
>>>>>>> at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:954)
>>>>>>> at com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:170)
>>>>>>> at com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:135)
>>>>>>> at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:102)
>>>>>>> at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:88)
>>>>>>> at com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:76)
>>>>>>> at com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:53)
>>>>>>> at com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:57)
>>>>>>> at com.sun.grizzly.ContextTask.run(ContextTask.java:69)
>>>>>>> at com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:330)
>>>>>>> at com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:309)
>>>>>>> at java.lang.Thread.run(Thread.java:637)
>>>>>>>
>>>>>>> WARNING: StandardWrapperValve[org.netbeans.rest.application.config.ApplicationConfig]: PWC1382: Allocate exception for servlet org.netbeans.rest.application.config.ApplicationConfig
>>>>>>> java.lang.NullPointerException
>>>>>>> at com.sun.jersey.server.impl.cdi.CDIComponentProviderFactory.<init>(CDIComponentProviderFactory.java:94)
>>>>>>> at com.sun.jersey.server.impl.cdi.CDIComponentProviderFactoryInitializer.initialize(CDIComponentProviderFactoryInitializer.java:75)
>>>>>>> at com.sun.jersey.spi.container.servlet.WebComponent.configure(WebComponent.java:554)
>>>>>>> at com.sun.jersey.spi.container.servlet.ServletContainer$InternalWebComponent.configure(ServletContainer.java:280)
>>>>>>> at com.sun.jersey.spi.container.servlet.WebComponent.load(WebComponent.java:586)
>>>>>>> at com.sun.jersey.spi.container.servlet.WebComponent.init(WebComponent.java:213)
>>>>>>> at com.sun.jersey.spi.container.servlet.ServletContainer.init(ServletContainer.java:342)
>>>>>>> at com.sun.jersey.spi.container.servlet.ServletContainer.init(ServletContainer.java:516)
>>>>>>> at javax.servlet.GenericServlet.init(GenericServlet.java:242)
>>>>>>> at org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1428)
>>>>>>> at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:1073)
>>>>>>> at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:187)
>>>>>>> at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:188)
>>>>>>> at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:641)
>>>>>>> at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:97)
>>>>>>> at com.sun.enterprise.web.PESessionLockingStandardPipeline.invoke(PESessionLockingStandardPipeline.java:85)
>>>>>>> at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:185)
>>>>>>> at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:325)
>>>>>>> at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:226)
>>>>>>> at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:165)
>>>>>>> at com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:791)
>>>>>>> at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:693)
>>>>>>> at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:954)
>>>>>>> at com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:170)
>>>>>>> at com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:135)
>>>>>>> at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:102)
>>>>>>> at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:88)
>>>>>>> at com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:76)
>>>>>>> at com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:53)
>>>>>>> at com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:57)
>>>>>>> at com.sun.grizzly.ContextTask.run(ContextTask.java:69)
>>>>>>> at com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:330)
>>>>>>> at com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:309)
>>>>>>> at java.lang.Thread.run(Thread.java:637)
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> ============================
>>>>>>> FULL LOG SINCE STARTUP OF GF
>>>>>>> ============================
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> Oct 1, 2010 8:54:22 AM com.sun.enterprise.glassfish.bootstrap.ASMain main
>>>>>>> INFO: Launching GlassFish on Felix platform
>>>>>>> Welcome to Felix
>>>>>>> ================
>>>>>>> INFO: Perform lazy SSL initialization for the listener 'http-listener-2'
>>>>>>> INFO: Grizzly Framework 1.9.18-o started in: 122ms listening on port 8080
>>>>>>> INFO: Grizzly Framework 1.9.18-o started in: 11ms listening on port 8181
>>>>>>> INFO: Grizzly Framework 1.9.18-o started in: 4ms listening on port 4848
>>>>>>> INFO: Starting Grizzly Framework 1.9.18-o - Fri Oct 01 08:54:32 CEST 2010
>>>>>>> INFO: Grizzly Framework 1.9.18-o started in: 7ms listening on port 3700
>>>>>>> INFO: Starting Grizzly Framework 1.9.18-o - Fri Oct 01 08:54:33 CEST 2010
>>>>>>> INFO: Grizzly Framework 1.9.18-o started in: 15ms listening on port 7676
>>>>>>> INFO: Using com.sun.enterprise.transaction.jts.JavaEETransactionManagerJTSDelegate as the delegate
>>>>>>> INFO: SEC1002: Security Manager is OFF.
>>>>>>> INFO: Security startup service called
>>>>>>> INFO: SEC1143: Loading policy provider com.sun.enterprise.security.provider.PolicyWrapper.
>>>>>>> INFO: Realm admin-realm of classtype com.sun.enterprise.security.auth.realm.file.FileRealm successfully created.
>>>>>>> INFO: Realm file of classtype com.sun.enterprise.security.auth.realm.file.FileRealm successfully created.
>>>>>>> INFO: Realm certificate of classtype com.sun.enterprise.security.auth.realm.certificate.CertificateRealm successfully created.
>>>>>>> INFO: Security service(s) started successfully....
>>>>>>> INFO: Created HTTP listener http-listener-1 on port 8080
>>>>>>> INFO: Created HTTP listener http-listener-2 on port 8181
>>>>>>> INFO: Created HTTP listener admin-listener on port 4848
>>>>>>> INFO: Created virtual server server
>>>>>>> INFO: Created virtual server __asadmin
>>>>>>> INFO: Virtual server server loaded system default web module
>>>>>>> INFO: WELD-000900 1.0.1 (SP3)
>>>>>>> INFO: Hibernate Validator bean-validator-3.0-JBoss-4.0.2
>>>>>>> INFO: Instantiated an instance of org.hibernate.validator.engine.resolver.JPATraversableResolver.
>>>>>>> INFO: Registering the Jersey servlet application, named org.netbeans.rest.application.config.ApplicationConfig, at the servlet mapping, /resources/*, with the Application class of the same name
>>>>>>> INFO: Loading application R1 at /R1
>>>>>>> INFO: Loading R1 Application done is 9301 ms
>>>>>>> INFO: GlassFish Server Open Source Edition 3.0.1 (22) startup time : Felix(8474ms) startup services(11397ms) total(19871ms)
>>>>>>> INFO: Binding RMI port to *:8686
>>>>>>> INFO: Instantiated an instance of org.hibernate.validator.engine.resolver.JPATraversableResolver.
>>>>>>> INFO: JMXStartupService: Started JMXConnector, JMXService URL = service:jmx:rmi://localhost:8686/jndi/rmi://localhost:8686/jmxrmi
>>>>>>> INFO: Created HTTP listener http-listener-1 on port 8080
>>>>>>> INFO: Grizzly Framework 1.9.18-o started in: 3ms listening on port 8080
>>>>>>> INFO: [Thread[GlassFish Kernel Main Thread,5,main]] started
>>>>>>> SEVERE: Cannot stop module web
>>>>>>> java.lang.IllegalStateException: Unknown JCDI-enabled managed bean com.sun.jersey.spi.container.servlet.ServletContainer_at_602bace2 of class class com.sun.jersey.spi.container.servlet.ServletContainer
>>>>>>> at com.sun.enterprise.container.common.impl.managedbean.ManagedBeanManagerImpl.destroyManagedBean(ManagedBeanManagerImpl.java:533)
>>>>>>> at com.sun.enterprise.container.common.impl.util.InjectionManagerImpl.destroyManagedObject(InjectionManagerImpl.java:339)
>>>>>>> at com.sun.web.server.J2EEInstanceListener.handleAfterEvent(J2EEInstanceListener.java:328)
>>>>>>> at com.sun.web.server.J2EEInstanceListener.instanceEvent(J2EEInstanceListener.java:116)
>>>>>>> at org.apache.catalina.util.InstanceSupport.fireInstanceEvent(InstanceSupport.java:384)
>>>>>>> at org.apache.catalina.core.StandardWrapper.unload(StandardWrapper.java:1745)
>>>>>>> at org.apache.catalina.core.StandardWrapper.stop(StandardWrapper.java:2041)
>>>>>>> at org.apache.catalina.core.StandardContext.stop(StandardContext.java:5444)
>>>>>>> at com.sun.enterprise.web.WebModule.stop(WebModule.java:530)
>>>>>>> at org.apache.catalina.core.ContainerBase.removeChild(ContainerBase.java:1057)
>>>>>>> at com.sun.enterprise.web.WebContainer.unloadWebModule(WebContainer.java:2158)
>>>>>>> at com.sun.enterprise.web.WebContainer.unloadWebModule(WebContainer.java:2106)
>>>>>>> at com.sun.enterprise.web.WebApplication.stop(WebApplication.java:133)
>>>>>>> at org.glassfish.internal.data.EngineRef.stop(EngineRef.java:165)
>>>>>>> at org.glassfish.internal.data.ModuleInfo.stop(ModuleInfo.java:268)
>>>>>>> at org.glassfish.internal.data.ApplicationInfo.stop(ApplicationInfo.java:251)
>>>>>>> at com.sun.enterprise.v3.server.ApplicationLifecycle.unload(ApplicationLifecycle.java:759)
>>>>>>> at com.sun.enterprise.v3.server.ApplicationLifecycle.undeploy(ApplicationLifecycle.java:790)
>>>>>>> at org.glassfish.deployment.admin.UndeployCommand.execute(UndeployCommand.java:184)
>>>>>>> at com.sun.enterprise.v3.admin.CommandRunnerImpl$1.execute(CommandRunnerImpl.java:310)
>>>>>>> at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:320)
>>>>>>> at com.sun.enterprise.v3.admin.CommandRunner