<< Back to previous view

[GLASSFISH-21027] Cannot deploy on GF 4.0.1 (nightly latest) but can deploy on GF 4.0 and GF 3.1.1 Created: 02/Apr/14  Updated: 19/Apr/14

Status: Reopened
Project: glassfish
Component/s: cdi
Affects Version/s: 4.0.1
Fix Version/s: None

Type: Bug Priority: Blocker
Reporter: mkarg Assignee: phil.zampino
Resolution: Unresolved Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

4.0.1 (nightly latest), JDK 1.8.0 (32 Bit), Win 7 Pro SP1 (64 Bit)


Tags:
Participants: Hong Zhang, jjsnyder83, mkarg and phil.zampino

 Description   

My rather complex EAR deploys without any problem on GF 4.0 and GF 3.1.1 but not at all on GF 4.0.1!

I am getting the following error message:

remote failure: Fehler beim Deployment: Exception while loading the app : java.lang.IllegalStateException: ContainerBase.addChild: start: org.apache.catalina.Li
fecycleException: com.google.common.util.concurrent.UncheckedExecutionException: org.jboss.weld.exceptions.IllegalStateException: WELD-001328 Unable to identify
 the correct BeanManager. The calling class org.jboss.weld.servlet.WeldInitialListener is not placed in bean archive. Weitere Informationen finden Sie unter server.log.
Command deploy failed.

(Also see attched server.log for more information!)

The strange thing is that I am not using neither CDI in common nor WELD in particular at all! The EAR is completely CDI free, moreover it actively switches CDI completely OFF thanks to bean-discovery-mode="none" in beans.xml!

This is a blocker for us as we cannot deploy anymore!

EAR file is closed source and must not get published in JIRA, so if you need it to reproduce, please provide an email address where we can send the file to.



 Comments   
Comment by mkarg [ 02/Apr/14 10:20 AM ]

Seems reporters are not allowed to attach files to JIRA, so please find the server.log here instead as a comment:

...

[2014-04-02T12:06:29.248+0200] [glassfish 4.0] [INFO] [AS-EJB-00036] [javax.enterprise.ejb.container] [tid: _ThreadID=50 _ThreadName=admin-listener(5)] [timeMillis: 1396433189248] [levelValue: 800] [[
  TopLevel AvailabilityService.getAvailabilityEnabled: [true]]]

[2014-04-02T12:06:29.263+0200] [glassfish 4.0] [INFO] [AS-EJB-00037] [javax.enterprise.ejb.container] [tid: _ThreadID=50 _ThreadName=admin-listener(5)] [timeMillis: 1396433189263] [levelValue: 800] [[
  TopLevel EjbAvailabilityService.getAvailabilityEnabled: [true]]]

[2014-04-02T12:06:29.263+0200] [glassfish 4.0] [INFO] [AS-EJB-00038] [javax.enterprise.ejb.container] [tid: _ThreadID=50 _ThreadName=admin-listener(5)] [timeMillis: 1396433189263] [levelValue: 800] [[
  Global AvailabilityEnabled: [true], application AvailabilityEnabled: [false]]]

[2014-04-02T12:06:29.263+0200] [glassfish 4.0] [INFO] [AS-EJB-00040] [javax.enterprise.ejb.container] [tid: _ThreadID=50 _ThreadName=admin-listener(5)] [timeMillis: 1396433189263] [levelValue: 800] [[
  StatefulContainerBuilder AvailabilityEnabled [false] for this application]]

[2014-04-02T12:06:29.263+0200] [glassfish 4.0] [INFO] [AS-EJB-00041] [javax.enterprise.ejb.container] [tid: _ThreadID=50 _ThreadName=admin-listener(5)] [timeMillis: 1396433189263] [levelValue: 800] [[
  StatefulContainerBuilder.buildStoreManager() storeName: [ImplementMeasureWizardBean-91516618925670443-BackingStore]]]

[2014-04-02T12:06:29.263+0200] [glassfish 4.0] [INFO] [] [org.glassfish.ha.store.adapter.file.FileBackingStore] [tid: _ThreadID=50 _ThreadName=admin-listener(5)] [timeMillis: 1396433189263] [levelValue: 800] [[
  [FileBackingStore::initialize] Successfully Created and initialized store. Working dir: C:\glassfish4\glassfish\domains\domain1\session-store\ImplementMeasureWizardBean-91516618925670443; Configuration: BackingStoreConfiguration{clusterName='null', instanceName='null', storeName='ImplementMeasureWizardBean-91516618925670443-BackingStore', shortUniqueName='91516618925670443', storeType='file', maxIdleTimeInSeconds=-1, relaxVersionCheck='null', maxLoadWaitTimeInSeconds=0, baseDirectoryName='C:\glassfish4\glassfish\domains\domain1\session-store\ImplementMeasureWizardBean-91516618925670443', keyClazz=interface java.io.Serializable, valueClazz=class org.glassfish.ha.store.util.SimpleMetadata, synchronousSave=false, typicalPayloadSizeInKiloBytes=0, vendorSpecificSettings={value.class.is.thread.safe=true, async.replication=true, start.gms=false, local.caching=true, broadcast.remove.expired=false, key.transformer=com.sun.ejb.base.sfsb.util.SimpleKeyGenerator@126721f}}]]

[2014-04-02T12:06:29.263+0200] [glassfish 4.0] [INFO] [AS-EJB-00043] [javax.enterprise.ejb.container] [tid: _ThreadID=50 _ThreadName=admin-listener(5)] [timeMillis: 1396433189263] [levelValue: 800] [[
  StatefulContainerbuilder instantiated store: org.glassfish.ha.store.adapter.file.FileBackingStore@223cdf, with ha-enabled [false], and backing store configuration: BackingStoreConfiguration{clusterName='null', instanceName='null', storeName='ImplementMeasureWizardBean-91516618925670443-BackingStore', shortUniqueName='91516618925670443', storeType='file', maxIdleTimeInSeconds=-1, relaxVersionCheck='null', maxLoadWaitTimeInSeconds=0, baseDirectoryName='C:\glassfish4\glassfish\domains\domain1\session-store\ImplementMeasureWizardBean-91516618925670443', keyClazz=interface java.io.Serializable, valueClazz=class org.glassfish.ha.store.util.SimpleMetadata, synchronousSave=false, typicalPayloadSizeInKiloBytes=0, vendorSpecificSettings={value.class.is.thread.safe=true, async.replication=true, start.gms=false, local.caching=true, broadcast.remove.expired=false, key.transformer=com.sun.ejb.base.sfsb.util.SimpleKeyGenerator@126721f}}]]

[2014-04-02T12:06:29.263+0200] [glassfish 4.0] [INFO] [AS-EJB-00054] [javax.enterprise.ejb.container] [tid: _ThreadID=50 _ThreadName=admin-listener(5)] [timeMillis: 1396433189263] [levelValue: 800] [[
  Portable JNDI names for EJB ImplementMeasureWizardBean: [java:global/QUIPSY/QUIPSY/ImplementMeasureWizardBean!de.quipsy.sessions.implementmeasurewizard.ImplementMeasureWizardHome, java:global/QUIPSY/QUIPSY/ImplementMeasureWizardBean]]]

[2014-04-02T12:06:29.263+0200] [glassfish 4.0] [INFO] [AS-EJB-00055] [javax.enterprise.ejb.container] [tid: _ThreadID=50 _ThreadName=admin-listener(5)] [timeMillis: 1396433189263] [levelValue: 800] [[
  Glassfish-specific (Non-portable) JNDI names for EJB ImplementMeasureWizardBean: [de.quipsy.sessions.implementmeasurewizard.ImplementMeasureWizardHome]]]

[2014-04-02T12:06:29.638+0200] [glassfish 4.0] [WARNING] [] [javax.enterprise.system.core.security] [tid: _ThreadID=50 _ThreadName=admin-listener(5)] [timeMillis: 1396433189638] [levelValue: 900] [[
  No Principals mapped to Role [APQPProjectOwner].]]

[2014-04-02T12:06:29.638+0200] [glassfish 4.0] [WARNING] [] [javax.enterprise.system.core.security] [tid: _ThreadID=50 _ThreadName=admin-listener(5)] [timeMillis: 1396433189638] [levelValue: 900] [[
  No Principals mapped to Role [APQPActionExecutor].]]

[2014-04-02T12:06:29.950+0200] [glassfish 4.0] [INFO] [AS-WSJSR109IMPL-00019] [javax.enterprise.webservices] [tid: _ThreadID=50 _ThreadName=admin-listener(5)] [timeMillis: 1396433189950] [levelValue: 800] [[
  EJB Endpoint deployed QUIPSY
  listening at address at http://MK-Development-2014:8080/ComplaintServiceBeanService/ComplaintServiceBean]]

[2014-04-02T12:06:29.950+0200] [glassfish 4.0] [INFO] [AS-WSJSR109IMPL-00019] [javax.enterprise.webservices] [tid: _ThreadID=50 _ThreadName=admin-listener(5)] [timeMillis: 1396433189950] [levelValue: 800] [[
  EJB Endpoint deployed QUIPSY
  listening at address at http://MK-Development-2014:8080/QUIPSYService/QUIPSY]]

[2014-04-02T12:06:30.090+0200] [glassfish 4.0] [INFO] [] [org.glassfish.jersey.servlet.init.JerseyServletContainerInitializer] [tid: _ThreadID=50 _ThreadName=admin-listener(5)] [timeMillis: 1396433190090] [levelValue: 800] [[
  Registering the Jersey servlet application, named de.quipsy.application.QuipsyApplication, at the servlet mapping /*, with the Application class of the same name.]]

[2014-04-02T12:06:30.121+0200] [glassfish 4.0] [SEVERE] [AS-WEB-CORE-00174] [javax.enterprise.web.core] [tid: _ThreadID=50 _ThreadName=admin-listener(5)] [timeMillis: 1396433190121] [levelValue: 1000] [[
  Startup of context  failed due to previous errors]]

[2014-04-02T12:06:30.121+0200] [glassfish 4.0] [SEVERE] [AS-WEB-CORE-00175] [javax.enterprise.web.core] [tid: _ThreadID=50 _ThreadName=admin-listener(5)] [timeMillis: 1396433190121] [levelValue: 1000] [[
  Exception during cleanup after start failed
org.apache.catalina.LifecycleException: Manager has not yet been started
	at org.apache.catalina.session.StandardManager.stop(StandardManager.java:934)
	at org.apache.catalina.core.StandardContext.stop(StandardContext.java:6133)
	at com.sun.enterprise.web.WebModule.stop(WebModule.java:720)
	at org.apache.catalina.core.StandardContext.start(StandardContext.java:5950)
	at com.sun.enterprise.web.WebModule.start(WebModule.java:691)
	at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:1041)
	at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:1024)
	at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:747)
	at com.sun.enterprise.web.WebContainer.loadWebModule(WebContainer.java:2286)
	at com.sun.enterprise.web.WebContainer.loadWebModule(WebContainer.java:1932)
	at com.sun.enterprise.web.WebApplication.start(WebApplication.java:139)
	at org.glassfish.internal.data.EngineRef.start(EngineRef.java:122)
	at org.glassfish.internal.data.ModuleInfo.start(ModuleInfo.java:291)
	at org.glassfish.internal.data.ApplicationInfo.start(ApplicationInfo.java:352)
	at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:500)
	at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:219)
	at org.glassfish.deployment.admin.DeployCommand.execute(DeployCommand.java:491)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$2$1.run(CommandRunnerImpl.java:539)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$2$1.run(CommandRunnerImpl.java:535)
	at java.security.AccessController.doPrivileged(Native Method)
	at javax.security.auth.Subject.doAs(Unknown Source)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$2.execute(CommandRunnerImpl.java:534)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$3.run(CommandRunnerImpl.java:565)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$3.run(CommandRunnerImpl.java:557)
	at java.security.AccessController.doPrivileged(Native Method)
	at javax.security.auth.Subject.doAs(Unknown Source)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:556)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:1464)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl.access$1300(CommandRunnerImpl.java:109)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1846)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1722)
	at org.glassfish.admin.rest.resources.admin.CommandResource.executeCommand(CommandResource.java:404)
	at org.glassfish.admin.rest.resources.admin.CommandResource.execCommandSimpInMultOut(CommandResource.java:234)
	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.glassfish.jersey.server.model.internal.ResourceMethodInvocationHandlerFactory$1.invoke(ResourceMethodInvocationHandlerFactory.java:81)
	at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher$1.run(AbstractJavaResourceMethodDispatcher.java:151)
	at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.invoke(AbstractJavaResourceMethodDispatcher.java:171)
	at org.glassfish.jersey.server.model.internal.JavaResourceMethodDispatcherProvider$ResponseOutInvoker.doDispatch(JavaResourceMethodDispatcherProvider.java:152)
	at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.dispatch(AbstractJavaResourceMethodDispatcher.java:104)
	at org.glassfish.jersey.server.model.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:406)
	at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:350)
	at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:106)
	at org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:259)
	at org.glassfish.jersey.internal.Errors$1.call(Errors.java:271)
	at org.glassfish.jersey.internal.Errors$1.call(Errors.java:267)
	at org.glassfish.jersey.internal.Errors.process(Errors.java:315)
	at org.glassfish.jersey.internal.Errors.process(Errors.java:297)
	at org.glassfish.jersey.internal.Errors.process(Errors.java:267)
	at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:320)
	at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:236)
	at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:1028)
	at org.glassfish.jersey.grizzly2.httpserver.GrizzlyHttpContainer.service(GrizzlyHttpContainer.java:363)
	at org.glassfish.admin.rest.adapter.JerseyContainerCommandService$3.service(JerseyContainerCommandService.java:173)
	at org.glassfish.admin.rest.adapter.RestAdapter.service(RestAdapter.java:179)
	at com.sun.enterprise.v3.services.impl.ContainerMapper$HttpHandlerCallable.call(ContainerMapper.java:459)
	at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:167)
	at org.glassfish.grizzly.http.server.HttpHandler.runService(HttpHandler.java:201)
	at org.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:175)
	at org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:215)
	at org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:291)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:209)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:137)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:115)
	at org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
	at org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:550)
	at org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:112)
	at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:117)
	at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:56)
	at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:137)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:565)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:545)
	at java.lang.Thread.run(Unknown Source)
]]

[2014-04-02T12:06:30.121+0200] [glassfish 4.0] [SEVERE] [AS-WEB-CORE-00108] [javax.enterprise.web.core] [tid: _ThreadID=50 _ThreadName=admin-listener(5)] [timeMillis: 1396433190121] [levelValue: 1000] [[
  ContainerBase.addChild: start: 
org.apache.catalina.LifecycleException: com.google.common.util.concurrent.UncheckedExecutionException: org.jboss.weld.exceptions.IllegalStateException: WELD-001328 Unable to identify the correct BeanManager. The calling class org.jboss.weld.servlet.WeldInitialListener is not placed in bean archive
	at org.apache.catalina.core.StandardContext.start(StandardContext.java:5954)
	at com.sun.enterprise.web.WebModule.start(WebModule.java:691)
	at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:1041)
	at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:1024)
	at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:747)
	at com.sun.enterprise.web.WebContainer.loadWebModule(WebContainer.java:2286)
	at com.sun.enterprise.web.WebContainer.loadWebModule(WebContainer.java:1932)
	at com.sun.enterprise.web.WebApplication.start(WebApplication.java:139)
	at org.glassfish.internal.data.EngineRef.start(EngineRef.java:122)
	at org.glassfish.internal.data.ModuleInfo.start(ModuleInfo.java:291)
	at org.glassfish.internal.data.ApplicationInfo.start(ApplicationInfo.java:352)
	at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:500)
	at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:219)
	at org.glassfish.deployment.admin.DeployCommand.execute(DeployCommand.java:491)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$2$1.run(CommandRunnerImpl.java:539)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$2$1.run(CommandRunnerImpl.java:535)
	at java.security.AccessController.doPrivileged(Native Method)
	at javax.security.auth.Subject.doAs(Unknown Source)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$2.execute(CommandRunnerImpl.java:534)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$3.run(CommandRunnerImpl.java:565)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$3.run(CommandRunnerImpl.java:557)
	at java.security.AccessController.doPrivileged(Native Method)
	at javax.security.auth.Subject.doAs(Unknown Source)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:556)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:1464)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl.access$1300(CommandRunnerImpl.java:109)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1846)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1722)
	at org.glassfish.admin.rest.resources.admin.CommandResource.executeCommand(CommandResource.java:404)
	at org.glassfish.admin.rest.resources.admin.CommandResource.execCommandSimpInMultOut(CommandResource.java:234)
	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.glassfish.jersey.server.model.internal.ResourceMethodInvocationHandlerFactory$1.invoke(ResourceMethodInvocationHandlerFactory.java:81)
	at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher$1.run(AbstractJavaResourceMethodDispatcher.java:151)
	at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.invoke(AbstractJavaResourceMethodDispatcher.java:171)
	at org.glassfish.jersey.server.model.internal.JavaResourceMethodDispatcherProvider$ResponseOutInvoker.doDispatch(JavaResourceMethodDispatcherProvider.java:152)
	at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.dispatch(AbstractJavaResourceMethodDispatcher.java:104)
	at org.glassfish.jersey.server.model.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:406)
	at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:350)
	at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:106)
	at org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:259)
	at org.glassfish.jersey.internal.Errors$1.call(Errors.java:271)
	at org.glassfish.jersey.internal.Errors$1.call(Errors.java:267)
	at org.glassfish.jersey.internal.Errors.process(Errors.java:315)
	at org.glassfish.jersey.internal.Errors.process(Errors.java:297)
	at org.glassfish.jersey.internal.Errors.process(Errors.java:267)
	at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:320)
	at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:236)
	at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:1028)
	at org.glassfish.jersey.grizzly2.httpserver.GrizzlyHttpContainer.service(GrizzlyHttpContainer.java:363)
	at org.glassfish.admin.rest.adapter.JerseyContainerCommandService$3.service(JerseyContainerCommandService.java:173)
	at org.glassfish.admin.rest.adapter.RestAdapter.service(RestAdapter.java:179)
	at com.sun.enterprise.v3.services.impl.ContainerMapper$HttpHandlerCallable.call(ContainerMapper.java:459)
	at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:167)
	at org.glassfish.grizzly.http.server.HttpHandler.runService(HttpHandler.java:201)
	at org.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:175)
	at org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:215)
	at org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:291)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:209)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:137)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:115)
	at org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
	at org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:550)
	at org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:112)
	at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:117)
	at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:56)
	at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:137)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:565)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:545)
	at java.lang.Thread.run(Unknown Source)
Caused by: com.google.common.util.concurrent.UncheckedExecutionException: org.jboss.weld.exceptions.IllegalStateException: WELD-001328 Unable to identify the correct BeanManager. The calling class org.jboss.weld.servlet.WeldInitialListener is not placed in bean archive
	at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2258)
	at com.google.common.cache.LocalCache.get(LocalCache.java:3990)
	at com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:3994)
	at com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:4878)
	at com.google.common.cache.LocalCache$LocalLoadingCache.getUnchecked(LocalCache.java:4884)
	at org.jboss.weld.Weld.getBeanManager(Weld.java:115)
	at org.jboss.weld.Weld.getBeanManager(Weld.java:46)
	at org.jboss.weld.servlet.WeldInitialListener.contextInitialized(WeldInitialListener.java:65)
	at org.apache.catalina.core.StandardContext.contextListenerStart(StandardContext.java:5394)
	at com.sun.enterprise.web.WebModule.contextListenerStart(WebModule.java:743)
	at org.apache.catalina.core.StandardContext.start(StandardContext.java:5932)
	... 72 more
Caused by: org.jboss.weld.exceptions.IllegalStateException: WELD-001328 Unable to identify the correct BeanManager. The calling class org.jboss.weld.servlet.WeldInitialListener is not placed in bean archive
	at org.jboss.weld.Weld.unsatisfiedBeanManager(Weld.java:99)
	at org.glassfish.weld.GlassFishWeldProvider$GlassFishEnhancedWeld.unsatisfiedBeanManager(GlassFishWeldProvider.java:95)
	at org.jboss.weld.Weld$ClassNameToBeanManager.findBeanManager(Weld.java:76)
	at org.jboss.weld.Weld$ClassNameToBeanManager.load(Weld.java:55)
	at org.jboss.weld.Weld$ClassNameToBeanManager.load(Weld.java:48)
	at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3589)
	at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2374)
	at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2337)
	at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2252)
	... 82 more
]]

[2014-04-02T12:06:30.121+0200] [glassfish 4.0] [WARNING] [] [javax.enterprise.web] [tid: _ThreadID=50 _ThreadName=admin-listener(5)] [timeMillis: 1396433190121] [levelValue: 900] [[
  java.lang.IllegalStateException: ContainerBase.addChild: start: org.apache.catalina.LifecycleException: com.google.common.util.concurrent.UncheckedExecutionException: org.jboss.weld.exceptions.IllegalStateException: WELD-001328 Unable to identify the correct BeanManager. The calling class org.jboss.weld.servlet.WeldInitialListener is not placed in bean archive
java.lang.IllegalStateException: ContainerBase.addChild: start: org.apache.catalina.LifecycleException: com.google.common.util.concurrent.UncheckedExecutionException: org.jboss.weld.exceptions.IllegalStateException: WELD-001328 Unable to identify the correct BeanManager. The calling class org.jboss.weld.servlet.WeldInitialListener is not placed in bean archive
	at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:1044)
	at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:1024)
	at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:747)
	at com.sun.enterprise.web.WebContainer.loadWebModule(WebContainer.java:2286)
	at com.sun.enterprise.web.WebContainer.loadWebModule(WebContainer.java:1932)
	at com.sun.enterprise.web.WebApplication.start(WebApplication.java:139)
	at org.glassfish.internal.data.EngineRef.start(EngineRef.java:122)
	at org.glassfish.internal.data.ModuleInfo.start(ModuleInfo.java:291)
	at org.glassfish.internal.data.ApplicationInfo.start(ApplicationInfo.java:352)
	at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:500)
	at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:219)
	at org.glassfish.deployment.admin.DeployCommand.execute(DeployCommand.java:491)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$2$1.run(CommandRunnerImpl.java:539)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$2$1.run(CommandRunnerImpl.java:535)
	at java.security.AccessController.doPrivileged(Native Method)
	at javax.security.auth.Subject.doAs(Unknown Source)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$2.execute(CommandRunnerImpl.java:534)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$3.run(CommandRunnerImpl.java:565)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$3.run(CommandRunnerImpl.java:557)
	at java.security.AccessController.doPrivileged(Native Method)
	at javax.security.auth.Subject.doAs(Unknown Source)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:556)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:1464)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl.access$1300(CommandRunnerImpl.java:109)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1846)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1722)
	at org.glassfish.admin.rest.resources.admin.CommandResource.executeCommand(CommandResource.java:404)
	at org.glassfish.admin.rest.resources.admin.CommandResource.execCommandSimpInMultOut(CommandResource.java:234)
	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.glassfish.jersey.server.model.internal.ResourceMethodInvocationHandlerFactory$1.invoke(ResourceMethodInvocationHandlerFactory.java:81)
	at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher$1.run(AbstractJavaResourceMethodDispatcher.java:151)
	at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.invoke(AbstractJavaResourceMethodDispatcher.java:171)
	at org.glassfish.jersey.server.model.internal.JavaResourceMethodDispatcherProvider$ResponseOutInvoker.doDispatch(JavaResourceMethodDispatcherProvider.java:152)
	at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.dispatch(AbstractJavaResourceMethodDispatcher.java:104)
	at org.glassfish.jersey.server.model.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:406)
	at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:350)
	at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:106)
	at org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:259)
	at org.glassfish.jersey.internal.Errors$1.call(Errors.java:271)
	at org.glassfish.jersey.internal.Errors$1.call(Errors.java:267)
	at org.glassfish.jersey.internal.Errors.process(Errors.java:315)
	at org.glassfish.jersey.internal.Errors.process(Errors.java:297)
	at org.glassfish.jersey.internal.Errors.process(Errors.java:267)
	at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:320)
	at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:236)
	at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:1028)
	at org.glassfish.jersey.grizzly2.httpserver.GrizzlyHttpContainer.service(GrizzlyHttpContainer.java:363)
	at org.glassfish.admin.rest.adapter.JerseyContainerCommandService$3.service(JerseyContainerCommandService.java:173)
	at org.glassfish.admin.rest.adapter.RestAdapter.service(RestAdapter.java:179)
	at com.sun.enterprise.v3.services.impl.ContainerMapper$HttpHandlerCallable.call(ContainerMapper.java:459)
	at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:167)
	at org.glassfish.grizzly.http.server.HttpHandler.runService(HttpHandler.java:201)
	at org.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:175)
	at org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:215)
	at org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:291)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:209)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:137)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:115)
	at org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
	at org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:550)
	at org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:112)
	at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:117)
	at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:56)
	at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:137)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:565)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:545)
	at java.lang.Thread.run(Unknown Source)
]]

[2014-04-02T12:06:30.121+0200] [glassfish 4.0] [SEVERE] [] [javax.enterprise.system.tools.deployment.common] [tid: _ThreadID=50 _ThreadName=admin-listener(5)] [timeMillis: 1396433190121] [levelValue: 1000] [[
  Exception while invoking class com.sun.enterprise.web.WebApplication start method
java.lang.Exception: java.lang.IllegalStateException: ContainerBase.addChild: start: org.apache.catalina.LifecycleException: com.google.common.util.concurrent.UncheckedExecutionException: org.jboss.weld.exceptions.IllegalStateException: WELD-001328 Unable to identify the correct BeanManager. The calling class org.jboss.weld.servlet.WeldInitialListener is not placed in bean archive
	at com.sun.enterprise.web.WebApplication.start(WebApplication.java:168)
	at org.glassfish.internal.data.EngineRef.start(EngineRef.java:122)
	at org.glassfish.internal.data.ModuleInfo.start(ModuleInfo.java:291)
	at org.glassfish.internal.data.ApplicationInfo.start(ApplicationInfo.java:352)
	at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:500)
	at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:219)
	at org.glassfish.deployment.admin.DeployCommand.execute(DeployCommand.java:491)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$2$1.run(CommandRunnerImpl.java:539)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$2$1.run(CommandRunnerImpl.java:535)
	at java.security.AccessController.doPrivileged(Native Method)
	at javax.security.auth.Subject.doAs(Unknown Source)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$2.execute(CommandRunnerImpl.java:534)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$3.run(CommandRunnerImpl.java:565)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$3.run(CommandRunnerImpl.java:557)
	at java.security.AccessController.doPrivileged(Native Method)
	at javax.security.auth.Subject.doAs(Unknown Source)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:556)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:1464)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl.access$1300(CommandRunnerImpl.java:109)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1846)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1722)
	at org.glassfish.admin.rest.resources.admin.CommandResource.executeCommand(CommandResource.java:404)
	at org.glassfish.admin.rest.resources.admin.CommandResource.execCommandSimpInMultOut(CommandResource.java:234)
	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.glassfish.jersey.server.model.internal.ResourceMethodInvocationHandlerFactory$1.invoke(ResourceMethodInvocationHandlerFactory.java:81)
	at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher$1.run(AbstractJavaResourceMethodDispatcher.java:151)
	at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.invoke(AbstractJavaResourceMethodDispatcher.java:171)
	at org.glassfish.jersey.server.model.internal.JavaResourceMethodDispatcherProvider$ResponseOutInvoker.doDispatch(JavaResourceMethodDispatcherProvider.java:152)
	at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.dispatch(AbstractJavaResourceMethodDispatcher.java:104)
	at org.glassfish.jersey.server.model.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:406)
	at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:350)
	at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:106)
	at org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:259)
	at org.glassfish.jersey.internal.Errors$1.call(Errors.java:271)
	at org.glassfish.jersey.internal.Errors$1.call(Errors.java:267)
	at org.glassfish.jersey.internal.Errors.process(Errors.java:315)
	at org.glassfish.jersey.internal.Errors.process(Errors.java:297)
	at org.glassfish.jersey.internal.Errors.process(Errors.java:267)
	at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:320)
	at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:236)
	at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:1028)
	at org.glassfish.jersey.grizzly2.httpserver.GrizzlyHttpContainer.service(GrizzlyHttpContainer.java:363)
	at org.glassfish.admin.rest.adapter.JerseyContainerCommandService$3.service(JerseyContainerCommandService.java:173)
	at org.glassfish.admin.rest.adapter.RestAdapter.service(RestAdapter.java:179)
	at com.sun.enterprise.v3.services.impl.ContainerMapper$HttpHandlerCallable.call(ContainerMapper.java:459)
	at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:167)
	at org.glassfish.grizzly.http.server.HttpHandler.runService(HttpHandler.java:201)
	at org.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:175)
	at org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:215)
	at org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:291)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:209)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:137)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:115)
	at org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
	at org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:550)
	at org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:112)
	at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:117)
	at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:56)
	at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:137)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:565)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:545)
	at java.lang.Thread.run(Unknown Source)
]]

[2014-04-02T12:06:30.121+0200] [glassfish 4.0] [SEVERE] [NCLS-CORE-00026] [javax.enterprise.system.core] [tid: _ThreadID=50 _ThreadName=admin-listener(5)] [timeMillis: 1396433190121] [levelValue: 1000] [[
  Exception during lifecycle processing
java.lang.Exception: java.lang.IllegalStateException: ContainerBase.addChild: start: org.apache.catalina.LifecycleException: com.google.common.util.concurrent.UncheckedExecutionException: org.jboss.weld.exceptions.IllegalStateException: WELD-001328 Unable to identify the correct BeanManager. The calling class org.jboss.weld.servlet.WeldInitialListener is not placed in bean archive
	at com.sun.enterprise.web.WebApplication.start(WebApplication.java:168)
	at org.glassfish.internal.data.EngineRef.start(EngineRef.java:122)
	at org.glassfish.internal.data.ModuleInfo.start(ModuleInfo.java:291)
	at org.glassfish.internal.data.ApplicationInfo.start(ApplicationInfo.java:352)
	at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:500)
	at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:219)
	at org.glassfish.deployment.admin.DeployCommand.execute(DeployCommand.java:491)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$2$1.run(CommandRunnerImpl.java:539)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$2$1.run(CommandRunnerImpl.java:535)
	at java.security.AccessController.doPrivileged(Native Method)
	at javax.security.auth.Subject.doAs(Unknown Source)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$2.execute(CommandRunnerImpl.java:534)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$3.run(CommandRunnerImpl.java:565)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$3.run(CommandRunnerImpl.java:557)
	at java.security.AccessController.doPrivileged(Native Method)
	at javax.security.auth.Subject.doAs(Unknown Source)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:556)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:1464)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl.access$1300(CommandRunnerImpl.java:109)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1846)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1722)
	at org.glassfish.admin.rest.resources.admin.CommandResource.executeCommand(CommandResource.java:404)
	at org.glassfish.admin.rest.resources.admin.CommandResource.execCommandSimpInMultOut(CommandResource.java:234)
	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.glassfish.jersey.server.model.internal.ResourceMethodInvocationHandlerFactory$1.invoke(ResourceMethodInvocationHandlerFactory.java:81)
	at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher$1.run(AbstractJavaResourceMethodDispatcher.java:151)
	at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.invoke(AbstractJavaResourceMethodDispatcher.java:171)
	at org.glassfish.jersey.server.model.internal.JavaResourceMethodDispatcherProvider$ResponseOutInvoker.doDispatch(JavaResourceMethodDispatcherProvider.java:152)
	at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.dispatch(AbstractJavaResourceMethodDispatcher.java:104)
	at org.glassfish.jersey.server.model.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:406)
	at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:350)
	at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:106)
	at org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:259)
	at org.glassfish.jersey.internal.Errors$1.call(Errors.java:271)
	at org.glassfish.jersey.internal.Errors$1.call(Errors.java:267)
	at org.glassfish.jersey.internal.Errors.process(Errors.java:315)
	at org.glassfish.jersey.internal.Errors.process(Errors.java:297)
	at org.glassfish.jersey.internal.Errors.process(Errors.java:267)
	at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:320)
	at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:236)
	at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:1028)
	at org.glassfish.jersey.grizzly2.httpserver.GrizzlyHttpContainer.service(GrizzlyHttpContainer.java:363)
	at org.glassfish.admin.rest.adapter.JerseyContainerCommandService$3.service(JerseyContainerCommandService.java:173)
	at org.glassfish.admin.rest.adapter.RestAdapter.service(RestAdapter.java:179)
	at com.sun.enterprise.v3.services.impl.ContainerMapper$HttpHandlerCallable.call(ContainerMapper.java:459)
	at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:167)
	at org.glassfish.grizzly.http.server.HttpHandler.runService(HttpHandler.java:201)
	at org.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:175)
	at org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:215)
	at org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:291)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:209)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:137)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:115)
	at org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
	at org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:550)
	at org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:112)
	at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:117)
	at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:56)
	at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:137)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:565)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:545)
	at java.lang.Thread.run(Unknown Source)
]]

[2014-04-02T12:06:30.121+0200] [glassfish 4.0] [SEVERE] [] [javax.enterprise.system.core] [tid: _ThreadID=50 _ThreadName=admin-listener(5)] [timeMillis: 1396433190121] [levelValue: 1000] [[
  Exception while loading the app]]

[2014-04-02T12:06:30.558+0200] [glassfish 4.0] [SEVERE] [AS-WEB-GLUE-00192] [javax.enterprise.web] [tid: _ThreadID=50 _ThreadName=admin-listener(5)] [timeMillis: 1396433190558] [levelValue: 1000] [[
  Undeployment failed for context ]]

[2014-04-02T12:06:30.574+0200] [glassfish 4.0] [INFO] [ra.stop-successful] [javax.enterprise.resource.resourceadapter.com.sun.enterprise.connectors.service] [tid: _ThreadID=50 _ThreadName=admin-listener(5)] [timeMillis: 1396433190574] [levelValue: 800] [[
  RAR7094: QUIPSY#KernelConnector shutdown successful.]]

[2014-04-02T12:06:30.574+0200] [glassfish 4.0] [INFO] [ra.stop-successful] [javax.enterprise.resource.resourceadapter.com.sun.enterprise.connectors.service] [tid: _ThreadID=50 _ThreadName=admin-listener(5)] [timeMillis: 1396433190574] [levelValue: 800] [[
  RAR7094: QUIPSY#quipsy-legacyadapter-module-4.36.1-SNAPSHOT shutdown successful.]]

[2014-04-02T12:06:30.574+0200] [glassfish 4.0] [INFO] [] [org.eclipse.persistence.session.file:/C:/glassfish4/glassfish/domains/domain1/applications/QUIPSY/QUIPSY_jar/_QUIPSY.connection] [tid: _ThreadID=583 _ThreadName=pool-59-thread-1] [timeMillis: 1396433190574] [levelValue: 800] [[
  file:/C:/glassfish4/glassfish/domains/domain1/applications/QUIPSY/QUIPSY_jar/_QUIPSY logout successful]]

[2014-04-02T12:06:30.574+0200] [glassfish 4.0] [INFO] [] [javax.enterprise.system.container.ejb.org.glassfish.ejb.persistent.timer] [tid: _ThreadID=50 _ThreadName=admin-listener(5)] [timeMillis: 1396433190574] [levelValue: 800] [[
  [1] timers deleted for id: 91516618925670400]]

[2014-04-02T12:06:30.620+0200] [glassfish 4.0] [SEVERE] [] [javax.enterprise.system.core] [tid: _ThreadID=50 _ThreadName=admin-listener(5)] [timeMillis: 1396433190620] [levelValue: 1000] [[
  Exception while loading the app : java.lang.IllegalStateException: ContainerBase.addChild: start: org.apache.catalina.LifecycleException: com.google.common.util.concurrent.UncheckedExecutionException: org.jboss.weld.exceptions.IllegalStateException: WELD-001328 Unable to identify the correct BeanManager. The calling class org.jboss.weld.servlet.WeldInitialListener is not placed in bean archive]]
Comment by Hong Zhang [ 02/Apr/14 12:41 PM ]

As the stack trace is from web container, assign to web team for initial evaluation

Comment by Hong Zhang [ 02/Apr/14 12:43 PM ]

Actually reading the bug description again, cdi component seems the right component for initial evaluation.

Comment by mkarg [ 07/Apr/14 06:47 AM ]

Happens with nightly build of April 6 still.

Comment by jjsnyder83 [ 16/Apr/14 06:46 PM ]

CDI is enabled by default. You must explicitly turn it off for your application. You can set it for an individual app when it is deployed via:
asadmin deploy --property implicitCdiEnabled=false <archive>

or you can set it globally via:
asadmin create-module-config cdi-service
asadmin set configs.config.server-config.cdi-service.enable-implicit-cdi=false

See https://java.net/jira/browse/GLASSFISH-19946

Comment by mkarg [ 17/Apr/14 05:36 PM ]

You misunderstood this case. My application provides a beans.xml switching off CDI. So deployment must work with default settings as it did in 4.0.1. If it does not, GF 4.0.1 apparently ignores this beans.xml setting – which is a violation of the Java EE specification!





[GLASSFISH-21015] beans.xml clear getInputStream on servlet Created: 24/Mar/14  Updated: 16/Apr/14  Resolved: 16/Apr/14

Status: Resolved
Project: glassfish
Component/s: cdi
Affects Version/s: 4.0_b89_RC5
Fix Version/s: None

Type: Bug Priority: Major
Reporter: lmertins Assignee: jjsnyder83
Resolution: Works as designed Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Linux, Java 7/8, Netbeans 7.4.1/8, glassfish 4


Tags: HttpServletRequest getInputStream
Participants: jjsnyder83, lmertins and Shing Wai Chan

 Description   

I'd like to migrate some applications (EARs) from glassfish 3.2.2.1 to 4, but I'm having some issues.
The first is lost of parameters on InputStream in ajax requests. I'm try to simulate the problem in small projects.
I find a problem if my web project have the file beans.xml in the WEB-INF. When I call getInputStream don't have information on inputstream. But don't throws excetions.
Is it normal? I have a sample project that can to show the issue. Could help? On glassfish 3 it's ok



 Comments   
Comment by Shing Wai Chan [ 25/Mar/14 12:46 AM ]

Can you attach your test case?

Comment by lmertins [ 25/Mar/14 01:40 AM ]

Sure! But I don't know how!
It's a maven project. Must I copy the code here?

Comment by Shing Wai Chan [ 25/Mar/14 08:44 AM ]

There is a "Attach file to this issue" on the left panel.

Comment by lmertins [ 25/Mar/14 11:44 AM ]

Sorry, but I don't have this option. Operations are: Go to Planning Board, Clone, Comment, sub-task, Voting, Watching and "You don't have permission to work on this issue". When I opened this issue I looked for attach file, but I didn't find.

Comment by lmertins [ 25/Mar/14 04:48 PM ]

Maybe must I put the code here?

pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>br.com.mm.site</groupId>
    <artifactId>TesteGlass4</artifactId>
    <version>1.0</version>
    <packaging>war</packaging>

    <name>TesteGlass4</name>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>
    
    <dependencies>
        <dependency>
            <groupId>javax</groupId>
            <artifactId>javaee-api</artifactId>
            <version>6.0</version>
            <scope>provided</scope>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.1</version>
                <configuration>
                    <source>1.7</source>
                    <target>1.7</target>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-war-plugin</artifactId>
                <version>2.4</version>
                <configuration>
                    <failOnMissingWebXml>false</failOnMissingWebXml>
                </configuration>
            </plugin>
        </plugins>
    </build>

</project>
index.html
<!DOCTYPE html>
<html>
    <head>
        <title>TODO supply a title</title>
        <meta charset="UTF-8">
        <meta http-equiv="content-type" content="text/html; charset=UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
    </head>
    <body>
        <form action="ServletTest" method="post">
            <input type="text" name="txtTeste"/>
            <input type="submit"/>
        </form>
    </body>
</html>

Exclude or rename file below to see correct job.

WEB-INF/beans.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://java.sun.com/xml/ns/javaee"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
</beans>

With beans.xml bufferTemp.toString() is empty. Without beans.xml, not.

jfrm.test.servlet.ServletTest.java
package jfrm.test.servlet;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.ServletInputStream;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

@WebServlet(name = "ServletTest", urlPatterns = {"/ServletTest"})
public class ServletTest extends HttpServlet {

    @Override
    protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        resp.setContentType("text/html;charset=UTF-8");
        try (PrintWriter out = resp.getWriter()) {
            /* TODO output your page here. You may use following sample code. */
            out.println("<!DOCTYPE html>");
            out.println("<html>");
            out.println("<head>");
            out.println("<title>Servlet ServletTest</title>");
            out.println("</head>");
            out.println("<body>");
            
            ServletInputStream inputStream = req.getInputStream();
            if (inputStream != null) {
                final StringBuilder bufferTemp = new StringBuilder();
                BufferedReader bufferReader = new BufferedReader(new InputStreamReader(inputStream));
                char[] charBuffer = new char[1024];
                int bytesRead = -1;
                while ((bytesRead = bufferReader.read(charBuffer)) > 0) {
                    bufferTemp.append(charBuffer, 0, bytesRead);
                }
                out.println("<h1>");
                out.println( bufferTemp.toString());
                out.println("</h1>");
            }

            out.println("</body>");
            out.println("</html>");
        }

    }
}
Comment by Shing Wai Chan [ 25/Mar/14 06:51 PM ]

In case of CDI, Request.getParameter has been involved as follows:

java.lang.Exception: Stack trace
	at java.lang.Thread.dumpStack(Thread.java:1342)
	at org.apache.catalina.connector.Request.getParameter(Request.java:1550)
	at org.apache.catalina.connector.RequestFacade.getParameter(RequestFacade.java:448)
	at org.jboss.weld.servlet.ConversationContextActivator.getConversationId(ConversationContextActivator.java:115)
	at org.jboss.weld.servlet.ConversationContextActivator.activateConversationContext(ConversationContextActivator.java:82)
	at org.jboss.weld.servlet.HttpContextLifecycle.requestInitialized(HttpContextLifecycle.java:157)
	at org.jboss.weld.servlet.WeldInitialListener.requestInitialized(WeldInitialListener.java:108)
	at org.apache.catalina.core.StandardContext.fireRequestInitializedEvent(StandardContext.java:5257)
	at org.apache.catalina.core.StandardHostValve.preInvoke(StandardHostValve.java:655)

According to 3.1.1 of Servlet 3.1, once #getParameter is called, the parameter is not available in the inputStream. This explains what we observed.

Assign to the bug to CDI to check the spec whether it is requirement to call #getParameter.

Comment by lmertins [ 26/Mar/14 02:01 PM ]

> According to 3.1.1 of Servlet 3.1, once #getParameter is called, the parameter is not available in the inputStream. This explains what we observed.

Correct. Because of this I had to extend HttpServletRequestWrapper and which was initially detected the error in my code.

I'm curious with the Glassfish code and how it is built. I compiled the version of trunk and fathered a distribution. My reference is this link https://glassfish.java.net/public/devindex.html
Are there way to debug glassfish code? I didn't find how.

Comment by jjsnyder83 [ 16/Apr/14 06:58 PM ]

Please see: https://java.net/jira/browse/GLASSFISH-20957

It explains the problem and provides links to Weld and CDI spec that discuss the problem.





[GLASSFISH-20996] EJB CreateException when calling a method in a retrieved local interface Created: 28/Feb/14  Updated: 17/Apr/14

Status: Open
Project: glassfish
Component/s: cdi
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: Major
Reporter: sicruise Assignee: jjsnyder83
Resolution: Unresolved Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

jdk7u51 64 bit , glassfish 4 up to glassfish-4.0.1-b04-02_26_2014, ubuntu


Tags: 4_0_1-review createexception ejb
Participants: Hong Zhang, jjsnyder83 and sicruise

 Description   

This application works perfectly in 3.1.2.2 and there has been no changes to the way beans are loaded when migrating to glassfish 4.

Application is building using jars under glassfish/modules directory, the same ones used for running.

EJB's effected so far are all marked with @Stateless annotation. The example here is the first bean that is executed on application startup.

EJB is being picked up and loaded into JNDI and when getting it from jndi it is an instance of the correct object. Just when you go to call a method in the bean it fails.

[2014-02-28T10:35:04.247+0000] [glassfish 4.0] [INFO] [AS-EJB-00054] [javax.enterprise.ejb.container] [tid: _ThreadID=37 _ThreadName=admin-listener(3)] [timeMillis: 1393583704247] [levelValue: 800] [[
Portable JNDI names for EJB DAOStatisticBean: [java:global/merchant/webapp/DAOStatisticBean, java:global/merchant/webapp/DAOStatisticBean!com.merchant.ejb.DAOStatisticBean]]]

but then...

[2014-02-28T10:35:08.055+0000] [glassfish 4.0] [SEVERE] [] [javax.enterprise.ejb.container] [tid: _ThreadID=37 _ThreadName=admin-listener(3)] [timeMillis: 1393583708055] [levelValue: 1000] [[
ejb.stateless_ejbcreate_exception]]

[2014-02-28T10:35:08.056+0000] [glassfish 4.0] [WARNING] [AS-EJB-00056] [javax.enterprise.ejb.container] [tid: _ThreadID=37 _ThreadName=admin-listener(3)] [timeMillis: 1393583708056] [levelValue: 900] [[
A system exception occurred during an invocation on EJB DAOStatisticBean, method: public com.merchant.dto.DAOStatisticDTO com.merchant.ejb.DAOStatisticBean.loadTodayStatistic() throws javax.ejb.EJBException]]

Root Cause of CreateException

Caused by: java.lang.NullPointerException
at java.util.concurrent.ConcurrentHashMap.hash(ConcurrentHashMap.java:333)
at java.util.concurrent.ConcurrentHashMap.get(ConcurrentHashMap.java:988)
at org.jboss.weld.manager.BeanManagerImpl.getBean(BeanManagerImpl.java:1185)
at org.jboss.weld.manager.BeanManagerImpl.getBean(BeanManagerImpl.java:185)
at org.glassfish.weld.services.JCDIServiceImpl._createJCDIInjectionContext(JCDIServiceImpl.java:198)
at org.glassfish.weld.services.JCDIServiceImpl.createJCDIInjectionContext(JCDIServiceImpl.java:179)
at com.sun.ejb.containers.BaseContainer.createEjbInstanceAndContext(BaseContainer.java:1696)
at com.sun.ejb.containers.StatelessSessionContainer.createStatelessEJB(StatelessSessionContainer.java:456)
at com.sun.ejb.containers.StatelessSessionContainer.access$000(StatelessSessionContainer.java:97)
at com.sun.ejb.containers.StatelessSessionContainer$SessionContextFactory.create(StatelessSessionContainer.java:698)
at com.sun.ejb.containers.util.pool.NonBlockingPool.getObject(NonBlockingPool.java:246)
at com.sun.ejb.containers.StatelessSessionContainer._getContext(StatelessSessionContainer.java:430)
at com.sun.ejb.containers.BaseContainer.getContext(BaseContainer.java:2579)
at com.sun.ejb.containers.BaseContainer.preInvoke(BaseContainer.java:1971)
at com.sun.ejb.containers.EJBLocalObjectInvocationHandler.invoke(EJBLocalObjectInvocationHandler.java:210)
at com.sun.ejb.containers.EJBLocalObjectInvocationHandlerDelegate.invoke(EJBLocalObjectInvocationHandlerDelegate.java:88)
at com.sun.proxy.$Proxy338.loadTodayStatistic(Unknown Source)
at com.merchant.ejb._EJB31_GeneratedDAOStatisticBeanIntf__Bean_.loadTodayStatistic(Unknown Source)
at com.merchant.thread.DAOStatisticThread.<init>(DAOStatisticThread.java:84)
at com.merchant.thread.DAOStatisticThread.startThread(DAOStatisticThread.java:195)
at com.merchant.InitServlet.init(InitServlet.java:102)
at javax.servlet.GenericServlet.init(GenericServlet.java:244)
at org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1583)
at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1382)
at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:5704)



 Comments   
Comment by Hong Zhang [ 11/Apr/14 07:45 PM ]

As stack trace is from CDI code, assign to cdi team for initial evaluation.

Comment by jjsnyder83 [ 16/Apr/14 06:17 PM ]

Can you please provide a source code example of:

  • The definition of the ejb
  • How it is injected into the servlet (I assume it is injected into a servlet based on the stack trace)
  • How it is accessed that causes the exception.




[GLASSFISH-20984] Unable to inject JMS resources in a bean defined in a dependency jar Created: 13/Feb/14  Updated: 13/Feb/14

Status: Open
Project: glassfish
Component/s: cdi, jms
Affects Version/s: 4.0
Fix Version/s: None

Type: Bug Priority: Major
Reporter: electricsam Assignee: jjsnyder83
Resolution: Unresolved Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Linux, jdk 1.7.0_45


Tags:
Participants: electricsam and jjsnyder83

 Description   

I have an @ApplicationScoped bean defined in a common library which I add to my projects in a dependency jar.

Injection of the connection factory and queue results in null objects when using @Resource

Example code:

In this code, I have tried both @Resource(name = "... and @Resource(mappedName = "... with the same result.

@ApplicationScoped
public class PerformanceLoggingProducer {

    private static final Logger logger = Logger.getLogger(PerformanceLoggingProducer.class.getName());

    @Resource(mappedName = "jms/ConnectionFactory")
    private ConnectionFactory connectionFactory;
    @Resource(name = "jms/PerformanceLoggingQueue")
    private Queue queue;

    public void log(final PerformanceLogTracker tracker) {

        if (tracker != null) {
      
            Thread t = new Thread(new Runnable() {

                @Override
                public void run() {
                    try (Connection connection = connectionFactory.createConnection()) {
                        Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
                        MessageProducer producer = session.createProducer(queue);
                        ObjectMessage message = session.createObjectMessage(tracker);
                        producer.send(message);
                    } catch (Exception ex) {
                        logger.log(Level.SEVERE, "An error occurred when logging message: " + tracker, ex);
                    }
                }
            });
            
            t.start();

        }
    }

}

Workaround:

Don't use @Resource for the lookup.

@ApplicationScoped
public class PerformanceLoggingProducer {

    private static final Logger logger = Logger.getLogger(PerformanceLoggingProducer.class.getName());

//    @Resource(mappedName = "jms/ConnectionFactory")
    private ConnectionFactory connectionFactory;
//    @Resource(name = "jms/PerformanceLoggingQueue")
    private Queue queue;

    public PerformanceLoggingProducer() {
        try {
            connectionFactory = (ConnectionFactory) new InitialContext().lookup("jms/ConnectionFactory");
            queue = (Queue) new InitialContext().lookup("jms/PerformanceLoggingQueue");
        } catch (NamingException ex) {
            logger.log(Level.SEVERE, null, ex);
        }
    }

    public void log(final PerformanceLogTracker tracker) {

        if (tracker != null) {
      
            Thread t = new Thread(new Runnable() {

                @Override
                public void run() {
                    try (Connection connection = connectionFactory.createConnection()) {
                        Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
                        MessageProducer producer = session.createProducer(queue);
                        ObjectMessage message = session.createObjectMessage(tracker);
                        producer.send(message);
                    } catch (Exception ex) {
                        logger.log(Level.SEVERE, "An error occurred when logging message: " + tracker, ex);
                    }
                }
            });
            
            t.start();

        }
    }

}





[GLASSFISH-20982] @RequestScoped and @SessionScoped beans do not work in requests initiated by a forward Created: 13/Feb/14  Updated: 17/Apr/14

Status: Open
Project: glassfish
Component/s: cdi
Affects Version/s: 4.0
Fix Version/s: None

Type: Bug Priority: Critical
Reporter: electricsam Assignee: jjsnyder83
Resolution: Unresolved Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Linux, jdk 1.7.0_45


Tags: 4_0_1-review
Participants: electricsam and jjsnyder83

 Description   

When a method on a @RequestScoped or @SessionScoped bean is invoked where the request came from a forward, a org.jboss.weld.context.ContextNotActiveException is thrown.

In my setup, I have a second application that handles some resource requests. In my main app, I request the resource with a forward:

request.getServletContext().getContext("/resource").getRequestDispatcher(path).forward(request, response)

I also have some common auditing code which uses @RequestScoped and @SessionScoped beans. These beans work correctly in the main app with a user invoked request, but not in the servlet handling the forward (and possibly include).

@RequestScoped
public class RequestDataTracker {

    private String action;
    private final UUID requestId = UUID.randomUUID();
    private String sessionId;
    private String username;

    public String getSessionId() {
        return sessionId;
    }

    public void setSessionId(String sessionId) {
        if (this.sessionId == null) {
            this.sessionId = sessionId;
        }
    }

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        if (this.username == null) {
            this.username = username;
        }
    }

    public UUID getRequestId() {
        return requestId;
    }

    public String getAction() {
        return action;
    }

    public void setAction(String action) {
        this.action = action;
    }

    @Override
    public String toString() {
        return "RequestDataTracker{" + "action=" + action + ", requestId=" + requestId + ", sessionId=" + sessionId + ", username=" + username + '}';
    }

}

I have a BaseLoggingServlet that extends HttpServlet that has the logic for logging. The LoggingServlet extends that and implements methods to get and set data in an injected RequestDataTracker

public abstract class LoggingServlet extends BaseLoggingServlet {

    @Inject
    protected RequestDataTracker requestDataTracker;

    @Override
    protected String getUsername(HttpServletRequest request) {
        String username = SessionUtil.getSessionObject(request, CmdCtrConsts.USERNAME, String.class, false);
        if(username == null){
            username = (String) request.getAttribute(CmdCtrConsts.ACTUAL_USERNAME);
        }
        requestDataTracker.setUsername(username);
        return requestDataTracker.getUsername();
    }

    @Override
    protected UUID getRequestId(HttpServletRequest request) {
         return requestDataTracker.getRequestId();
    }

    @Override
    protected String getSessionId(HttpServletRequest request) {
        String sessionId = super.getSessionId(request);
        requestDataTracker.setSessionId(sessionId);
        return requestDataTracker.getSessionId();
    }
}

The following exception is thrown:

org.jboss.weld.context.ContextNotActiveException: WELD-001303 No active contexts for scope type javax.enterprise.context.RequestScoped
	at org.jboss.weld.manager.BeanManagerImpl.getContext(BeanManagerImpl.java:667)
	at org.jboss.weld.bean.proxy.ContextBeanInstance.getInstance(ContextBeanInstance.java:74)
	at org.jboss.weld.bean.proxy.ProxyMethodHandler.invoke(ProxyMethodHandler.java:79)
	at com.me.myproduct.logging.performance.RequestDataTracker$Proxy$_$$_WeldClientProxy.setSessionId(Unknown Source)
	at com.me.myproduct.core.common.logging.LoggingServlet.logAndProcess(LoggingServlet.java:27)
	at com.me.myproduct.core.common.logging.LoggingServlet.doGet(LoggingServlet.java:48)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:687)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
	at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1682)
	at org.apache.catalina.core.ApplicationDispatcher.doInvoke(ApplicationDispatcher.java:875)
	at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:739)
	at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:575)
	at org.apache.catalina.core.ApplicationDispatcher.doDispatch(ApplicationDispatcher.java:546)
	at org.apache.catalina.core.ApplicationDispatcher.dispatch(ApplicationDispatcher.java:428)
	at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:378)
	at com.me.myproduct.core.servlets.RequestDispatcherUtil.forward(RequestDispatcherUtil.java:51)
	at com.me.myproduct.core.servlets.portlet.ServeResourceDispatcherServlet.processRequest(ServeResourceDispatcherServlet.java:64)
	at com.me.myproduct.core.common.logging.LoggingServlet.logAndProcess(LoggingServlet.java:35)
	at com.me.myproduct.core.common.logging.LoggingServlet.doGet(LoggingServlet.java:48)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:687)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
	at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1682)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:344)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
	at com.me.myproduct.core.filters.SecurityFilter.doFilter(SecurityFilter.java:99)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:316)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:160)
	at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:734)
	at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:673)
	at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:99)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:174)
	at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:357)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:260)
	at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:188)
	at org.glassfish.grizzly.http.server.HttpHandler.runService(HttpHandler.java:191)
	at org.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:168)
	at org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:189)
	at org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:288)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:206)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:136)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:114)
	at org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
	at org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:838)
	at org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:113)
	at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:115)
	at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:55)
	at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:135)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:564)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
	at java.lang.Thread.run(Thread.java:744)





[GLASSFISH-20978] CDI deployment failure:WELD-001414 Bean name is ambiguous. Created: 10/Feb/14  Updated: 16/Apr/14  Resolved: 16/Apr/14

Status: Resolved
Project: glassfish
Component/s: cdi
Affects Version/s: 4.0_b89_RC5
Fix Version/s: None

Type: Bug Priority: Major
Reporter: fatihbalki Assignee: jjsnyder83
Resolution: Fixed Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

win 7 x64
glassfish-4.0.1-b04-ml
java 1.6.0_39


Tags:
Participants: fatihbalki and jjsnyder83

 Description   

we have a java EE 6 project on glassfish 3.1.2.2 when we try to deploy project to glassfish 4 there is an error message like below. it is an enterprise project

cannot Deploy LPISApp
deploy is failing=Error occurred during deployment: Exception while loading the app : CDI deployment failure:WELD-001414 Bean name is ambiguous. Name javax.enterprise.context.conversation resolves to beans [org.jboss.weld.bean-LPISService_jar-Built-in-javax.enterprise.context.Conversation, Managed Bean [class org.jboss.weld.conversation.ConversationImpl] with qualifiers [@Default @Named @Any]]. Please see server.log for more details.

2014-02-10T14:06:11.168+0200|SEVERE: Exception during lifecycle processing
org.glassfish.deployment.common.DeploymentException: CDI deployment failure:WELD-001414 Bean name is ambiguous. Name javax.enterprise.context.conversation resolves to beans [org.jboss.weld.bean-LPISService_jar-Built-in-javax.enterprise.context.Conversation, Managed Bean [class org.jboss.weld.conversation.ConversationImpl] with qualifiers [@Default @Named @Any]]
at org.glassfish.weld.WeldDeployer.event(WeldDeployer.java:225)
at org.glassfish.kernel.event.EventsImpl.send(EventsImpl.java:131)
at org.glassfish.internal.data.ApplicationInfo.load(ApplicationInfo.java:328)
at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:493)
at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:219)
at org.glassfish.deployment.admin.DeployCommand.execute(DeployCommand.java:491)
at com.sun.enterprise.v3.admin.CommandRunnerImpl$2$1.run(CommandRunnerImpl.java:527)
at com.sun.enterprise.v3.admin.CommandRunnerImpl$2$1.run(CommandRunnerImpl.java:523)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:356)
at com.sun.enterprise.v3.admin.CommandRunnerImpl$2.execute(CommandRunnerImpl.java:522)
at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:546)
at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:1423)
at com.sun.enterprise.v3.admin.CommandRunnerImpl.access$1500(CommandRunnerImpl.java:108)
at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1762)
at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1674)
at com.sun.enterprise.v3.admin.AdminAdapter.doCommand(AdminAdapter.java:534)
at com.sun.enterprise.v3.admin.AdminAdapter.onMissingResource(AdminAdapter.java:224)
at org.glassfish.grizzly.http.server.StaticHttpHandler.service(StaticHttpHandler.java:297)
at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:246)
at org.glassfish.grizzly.http.server.HttpHandler.runService(HttpHandler.java:191)
at org.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:168)
at org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:189)
at org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:288)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:206)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:136)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:114)
at org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
at org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:838)
at org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:113)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:115)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:55)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:135)
at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:564)
at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
at java.lang.Thread.run(Thread.java:724)
Caused by: org.jboss.weld.exceptions.DeploymentException: WELD-001414 Bean name is ambiguous. Name javax.enterprise.context.conversation resolves to beans [org.jboss.weld.bean-LPISService_jar-Built-in-javax.enterprise.context.Conversation, Managed Bean [class org.jboss.weld.conversation.ConversationImpl] with qualifiers [@Default @Named @Any]]
at org.jboss.weld.bootstrap.Validator.validateBeanNames(Validator.java:639)
at org.jboss.weld.bootstrap.Validator.validateDeployment(Validator.java:488)
at org.jboss.weld.bootstrap.WeldBootstrap.validateBeans(WeldBootstrap.java:536)
at org.glassfish.weld.WeldDeployer.event(WeldDeployer.java:216)
... 36 more



 Comments   
Comment by jjsnyder83 [ 16/Apr/14 07:23 PM ]

It appears that your application has 2 jars that contain a bean with the same type and both of them are Weld jars. Please verify that your jars are correct and that both are needed for the application. Also check with JBoss as the beans are both identified as Weld beans and see if they have newer versions that you can use.

The beans are:
Name javax.enterprise.context.conversation resolves to beans [org.jboss.weld.bean-LPISService_jar-Built-in-javax.enterprise.context.Conversation, Managed Bean [class org.jboss.weld.conversation.ConversationImpl]





[GLASSFISH-20971] InjectionServices#aroundInvoke must accont for when the target is null Created: 05/Feb/14  Updated: 05/Mar/14  Resolved: 06/Feb/14

Status: Resolved
Project: glassfish
Component/s: cdi
Affects Version/s: 4.0
Fix Version/s: None

Type: Bug Priority: Major
Reporter: jjsnyder83 Assignee: jjsnyder83
Resolution: Fixed Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags:
Participants: jjsnyder83

 Description   

Weld is making a fix to account for static field injection. It will call InjectionServices#aroundInvoke with a null target so that we can inject resources into the static fields. We need to add code to check for target==null so we don't get NPE.



 Comments   
Comment by jjsnyder83 [ 06/Feb/14 06:55 PM ]

Committed revision 63120.

Comment by jjsnyder83 [ 04/Mar/14 06:33 PM ]

Missed a case. Committed revision 63143.

Comment by jjsnyder83 [ 05/Mar/14 04:08 PM ]

Based on fix in Weld I needed to make another modification. Committed revision 63144.





[GLASSFISH-20959] JMSContext injection does not work in CDI bean that is jbatch artifact. Created: 18/Jan/14  Updated: 16/Apr/14

Status: Open
Project: glassfish
Component/s: batch, cdi, jms
Affects Version/s: 4.0
Fix Version/s: None

Type: Bug Priority: Major
Reporter: jiggster Assignee: Mahesh Kannan
Resolution: Unresolved Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Mac OS X 10.9, Ubuntu 12.04, Windows 7


Tags: 4_0_1-evangelists 4_0_1-review batch cdi jms
Participants: jiggster, jjsnyder83 and Mahesh Kannan

 Description   

The following construct does not work when used inside CDI bean that is batch artifact:

@Inject private JMSContext context;

It results in org.jboss.weld.context.ContextNotActiveException: WELD-001303 No active contexts for scope type javax.enterprise.context.RequestScoped when the injected context is used.



 Comments   
Comment by jiggster [ 18/Jan/14 09:23 PM ]

How can I add attachment? Would like to upload sample application that presents the issue...

Comment by jjsnyder83 [ 16/Apr/14 06:25 PM ]

Login and you should see "Attach file" under Operations on the left column.





[GLASSFISH-20957] CDI is consuming application/x-form-url-encoded entity causing empty input stream in servlet Created: 17/Jan/14  Updated: 06/Feb/14  Resolved: 06/Feb/14

Status: Resolved
Project: glassfish
Component/s: cdi
Affects Version/s: 4.0
Fix Version/s: None

Type: Bug Priority: Major
Reporter: Michal Gajdos Assignee: jjsnyder83
Resolution: Works as designed Votes: 1
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

File Attachments: Zip Archive form-webapp.zip    
Issue Links:
Dependency
blocks JERSEY-2340 CDI is consuming application/x-form-u... Resolved
blocks JERSEY-2356 Jersey with CDI in GF fails Resolved
Tags:
Participants: jjsnyder83, johanvos, Michal Gajdos and Miroslav Fuksa

 Description   

In case if application/x-form-url-encoded request is sent to a simple servlet with enabled CDI (deployed on GF4) the CDI is consuming entity which disables reading the entity in servlet itself.

Deploy attached application to GF4/GF4.0.1 and make a request (nothing is returned from servlet):

$ curl -X POST --data "name=test" http://localhost:8080/form-webapp-1.0-SNAPSHOT/

if beans.xml is removed from the app the result is correct (the sent entity is returned to the client):

$ curl -X POST --data "name=test" http://localhost:8080/form-webapp-1.0-SNAPSHOT/
name=test

See:



 Comments   
Comment by johanvos [ 29/Jan/14 12:18 PM ]

It seems Weld requests parameters from the Request during initialization of the request. I added a Thread.dumpStack statement in RequestFacade.getParameter. In case no beans.xml is present, there is no stacktrace. In case beans.xml is added, the StandardHostValve.preInvoke will trigger CDI which will call request.getParameter which will consume the bytes. See stacktraces below.

What is wrong here?
1) Weld should not call RequestFacade.getParameter()?
OR
2) RequestFacade.getParameter() should not consume the bytes?

at java.lang.Thread.dumpStack(Thread.java:1364)
at org.apache.catalina.connector.RequestFacade.getParameter(RequestFacade.java:441)
at org.jboss.weld.servlet.ConversationContextActivator.getConversationId(ConversationContextActivator.java:124)
at org.jboss.weld.servlet.ConversationContextActivator.activateConversationContext(ConversationContextActivator.java:82)
at org.jboss.weld.servlet.HttpContextLifecycle.requestInitialized(HttpContextLifecycle.java:157)
at org.jboss.weld.servlet.WeldInitialListener.requestInitialized(WeldInitialListener.java:108)
at org.apache.catalina.core.StandardContext.fireRequestInitializedEvent(StandardContext.java:5257)
at org.apache.catalina.core.StandardHostValve.preInvoke(StandardHostValve.java:655)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:166)
at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:415)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:282)

Comment by johanvos [ 29/Jan/14 12:42 PM ]

Adding to this, the parameters that are asked by Weld are "cid", "nocid" and "conversationPropagation"

Comment by johanvos [ 29/Jan/14 12:57 PM ]

more info on this issue: https://issues.jboss.org/browse/CDI-411 and https://issues.jboss.org/browse/WELD-1549

Comment by johanvos [ 29/Jan/14 02:15 PM ]

When reading the specifications, this might be not an issue. CDI has to call Request.getParameter(), and the Servlet javadoc states that once request.getParameter(String) has been called, the getInputStream() is unreliable:

"If the parameter data was sent in the request body, such as occurs with an HTTP POST request, then reading the body directly via getInputStream() or getReader() can interfere with the execution of this method."

So after all, I don't think this is an issue. As a consequence, though, all code that relies on request.getInputStream() and that also uses CDI is by definition broken. That sounds a bit drastic.

Comment by Miroslav Fuksa [ 06/Feb/14 02:53 PM ]

This problem must be solved on the specification level.





[GLASSFISH-20928] Cache the created InjectionTarget objects Created: 16/Dec/13  Updated: 16/Dec/13

Status: Open
Project: glassfish
Component/s: cdi
Affects Version/s: 4.0
Fix Version/s: None

Type: Bug Priority: Minor
Reporter: jjsnyder83 Assignee: jjsnyder83
Resolution: Unresolved Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags:
Participants: jjsnyder83

 Description   

In JDCIServiceImpl#injectManagedObject cache the created InjectionTarget objects.






[GLASSFISH-20922] upgrading weld-osgi-bundle.jar into 2.1.0.Final Created: 10/Dec/13  Updated: 17/Apr/14

Status: Open
Project: glassfish
Component/s: cdi
Affects Version/s: 4.0
Fix Version/s: 4.0.1

Type: Task Priority: Critical
Reporter: TangYong Assignee: jjsnyder83
Resolution: Unresolved Votes: 1
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags: 4_0_1-review
Participants: elio.alves, jjsnyder83, mauritzlovgren and TangYong

 Description   

upgrading weld-osgi-bundle.jar into 2.1.0.Final, in the version, there is the following big changes based on [1] and [2]

1. javax.inject has been removed from <_exportcontents> and javax.inject dependency has been removed

2. javax.enterprise.* has been removed from <_exportcontents> and javax.enterprise:cdi-api dependency has been removed

3. guava dependency has been removed

All is based on [3]and [4]

[1]: https://github.com/weld/core/blob/2.1/bundles/osgi/pom.xml
[2]: https://github.com/weld/core/commit/3e5cc452783161a9aae40160da1656216084bc33
[3]: https://issues.jboss.org/browse/WELD-1428
[4]: https://issues.jboss.org/browse/WELD-1477

Once upgrading 2.1.0.Final, these big changes will need GF distro to do the following:

1. javax.enterprise:cdi-api will be put into modules
2. whether current guava module in gf will meet the demand from weld-osgi-bundle. This needs to be confirm.



 Comments   
Comment by TangYong [ 10/Dec/13 02:04 PM ]

3. also confirm whether some modules which only depend on cdi api originally exported by weld-osgi-bundle, needs to be
switched into depending on javax.enterprise:cdi-api?

Comment by mauritzlovgren [ 01/Apr/14 11:01 AM ]

Might be important to inform current 4.0.0 users of the serious memory leak in the Weld version that is bundled with 4.0.0 release (Weld 2.0). Weld has released a fix for part of this memory leak that was causing big trouble in our production environment: http://weld.cdi-spec.org/news/2014/01/14/weld-212-final/. I assume that GF 4.0.1 will have a newer version of Weld, at least 2.0.5.Final or newer?).

Comment by elio.alves [ 14/Apr/14 09:20 PM ]

I fix this bug and update the weld version toweld-2.1.2.Final but I dont know how to commit.

Somebody can help-me?

Below my changes

update of lib weld-osgi-api to weld-2.1.2.Final because the atual version have a bug that mixing the sessions
update on BootstrapConfigurationImpl and ACLSingletonProvider to works with weld-2.1.2.Final. I implemented 4 methods that reuse the same old methods
I put two others bundles because the weld require it
I created another packager... but i dont know if are in the correct form, but, works fine

Comment by elio.alves [ 14/Apr/14 09:23 PM ]

How I can commit my changes?
This is my first fix in the java.net/jira

Comment by jjsnyder83 [ 15/Apr/14 01:25 PM ]

If you send me the changes I will get them committed in the next few days. There are a couple other steps that have to be done too before we can change the version.





[GLASSFISH-20914] Unable to get @InterceptorBinding working Created: 04/Dec/13  Updated: 16/Apr/14  Resolved: 16/Apr/14

Status: Resolved
Project: glassfish
Component/s: cdi
Affects Version/s: 4.0
Fix Version/s: None

Type: Bug Priority: Major
Reporter: atrajano Assignee: jjsnyder83
Resolution: Fixed Votes: 1
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags:
Participants: atrajano, jjsnyder83 and reza_rahman

 Description   

I have created a InterceptorBinding annotation

@Inherited
@InterceptorBinding
@Target({ TYPE, METHOD })
@Retention(RUNTIME)
public @interface BusinessMethod { }

And the following interceptor

@BusinessMethod
@Interceptor
public class LoggingInterceptor {
private static final Logger log = Logger.getLogger("net.trajano.app");
@AroundInvoke
public Object log(final InvocationContext ctx) throws Throwable {
log.warning("around invoke " + ctx.getMethod());
try { return ctx.proceed(); } catch (final Throwable e) { log.severe("Error calling ctx.proceed in " + ctx.getMethod()); throw e; }
}
}

In my SLSB I have added the annotation

@Stateless
@BusinessMethod
public class PersistedBeans

However, the interceptor methods do not work. Explicitly listing the interceptor using @Interceptors(LoggingInterceptor.class) works thouhg.



 Comments   
Comment by atrajano [ 23/Dec/13 05:42 PM ]

Seems you require adding it to the beans.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/beans_1_1.xsd"
version="1.1" bean-discovery-mode="annotated">
<interceptors>
<class>net.trajano.app.internal.LoggingInterceptor</class>
</interceptors>
</beans>

Not sure if that is required by the spec or not, it didn't seem to take the CDI scopes into consideration.

Please close if that is the expected behaviour.

Comment by reza_rahman [ 23/Dec/13 06:36 PM ]

This is unfortunately a known issue with the CDI spec: https://issues.jboss.org/browse/CDI-404. Hope this helps.

Comment by jjsnyder83 [ 16/Apr/14 07:27 PM ]

Add @Dependent to your interceptor definition. As stated previously there is a problem with the spec but according to the previously mentioned jira adding @Dependent should resolve your issue.





[GLASSFISH-20912] Unable to find object in CDI using @Produces with no beans.xml Created: 04/Dec/13  Updated: 16/Apr/14  Resolved: 16/Apr/14

Status: Resolved
Project: glassfish
Component/s: cdi
Affects Version/s: 4.0
Fix Version/s: None

Type: Bug Priority: Major
Reporter: atrajano Assignee: jjsnyder83
Resolution: Works as designed Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags:
Participants: atrajano and jjsnyder83

 Description   

Given a Java bean

public class Bean {
private String message;

public String getMessage() { return message; }
// ...
}

and a @Produces method

public class ObjectFactory {
@Produces
public Bean createBean() { final Bean bean = new Bean(); bean.setMessage("Hello CDI"); return bean; }
}

Doing an injection yields.

javax.servlet.ServletException: A MultiException has 1 exceptions. They are:
1. org.glassfish.hk2.api.UnsatisfiedDependencyException: There was no object available for injection at Injectee(requiredType=Bean,parent=AppResource,qualifiers={}),position=-1,optional=false,self=false,unqualified=null,2080834135)

I have tried other combinations with @Dependent on the ObjectFactory and on the bean itself with no luck.

I also tried it with a @Qualifier also no luck. However, I can get it working when beans.xml with bean-discovery-mode="all"



 Comments   
Comment by jjsnyder83 [ 16/Apr/14 07:30 PM ]

Please provide the code that shows the injection point.

Comment by jjsnyder83 [ 16/Apr/14 07:32 PM ]

Add @Dependent to the Bean class. Since there is no beans.xml implicit CDI is being used and therefore only beans with bean defining annotations will be recognized and managed. Adding @Dependent forces Bean to be a cdi-managed bean.





[GLASSFISH-20870] ViewScoped conditional event observer NPE Created: 24/Oct/13  Updated: 17/Apr/14

Status: Open
Project: glassfish
Component/s: cdi
Affects Version/s: 4.0
Fix Version/s: None

Type: Bug Priority: Major
Reporter: jnfelix Assignee: jjsnyder83
Resolution: Unresolved Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Windows Vista, Netbeans 7.4, included Glassfish 4.0, JSF 2.2


Tags: 4_0_1-review CDI ViewScoped events
Participants: jjsnyder83 and jnfelix

 Description   

When a CDI event is fired from a JSF @SessionScoped bean, @ViewScoped event listeners using Reception.IF_EXISTS (see below) are involved in the notifications chain even if the view does NOT exist. The bean is not really created and observer method is not reached but the server throws:

java.lang.NullPointerException
at org.jboss.weld.injection.producer.BeanInjectionTarget.produce(BeanInjectionTarget.java:177)
at org.jboss.weld.bean.ManagedBean.create(ManagedBean.java:157)
at com.sun.faces.application.view.ViewScopeContextManager.createBean(ViewScopeContextManager.java:120)
at com.sun.faces.application.view.ViewScopeContext.get(ViewScopeContext.java:137)
at org.jboss.weld.manager.BeanManagerImpl.getReference(BeanManagerImpl.java:716)
at org.jboss.weld.event.ObserverMethodImpl.getReceiver(ObserverMethodImpl.java:302)
at org.jboss.weld.event.ObserverMethodImpl.getReceiverIfExists(ObserverMethodImpl.java:295)
at org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:259)
at org.jboss.weld.event.ObserverMethodImpl.notify(ObserverMethodImpl.java:240)
at org.jboss.weld.event.ObserverNotifier.notifyObserver(ObserverNotifier.java:170)
at org.jboss.weld.event.ObserverNotifier.notifyObserver(ObserverNotifier.java:166)
at org.jboss.weld.event.TransactionalObserverNotifier.notifyObserver(TransactionalObserverNotifier.java:44)
at org.jboss.weld.event.ObserverNotifier.notifyObservers(ObserverNotifier.java:120)
at org.jboss.weld.event.ObserverNotifier.fireEvent(ObserverNotifier.java:113)
at org.jboss.weld.event.EventImpl.fire(EventImpl.java:79)
at com.mytest.core.web.model.UserContext.setManagedShopInfo(UserContext.java:63)
at com.my.core.web.model.UserContext$Proxy$_$$_WeldClientProxy.setManagedShopInf

Simple view scoped observer:

import javax.faces.view.ViewScoped;

@Named(value = "cdiEvents")
@ViewScoped
public class TestCdiEvents implements Serializable{

public void onUserContextEvent(@Observes (notifyObserver = Reception.IF_EXISTS) @EventUserContext String chg){... }
}

Notes:

  • changing the scope from @ViewScoped to @SessionScoped fixes the issue (as expected, the bean is not created and no error/event is fired);
  • changing reception to ALWAYS also behaves as expected (bean created & listener method called)

This may be related to https://community.jboss.org/message/840033 but I couldn't test the weld osgi 2.1 bundle in GF4 instalattion(some packages were removed and could't make GF start)



 Comments   
Comment by jnfelix [ 24/Oct/13 04:25 PM ]

Correction: it seems it tries to create the bean, the constructor for the @ViewScoped bean is called (it doesn't hit @PostConstruct where i had the breakpoint initially) when the event is fired





[GLASSFISH-20867] GlassFish 4 not scanning lib/my-bean-archive.jar for beans Created: 23/Oct/13  Updated: 24/Oct/13  Resolved: 24/Oct/13

Status: Resolved
Project: glassfish
Component/s: cdi
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: Major
Reporter: John D. Ament Assignee: jjsnyder83
Resolution: Works as designed Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

File Attachments: Java Archive File resource_in_lib.jar    
Tags:
Participants: jjsnyder83, John D. Ament and TangYong

 Description   

See: http://stackoverflow.com/questions/19437165/resource-injection-in-jar-in-lib-of-an-ear-why-doesnt-that-work/19448621?noredirect=1#comment28975788_19448621

Per EG discussion, lib/my-bean-archive.jar should be scanned in an EAR file.

https://java.net/projects/javaee-spec/lists/users/archive/2013-10/message/46



 Comments   
Comment by TangYong [ 23/Oct/13 02:52 PM ]

pl. JJ evaluates the issue.

Comment by TangYong [ 23/Oct/13 03:06 PM ]

Noting that in the link of stackoverflow, virtually, it seems that @Resource does not work and causes @Produces method returns null.

Deeply, the following,

@Resource(lookup = "Member")
private DataSource userDS;

If looking up "Member" failed, userDS is also null, So, I can not judge whether having condition missing from the link including the github project.

Comment by jjsnyder83 [ 24/Oct/13 02:40 PM ]

I tested this with the attached ear. Please let me know if I'm missing something. My guess is that the data source is not defined correctly.

Comment by jjsnyder83 [ 24/Oct/13 02:43 PM ]

Deploy the ear inside of the jar and then execute:
http://localhost:8080/resource_in_lib/ResourceInLibServlet





[GLASSFISH-20862] @Resource 'name/mappedName' ambiguity for DataSource created in Glassfish console. Created: 19/Oct/13  Updated: 24/Oct/13  Resolved: 24/Oct/13

Status: Resolved
Project: glassfish
Component/s: cdi
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: Major
Reporter: anirudhgupta169 Assignee: jjsnyder83
Resolution: Works as designed Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Glassfish 4.0 0n Windows XP(32-bit). Browser Chrome. Oracle 11g.


Tags:
Participants: anirudhgupta169 and jjsnyder83

 Description   

Created Connection Pool in Glassfish admin console.
Pool Name : OCWCD
Resource Type : java.sql.Datasource
Datasource Classname : oracle.jdbc.pool.OracleDataSource

Additional Properties
URL : jdbc:oracle:thin:@xxxxxxx:xxxx:xxxxxx
portNumber : xxxxxxx
databaseName : xxxxxxx
serverName : xxxxxxx
user : xxxxxxx
password : xxxxxxx

Created a JDBC Resource in Admin COnsole,
JNDI Name : jdbc/ocwcd
Connecition Pool : OCWCD

In the Servlet, tried to inject resource by using,
1. @Resource(name="jdbc/ocwcd") DataSource ds;
2. @Resource(name="jdbc/ocwcd" mappedName="OCWCD") DataSource ds;
3. @Resource(name="jdbc/ocwcd" mappedName="jdbc/ocwcd") DataSource ds;
4. @Resource(mappedName="jdbc/ocwcd") DataSource ds;

Only the 3rd and 4th option worked.
With the 1st option received,
----------------------------------------
type Exception report

messageInternal Server Error

descriptionThe server encountered an internal error that prevented it from fulfilling this request.

exception

javax.servlet.ServletException: Error instantiating servlet class come.lets.learn.servlet.ResourceByAnnotations
root cause

com.sun.enterprise.container.common.spi.util.InjectionException: Error creating managed object for class: class come.lets.learn.servlet.ResourceByAnnotations
root cause

com.sun.enterprise.container.common.spi.util.InjectionException: Exception attempting to inject Res-Ref-Env-Property: jdbc/ocwcd@javax.sql.DataSource@ resolved as: jndi: OCWCD@res principal: null@mail: null
No Runtime properties
Database Vendor : null
Create Tables at Deploy : false
Delete Tables at Undeploy : false into class come.lets.learn.servlet.ResourceByAnnotations: Lookup failed for 'java:comp/env/jdbc/ocwcd' in SerialContext[myEnv={java.naming.factory.initial=com.sun.enterprise.naming.impl.SerialInitContextFactory, java.naming.factory.state=com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl, java.naming.factory.url.pkgs=com.sun.enterprise.naming}
root cause

javax.naming.NamingException: Lookup failed for 'java:comp/env/jdbc/ocwcd' in SerialContext[myEnv={java.naming.factory.initial=com.sun.enterprise.naming.impl.SerialInitContextFactory, java.naming.factory.state=com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl, java.naming.factory.url.pkgs=com.sun.enterprise.naming} [Root exception is javax.naming.NamingException: Lookup failed for 'OCWCD' in SerialContext[myEnv={java.naming.factory.initial=com.sun.enterprise.naming.impl.SerialInitContextFactory, java.naming.factory.state=com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl, java.naming.factory.url.pkgs=com.sun.enterprise.naming, com.sun.enterprise.naming.logicalName=java:comp/env/jdbc/ocwcd} [Root exception is javax.naming.NameNotFoundException: OCWCD not found]]
root cause

javax.naming.NamingException: Lookup failed for 'OCWCD' in SerialContext[myEnv={java.naming.factory.initial=com.sun.enterprise.naming.impl.SerialInitContextFactory, java.naming.factory.state=com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl, java.naming.factory.url.pkgs=com.sun.enterprise.naming, com.sun.enterprise.naming.logicalName=java:comp/env/jdbc/ocwcd} [Root exception is javax.naming.NameNotFoundException: OCWCD not found]
root cause

javax.naming.NameNotFoundException: OCWCD not found
note The full stack traces of the exception and its root causes are available in the GlassFish Server Open Source Edition 4.0 logs.
----------------------------------------

With the 2nd option , received NullPointerException for the datasource variable.



 Comments   
Comment by jjsnyder83 [ 24/Oct/13 07:47 PM ]

I believe this is working as designed. The mappedName must be a valid JNDI name for an object in JNDI. That is why 3 and 4 are working. 2 is failing because the mappedName is used before name and so GF is using "OCWCD" as the lookup value and there is nothing in JNDI at "java:comp/env/OCWCD". 1 should work (it worked for me.)





[GLASSFISH-20853] Alternatives are not enabled using beans.xml Created: 14/Oct/13  Updated: 15/Oct/13  Resolved: 15/Oct/13

Status: Resolved
Project: glassfish
Component/s: cdi
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: Major
Reporter: arungupta Assignee: jjsnyder83
Resolution: Works as designed Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags:
Participants: arungupta and jjsnyder83

 Description   

Here is beans.xml:

<beans
xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
http://xmlns.jcp.org/xml/ns/javaee/beans_1_1.xsd"
bean-discovery-mode="all">
<alternatives>
<class>org.javaee7.cdi.alternatives.FancyGreeting</class>
</alternatives>
</beans>

Beans marked with @Alternative are:

@Alternative
public class SimpleGreeting implements Greeting {

@Override
public String greet(String name) { return "Hello " + name; }

}

and

@Fancy
@Alternative
public class FancyGreeting implements Greeting {

@Override
public String greet(String name) { return "Nice to meet you, hello" + name; }

}

Complete sample at:

https://github.com/arun-gupta/javaee7-samples/tree/master/cdi/alternatives



 Comments   
Comment by jjsnyder83 [ 15/Oct/13 12:10 PM ]

This is expected behaviour. SimpleGreeting is not a selected alternative (i.e. disabled bean). FancyGreeting is selected but has a qualifier specified (@Fancy). TestServlet has an injection point "@Inject Greeting greeting", the required bean type is Greeting the required qualifier @Default. FancyGreeting does not satisfy this IP (it only has @Any and @Fancy) -> unsatisfied dependency.





[GLASSFISH-20850] classloader favors modules/guava.jar over guava library in the ear Created: 11/Oct/13  Updated: 14/Feb/14

Status: Open
Project: glassfish
Component/s: cdi, classloader
Affects Version/s: 4.0
Fix Version/s: None

Type: Bug Priority: Major
Reporter: Thomas Andres Assignee: jjsnyder83
Resolution: Unresolved Votes: 7
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Related
is related to JERSEY-1884 Jersey 2.0 Maven artiifact depends on... Resolved
Tags:
Participants: hsaqallah, jjsnyder83, Joe Di Pol, simon.schlachter and Thomas Andres

 Description   

I tried to upgrad the guava library in our application to version 15-0. When I deploy the application on glassfish 4.0, I see the following Exception:

Caused by: java.lang.NoSuchMethodError: com.google.common.base.Stopwatch.createStarted()Lcom/google/common/base/Stopwatch;
at MyClient.buildClient(MyClient.java:159)
at MyClient.initClient(MyClient.java:143)
at MyClient.<init>(MyClient.java:74)
at MyClient.<init>(MyClient.java:62)
at MyClientFactory.createClient(MyClientFactory.java:12)
at MyClientProducer.createClient(MyClientProducer.java:16)
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:606)
at org.jboss.weld.injection.MethodInjectionPoint.invokeOnInstanceWithSpecialValue(MethodInjectionPoint.java:93)

To verify where the class is loaded from, I added:
URL resource = this.getClass().getClassLoader()
.getResource(Stopwatch.class.getName().replaceAll("
.", "/") + ".class");
LOGGER.info("URL for Stopwatch:" + resource.toString());
which gives me
URL for Stopwatch:bundle://108.0:1/com/google/common/base/Stopwatch.class

MyClient, MyClientFactory and MyClientProducer are all inside an ejb jar file.
guava-15.0.jar is in a lib folder next to the ejb jar (with lib/guava-15.0.jar in the ear META-INF/MANIFEST.MF Class-Path)

All other libraries there can be found. It just seems, that the weld classloader favors the guava.jar bundled with glassfish 4 over the one I provide for the application. I would expect the classloader to give stuff deployed with the ear a higher priority.



 Comments   
Comment by Thomas Andres [ 11/Oct/13 12:19 PM ]

BTW: Deploying the same ear on glassfish 3.1.2.2 works. The guava class is loaded correctly from the jar inside my ear.

(with a patched beans.xml, but that's another story...)

Comment by Joe Di Pol [ 11/Oct/13 05:56 PM ]

When we have had similar problems in the past the issue was that an OSGi module was exporting packages without any mechanism to prevent them from being found by the application's hierarchy of class loaders.

The solution was to add mandatory OSGi attributes to the exported packages that must be declared by any other module that wanted to import the packages. This prevents the API/Packages from leaking into the application space. I looked at guava.jar and it does not appear to do this – so maybe this is the problem.

For some additional information on this issue see the following:

https://java.net/jira/browse/GLASSFISH-5385
https://java.net/jira/browse/GLASSFISH-18176

Comment by simon.schlachter [ 31/Oct/13 09:18 AM ]

Exactly the same problem here.

Comment by simon.schlachter [ 01/Nov/13 11:46 AM ]

We were able to workaround the problem, by "patching" the manifests (MANIFEST.MF) of the included guava.jar file and its dependencies.

in guava we added ;mandatory:=password;password="GlassFish to all export-statements.

In the dependent modules we added ;password="GlassFish" to all import statements concerning com.google.common.*

The list of modules we had to patch is

  • jersey-bean-validation.jar
  • jersey-client.jar
  • jersey-common.jar
  • jersey-container-servlet-core.jar
  • jersey-container-servlet.jar
  • jersey-media-moxy.jar
  • jersey-mvc-jsp.jar
  • jersey-mvc.jar
  • jersey-server.jar

The effect of this change is that guava.jar-classes do no longer leak into the class path of our deployed application. This solves the guava-version-problem for us. The root problem, however, is not solved: Glassfish still favors its own classpath instead of that of the deployed application.

(The Idea for this workaround is originally from GLASSFISH-5385)

Comment by hsaqallah [ 14/Feb/14 05:24 PM ]

Patching GF4's files is error-prone and very impractical for a sane development/test/stage/prod environment. There should have been an easier fix. Too bad. Time to switch to Tomcat 7.





[GLASSFISH-20829] Beans deployed in ejb archives that implements extension are not visible to war in ear deployment Created: 28/Sep/13  Updated: 30/Sep/13  Resolved: 29/Sep/13

Status: Resolved
Project: glassfish
Component/s: cdi
Affects Version/s: 3.1.2.2
Fix Version/s: 4.0

Type: Bug Priority: Major
Reporter: dgaffuri Assignee: jjsnyder83
Resolution: Fixed Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags:
Participants: dgaffuri and jjsnyder83

 Description   

If you include an extension in an ejb archive and deploy the resulting application as an ear contained beans are not made available to wars in same ear. Looking at the logs I see that the archive is processed two times

FINE|org.glassfish.weld.BeanDeploymentArchiveImpl|-JAR processing: file:/core.jee-0.0.1-SNAPSHOT_jar/ as a Bean archive jar since it has META-INF/beans.xml
FINE|org.glassfish.weld.BeanDeploymentArchiveImpl|-JAR processing: file:/core.jee-0.0.1-SNAPSHOT_jar/ as an extensions jar since it has META-INF/services extension

Looking at code (from org.glassfish.web:weld-integration:3.1.1) the second processing sets the bdaType to UNKNOWN

418 if (archive.exists(META_INF_BEANS_XML)) { 419 logger.log(FINE, "-JAR processing: " + archive.getURI() 420 + " as a Bean archive jar since it has META-INF/beans.xml"); 421 bdaType = BDAType.JAR; 422 collectJarInfo(archive, true); 423 }
424
425 if (archive.exists(META_INF_SERVICES_EXTENSION)){ 426 logger.log(FINE, "-JAR processing: " + archive.getURI() 427 + " as an extensions jar since it has META-INF/services extension"); 428 bdaType = BDAType.UNKNOWN; 429 collectJarInfo(archive, false); 430 }

and only JAR BDAs seem to be made available to wars (org.glassfish.weld.DeploymentImpl)

228 if (warBDAs != null) {
229 ListIterator<BeanDeploymentArchive> warIter = warBDAs.listIterator();
230 boolean modifiedArchive = false;
231 while (warIter.hasNext()) {
232 BeanDeploymentArchive warBDA = (BeanDeploymentArchive)warIter.next();
233 if (jarBDAs != null) {
234 ListIterator<BeanDeploymentArchive> jarIter = jarBDAs.listIterator();
235 while (jarIter.hasNext()) { 236 BeanDeploymentArchive jarBDA = (BeanDeploymentArchive)jarIter.next(); 237 warBDA.getBeanDeploymentArchives().add(jarBDA); 238 modifiedArchive = true; 239 }
240 }

The result is a WELD-001408 for unsatisfied dependencies at deploy.



 Comments   
Comment by jjsnyder83 [ 29/Sep/13 11:59 AM ]

This was fixed several months ago with the work that was done for integrating with CDI 1.1.

Comment by dgaffuri [ 29/Sep/13 05:42 PM ]

Thanks for your answer. Do you have a link to the JIRA issue? What about a fix for version 3?

Comment by jjsnyder83 [ 30/Sep/13 01:59 PM ]

The change to BeanDeploymentArchiveImpl was done while fixing cdi 1.1 tck failures. Unfortunately there was not a Jira for it. The svn commit info for that change is:

59030 01.02.2013 21:05:12, by jjsnyder83

I'll look into your comment on DeploymentImpl next.

Comment by jjsnyder83 [ 30/Sep/13 02:06 PM ]

As for the changes to DeploymentImpl I cannot determine when they were made as svn compare is failing on me due to repository issues.

I do not know about fixes for version 3. Those would probably have to go through support. fyi...there were many many fixes and improvements in GlassFish with 4.0 especially in CDI. I encourage you to upgrade if that's possible.





[GLASSFISH-20796] Producing a Persistence Unit returns nul Created: 04/Sep/13  Updated: 17/Apr/14

Status: Open
Project: glassfish
Component/s: cdi
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: Major
Reporter: arungupta Assignee: jjsnyder83
Resolution: Unresolved Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

File Attachments: Zip Archive pu-typesafe.zip    
Tags: 4_0_1-review
Participants: arungupta and jjsnyder83

 Description   

I've created a sample to show how Persistence Units can be injected in a typesafe manner using CDI. The complete source code of the sample is available at:

https://github.com/arun-gupta/javaee7-samples/tree/master/jpa/pu-typesafe

The application has one Persistence Unit and is "produced" as:

static @Produces @PersistenceContext(unitName = "defaultPU") @DefaultDatabase EntityManager defaultEM;

But when injected in an EJB as:

@Inject @DefaultDatabase
    EntityManager defaultEM;

the sampleEM returns null. Injecting the PU the traditional way as:

@PersistenceContext(unitName = "defaultPU")
    EntityManager defaultEM;

seems to work.

Attached file provides the sample.



 Comments   
Comment by jjsnyder83 [ 10/Sep/13 06:26 PM ]

Appears to be a bug in Weld. See https://issues.jboss.org/browse/WELD-1505.





[GLASSFISH-20793] GF4 deployment error when having two web projects under one ear with equal managed bean names Created: 03/Sep/13  Updated: 06/Sep/13  Resolved: 06/Sep/13

Status: Resolved
Project: glassfish
Component/s: cdi
Affects Version/s: 4.0_b89_RC5
Fix Version/s: None

Type: Bug Priority: Critical
Reporter: replicant77 Assignee: jjsnyder83
Resolution: Fixed Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Win 7 Pro 64Bit
GlassFish Server Open Source Edition 4.0 (build 89)
GlassFish 4.0.1 b04 09/03/2013
jdk1.7.0_21


File Attachments: Zip Archive GLASSFISH-20793_demo.zip    
Tags: jsf glassfish4 weld cdi
Participants: jjsnyder83, Manfred Riem, replicant77 and TangYong

 Description   

We are currently evaluating glassfish 4 for migration of our enterprise projects from glassfish 3.1.2.2. One problem we noticed is that now deployment fails with an ambiguity error message when having two web projects under one ear with equal managed bean names (see stacktrace below). In this case we created two simple jsf web projects contained in the same ear. Both wars contain a managed bean with same managed bean names ('greetingBean'). On GF3.x it works without problems.

@Named
@RequestScoped
public class GreetingBean {

public String getGreeting() { return "Hello from " + getClass().getName(); }

}

-------
org.glassfish.deployment.common.DeploymentException: CDI deployment failure:WELD-001414 Bean name is ambiguous. Name greetingBean resolves to beans [Managed Bean [class test.web2.GreetingBean] with qualifiers [@Default @Any @Named], Managed Bean [class test.web1.GreetingBean] with qualifiers [@Default @Any @Named]]
at org.glassfish.weld.WeldDeployer.event(WeldDeployer.java:225)
at org.glassfish.kernel.event.EventsImpl.send(EventsImpl.java:131)
at org.glassfish.internal.data.ApplicationInfo.load(ApplicationInfo.java:328)
at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:493)
at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:219)
at org.glassfish.deployment.admin.DeployCommand.execute(DeployCommand.java:491)
at com.sun.enterprise.v3.admin.CommandRunnerImpl$2$1.run(CommandRunnerImpl.java:527)
at com.sun.enterprise.v3.admin.CommandRunnerImpl$2$1.run(CommandRunnerImpl.java:523)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:356)
at com.sun.enterprise.v3.admin.CommandRunnerImpl$2.execute(CommandRunnerImpl.java:522)
at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:546)
at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:1423)
at com.sun.enterprise.v3.admin.CommandRunnerImpl.access$1500(CommandRunnerImpl.java:108)
at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1762)
at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1674)
at com.sun.enterprise.v3.admin.AdminAdapter.doCommand(AdminAdapter.java:534)
at com.sun.enterprise.v3.admin.AdminAdapter.onMissingResource(AdminAdapter.java:224)
at org.glassfish.grizzly.http.server.StaticHttpHandler.service(StaticHttpHandler.java:297)
at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:246)
at org.glassfish.grizzly.http.server.HttpHandler.runService(HttpHandler.java:191)
at org.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:168)
at org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:189)
at org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:288)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:206)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:136)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:114)
at org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
at org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:838)
at org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:113)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:115)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:55)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:135)
at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:564)
at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
at java.lang.Thread.run(Thread.java:722)
Caused by: org.jboss.weld.exceptions.DeploymentException: WELD-001414 Bean name is ambiguous. Name greetingBean resolves to beans [Managed Bean [class test.web2.GreetingBean] with qualifiers [@Default @Any @Named], Managed Bean [class test.web1.GreetingBean] with qualifiers [@Default @Any @Named]]
at org.jboss.weld.bootstrap.Validator.validateBeanNames(Validator.java:639)
at org.jboss.weld.bootstrap.Validator.validateDeployment(Validator.java:488)
at org.jboss.weld.bootstrap.WeldBootstrap.validateBeans(WeldBootstrap.java:536)
at org.glassfish.weld.WeldDeployer.event(WeldDeployer.java:216)
... 36 more
-------



 Comments   
Comment by TangYong [ 03/Sep/13 03:04 PM ]

Component/s should be CDI.

Comment by Manfred Riem [ 03/Sep/13 03:08 PM ]

Reassigning to JJ as this looks like a CDI specific issue.

Comment by TangYong [ 03/Sep/13 03:21 PM ]

Change Component/s into CDI

Comment by TangYong [ 04/Sep/13 04:29 AM ]

I did a demo(attachment) to re-produce the issue.

PL. JJ confirms it.

Notice that the following,

1. Bean in different wars should be allowed to have the same EL name
https://issues.jboss.org/browse/CDI-188

2. Ambiguous name validation should not cross visibility boundaries
https://issues.jboss.org/browse/WELD-1065

From JBOSS Team's reply,
"
It is not portable to have multiple classes of the same name within the deployment. Weld currently does not support this..."

It seems that this issue is not still planned to be fix.

Thanks
Tang

Comment by TangYong [ 04/Sep/13 06:34 AM ]

New Confirmation is as following:

1. The issue can be re-produced using GlassFish 4.0.1 b04 09/03/2013

http://dlc.sun.com.edgesuite.net/glassfish/4.0.1/nightly/latest-glassfish.zip (b04 09/03/2013)

2. The issue does not happen using wildfly-8.0.0.Alpha4
"
15:01:23,451 INFO [org.jboss.weld.deployer] (MSC service thread 1-1) JBAS016002: Processing weld deployment eartwowars-ear.ear
15:01:23,498 INFO [org.hibernate.validator.internal.util.Version] (MSC service thread 1-1) HV000001: Hibernate Validator 5.0.1.Final
15:01:23,576 INFO [org.jboss.weld.deployer] (MSC service thread 1-2) JBAS016002: Processing weld deployment eartwowars-war1-1.0.0.war
15:01:23,576 INFO [org.jboss.weld.deployer] (MSC service thread 1-1) JBAS016002: Processing weld deployment eartwowars-war2-1.0.0.war
15:01:23,607 INFO [org.jboss.weld.deployer] (MSC service thread 1-2) JBAS016005: Starting Services for CDI deployment: eartwowars-ear.ear
15:01:23,638 INFO [org.jboss.weld.Version] (MSC service thread 1-2) WELD-000900 2.0.3 (Final)
15:01:23,732 INFO [org.jboss.weld.deployer] (MSC service thread 1-2) JBAS016008: Starting weld service for deployment eartwowars-ear.ear
15:01:24,513 INFO [org.wildfly.extension.undertow] (MSC service thread 1-4) JBAS018210: Register web context: /eartwowars-war1
15:01:24,513 INFO [org.wildfly.extension.undertow] (MSC service thread 1-3) JBAS018210: Register web context: /eartwowars-war2
15:01:24,670 INFO [org.jboss.as.server] (XNIO-1 task-3) JBAS018559: Deployed "eartwowars-ear.ear" (runtime-name : "eartwowars-ear.ear")"

3. GlassFish 4.0.1 b04 and wildfly-8.0.0.Alpha4 all uses weld-osgi-bundle 2.0.3.Final.

So, I can make an initial conclusion that maybe the issue is caused by GlassFish Weld Integration and I raised up Priority of the issue.

Comment by replicant77 [ 04/Sep/13 07:50 AM ]

Interesting to notice is that switching from cdi to jsf managed bean declarations resolves the issue. As we reference these beans in jsf pages, this is a better workaround for us than renaming the bean names.

@javax.faces.bean.ManagedBean
@javax.faces.bean.RequestScoped
//@javax.inject.Named
//@javax.enterprise.context.RequestScoped
public class GreetingBean {

public String getGreeting() { return "Hello from " + getClass().getName(); }

}

Comment by TangYong [ 04/Sep/13 08:16 AM ]

Java EE 7(or Higher) recommended using backing bean(using CDI concept) with JSF rather than ManagedBean. The ManagedBean has been outdated and although the workaround is valid for your current issue, It is hard to say that in the future, once GlassFish does not support ManagedBean, whether you will come back the scene again.

Backing to the issue, I am investigating it and this should belong to Bean visibility problem while building BDAs.

Thanks
Tang

Comment by TangYong [ 04/Sep/13 09:46 AM ]

JJ

The reason for the issue has been found as following,

For an ear with two wars, while deploying the ear, GlassFish Weld Integration created several Bean Managers corresponding to different BDAs. Among them, there is a Bean Manager liking AppBda_XXX-YYY which corresponds to the EAR BDA, and there are also two Bean Managers which correspond to the wars. The important point is that the EAR's Bean Manager's getAccessibleManagers() contains the wars's Bean Managers.

Then, while org.jboss.weld.bootstrap.Validator calls the following,

public void validateBeanNames(BeanManagerImpl beanManager) {
...
for (Bean<?> bean : beanManager.getAccessibleBeans()) { ... }

getAccessibleBeans() will call org.jboss.weld.manager.BeanManagers.buildAccessibleClosure(...),

The buildAccessibleClosure(...) will obtain all contained Bean Managers related to current Bean Manager by using getAccessibleManagers().

So, war1 and war2's beans with the same name will be added Validator's "namedAccessibleBeans" as following,

for (Bean<?> bean : beanManager.getAccessibleBeans()) {
if (bean.getName() != null) { namedAccessibleBeans.put(bean.getName(), bean); }
}

And the exception happened.

Deeply, the issue should be related to Bean Manager's visibility. I think that we should not make war1 and war2's Bean Manager visible to EAR's Bean Manager.

Thanks
Tang

Comment by jjsnyder83 [ 04/Sep/13 01:10 PM ]

I also spoke with the JBoss guys and this should be valid. I will look at it shortly.

Comment by TangYong [ 05/Sep/13 02:11 AM ]

JJ

Fixing place has been confirmed as following,

Class: org.glassfish.weld.DeploymentImpl
Method: addAppBda()
Place to need to fix:
private void addAppBda() {
...
// make all bdas visible to the app Bda. But none have visibility to App Bda
for ( BeanDeploymentArchive oneBda : beanDeploymentArchives ) {
if ( ! oneBda.equals(appBda)) { appBda.getBeanDeploymentArchives().add(oneBda); }
}
}

Whether can remove the above logic and make appBda not contain any child bda?

Thanks
Tang

Comment by TangYong [ 05/Sep/13 02:23 AM ]

I have made an fixing by removing the above logic, then , replaced the weld-integration bundle using self-built version on 4.0.1-b02. While deploying demo(attachment),

E:\NanjingJUG\glassfish-4.0.1-b02\glassfish4\glassfish\bin>asadmin deploy E:\NanjingJUG\GLASSFISH-20793\ear\target\eartwowars-ear.ear
Application deployed with name eartwowars-ear.
Command deploy executed successfully.

[server.log]
...
[2013-09-05T11:19:31.304+0900] [glassfish 4.0] [INFO] [AS-WEB-GLUE-00172] [javax.enterprise.web] [tid: _ThreadID=41 _ThreadName=admin-listener(2)] [timeMillis: 1378347571304] [levelValue: 800] [[
Loading application eartwowars-ear#eartwowars-war1-1.0.0.war at [/eartwowars-war1]]]

[2013-09-05T11:19:31.336+0900] [glassfish 4.0] [INFO] [AS-WEB-GLUE-00172] [javax.enterprise.web] [tid: _ThreadID=41 _ThreadName=admin-listener(2)] [timeMillis: 1378347571336] [levelValue: 800] [[
Loading application eartwowars-ear#eartwowars-war2-1.0.0.war at [/eartwowars-war2]]]

[2013-09-05T11:19:31.398+0900] [glassfish 4.0] [INFO] [] [javax.enterprise.system.core] [tid: _ThreadID=41 _ThreadName=admin-listener(2)] [timeMillis: 1378347571398] [levelValue: 800] [[
eartwowars-ear was successfully deployed in 4,171 milliseconds.]]

Pl. confirming the fix.

Thanks
Tang

Comment by jjsnyder83 [ 05/Sep/13 11:11 AM ]

I have been looking into the issue and tried the same change but it causes a tck failure. I have to remove the app bda completely and at the same time provide a fix for the tck failure. I should have something soon.

Comment by jjsnyder83 [ 05/Sep/13 09:53 PM ]

Ok, I have a fix that I will submit tomorrow.

Comment by jjsnyder83 [ 06/Sep/13 03:07 PM ]

Committed revision 62703





[GLASSFISH-20741] Unable to inject a managed bean into EJB Mobule Created: 05/Aug/13  Updated: 16/Apr/14  Resolved: 16/Apr/14

Status: Resolved
Project: glassfish
Component/s: cdi
Affects Version/s: 4.0_b89_RC5
Fix Version/s: None

Type: Bug Priority: Major
Reporter: krishnakodali Assignee: jjsnyder83
Resolution: Works as designed Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

OS: Mac OS x Mountain Loin and Server: Glassfish 4


Tags: CDI glassfish4
Participants: jjsnyder83 and krishnakodali

 Description   

Application Server : Glassfish 4. I am not sure about the build.

I am trying to inject a bean from application client jar to EJB jar.

Application Server : Glassfish 4.0

created this class in EJB jar.

@Stateless
@LocalBean
@TransactionManagement(TransactionManagementType.CONTAINER)
public class TransactionAwareBean { private Logger logger = Logger.getLogger("EJBBean"); @Resource(mappedName="jdbc/MySQLDataSource") private DataSource datasource; @Inject @DbType private DbUtil dbUtil; }

Created a qualifier and the bean class in application client jar.

@Qualifier
@Retention(RUNTIME)
@Target({METHOD, PARAMETER, FIELD,TYPE})
public @interface DbType {

}

@Named
@DbType
public class DbUtil {

}

Finally created beans.xml in both jar's ...

But i am getting

[2013-07-28T23:27:44.238-0400] [glassfish 4.0] [SEVERE] [] [javax.enterprise.system.core] [tid: _ThreadID=36 _ThreadName=admin-listener(2)] [timeMillis: 1375068464238] [levelValue: 1000] [[
Exception while loading the app : CDI deployment failure:WELD-001408 Unsatisfied dependencies for type [DbUtil] with qualifiers [@DbType] at injection point [[BackedAnnotatedField] @DbType @Inject private com.ejb.transactions.TransactionAwareBean.dbUtil]
org.jboss.weld.exceptions.DeploymentException: WELD-001408 Unsatisfied dependencies for type [DbUtil] with qualifiers [@DbType] at injection point [[BackedAnnotatedField] @DbType @Inject private com.ejb.transactions.TransactionAwareBean.dbUtil]
at org.jboss.weld.bootstrap.Validator.validateInjectionPointForDeploymentProblems(Validator.java:403)
at org.jboss.weld.bootstrap.Validator.validateInjectionPoint(Validator.java:325)
at org.jboss.weld.bootstrap.Validator.validateGeneralBean(Validator.java:177)
at org.jboss.weld.bootstrap.Validator.validateRIBean(Validator.java:208)
at org.jboss.weld.bootstrap.Validator.validateBean(Validator.java:519)
at org.jboss.weld.bootstrap.Validator.validateBeans(Validator.java:505)
at org.jboss.weld.bootstrap.Validator.validateDeployment(Validator.java:480)
at org.jboss.weld.bootstrap.WeldBootstrap.validateBeans(WeldBootstrap.java:536)
at org.glassfish.weld.WeldDeployer.event(WeldDeployer.java:216)
at org.glassfish.kernel.event.EventsImpl.send(EventsImpl.java:131)
at org.glassfish.internal.data.ApplicationInfo.load(ApplicationInfo.java:328)
at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:493)
at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:219)
at org.glassfish.deployment.admin.DeployCommand.execute(DeployCommand.java:491)
at com.sun.enterprise.v3.admin.CommandRunnerImpl$2$1.run(CommandRunnerImpl.java:527)
at com.sun.enterprise.v3.admin.CommandRunnerImpl$2$1.run(CommandRunnerImpl.java:523)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:356)
at com.sun.enterprise.v3.admin.CommandRunnerImpl$2.execute(CommandRunnerImpl.java:522)
at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:546)
at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:1423)
at com.sun.enterprise.v3.admin.CommandRunnerImpl.access$1500(CommandRunnerImpl.java:108)
at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1762)
at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1674)
at org.glassfish.admin.rest.utils.ResourceUtil.runCommand(ResourceUtil.java:235)
at org.glassfish.admin.rest.utils.ResourceUtil.runCommand(ResourceUtil.java:257)
at org.glassfish.admin.rest.resources.TemplateListOfResource.createResource(TemplateListOfResource.java:134)
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.glassfish.jersey.server.model.internal.ResourceMethodInvocationHandlerFactory$1.invoke(ResourceMethodInvocationHandlerFactory.java:81)
at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.invoke(AbstractJavaResourceMethodDispatcher.java:125)
at org.glassfish.jersey.server.model.internal.JavaResourceMethodDispatcherProvider$ResponseOutInvoker.doDispatch(JavaResourceMethodDispatcherProvider.java:152)
at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.dispatch(AbstractJavaResourceMethodDispatcher.java:91)
at org.glassfish.jersey.server.model.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:346)
at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:341)
at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:101)
at org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:224)
at org.glassfish.jersey.internal.Errors$1.call(Errors.java:271)
at org.glassfish.jersey.internal.Errors$1.call(Errors.java:267)
at org.glassfish.jersey.internal.Errors.process(Errors.java:315)
at org.glassfish.jersey.internal.Errors.process(Errors.java:297)
at org.glassfish.jersey.internal.Errors.process(Errors.java:267)
at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:317)
at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:198)
at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:946)
at org.glassfish.jersey.grizzly2.httpserver.GrizzlyHttpContainer.service(GrizzlyHttpContainer.java:331)
at org.glassfish.admin.rest.adapter.RestAdapter$2.service(RestAdapter.java:318)
at org.glassfish.admin.rest.adapter.RestAdapter.service(RestAdapter.java:181)
at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:246)
at org.glassfish.grizzly.http.server.HttpHandler.runService(HttpHandler.java:191)
at org.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:168)
at org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:189)
at org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:288)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:206)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:136)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:114)
at org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
at org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:838)
at org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:113)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:115)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:55)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:135)
at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:564)
at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
at java.lang.Thread.run(Thread.java:722)
]]



 Comments   
Comment by jjsnyder83 [ 16/Apr/14 07:59 PM ]

It appears that the client jar is not part of the application that is deployed to the server. That's why the exception is thrown because the bean in the client jar is not visible to the ejb when the ejb/application is deployed to the server.





[GLASSFISH-20736] CLONE -@Singleton @Startup (EJB) , with an @Observes(notifyObserver = IF_EXISTS) wont Deploy, Created: 01/Aug/13  Updated: 16/Apr/14

Status: Open
Project: glassfish
Component/s: cdi, ejb_container
Affects Version/s: 3.1.2_b23
Fix Version/s: None

Type: Bug Priority: Major
Reporter: ulrichBerl Assignee: jjsnyder83
Resolution: Unresolved Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Glassfish 3.1.2. Windows 7, Java 1.6,


Tags: Singleton Startup notifyObserver
Participants: jjsnyder83 and ulrichBerl

 Description   

You get this, but i think GF eat the real weld exception somewhere. This happens only with the notifyObserver parameter, without is working fine, but i want to listen to events only when all i say so!!

I don't Implement any interface or something similar,...

@Singleton
@Startup
@TransactionManagement(TransactionManagementType.BEAN)
public class SubsystemConnectionMonitor {

// stuff
public void subsystemConnectionEventFired(
@Observes(notifyObserver = IF_EXISTS) SubsystemConnectionEvent incomingEvent) { subsystemConnectionMonitor.subsystemConnectionEventFired(incomingEvent); }

//other stuff

}

Then you get this,...
2013-03-05 16:54:41.278 SEVERE 20 Exception while loading the app (javax.enterprise.system.core.com.sun.enterprise.v3.server)
2013-03-05 16:54:42.963 SEVERE 20 Exception while shutting down application container (javax.enterprise.system.tools.admin.org.glassfish.deployment.admin)



 Comments   
Comment by jjsnyder83 [ 16/Apr/14 07:49 PM ]

Can you please test this against GF 4.0?





[GLASSFISH-20667] EAR deployment fails with WELD-001417: Enabled interceptor (...) is neither annotated @Interceptor nor registered through a portable extension Created: 26/Jun/13  Updated: 23/Sep/13  Resolved: 23/Sep/13

Status: Resolved
Project: glassfish
Component/s: cdi
Affects Version/s: 4.0_b89_RC5
Fix Version/s: None

Type: Bug Priority: Blocker
Reporter: synti Assignee: jjsnyder83
Resolution: Works as designed Votes: 2
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Windows 8
Glassfish 4 b89 (bundled with NetBeans 7.3.1)


Tags:
Participants: javadon, jjsnyder83, laurent_bauchau, synti and TangYong

 Description   

In a maven enterprise application with EJB and WEB modules, deployment fails if the EJB module declares a CDI interceptor.

Btw, implicit CDI is disabled. Not sure it matters.

The beans.xml in the EJB module:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://xmlns.jcp.org/xml/ns/javaee"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/beans_1_1.xsd"
       bean-discovery-mode="annotated">
    <interceptors>
        <class>com.foo.BarInterceptor</class>
    </interceptors>
</beans>

Interceptor and binding:

@Interceptor @Bar
public class BarInterceptor implements Serializable {

    public BarInterceptor() {}
    
    @AroundInvoke
    public Object log(InvocationContext context) throws Exception {
        return context.proceed();
    }
    
    private static final long serialVersionUID = 1L;
}
@Inherited
@InterceptorBinding
@Retention(RUNTIME)
@Target({METHOD, TYPE})
public @interface Bar {}

Server log

[2013-06-26T20:17:10.522-0300] [glassfish 4.0] [SEVERE] [NCLS-CORE-00026] [javax.enterprise.system.core] [tid: _ThreadID=38 _ThreadName=admin-listener(4)] [timeMillis: 1372288630522] [levelValue: 1000] [[
  Exception during lifecycle processing
org.glassfish.deployment.common.DeploymentException: CDI deployment failure:WELD-001417 Enabled interceptor class <class>com.foo.BarInterceptor</class> in file:/E:/.../Interceptor-ear/Interceptor-ejb-1.0-SNAPSHOT_jar/META-INF/beans.xml@7 is neither annotated @Interceptor nor registered through a portable extension
	at org.glassfish.weld.WeldDeployer.event(WeldDeployer.java:225)
	at org.glassfish.kernel.event.EventsImpl.send(EventsImpl.java:131)
	at org.glassfish.internal.data.ApplicationInfo.load(ApplicationInfo.java:328)
	at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:493)
	at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:219)
	at org.glassfish.deployment.admin.DeployCommand.execute(DeployCommand.java:491)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$2$1.run(CommandRunnerImpl.java:527)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$2$1.run(CommandRunnerImpl.java:523)
	at java.security.AccessController.doPrivileged(Native Method)
	at javax.security.auth.Subject.doAs(Subject.java:356)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$2.execute(CommandRunnerImpl.java:522)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:546)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:1423)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl.access$1500(CommandRunnerImpl.java:108)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1762)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1674)
	at com.sun.enterprise.v3.admin.AdminAdapter.doCommand(AdminAdapter.java:534)
	at com.sun.enterprise.v3.admin.AdminAdapter.onMissingResource(AdminAdapter.java:224)
	at org.glassfish.grizzly.http.server.StaticHttpHandler.service(StaticHttpHandler.java:297)
	at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:246)
	at org.glassfish.grizzly.http.server.HttpHandler.runService(HttpHandler.java:191)
	at org.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:168)
	at org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:189)
	at org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:288)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:206)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:136)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:114)
	at org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
	at org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:838)
	at org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:113)
	at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:115)
	at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:55)
	at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:135)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:564)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
	at java.lang.Thread.run(Thread.java:722)
Caused by: org.jboss.weld.exceptions.DeploymentException: WELD-001417 Enabled interceptor class <class>com.foo.BarInterceptor</class> in file:/E:/.../Interceptor-ear/Interceptor-ejb-1.0-SNAPSHOT_jar/META-INF/beans.xml@7 is neither annotated @Interceptor nor registered through a portable extension
	at org.jboss.weld.bootstrap.Validator.validateEnabledInterceptorClasses(Validator.java:656)
	at org.jboss.weld.bootstrap.Validator.validateDeployment(Validator.java:482)
	at org.jboss.weld.bootstrap.WeldBootstrap.validateBeans(WeldBootstrap.java:536)
	at org.glassfish.weld.WeldDeployer.event(WeldDeployer.java:216)
	... 36 more
]]
[2013-06-26T20:17:10.527-0300] [glassfish 4.0] [SEVERE] [] [javax.enterprise.system.core] [tid: _ThreadID=38 _ThreadName=admin-listener(4)] [timeMillis: 1372288630527] [levelValue: 1000] [[
  Exception while loading the app]]
[2013-06-26T20:17:10.556-0300] [glassfish 4.0] [SEVERE] [AS-WEB-GLUE-00192] [javax.enterprise.web] [tid: _ThreadID=38 _ThreadName=admin-listener(4)] [timeMillis: 1372288630556] [levelValue: 1000] [[
  Undeployment failed for context /Interceptor-web]]
[2013-06-26T20:17:10.650-0300] [glassfish 4.0] [SEVERE] [] [javax.enterprise.system.core] [tid: _ThreadID=38 _ThreadName=admin-listener(4)] [timeMillis: 1372288630650] [levelValue: 1000] [[
  Exception while loading the app : CDI deployment failure:WELD-001417 Enabled interceptor class <class>com.foo.BarInterceptor</class> in file:/E:/.../Interceptor-ear/Interceptor-ejb-1.0-SNAPSHOT_jar/META-INF/beans.xml@7 is neither annotated @Interceptor nor registered through a portable extension
org.jboss.weld.exceptions.DeploymentException: WELD-001417 Enabled interceptor class <class>com.foo.BarInterceptor</class> in file:/E:/.../gfdeploy/Interceptor-ear/Interceptor-ejb-1.0-SNAPSHOT_jar/META-INF/beans.xml@7 is neither annotated @Interceptor nor registered through a portable extension
	at org.jboss.weld.bootstrap.Validator.validateEnabledInterceptorClasses(Validator.java:656)
	at org.jboss.weld.bootstrap.Validator.validateDeployment(Validator.java:482)
	at org.jboss.weld.bootstrap.WeldBootstrap.validateBeans(WeldBootstrap.java:536)
	at org.glassfish.weld.WeldDeployer.event(WeldDeployer.java:216)
	at org.glassfish.kernel.event.EventsImpl.send(EventsImpl.java:131)
	at org.glassfish.internal.data.ApplicationInfo.load(ApplicationInfo.java:328)
	at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:493)
	at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:219)
	at org.glassfish.deployment.admin.DeployCommand.execute(DeployCommand.java:491)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$2$1.run(CommandRunnerImpl.java:527)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$2$1.run(CommandRunnerImpl.java:523)
	at java.security.AccessController.doPrivileged(Native Method)
	at javax.security.auth.Subject.doAs(Subject.java:356)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$2.execute(CommandRunnerImpl.java:522)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:546)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:1423)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl.access$1500(CommandRunnerImpl.java:108)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1762)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1674)
	at com.sun.enterprise.v3.admin.AdminAdapter.doCommand(AdminAdapter.java:534)
	at com.sun.enterprise.v3.admin.AdminAdapter.onMissingResource(AdminAdapter.java:224)
	at org.glassfish.grizzly.http.server.StaticHttpHandler.service(StaticHttpHandler.java:297)
	at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:246)
	at org.glassfish.grizzly.http.server.HttpHandler.runService(HttpHandler.java:191)
	at org.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:168)
	at org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:189)
	at org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:288)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:206)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:136)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:114)
	at org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
	at org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:838)
	at org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:113)
	at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:115)
	at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:55)
	at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:135)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:564)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
	at java.lang.Thread.run(Thread.java:722)
]]


 Comments   
Comment by synti [ 28/Jun/13 12:29 AM ]

The problem is the new namespace. Both deployment and interception works fine after changing it back to:

<beans xmlns="http://java.sun.com/xml/ns/javaee"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
Comment by jjsnyder83 [ 03/Jul/13 03:01 PM ]

Please attach the app and source code (if possible) that demonstrates the failure.

Comment by synti [ 05/Jul/13 06:07 PM ]

Contains source and app:
https://dl.dropboxusercontent.com/u/91581899/Interceptor.zip

Comment by laurent_bauchau [ 14/Aug/13 03:09 PM ]

The problem is the new namespace. Both deployment and interception works fine after changing it back to:

<beans xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
??xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">??

This change doesn't solve the problem for me.

I've "solved" the problem with: bean-discovery-mode="all" instead of "annotated"

Comment by synti [ 20/Aug/13 04:04 PM ]

Just confirming. Using the 1.1 beans.xml with bean-discovery-mode="all" also worked here.

Comment by javadon [ 22/Sep/13 06:07 PM ]

I too have same problem,

Environment: eclipse kepler, java-ee7, cdi 1.1, Glass Fish 4.0.1,..etc.

http://stackoverflow.com/questions/17258639/interceptor-issue-with-java-ee7

any help will be appreciated.

Comment by TangYong [ 23/Sep/13 03:12 AM ]

JJ
CC: All

The issue should be right behavior on current CDI Spec. I have done a confirmation on wildfly-8.0.0.Alpha4 and the same WELD-001417
exception is thrown. You can confirm with JBOSS guys.

The issue has two workarounds :

1. backing CDI 1.0
using http://java.sun.com/xml/ns/javaee/beans_1_0.xsd

2. using bean-discovery-mode="all"

So, if being the such case, the issue should be closed.

Thanks
Tang

Comment by jjsnyder83 [ 23/Sep/13 05:25 PM ]

I believe the deployment exception is accurate for CDI 1.1. The beans.xml for the jar with the interceptor contains:
bean-discovery-mode="annotated"

This means that only classes with bean-defining annotations will be managed by CDI. Since the interceptor does not contain a bean-defining annotation it is not managed by CDI. bean-defining annotations and implicit CDI is new with CDI 1.1.

Changing bean-discover-mode to "all" is the correct solution.





[GLASSFISH-20656] Cannot get an Interceptor with @Priority to work Created: 21/Jun/13  Updated: 03/Jul/13  Resolved: 03/Jul/13

Status: Resolved
Project: glassfish
Component/s: cdi
Affects Version/s: 4.0_b89_RC5
Fix Version/s: None

Type: Bug Priority: Major
Reporter: mjremijan Assignee: jjsnyder83
Resolution: Cannot Reproduce Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Windows 7


Tags:
Participants: jjsnyder83, mjremijan and phil.zampino

 Description   

Researching how to use the @Priority tag with Interceptors. I'm trying to follow the examples in the JavaEE7 tutorial and I've created the Interceptor with the @Priority tag and even created the @Logged interceptor binding but I'm not seeing the interceptor annotated with @Priority fire at all. Not sure if I'm doing something wrong of if there is a bug here. I have a very simple Netbeans project I can zip up and attach.



 Comments   
Comment by phil.zampino [ 24/Jun/13 05:25 PM ]

Please provide the app that demonstrates the issue.





[GLASSFISH-20639] Default scoped bean cannot be injected Created: 17/Jun/13  Updated: 07/Jul/13  Resolved: 03/Jul/13

Status: Resolved
Project: glassfish
Component/s: cdi
Affects Version/s: 4.0_b89_RC5
Fix Version/s: None

Type: Bug Priority: Major
Reporter: b_faissal Assignee: jjsnyder83
Resolution: Works as designed Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags: adoptajsr
Participants: b_faissal and jjsnyder83

 Description   

I've just created a simple project with a servlet (MyServlet) and a bean ( MyService), when I try to inject the bean into the servlet I got an exception teling me :

org.jboss.weld.exceptions.DeploymentException: WELD-001408 Unsatisfied dependencies for type [MyService] with qualifiers [@Default] at injection point [[BackedAnnotatedField] @Inject com.mycompany.mavenjavaee7.MyServlet.myService]

This works fine on previous promoted build ( eg b_77 )

Attached is a maven project to test this issue



 Comments   
Comment by jjsnyder83 [ 03/Jul/13 03:03 PM ]

Please attach the application and source code.

Comment by b_faissal [ 03/Jul/13 03:18 PM ]

I'm not allowed to attach file here,

I've put the projet on drive : https://docs.google.com/file/d/0B-VFW86XwkF3LVhRUXhxODdzY3M/edit?usp=sharing

ps : it's a simple project created by Netbeans 3.1

Comment by jjsnyder83 [ 03/Jul/13 03:53 PM ]

In beans.xml the bean-discovery-mode is set to "annotated". This means that only beans identified by a bean-defining annotation will be managed by CDI. There are 2 ways to fix this in the application:
1) change "annoated" to "all"
or
2) Add @Dependent to the MyService class.

Comment by b_faissal [ 07/Jul/13 07:19 PM ]

Thank you,

Didn't notice it as I'was testing netbeans support of JAVA EE 7 , and bean.xml was generated by netbeans.

I'll fill a bug on netbeans side.





[GLASSFISH-20637] Java EE 7 CDI issues on GlassFish 4 Created: 16/Jun/13  Updated: 17/Apr/14

Status: Open
Project: glassfish
Component/s: cdi
Affects Version/s: 4.0_b89_RC5
Fix Version/s: None

Type: Bug Priority: Major
Reporter: biemond Assignee: phil.zampino
Resolution: Unresolved Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

mac osx


Tags: 4_0_1-review cdi glassfish4 jsf2_2
Participants: biemond, Darious3, jjsnyder83 and phil.zampino

 Description   

Hi,

Got some CDI issues on the latest GlassFish version

First in JSF2.2 the flowDefinition of flows does not work , I needed to use the faces-config.xml and that works perfectly

my example
@Named("flow1")
public class Flow1 implements Serializable {

private static final long serialVersionUID = -1L;

@Produces @FlowDefinition
public Flow buildMyFlow(@FlowBuilderParameter FlowBuilder flowBuilder) { System.out.println("flowdef"); String flowId = "flow1"; flowBuilder.id("", flowId); flowBuilder.viewNode(flowId, "/flow1/" + flowId + ".xhtml").markAsStartNode(); return flowBuilder.getFlow(); }
}

Also in the websockets and do an inject of session bean and does not do anything , also listen to an CDI event inside does not work

@ServerEndpoint("/mywebsocket")
public class MyWebSocket implements Serializable {

@Inject
JmsSessionBean jmsBean;

public void onJMSMessage(@Observes @CDIJmsEvent Message msg) {
System.out.println("Got JMS Message at WebSocket!");
try {
for (Session s : sessions) { s.getBasicRemote().sendText("message from JMS: " + msg.getBody(String.class)); }
} catch (IOException | JMSException ex) { ex.printStackTrace(); }
}

Inside a managed bean Inject and the CDI events works perfectly



 Comments   
Comment by Darious3 [ 17/Jun/13 07:29 AM ]

Flow example with formatting:

@Named("flow1")
public class Flow1 implements Serializable {

    private static final long serialVersionUID = -1L;

    @Produces @FlowDefinition
    public Flow buildMyFlow(@FlowBuilderParameter FlowBuilder flowBuilder) { 
       
        String flowId = "flow1"; 
        flowBuilder.id("", flowId); 
        flowBuilder.viewNode(flowId, "/flow1/" + flowId + ".xhtml").markAsStartNode(); 

        return flowBuilder.getFlow();
    }
}

WebSocket with formatting

@ServerEndpoint("/mywebsocket")
public class MyWebSocket implements Serializable {

    @Inject
    JmsSessionBean jmsBean;

    public void onJMSMessage(@Observes @CDIJmsEvent Message msg) {
        try {
            for (Session session : sessions) {
                session.getBasicRemote().sendText("message from JMS: " + msg.getBody(String.class));
            }
        } catch (IOException | JMSException ex) {
            ex.printStackTrace();
        }
    }
}
Comment by jjsnyder83 [ 17/Jun/13 03:37 PM ]

I believe the WebSocket issue is a duplicte of : https://java.net/jira/browse/GLASSFISH-20371.

For the JSF issue can you provide more information on what the expected results are?

Comment by biemond [ 17/Jun/13 05:48 PM ]

Hi,

here is my netbeans projects on glassfish 4 https://github.com/biemond/JavaEE7

I defined some JSF 2.2 flows in
https://github.com/biemond/JavaEE7/tree/master/WebApp7EE/WebApp7EE-war/web/flow1

When I add this flow definition in the faces-config.xml it works fine
https://github.com/biemond/JavaEE7/blob/master/WebApp7EE/WebApp7EE-war/web/WEB-INF/faces-config.xml

but when I try to do the same in this class with the help of CDI
@Produces @FlowDefinition
public Flow defineFlow(@FlowBuilderParameter FlowBuilder flowBuilder)
in java class
https://github.com/biemond/JavaEE7/blob/master/WebApp7EE/WebApp7EE-war/src/java/nl/amis/web/flow/Flow1.java

It does not do anything ( don't see any CDI error ) and the page /flow1.xhtml can not be found.

Thanks





[GLASSFISH-20619] Integrate Weld 2.0.3.Final into trunk Created: 10/Jun/13  Updated: 14/Aug/13  Resolved: 12/Aug/13

Status: Closed
Project: glassfish
Component/s: cdi
Affects Version/s: future release
Fix Version/s: None

Type: Bug Priority: Minor
Reporter: phil.zampino Assignee: phil.zampino
Resolution: Fixed Votes: 1
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags:
Participants: buddypine and phil.zampino

 Comments   
Comment by buddypine [ 12/Jul/13 01:04 PM ]

Hopefully this can be bumped to a higher priority as the weld version shipped with 4.0 has a major bug which prevents injection into anonymous inner classes.
I came across this while developing an Apache Wicket project on Glassfish and the problems are best summed up by the latest Wicket release notes:

From Wicket 6.9.1 release notes

CDI injection issue
-------------------

In the CDI releases of Weld 2.0.1 and prior, it was assumed that
injection in anonymous inner classes was not legal and when
attempted, it resulted in an exception:

Caused by: org.jboss.weld.exceptions.DefinitionException:
WELD-000070 Simple bean [EnhancedAnnotatedTypeImpl] private class
com.example.HomePage$AForm cannot be a non-static inner class

This was reported as
https://issues.apache.org/jira/browse/WICKET-5226, as it became an
issue in Glassfish 4, which ships with Weld 2.0.1 (or earlier). We
implemented a fix for this particular issue by not injecting into
anonymous inner classes.

Unfortunately this was not a bug that needed fixing on our part, but
rather in the Weld framework (see
https://issues.jboss.org/browse/WELD-1441)

Therefore we reverted the commits done for WICKET-5226 and hope that
Glassfish will upgrade their Weld implementation soon. For the whole
story read
https://issues.apache.org/jira/browse/WICKET-5264

Comment by phil.zampino [ 12/Aug/13 08:39 PM ]

Committed rev. 62497





[GLASSFISH-20597] UnsatisfiedDependencyException is thrown by JAX-RS, Bean Validation and CDI integration Created: 31/May/13  Updated: 11/Jun/13  Resolved: 11/Jun/13

Status: Resolved
Project: glassfish
Component/s: bean-validator, cdi, jax-rs
Affects Version/s: 4.0_b89_RC5
Fix Version/s: 4.0.1

Type: Bug Priority: Major
Reporter: HASUNUMA Kenji Assignee: Michal Gajdos
Resolution: Duplicate Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Windows 7 and JDK7 update 21 (both x86 and x86-64)


Issue Links:
Duplicate
duplicates GLASSFISH-20255 @Inject Strange Errors Closed
Related
is related to JERSEY-1908 UnsatisfiedDependencyException is th... Resolved
Tags: jax-rs beanvalidation cdi
Participants: HASUNUMA Kenji, Marek Potociar and Michal Gajdos

 Description   

It is problem that a JAX-RS application (exactly a resource class) throws org.glassfish.hk2.api.UnsatisfiedDependencyException when I send GET request to it. The application uses both Bean Validation (@NotNull and @Min) and CDI (@Inject) into same resource class and it is neither Managed Bean nor EJB (Session Bean). If it uses either of them (for example, it uses without Bean Validation), it runs well and send response as status 200.

As a trial, I rewrite the application using not @Inject but @EJB (the resource class becomes Stateless Bean) and then it runs as expected.



 Comments   
Comment by Marek Potociar [ 04/Jun/13 09:07 AM ]

Please provide a reproducible test case. Marking as incomplete, targeting for 4.0.1. Will be closed if a reproducible test case is not provided.

Comment by HASUNUMA Kenji [ 04/Jun/13 05:47 PM ]

I seem to have no privilege with attached files, so I write the parts of application that throws UnsatisfiedDependencyException as following;

TweetResource.java (Resource class)
package jp.co.ines.sagittarius.api.twitter;

import java.util.List;

import javax.ejb.EJB;
import javax.ejb.Stateless;
import javax.inject.Inject;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotNull;
import javax.ws.rs.DefaultValue;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.QueryParam;

import twitter4j.TwitterException;

@Path("/twitter")
@Stateless
public class TwitterResource {
  @Inject
  private TwitterSearch twitterSearch;
  
  @GET
  @Path("/search")
  @Produces({"application/xml", "application/json"})
  public List<Tweet> search(@QueryParam("q") @NotNull String queryString,
      @DefaultValue("100") @QueryParam("count") @Min(1) int count) 
      throws TwitterException {
    return twitterSearch.search(queryString, count);
  }
  
  @GET
  @Path("/peek")
  @Produces({"application/xml", "application/json"})
  public List<Tweet> peek(@QueryParam("q") String queryString, 
      @QueryParam("count") @Min(1) int count) throws TwitterException {
    return twitterSearch.peek(queryString, count);
  }
}
TweetSearch.java (Injected EJB)
package jp.co.ines.sagittarius.api.twitter;

import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.TimeUnit;

import javax.ejb.Stateless;
import javax.ws.rs.InternalServerErrorException;
import javax.ws.rs.ServiceUnavailableException;

import twitter4j.Query;
import twitter4j.QueryResult;
import twitter4j.RateLimitStatus;
import twitter4j.Status;
import twitter4j.Twitter;
import twitter4j.TwitterException;
import twitter4j.TwitterFactory;

@Stateless
public class TwitterSearch {
  private static final int API_RATE_LIMIT = 180;
  private static final int SEARCH_RATE_LIMIT = 60;
  private static final int PEEK_RATE_LIMIT = 30;
  private static final int TWEETS_PER_PAGE = 100;
	
  public List<Tweet> search(String queryString, int count) 
      throws TwitterException {
    Twitter twitter = new TwitterFactory().getInstance();
    
    RateLimitStatus rateLimitStatus = 
      twitter.search(new Query("from:home")).getRateLimitStatus();
    if (getPages(count) > getRemaining(rateLimitStatus, SEARCH_RATE_LIMIT)) {
      throw new ServiceUnavailableException(
        (long) rateLimitStatus.getSecondsUntilReset());
    }
    
    Query query = new Query(queryString);
    query.setCount(TWEETS_PER_PAGE);
    
    List<Tweet> results = new ArrayList<>();
    for (int page = 0; page < getPages(count); page++) {
      QueryResult result = twitter.search(query);
      if (result.getTweets().isEmpty()) {
        break;
      }
      
      for (Status status : result.getTweets()) {
        Tweet tweet = new Tweet();
        tweet.setId(status.getId());
        tweet.setCreateAt(status.getCreatedAt());
        tweet.setFromUser(status.getUser().getScreenName());
        tweet.setFromUserName(status.getUser().getName());
        tweet.setProfileImageUrl(status.getUser().getProfileImageURLHttps());
        tweet.setVerified(status.getUser().isVerified());
        tweet.setText(status.getText());
        results.add(tweet);
      }
      query.setMaxId(result.getTweets().get(0).getId() - 1L);
    }
    return results;
  }

  public List<Tweet> peek(String queryString, int count) throws TwitterException {
    Twitter twitter = new TwitterFactory().getInstance();
    
    RateLimitStatus rateLimitStatus = twitter.search(
      new Query("from:home")).getRateLimitStatus();
    if (getPages(count) > getRemaining(rateLimitStatus, WATCH_RATE_LIMIT)) {
      throw new ServiceUnavailableException(
        (long) rateLimitStatus.getSecondsUntilReset());
    }
    
    Query query = new Query(queryString);
    query.setCount(TWEETS_PER_PAGE);
    
    List<Tweet> results = new ArrayList<>();
    for (int page = 0; page < getPages(count); page++) {
      QueryResult result = twitter.search(query);
      if (result.getTweets().isEmpty()) {
        break;
      }
      for (Status status : result.getTweets()) {
        Tweet tweet = new Tweet();
        tweet.setId(status.getId());
        tweet.setCreateAt(status.getCreatedAt());
        tweet.setFromUser(status.getUser().getScreenName());
        tweet.setFromUserName(status.getUser().getName());
        tweet.setProfileImageUrl(status.getUser().getProfileImageURLHttps());
        tweet.setVerified(status.getUser().isVerified());
        tweet.setText(status.getText());
        results.add(tweet);
      }
      try {
        int until = result.getRateLimitStatus().getSecondsUntilReset();
        int wait = until / getRemaining(
          result.getRateLimitStatus(), PEEK_RATE_LIMIT);
          TimeUnit.SECONDS.sleep(wait);
      } catch (InterruptedException e) {
        e.printStackTrace();
        throw new InternalServerErrorException(e);
      }
      query.setMaxId(result.getTweets().get(0).getId() - 1L);
    }
    return results;
  }
  
  private int getRemaining(RateLimitStatus rateLimitStatus, int rateLimit) {
    return rateLimitStatus.getRemaining() - (API_RATE_LIMIT - rateLimit);
  }
	
  private int getPages(int count) {
    return (count + TWEETS_PER_PAGE - 1) / TWEETS_PER_PAGE;
  }
}
Tweet.java (in part of)
package jp.co.ines.sagittarius.api.twitter;

import static javax.xml.bind.annotation.XmlAccessType.FIELD;

import java.io.Serializable;
import java.util.Date;

import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;

@XmlRootElement
@XmlAccessorType(FIELD)
public class Tweet implements Serializable {
  private static final long serialVersionUID = 3677514835637906987L;

  @XmlElement private long id;
  @XmlElement private Date createAt;
  @XmlElement private String fromUser;
  @XmlElement private String fromUserName;
  @XmlElement private String profileImageUrl;
  @XmlElement private boolean verified;
  @XmlElement private String text;

  // omit following getters/setters because of verbose description
}
WEB-INF/beans.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://java.sun.com/xml/ns/javaee"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
       http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
</beans>

UnsatisfiedDependencyException is thrown directly following TwitterResource#search method. But I think it is also happen in TwitterSearch#peek method.

Remarks:

  • This application uses Twitter4J 3.0.3 (http://twitter4j.org/).
  • If I remove "@NotNull" and "@Min" from above TwitterResource, this runs well.
  • If I also replace "@Inject" to "@EJB" from above one, this runs well.


If possible, please grant attached files role to me because that I'll add reproducible test cases to future issues. I sent "Oracle Contributor Agreement" and wait it's acceptance.

Comment by Michal Gajdos [ 10/Jun/13 01:33 PM ]

Hi,

can you paste the whole stacktrace of the exception? Are you running this example on GlassFish or on something else?

Thanks.

Comment by HASUNUMA Kenji [ 10/Jun/13 02:48 PM ]

I run the example only on GlassFish 4.0 build 89.

The whole stacktrace is following;

org.glassfish.hk2.api.UnsatisfiedDependencyException: There was no object available for injection at Injectee(requiredType=TwitterSearch,parent=TwitterResource,qualifiers={}),position=-1,optional=false,self=false,unqualified=null,1920339034)
at org.jvnet.hk2.internal.ThreeThirtyResolver.resolve(ThreeThirtyResolver.java:74)
at org.jvnet.hk2.internal.Utilities.justInject(Utilities.java:771)
at org.jvnet.hk2.internal.ServiceLocatorImpl.inject(ServiceLocatorImpl.java:790)
at org.glassfish.jersey.gf.cdi.CdiComponentProvider$1.inject(CdiComponentProvider.java:316)
at org.jboss.weld.bean.ManagedBean.create(ManagedBean.java:158)
at org.jboss.weld.context.unbound.DependentContextImpl.get(DependentContextImpl.java:69)
at org.jboss.weld.manager.BeanManagerImpl.getReference(BeanManagerImpl.java:716)
at org.jboss.weld.manager.BeanManagerImpl.getReference(BeanManagerImpl.java:738)
at org.glassfish.jersey.gf.cdi.CdiComponentProvider$CdiFactory$1.getInstance(CdiComponentProvider.java:174)
at org.glassfish.jersey.gf.cdi.CdiComponentProvider$CdiFactory.provide(CdiComponentProvider.java:143)
at org.jvnet.hk2.internal.FactoryCreator.create(FactoryCreator.java:96)
at org.jvnet.hk2.internal.SystemDescriptor.create(SystemDescriptor.java:448)
at org.jvnet.hk2.internal.PerLookupContext.findOrCreate(PerLookupContext.java:69)
at org.jvnet.hk2.internal.Utilities.createService(Utilities.java:2204)
at org.jvnet.hk2.internal.ServiceLocatorImpl.getService(ServiceLocatorImpl.java:579)
at org.jvnet.hk2.internal.ServiceLocatorImpl.getService(ServiceLocatorImpl.java:566)
at org.glassfish.jersey.internal.inject.Injections.getOrCreate(Injections.java:172)
at org.glassfish.jersey.server.model.MethodHandler$ClassBasedMethodHandler.getInstance(MethodHandler.java:185)
at org.glassfish.jersey.server.internal.routing.PushMethodHandlerRouter.apply(PushMethodHandlerRouter.java:105)
at org.glassfish.jersey.server.internal.routing.RoutingStage._apply(RoutingStage.java:118)
at org.glassfish.jersey.server.internal.routing.RoutingStage._apply(RoutingStage.java:121)
at org.glassfish.jersey.server.internal.routing.RoutingStage._apply(RoutingStage.java:121)
at org.glassfish.jersey.server.internal.routing.RoutingStage._apply(RoutingStage.java:121)
at org.glassfish.jersey.server.internal.routing.RoutingStage._apply(RoutingStage.java:121)
at org.glassfish.jersey.server.internal.routing.RoutingStage.apply(RoutingStage.java:102)
at org.glassfish.jersey.server.internal.routing.RoutingStage.apply(RoutingStage.java:62)
at org.glassfish.jersey.process.internal.Stages.process(Stages.java:197)
at org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:215)
at org.glassfish.jersey.internal.Errors$1.call(Errors.java:271)
at org.glassfish.jersey.internal.Errors$1.call(Errors.java:267)
at org.glassfish.jersey.internal.Errors.process(Errors.java:315)
at org.glassfish.jersey.internal.Errors.process(Errors.java:297)
at org.glassfish.jersey.internal.Errors.process(Errors.java:267)
at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:317)
at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:198)
at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:946)
at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:323)
at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:372)
at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:335)
at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:218)
at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1682)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:318)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:160)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:734)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:673)
at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:99)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:174)
at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:357)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:260)
at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:188)
at org.glassfish.grizzly.http.server.HttpHandler.runService(HttpHandler.java:191)
at org.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:168)
at org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:189)
at org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:288)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:206)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:136)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:114)
at org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
at org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:838)
at org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:113)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:115)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:55)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:135)
at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:564)
at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
at java.lang.Thread.run(Thread.java:722)

Comment by Michal Gajdos [ 11/Jun/13 07:20 AM ]

Thanks for the stacktrace.

This issue is a duplicate of GLASSFISH-20255. The fix will be present in GF 4.0.1 and after the official release of GF 4.0 we will provide an IPS update package with Jersey where this issue is fixed. (I'll let you know when the package is available)

In the meantime you can download the jersey-gf-cdi from maven central ([1]), replace this module in glassfish4/glassfish/modules and delete the osgi cache glassfish4/glassfish/domains/domain1/osgi-cache/felix. This should fix the issue.

[1] http://repo1.maven.org/maven2/org/glassfish/jersey/containers/glassfish/jersey-gf-cdi/2.0/jersey-gf-cdi-2.0.jar





[GLASSFISH-20587] Full CDI 1.1 compliance Created: 29/May/13  Updated: 19/Jun/13  Resolved: 19/Jun/13

Status: Closed
Project: glassfish
Component/s: cdi
Affects Version/s: 4.0_b90
Fix Version/s: None

Type: Task Priority: Major
Reporter: aaronjwhiteside Assignee: phil.zampino
Resolution: Fixed Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags:
Participants: aaronjwhiteside and phil.zampino

 Description   

Full CDI 1.1 compliance

Currently section 12.1 and 12.4 of the CDI specification do not work in Glassfish 4.0 b90.



 Comments   
Comment by phil.zampino [ 13/Jun/13 01:20 PM ]

Could you please be more specific about what exactly isn't working for you? Glassfish is 100% compliant per the TCK, but it is possible that the TCK isn't complete in its coverage.

Comment by phil.zampino [ 19/Jun/13 07:30 PM ]

Without specific information about what is not working, there really isn't anything to do here.





[GLASSFISH-20579] cannot deploy war with google guava lib Created: 24/May/13  Updated: 19/Jun/13  Resolved: 24/May/13

Status: Closed
Project: glassfish
Component/s: cdi
Affects Version/s: 4.0_b85
Fix Version/s: None

Type: Bug Priority: Blocker
Reporter: aaronjwhiteside Assignee: jjsnyder83
Resolution: Works as designed Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags:
Participants: aaronjwhiteside, jjsnyder83 and phil.zampino

 Description   

My war contains

WEB-INF/lib/guava-14.0.jar

and NO beans.xml. But it seems CDI is being enabled.. and trying to do something with a class inside the guava-14.0.jar that contains a @Singleton annotation.

Why is CDI being enabled without a beans.xml?

[2013-05-23T15:08:32.159-0700] [glassfish 4.0] [INFO] [] [org.jboss.weld.Version] [tid: _ThreadID=34 _ThreadName=admin-listener(2)] [timeMillis: 1369346912159] [levelValue: 800] [[
  WELD-000900 2.0.0 (CR2)]]

[2013-05-23T15:08:34.987-0700] [glassfish 4.0] [WARNING] [] [org.jboss.weld.interceptor.util.InterceptionTypeRegistry] [tid: _ThreadID=34 _ThreadName=admin-listener(2)] [timeMillis: 1369346914987] [levelValue: 900] [[
  Class 'javax.ejb.PostActivate' not found, interception based on it is not enabled]]

[2013-05-23T15:08:34.988-0700] [glassfish 4.0] [WARNING] [] [org.jboss.weld.interceptor.util.InterceptionTypeRegistry] [tid: _ThreadID=34 _ThreadName=admin-listener(2)] [timeMillis: 1369346914988] [levelValue: 900] [[
  Class 'javax.ejb.PrePassivate' not found, interception based on it is not enabled]]

[2013-05-23T15:08:35.617-0700] [glassfish 4.0] [WARNING] [] [org.jboss.weld.Bootstrap] [tid: _ThreadID=34 _ThreadName=admin-listener(2)] [timeMillis: 1369346915617] [levelValue: 900] [[
  WELD-001473 javax.enterprise.inject.spi.Bean implementation org.glassfish.jms.injection.JMSCDIExtension$LocalBean@626186cf declared a normal scope but does not implement javax.enterprise.inject.spi.PassivationCapable. It won't be possible to inject this bean into a bean with passivating scope (@SessionScoped, @ConversationScoped). This can be fixed by assigning the Bean implementation a unique id by implementing the PassivationCapable interface.]]

[2013-05-23T15:08:35.645-0700] [glassfish 4.0] [SEVERE] [NCLS-CORE-00026] [javax.enterprise.system.core] [tid: _ThreadID=34 _ThreadName=admin-listener(2)] [timeMillis: 1369346915645] [levelValue: 1000] [[
  Exception during lifecycle processing
org.glassfish.deployment.common.DeploymentException: CDI deployment failure:WELD-001408 Unsatisfied dependencies for type [Set<Service>] with qualifiers [@Default] at injection point [[BackedAnnotatedParameter] Parameter 1 of [BackedAnnotatedConstructor] @Inject com.google.common.util.concurrent.ServiceManager(Set<Service>)]
	at org.glassfish.weld.WeldDeployer.event(WeldDeployer.java:225)
	at org.glassfish.kernel.event.EventsImpl.send(EventsImpl.java:131)
	at org.glassfish.internal.data.ApplicationInfo.load(ApplicationInfo.java:328)
	at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:493)
	at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:219)
	at org.glassfish.deployment.admin.DeployCommand.execute(DeployCommand.java:491)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$2$1.run(CommandRunnerImpl.java:527)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$2$1.run(CommandRunnerImpl.java:523)
	at java.security.AccessController.doPrivileged(Native Method)
	at javax.security.auth.Subject.doAs(Subject.java:356)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$2.execute(CommandRunnerImpl.java:522)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:546)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:1423)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl.access$1500(CommandRunnerImpl.java:108)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1762)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1674)
	at org.glassfish.admin.rest.resources.admin.CommandResource.executeCommand(CommandResource.java:396)
	at org.glassfish.admin.rest.resources.admin.CommandResource.execCommandSimpInMultOut(CommandResource.java:234)
	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.glassfish.jersey.server.model.internal.ResourceMethodInvocationHandlerFactory$1.invoke(ResourceMethodInvocationHandlerFactory.java:81)
	at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.invoke(AbstractJavaResourceMethodDispatcher.java:125)
	at org.glassfish.jersey.server.model.internal.JavaResourceMethodDispatcherProvider$ResponseOutInvoker.doDispatch(JavaResourceMethodDispatcherProvider.java:152)
	at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.dispatch(AbstractJavaResourceMethodDispatcher.java:91)
	at org.glassfish.jersey.server.model.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:346)
	at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:341)
	at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:101)
	at org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:217)
	at org.glassfish.jersey.internal.Errors$1.call(Errors.java:231)
	at org.glassfish.jersey.internal.Errors$1.call(Errors.java:227)
	at org.glassfish.jersey.internal.Errors.process(Errors.java:275)
	at org.glassfish.jersey.internal.Errors.process(Errors.java:257)
	at org.glassfish.jersey.internal.Errors.process(Errors.java:227)
	at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:317)
	at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:191)
	at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:819)
	at org.glassfish.jersey.grizzly2.httpserver.GrizzlyHttpContainer.service(GrizzlyHttpContainer.java:325)
	at org.glassfish.admin.rest.adapter.JerseyContainerCommandService$3.service(JerseyContainerCommandService.java:161)
	at org.glassfish.admin.rest.adapter.RestAdapter.service(RestAdapter.java:181)
	at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:246)
	at org.glassfish.grizzly.http.server.HttpHandler.runService(HttpHandler.java:191)
	at org.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:168)
	at org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:189)
	at org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:288)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:206)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:136)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:114)
	at org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
	at org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:838)
	at org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:113)
	at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:115)
	at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:55)
	at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:135)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:564)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
	at java.lang.Thread.run(Thread.java:722)
Caused by: org.jboss.weld.exceptions.DeploymentException: WELD-001408 Unsatisfied dependencies for type [Set<Service>] with qualifiers [@Default] at injection point [[BackedAnnotatedParameter] Parameter 1 of [BackedAnnotatedConstructor] @Inject com.google.common.util.concurrent.ServiceManager(Set<Service>)]
	at org.jboss.weld.bootstrap.Validator.validateInjectionPointForDeploymentProblems(Validator.java:403)
	at org.jboss.weld.bootstrap.Validator.validateInjectionPoint(Validator.java:325)
	at org.jboss.weld.bootstrap.Validator.validateGeneralBean(Validator.java:177)
	at org.jboss.weld.bootstrap.Validator.validateRIBean(Validator.java:208)
	at org.jboss.weld.bootstrap.Validator.validateBean(Validator.java:519)
	at org.jboss.weld.bootstrap.Validator.validateBeans(Validator.java:505)
	at org.jboss.weld.bootstrap.Validator.validateDeployment(Validator.java:480)
	at org.jboss.weld.bootstrap.WeldBootstrap.validateBeans(WeldBootstrap.java:536)
	at org.glassfish.weld.WeldDeployer.event(WeldDeployer.java:216)
	... 58 more
]]

[2013-05-23T15:08:35.648-0700] [glassfish 4.0] [SEVERE] [] [javax.enterprise.system.core] [tid: _ThreadID=34 _ThreadName=admin-listener(2)] [timeMillis: 1369346915648] [levelValue: 1000] [[
  Exception while loading the app]]

[2013-05-23T15:08:35.649-0700] [glassfish 4.0] [SEVERE] [AS-WEB-GLUE-00192] [javax.enterprise.web] [tid: _ThreadID=34 _ThreadName=admin-listener(2)] [timeMillis: 1369346915649] [levelValue: 1000] [[
  Undeployment failed for context ]]

[2013-05-23T15:08:35.664-0700] [glassfish 4.0] [SEVERE] [] [javax.enterprise.system.core] [tid: _ThreadID=34 _ThreadName=admin-listener(2)] [timeMillis: 1369346915664] [levelValue: 1000] [[
  Exception while loading the app : CDI deployment failure:WELD-001408 Unsatisfied dependencies for type [Set<Service>] with qualifiers [@Default] at injection point [[BackedAnnotatedParameter] Parameter 1 of [BackedAnnotatedConstructor] @Inject com.google.common.util.concurrent.ServiceManager(Set<Service>)]
org.jboss.weld.exceptions.DeploymentException: WELD-001408 Unsatisfied dependencies for type [Set<Service>] with qualifiers [@Default] at injection point [[BackedAnnotatedParameter] Parameter 1 of [BackedAnnotatedConstructor] @Inject com.google.common.util.concurrent.ServiceManager(Set<Service>)]
	at org.jboss.weld.bootstrap.Validator.validateInjectionPointForDeploymentProblems(Validator.java:403)
	at org.jboss.weld.bootstrap.Validator.validateInjectionPoint(Validator.java:325)
	at org.jboss.weld.bootstrap.Validator.validateGeneralBean(Validator.java:177)
	at org.jboss.weld.bootstrap.Validator.validateRIBean(Validator.java:208)
	at org.jboss.weld.bootstrap.Validator.validateBean(Validator.java:519)
	at org.jboss.weld.bootstrap.Validator.validateBeans(Validator.java:505)
	at org.jboss.weld.bootstrap.Validator.validateDeployment(Validator.java:480)
	at org.jboss.weld.bootstrap.WeldBootstrap.validateBeans(WeldBootstrap.java:536)
	at org.glassfish.weld.WeldDeployer.event(WeldDeployer.java:216)
	at org.glassfish.kernel.event.EventsImpl.send(EventsImpl.java:131)
	at org.glassfish.internal.data.ApplicationInfo.load(ApplicationInfo.java:328)
	at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:493)
	at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:219)
	at org.glassfish.deployment.admin.DeployCommand.execute(DeployCommand.java:491)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$2$1.run(CommandRunnerImpl.java:527)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$2$1.run(CommandRunnerImpl.java:523)
	at java.security.AccessController.doPrivileged(Native Method)
	at javax.security.auth.Subject.doAs(Subject.java:356)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$2.execute(CommandRunnerImpl.java:522)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:546)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:1423)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl.access$1500(CommandRunnerImpl.java:108)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1762)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1674)
	at org.glassfish.admin.rest.resources.admin.CommandResource.executeCommand(CommandResource.java:396)
	at org.glassfish.admin.rest.resources.admin.CommandResource.execCommandSimpInMultOut(CommandResource.java:234)
	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.glassfish.jersey.server.model.internal.ResourceMethodInvocationHandlerFactory$1.invoke(ResourceMethodInvocationHandlerFactory.java:81)
	at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.invoke(AbstractJavaResourceMethodDispatcher.java:125)
	at org.glassfish.jersey.server.model.internal.JavaResourceMethodDispatcherProvider$ResponseOutInvoker.doDispatch(JavaResourceMethodDispatcherProvider.java:152)
	at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.dispatch(AbstractJavaResourceMethodDispatcher.java:91)
	at org.glassfish.jersey.server.model.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:346)
	at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:341)
	at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:101)
	at org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:217)
	at org.glassfish.jersey.internal.Errors$1.call(Errors.java:231)
	at org.glassfish.jersey.internal.Errors$1.call(Errors.java:227)
	at org.glassfish.jersey.internal.Errors.process(Errors.java:275)
	at org.glassfish.jersey.internal.Errors.process(Errors.java:257)
	at org.glassfish.jersey.internal.Errors.process(Errors.java:227)
	at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:317)
	at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:191)
	at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:819)
	at org.glassfish.jersey.grizzly2.httpserver.GrizzlyHttpContainer.service(GrizzlyHttpContainer.java:325)
	at org.glassfish.admin.rest.adapter.JerseyContainerCommandService$3.service(JerseyContainerCommandService.java:161)
	at org.glassfish.admin.rest.adapter.RestAdapter.service(RestAdapter.java:181)
	at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:246)
	at org.glassfish.grizzly.http.server.HttpHandler.runService(HttpHandler.java:191)
	at org.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:168)
	at org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:189)
	at org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:288)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:206)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:136)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:114)
	at org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
	at org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:838)
	at org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:113)
	at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:115)
	at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:55)
	at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:135)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:564)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
	at java.lang.Thread.run(Thread.java:722)
]]


 Comments   
Comment by aaronjwhiteside [ 24/May/13 12:11 AM ]

Tested on the latest nightly build, the issue still appears..

Below is the class in question.
http://code.google.com/p/guava-libraries/source/browse/guava/src/com/google/common/util/concurrent/ServiceManager.java?r=824719231c4358700e669014a86987dea7341e3e

Comment by jjsnyder83 [ 24/May/13 01:22 PM ]

As per spec implicit CDI is enabled by default. To turn it off do the following

asadmin set configs.config.server-config.cdi-service.enable-implicit-cdi=false

Comment by aaronjwhiteside [ 24/May/13 05:08 PM ]

That sounds almost absurd (not blaming you personally).

There must be a way to specify to CDI what to scan and what not to scan. Enabling it by default without a way to control what is decides to scan and what it doesn't is going to cause a lot of issues with a lot of libraries.

Comment by jjsnyder83 [ 24/May/13 07:10 PM ]

We are working on enhancing this right now for GlassFish so that you can specify exactly which archives should not be processed by CDI (as per spec.) Keep an eye on https://java.net/jira/browse/GLASSFISH-20483.

Comment by aaronjwhiteside [ 28/May/13 06:50 PM ]

http://docs.jboss.org/weld/reference/latest/en-US/html/configure.html this does not seem to work.

If Glassfish is using WELD shouldn't this work?

my beans.xml contains:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://java.sun.com/xml/ns/javaee"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:weld="http://jboss.org/schema/weld/beans"
       xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/beans_1_0.xsd
                           http://jboss.org/schema/weld/beans http://jboss.org/schema/weld/beans_1_1.xsd">

    <weld:scan>
        <weld:exclude name="com.google.**"/>
    </weld:scan>
</beans>
Comment by phil.zampino [ 19/Jun/13 09:18 PM ]

If you were to add a beans.xml, with the cited exclude config, to the guava jar, then you should see the behavior you're expecting.

Assuming that you don't want to modify the guava archive, I think you'll find the following asadmin deployment property to be useful:

--property implicitCdiEnabled=false

(Example: asadmin deploy --property implicitCdiEnabled=false <archive>)

This property will force the CDI 1.0 behavior wrt implicit bean discovery for the archive being deployed, rather than the aforementioned server-wide configuration.





[GLASSFISH-20577] CDI broken: Seam-Solder leads to complete panic Created: 23/May/13  Updated: 07/Jun/13  Resolved: 24/May/13

Status: Resolved
Project: glassfish
Component/s: cdi
Affects Version/s: 4.0_b89_RC5
Fix Version/s: None

Type: Bug Priority: Blocker
Reporter: KBachl Assignee: jjsnyder83
Resolution: Works as designed Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

JDK 1.7_21; OS X here, same on WIN/ LIN


Tags:
Participants: jjsnyder83 and KBachl

 Description   

For Fishcat we tried to start Glassfish 4 with our main production app currently running well under Glasfish 3.1.2.2;

At startup immeadiately an CDI exception was thrown with an Wicket-Seam-Webapp using Wicket-Seam 3.0.0.Final, after upgrading to latest Seam-Solder it not only locks up but loops endlessly leading to a fial crashing gassfish instance;

Logs enclosed;

Main Exceptions:

Exception 0 :
org.jboss.weld.exceptions.IllegalStateException: WELD-001332 BeanManager method getBeans() is not available during application initialization
at org.jboss.weld.bean.builtin.BeanManagerProxy.checkContainerValidated(BeanManagerProxy.java:142)

As well as sub-exceptions:

Exception 0 :
java.lang.RuntimeException: Javassist not found on the class path, @ServiceHandler requires javassist to work. @ServiceHandler found on [BackedAnnotatedType] class de.xxxx.export.bmecat2.BmeCatDefinitions$_ARTICLE_MODE_NEW_closure3_closure17
at org.jboss.solder.serviceHandler.ServiceHandlerExtension.processAnnotatedType(ServiceHandlerExtension.java:71)
at sun.reflect.GeneratedMethodAccessor39.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)



 Comments   
Comment by KBachl [ 23/May/13 11:07 AM ]

Follow up: I can confirm that the exact same WAR put into Glassfish 3.x works flawless. No CDI or Javasisst errors arise at all;

Comment by jjsnyder83 [ 23/May/13 01:14 PM ]

please email me the war (j.j.snyder@oracle.com). Also, try turning off implicit cdi:
asadmin set configs.config.server-config.cdi-service.enable-implicit-cdi=false

Comment by KBachl [ 24/May/13 06:52 AM ]

Hello,

the asadmin set configs.config.server-config.cdi-service.enable-implicit-cdi=false didnt work, just the error now sounds different;

I cant mail you our project as it wont run with some more work to the server (DB, noSQL store, JCR, etc) but I'm no currently mailing you the official wicket-seam-example app-war. As it is the exact same as we have in our app, the errors are identical. The code of it can be found here:

https://github.com/seam/wicket/tree/release/3.1.0.Final

This is the 3.1.0 Final and runs on any Glassfish 3., Jboss 6 etc. without problems.

Comment by jjsnyder83 [ 24/May/13 04:03 PM ]

CDI 1.1 made some modifications as to when BeanManager#getBeans can be called. Please see: https://issues.jboss.org/browse/CDI-274

So the solder extension won't work in cdi 1.1 (at least the one that is used by the app which appears to be 3.1.0.Final). You can try updating your app to use the latest solder (3.2.0.Final) to see if it's fixed in Solder. I did a quick scan of JBoss jiras but did not see this particular issue as a bug. You may want to enter a Solder jira.

Comment by KBachl [ 28/May/13 05:43 PM ]

@jjsnyder83

Solder 3.2.0.Final wont help. There is a bug in it describing it: https://issues.jboss.org/browse/SOLDER-339

Its from 15th January 2013 and nothing happend till then. You need to remember that seam solder was the outcome of the weld project (its the WELD-EXTENSIONS!) to get a cross plattform CDI access method. So, simply spoken, this "no-glassfish-bug" will break any project that uses seam solder, and this means > 90% of all CDI enabled apps out there.

So your shiny new glassfish 4.0 will not be usable for them. I dont think its clever to lock out > 90% of CDI using projects.

Comment by jjsnyder83 [ 28/May/13 07:47 PM ]

So it seems that Solder does not work on JBoss with Weld 2.0 either. I have sent an email to some guys I know at JBoss asking about this. I will post back as soon as I hear from them.

As for the javassist issue...javassist used to be packaged in the Weld 1.1.x bundle. It is no longer used by Weld and so is no longer packaged in the Weld 2.x bundle. I will experiment with it and create a new bundle with just the javassist classes and see if that takes care of this part of the issue. However, javassist is not something used by the rest of GlassFish so it's not likely that it will come as a bundle that ships with GF. Applications that want to use it will need to package those jars with the application (or install them as a shared library.)

I will post back soon with my findings.

Comment by KBachl [ 29/May/13 07:46 AM ]

The javassist lib isnt a big issue, just put the most recent one into the /domain/lib 'folder and its ok. This makes it possible to use even bundled war's from third party.

Real problem is the break in backwards compatibility by WELD 2.0 compared to 1.0/ 1.1;

Comment by jjsnyder83 [ 29/May/13 02:03 PM ]

According to the people I know at JBoss Solder has been discontinued with effort moved over to DeltaSpike. He did suggest that you bring this up on seam-dev mailing list. In the past there was a demand for a bugfixing release after the project had been discontinued and it was successful.

Comment by jjsnyder83 [ 07/Jun/13 07:49 PM ]

See https://issues.jboss.org/browse/WELD-1433

This has been fixed in Weld 2.0.2.Final.

Comment by KBachl [ 07/Jun/13 08:54 PM ]

Thank you for the update. The guys on the seam-dev list are also helpful and it might even get a fixed soldr; I dont expect weld 2.0.2.Final be part of inital Glassfish 4.0; How can one upgrade the weld glassfish uses to Weld 2.0.2 final?





[GLASSFISH-20566] Deployment of a EJB fails with CDI if the bean is described by a descriptor instead of an annotation Created: 21/May/13  Updated: 12/Aug/13

Status: Reopened
Project: glassfish
Component/s: cdi
Affects Version/s: 4.0_b89_RC5
Fix Version/s: 4.0.1

Type: Bug Priority: Blocker
Reporter: sd_ Assignee: phil.zampino
Resolution: Unresolved Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Linux


File Attachments: File JCDIServiceBugEar.ear    
Tags:
Participants: jjsnyder83, phil.zampino and sd_

 Description   

A NP is thrown in in org.glassfish.weld.services.JCDIServiceImpl#_createJCDIInjectionContext(EjbDescriptor ejb, T instance), when a bean is being described by a deployment descriptor in the corresponding jar instead of using annotations :

[glassfish 4.0] [SEVERE] [ejb.stateless_ejbcreate_exception]
[javax.enterprise.system.container.ejb.com.sun.ejb.containers] [tid: _ThreadID=135 _ThreadName=admin-listener(11)]
[timeMillis: ...] [levelValue: 1000] [[EJB5070: Exception creating stateless session bean : [MyTimerBean]]]

[glassfish 4.0] [WARNING] [ejb.system_exception] [javax.enterprise.system.container.ejb.com.sun.ejb.containers]
[tid: _ThreadID=135 _ThreadName=admin-listener(11)] [timeMillis: ...] [levelValue: 900]
[[ EJB5184:A system exception occurred during an invocation on EJB MyTimerBean,
method: public void MyTimerBean.cancelAllTimers()]]

[glassfish 4.0] [WARNING] [] [javax.enterprise.system.container.ejb.com.sun.ejb.containers]
[tid: _ThreadID=135 _ThreadName=admin-listener(11)] [timeMillis: ...] [levelValue: 900] [[

javax.ejb.EJBException: javax.ejb.EJBException: javax.ejb.CreateException: Could not create stateless EJB
at com.sun.ejb.containers.StatelessSessionContainer._getContext(StatelessSessionContainer.java:435)
at com.sun.ejb.containers.BaseContainer.getContext(BaseContainer.java:2516)
at com.sun.ejb.containers.BaseContainer.preInvoke(BaseContainer.java:1906)
at com.sun.ejb.containers.EJBObjectInvocationHandler.invoke(EJBObjectInvocationHandler.java:204)
at com.sun.ejb.containers.EJBObjectInvocationHandler.invoke(EJBObjectInvocationHandler.java:123)
at com.sun.proxy.$Proxy266.cancelAllTimers(Unknown Source)
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 com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.privateInvoke(StubInvocationHandlerImpl.java:239)
at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.invoke(StubInvocationHandlerImpl.java:150)
at com.sun.corba.ee.impl.presentation.rmi.codegen.CodegenStubBase.invoke(CodegenStubBase.java:226)
at MyTimer_DynamicStub.cancelAllTimers(_MyTimer_DynamicStub.java)
...
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 com.sun.ejb.containers.interceptors.BeanCallbackInterceptor.intercept(InterceptorManager.java:1035)
at com.sun.ejb.containers.interceptors.CallbackChainImpl.invokeNext(CallbackChainImpl.java:72)
at com.sun.ejb.containers.interceptors.CallbackInvocationContext.proceed(CallbackInvocationContext.java:205)
at org.jboss.weld.ejb.AbstractEJBRequestScopeActivationInterceptor.aroundInvoke(AbstractEJBRequestScopeActivationInterceptor.java:55)
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 com.sun.ejb.containers.interceptors.CallbackInterceptor.intercept(InterceptorManager.java:986)
at com.sun.ejb.containers.interceptors.CallbackChainImpl.invokeNext(CallbackChainImpl.java:72)
at com.sun.ejb.containers.interceptors.CallbackInvocationContext.proceed(CallbackInvocationContext.java:205)
at com.sun.ejb.containers.interceptors.SystemInterceptorProxy.doCall(SystemInterceptorProxy.java:163)
at com.sun.ejb.containers.interceptors.SystemInterceptorProxy.init(SystemInterceptorProxy.java:125)
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 com.sun.ejb.containers.interceptors.CallbackInterceptor.intercept(InterceptorManager.java:986)
at com.sun.ejb.containers.interceptors.CallbackChainImpl.invokeNext(CallbackChainImpl.java:72)
at com.sun.ejb.containers.interceptors.CallbackInvocationContext.proceed(CallbackInvocationContext.java:205)
at com.sun.ejb.containers.interceptors.SystemInterceptorProxy.doCall(SystemInterceptorProxy.java:163)
at com.sun.ejb.containers.interceptors.SystemInterceptorProxy.init(SystemInterceptorProxy.java:125)
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 com.sun.ejb.containers.interceptors.CallbackInterceptor.intercept(InterceptorManager.java:986)
at com.sun.ejb.containers.interceptors.CallbackChainImpl.invokeNext(CallbackChainImpl.java:72)
at com.sun.ejb.containers.interceptors.InterceptorManager.intercept(InterceptorManager.java:412)
at com.sun.ejb.containers.interceptors.InterceptorManager.intercept(InterceptorManager.java:375)
at com.sun.ejb.containers.BaseContainer.intercept(BaseContainer.java:1949)
at com.sun.ejb.containers.AbstractSingletonContainer.createSingletonEJB(AbstractSingletonContainer.java:475)
at com.sun.ejb.containers.AbstractSingletonContainer.access$000(AbstractSingletonContainer.java:81)
at com.sun.ejb.containers.AbstractSingletonContainer$SingletonContextFactory.create(AbstractSingletonContainer.java:654)
at com.sun.ejb.containers.AbstractSingletonContainer.instantiateSingletonInstance(AbstractSingletonContainer.java:396)
at org.glassfish.ejb.startup.SingletonLifeCycleManager.initializeSingleton(SingletonLifeCycleManager.java:219)
at org.glassfish.ejb.startup.SingletonLifeCycleManager.initializeSingleton(SingletonLifeCycleManager.java:180)
at org.glassfish.ejb.startup.SingletonLifeCycleManager.doStartup(SingletonLifeCycleManager.java:158)
at org.glassfish.ejb.startup.EjbApplication.start(EjbApplication.java:166)
at org.glassfish.internal.data.EngineRef.start(EngineRef.java:122)
at org.glassfish.internal.data.ModuleInfo.start(ModuleInfo.java:291)
at org.glassfish.internal.data.ApplicationInfo.start(ApplicationInfo.java:352)
at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:497)
at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:219)
at org.glassfish.deployment.admin.InstanceDeployCommand.execute(InstanceDeployCommand.java:213)
at com.sun.enterprise.v3.admin.CommandRunnerImpl$2$1.run(CommandRunnerImpl.java:527)
at com.sun.enterprise.v3.admin.CommandRunnerImpl$2$1.run(CommandRunnerImpl.java:523)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:356)
at com.sun.enterprise.v3.admin.CommandRunnerImpl$2.execute(CommandRunnerImpl.java:522)
at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:546)
at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:1423)
at com.sun.enterprise.v3.admin.CommandRunnerImpl.access$1500(CommandRunnerImpl.java:108)
at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1762)
at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1674)
at org.glassfish.admin.rest.resources.admin.CommandResource.executeCommand(CommandResource.java:396)
at org.glassfish.admin.rest.resources.admin.CommandResource.execCommandMultInMultOut(CommandResource.java:256)
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.glassfish.jersey.server.model.internal.ResourceMethodInvocationHandlerFactory$1.invoke(ResourceMethodInvocationHandlerFactory.java:81)
at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.invoke(AbstractJavaResourceMethodDispatcher.java:125)
at org.glassfish.jersey.server.model.internal.JavaResourceMethodDispatcherProvider$ResponseOutInvoker.doDispatch(JavaResourceMethodDispatcherProvider.java:152)
at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.dispatch(AbstractJavaResourceMethodDispatcher.java:91)
at org.glassfish.jersey.server.model.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:346)
at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:341)
at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:101)
at org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:224)
at org.glassfish.jersey.internal.Errors$1.call(Errors.java:271)
at org.glassfish.jersey.internal.Errors$1.call(Errors.java:267)
at org.glassfish.jersey.internal.Errors.process(Errors.java:315)
at org.glassfish.jersey.internal.Errors.process(Errors.java:297)
at org.glassfish.jersey.internal.Errors.process(Errors.java:267)
at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:317)
at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:198)
at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:946)
at org.glassfish.jersey.grizzly2.httpserver.GrizzlyHttpContainer.service(GrizzlyHttpContainer.java:331)
at org.glassfish.admin.rest.adapter.JerseyContainerCommandService$3.service(JerseyContainerCommandService.java:165)
at org.glassfish.admin.rest.adapter.RestAdapter.service(RestAdapter.java:181)
at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:246)
at org.glassfish.grizzly.http.server.HttpHandler.runService(HttpHandler.java:191)
at org.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:168)
at org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:189)
at org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:288)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:206)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:136)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:114)
at org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
at org.glassfish.grizzly.portunif.PUFilter.handleRead(PUFilter.java:231)
at org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:288)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:206)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:136)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:114)
at org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
at org.glassfish.grizzly.portunif.PUFilter.handleRead(PUFilter.java:231)
at org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:288)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:206)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:136)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:114)
at org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
at org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:838)
at org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:113)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:115)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:55)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:135)
at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:564)
at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
at java.lang.Thread.run(Thread.java:722)
Caused by: javax.ejb.EJBException: javax.ejb.CreateException: Could not create stateless EJB
at com.sun.ejb.containers.StatelessSessionContainer$SessionContextFactory.create(StatelessSessionContainer.java:700)
at com.sun.ejb.containers.util.pool.NonBlockingPool.getObject(NonBlockingPool.java:246)
at com.sun.ejb.containers.StatelessSessionContainer._getContext(StatelessSessionContainer.java:430)
... 124 more
Caused by: javax.ejb.CreateException: Could not create stateless EJB
at com.sun.ejb.containers.StatelessSessionContainer.createStatelessEJB(StatelessSessionContainer.java:514)
at com.sun.ejb.containers.StatelessSessionContainer.access$000(StatelessSessionContainer.java:97)
at com.sun.ejb.containers.StatelessSessionContainer$SessionContextFactory.create(StatelessSessionContainer.java:698)
... 126 more
Caused by: java.lang.reflect.InvocationTargetException
at com.sun.ejb.containers.BaseContainer.createEjbInstanceAndContext(BaseContainer.java:1641)
at com.sun.ejb.containers.StatelessSessionContainer.createStatelessEJB(StatelessSessionContainer.java:456)
... 128 more
Caused by: java.lang.NullPointerException
at java.util.concurrent.ConcurrentHashMap.hash(ConcurrentHashMap.java:333)
at java.util.concurrent.ConcurrentHashMap.get(ConcurrentHashMap.java:988)
at org.jboss.weld.manager.BeanManagerImpl.getBean(BeanManagerImpl.java:1163)
at org.jboss.weld.manager.BeanManagerImpl.getBean(BeanManagerImpl.java:178)
at org.glassfish.weld.services.JCDIServiceImpl._createJCDIInjectionContext(JCDIServiceImpl.java:198)
at org.glassfish.weld.services.JCDIServiceImpl.createJCDIInjectionContext(JCDIServiceImpl.java:179)
at com.sun.ejb.containers.BaseContainer.createEjbInstanceAndContext(BaseContainer.java:1631)
... 129 more
]]

RootCause :

org.glassfish.weld.services.JCDIServiceImpl#_createJCDIInjectionContext(EjbDescriptor ejb, T instance)

org.jboss.weld.ejb.spi.EjbDescriptor ejbDesc = weldManager.getEjbDescriptor(ejb.getName());
// Get an the Bean object
Bean<?> bean = weldManager.getBean(ejbDesc);

It sounds like the second experience under https://java.net/jira/browse/GLASSFISH-15888 .
The bda only shows up beans, that are being described by annotations. It seems that the deployment descriptors are ignored.



 Comments   
Comment by jjsnyder83 [ 22/May/13 10:44 AM ]

Please attach the application with source code.

Comment by jjsnyder83 [ 31/May/13 01:58 PM ]

The reason it is failing is because the ejb classes are not in the ejb jar but are in another jar in the application's classpath. I checked with Marina and she said that the way your application is packaged is valid but the GF CDI code is written such that it expects the ejbs to be in the same jar as the ejb descriptor. I will have to think about how to fix this.

In the mean time because this is not a cdi application you can issue the following asadmin command to disable cdi and your application will deploy without any exceptions:

$GFHOME/bin/asadmin set configs.config.server-config.cdi-service.enable-implicit-cdi=false

Comment by phil.zampino [ 18/Jun/13 02:34 PM ]

Removed unnecessary restriction that EJB classes be packaged in the EJB JAR in which the corresponding descriptor is packaged. Now, EJB classes packaged outside the JAR containing their descriptor will be correctly loaded.

Committed revision 62240.

Comment by phil.zampino [ 12/Aug/13 02:05 PM ]

The previous fix breaks the CDI TCK. So, this issue needs to be revisited.





[GLASSFISH-20540] PSR:PERF Implicit CDI causing 30% performance regression Created: 16/May/13  Updated: 17/Apr/14

Status: Reopened
Project: glassfish
Component/s: cdi
Affects Version/s: 4.0_b89_RC5
Fix Version/s: 4.0.1

Type: Bug Priority: Major
Reporter: Scott Oaks Assignee: Scott Oaks
Resolution: Unresolved Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags: 4_0_1-review PSRBUG
Participants: jjsnyder83, phil.zampino and Scott Oaks

 Description   

Micro benchmarks on EJB local session beans have regressed by 30% in current build. This is because of implicit CDI; if I set cdi-enable-implicit=false, performance reverts to previous levels.

I suspect this is a new weld integration to fix for https://java.net/jira/browse/GLASSFISH-20474 – and the memory leak is fixed, but we are left with the new performance regression.

The WeldListnener is consuming about 30% of total CPU now, particularly in the WeldListener.requestDestroy() method.



 Comments   
Comment by jjsnyder83 [ 22/May/13 05:31 PM ]

I'm not sure there's much we can do about this. As you stated, when you disable implicit cdi you get the same results as before. With implicit cdi enabled cdi is getting involved with the ejbs and so additional processing is happening. If cdi is not required then it should be turned off for maximum performance.

Comment by Scott Oaks [ 22/May/13 08:22 PM ]

I don't think "work as intended" is an accurate description – I don't think the intention of enabling CDI by default is to introduce a 30% performance regression in EJB operations.

We need to look into and optimize the Weld implementation here. If we conclude that it cannot be improved on, then we can figure out next steps. But I suspect, given the size of the penalty, that there is some optimizing we can do. I'll get PSR staff to do some initial analysis (but also, can we check with the Weld implementors and see if they are aware of this, as they were already aware of the memory leak)?

Comment by jjsnyder83 [ 22/May/13 08:38 PM ]

Enabling CDI causes CDI to get involved in all EJB requests so if there's a lot of EJB "action" happening then there's going to be a performance hit when CDI is involved. I agree 30% seems drastic!

It's entirely possible that Weld can improve the implementation and I'll be glad to open a Weld Jira. It would be very helpful if I could provide some more information as well as an application that when run emphasizes the performance hit...Can the PSR staff provide that info?

(btw, The weld guys were not aware of the memory leak until we pointed it out )

Comment by phil.zampino [ 24/Jun/13 05:55 PM ]

After a brief exchange with the Weld lead, I've filed https://issues.jboss.org/browse/WELD-1443

Comment by phil.zampino [ 26/Jun/13 03:04 PM ]

The associated Weld issue is scheduled to be included in Weld 2.0.3.Final





[GLASSFISH-20539] [fishcat] GF b89 : SEVERE: Exception during lifecycle processing Created: 16/May/13  Updated: 22/May/13  Resolved: 22/May/13

Status: Resolved
Project: glassfish
Component/s: cdi
Affects Version/s: 4.0_b89_RC5
Fix Version/s: None

Type: Bug Priority: Major
Reporter: survivant Assignee: jjsnyder83
Resolution: Invalid Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Product Version: NetBeans IDE Dev (Build 201305052300)
Java: 1.7.0_13; Java HotSpot(TM) Client VM 23.7-b01
Runtime: Java(TM) SE Runtime Environment 1.7.0_13-b20
System: Windows XP version 5.1 running on x86; Cp1252; fr_CA (nb)
User directory: C:\Documents and Settings\sdionne1\Application Data\NetBeans\dev
Cache directory: C:\Documents and Settings\sdionne1\Local Settings\Application Data\NetBeans\Cache\dev


Tags: fishcat ejb inject jax-rs guice
Participants: jjsnyder83 and survivant

 Description   

I'm trying to deploy a simple jax-rs with @Inject and got theses error, and unable to deploy the demo.

my source look like :

HelloResource.java

package com.demo;

import javax.annotation.PostConstruct;
import javax.inject.Inject;
import javax.ws.rs.Consumes;
import javax.ws.rs.GET;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;

/**
*

  • @author sdionne1
    */
    @Path("hello")
    public class HelloResource {

@Inject
CDIManagedBean bean;

@Inject
EJBManagedBean ejb;

@PostConstruct
public void init(){ System.out.println(HelloResource.class + " post construct"); }

@GET
@Produces("text/plain")
public String getHello(){ return "hello : " + bean.getOutput() + " : " + ejb.getOutput(); }

@POST
@Consumes("text/plain")
public void sayHello(String message){ System.out.println("Say Hello : " + message); }

@POST
@Consumes("application/json")
public void helloJson(User user){ System.out.println("helloJson user : " + user); }
}

ApplicationConfig.java (Generated by Netbeans dev build)

package org.netbeans.rest.application.config;

import java.util.Set;
import javax.ws.rs.ApplicationPath;
import javax.ws.rs.core.Application;

/**
*

  • @author sdionne1
    */
    @ApplicationPath("resources")
    public class ApplicationConfig extends Application {

/**

  • Do not modify addRestResourceClasses() method.
  • It is automatically re-generated by NetBeans REST support to populate
  • given list with all resources defined in the project.
    */
    @Override
    public Set<Class<?>> getClasses()
    Unknown macro: { Set<Class<?>> resources = new java.util.HashSet<Class<?>>(); // following code can be used to customize Jersey 2.0 JSON provider}

private void addRestResourceClasses(Set<Class<?>> resources) { resources.add(com.demo.HelloResource.class); }

}

Launching GlassFish on Felix platform
mai 16, 2013 8:33:13 AM com.sun.enterprise.glassfish.bootstrap.osgi.BundleProvisioner createBundleProvisioner
INFO: Create bundle provisioner class = class com.sun.enterprise.glassfish.bootstrap.osgi.BundleProvisioner.
mai 16, 2013 8:33:13 AM com.sun.enterprise.glassfish.bootstrap.osgi.BundleProvisioner$DefaultCustomizer getLocations
WARNING: Skipping entry because it is not an absolute URI.
mai 16, 2013 8:33:13 AM com.sun.enterprise.glassfish.bootstrap.osgi.BundleProvisioner$DefaultCustomizer getLocations
WARNING: Skipping entry because it is not an absolute URI.
Registered com.sun.enterprise.glassfish.bootstrap.osgi.EmbeddedOSGiGlassFishRuntime@10e2859 in service registry.
Registry Info:: Total repositories: 1, Total modules = 293
Attached repository: []
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.security.services [239]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.common.glassfish-mbeanserver [100]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.transaction.jta [191]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [javax.security.auth.message-api [145]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.jersey.containers.jersey-container-servlet-core [166]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.persistence.entitybean-container [76]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.resources.runtime [233]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.admingui.console-jca-plugin [54]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.registration.registration-api [230]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.connectors.admin [42]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.javax.json [140]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.metro.webservices-osgi [271]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.hk2.external.asm-all-repackaged [18]], State = [READY]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.orb.enabler [206]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.hk2.config [114]], State = [READY]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.fighterfish.osgi-javaee-base [289]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.web.javax.servlet.jsp.jstl [151]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.admin.backup [19]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.persistence.common [222]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.persistence.gf-jpa-connector [85]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.transaction.jts [192]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [stax2-api [248]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.hk2.external.bean-validator [21]], State = [READY]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.admingui.dataprovider [63]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.corba.glassfish-corba-orb [96]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.persistence.cmp.enhancer [28]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.fighterfish.osgi-ejb-container [287]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [javax.batch-api [130]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.external.dbschema-repackaged [64]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.ha.shoal-cache-bootstrap [111]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.admingui.console-corba-plugin [51]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.apache.felix.fileinstall [280]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.web.gf-web-connector [88]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.deployment.deployment-client [67]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [com.google.guava [108]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.common.scattered-archive-api [236]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.hk2.api [113]], State = [READY]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.apache.felix.gogo.command [281]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [javax.enterprise.deploy-api [135]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [javax.resource-api [144]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.admingui.console-web-plugin [60]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.core.glassfish-extra-jre-packages [98]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.tyrus.container-glassfish-cdi [252]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.jms.admin [181]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.tyrus.container-grizzly [253]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.eclipse.persistence.oracle [217]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.web.gf-weld-connector [89]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.registration.glassfish-registration [103]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.common.internal-api [120]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.gmbal.gmbal [105]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.connectors.internal-api [44]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.hk2.config-types [41]], State = [READY]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.jersey.ext.jersey-mvc [178]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.webservices.jsr109-impl [189]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.security.websecurity [268]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.security.ejb.security [75]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.admin.util [8]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.web.jspcaching-connector [188]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.web.jsf-connector [185]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.admingui.console-community-branding-plugin [49]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.ha.ha-file-store [110]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [com.ibm.jbatch-ri-spi [35]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.jersey.core.jersey-server [179]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [javax.management.j2ee-api [142]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.core.glassfish [104]], State = [READY]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.concurrent.connector [38]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [javax.persistence [143]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.web.ha [265]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.hk2.external.cglib [22]], State = [READY]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.apache.felix.bundlerepository [208]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.common.glassfish-ee-api [97]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.security.jaspic.provider.framework [126]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.persistence.jpa-container [184]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.registration.registration-impl [231]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [javax.transaction-api [152]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.web.javax.servlet.jsp [149]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.eclipse.persistence.jpa.modelgen [215]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.common.glassfish-api [90]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [jackson-core-asl [122]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.tyrus.websocket-core [258]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.web.naming [266]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.fighterfish.osgi-jpa [291]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.flashlight.flashlight-extra-jdk-packages [77]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.javax.enterprise.concurrent [134]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.admin.gf-restadmin-connector [87]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.common.glassfish-naming [101]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.jersey.media.jersey-media-json-jackson [170]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.persistence.cmp.model [31]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.security [240]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.jms.core [182]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.admingui.console-jts-plugin [57]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [woodstox-core-asl [276]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.osgi-platforms.osgi-cli-remote [219]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.ejb.ejb-container [72]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.metro.webservices-api-osgi [3]], State = [READY]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.web.weld-integration-fragment [273]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.eclipse.persistence.core [211]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.jersey.core.jersey-common [164]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.common.simple-glassfish-api [244]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.jdbc.config [160]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.external.j-interop-repackaged [121]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.shoal.cache [241]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.web.jstl-connector [190]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.core.kernel [193]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.admin.core [7]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.fighterfish.osgi-web-container [293]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.fighterfish.osgi-cdi [285]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.jsonp-jaxrs [187]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.external.management-api [199]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.batch.glassfish-batch-commands [91]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.jersey.media.jersey-media-sse [175]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.jersey.ext.jersey-bean-validation [162]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.admingui.console-ejb-plugin [53]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.admingui.console-common-full-plugin [47]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.admingui.console-concurrent-plugin [50]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.admingui.console-common [48]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.tyrus.spi [257]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.admin.config-api [40]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.security.ee [238]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.webservices.metro-glue [200]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.loadbalancer.load-balancer-admin [197]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [jackson-jaxrs [123]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.jms.gf-jms-injection [84]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.deployment.common [68]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [javax.jms-api [139]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.corba.glassfish-corba-csiv2-idl [93]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.pfl.pfl-dynamic [226]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.hk2.osgi-resource-locator [4]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.eclipse.persistence.dbws [212]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.loadbalancer.gf-load-balancer-connector [86]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.jersey.containers.glassfish.jersey-gf-ejb [169]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.tyrus.container-servlet [254]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.web.cli [260]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.external.jmxremote_optional-repackaged [183]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.grizzly.glassfish-grizzly-extra-all [99]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.hk2.class-model [23]], State = [READY]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.pfl.pfl-tf-tools [227]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.deployment.javaee-full [70]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.jersey.media.jersey-media-multipart [174]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.security.webservices.security [272]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [javax.annotation-api [1]], State = [READY]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.resources.javamail-runtime [129]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.eclipse.persistence.moxy [216]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.hk2.osgi-adapter [218]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [javax.ws.rs-api [154]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [com.sun.pkg.client [229]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.web.sse [267]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.admin.rest-client [234]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.admin.cli [6]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [javax.servlet-api [147]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.web.glue [263]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.ejb.gf-ejb-connector [82]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.common.amx-core [9]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.common.amx-javaee [10]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.admingui.console-jms-plugin [56]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.web.gui-plugin-common [264]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.admingui.console-cluster-plugin [46]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.concurrent.impl [39]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.cluster.common [25]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.hk2.locator [115]], State = [READY]]
Registered Module: [OSGiModuleImpl:: Bundle = [com.ibm.jbatch-ri-runtime [36]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.osgi-platforms.osgi-container [220]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.jboss.weld.osgi-bundle [275]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.hk2.runlevel [116]], State = [READY]]
Registered Module: [OSGiModuleImpl:: Bundle = [com.sun.el.javax.el [132]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.apache.felix.scr [284]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.corba.glassfish-corba-internal-api [94]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.external.ldapbp-repackaged [195]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.cluster.gms-adapter [106]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.connectors.runtime [45]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [javax.servlet.jsp.jstl-api [150]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.hk2.external.javax.inject [137]], State = [READY]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.fighterfish.osgi-jpa-extension [221]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.common.annotation-framework [11]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.external.trilead-ssh2-repackaged [250]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.external.ant [12]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.jersey.core.jersey-client [163]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.deployment.javaee-core [69]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.jdbc.admin [159]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.orb.iiop [207]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.appclient.gf-client-module [80]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.admingui.console-ejb-lite-plugin [52]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.common.container-common [61]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.admingui.console-plugin-service [58]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [GlassFish-Application-Common-Module [14]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.orb.connector [205]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.jersey.containers.jersey-container-servlet [167]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.hk2.external.bean-validator-cdi [20]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.security.ssl-impl [246]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.fighterfish.osgi-http [288]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.grizzly.nucleus-grizzly-all [203]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [javax.ejb-api [131]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [javax.xml.registry-api [155]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.ha.shoal-cache-store [112]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.apache.felix.gogo.runtime [282]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.cluster.admin [24]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.connectors.inbound-runtime [43]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.resources.connector [232]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.hk2.utils [117]], State = [READY]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.ejb.ejb-full-container [73]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.shoal.gms-api [242]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.hk2.core [62]], State = [READY]]
Registered Module: [OSGiModuleImpl:: Bundle = [javax.enterprise.concurrent-api [133]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.pfl.pfl-tf [228]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.resourcebase.resources.nucleus-resources [204]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.resources.javamail-connector [128]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.appclient.server.appclient-connector [15]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.appclient.server.appclient-server-core [16]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.appclient.acc-config [5]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [javax.interceptor-api [138]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.core.javaee-kernel [127]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.common.stats77 [247]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.admingui.console-updatecenter-plugin [59]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.pfl.pfl-basic-tools [224]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [javax.websocket-api [153]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.hk2.hk2 [118]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.common.util [37]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.shoal.gms-impl [243]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.fighterfish.osgi-jdbc [290]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.tyrus.core [255]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.pfl.pfl-basic [225]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.tyrus.server [256]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.security.appclient.security [17]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.cluster.ssh [26]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [javax.xml.rpc-api [156]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.admin.rest-service [235]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.external.antlr-repackaged [13]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.connectors.work-management [277]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.jvnet.mimepull [201]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.batch.glassfish-batch-connector [92]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.jdbc.runtime [161]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.admin.monitoring-core [202]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.fighterfish.osgi-ee-resources [286]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.external.schema2beans-repackaged [237]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.jersey.media.jersey-media-moxy [173]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.cluster.gms-bootstrap [107]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [com.sun.mail.javax.mail [141]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.persistence.cmp.generator-database [29]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.webservices.soap-tcp [245]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [com.sun.jsftemplating [186]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.persistence.cmp.internal-api [30]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.apache.felix.eventadmin [279]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.web.embed-api [262]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.transaction.internal-api [249]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.tyrus.client [251]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.eclipse.persistence.jpa [213]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.persistence.glassfish-oracle-jdbc-driver-packages [102]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.persistence.cmp.support-ejb [32]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.jersey.media.jersey-media-json-jettison [171]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [jaxb-api [2]], State = [READY]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.core.logging [198]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.webservices.connector [269]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.jersey.ext.jersey-mvc-jsp [177]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.metro.webservices-extra-jdk-packages [270]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.web.war-util [259]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.web.jersey-mvc-connector [176]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.apache.felix.gogo.shell [283]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.security.inmemory.jacc.provider [119]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.ha.ha-api [109]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.jersey.media.jersey-media-json-processing [172]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.fighterfish.osgi-jta [292]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.web.core [261]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.external.libpam4j-repackaged [196]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.apache.felix.configadmin [278]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.persistence.cmp.support-sqlstore [33]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [jackson-mapper-asl [124]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.deployment.dol [71]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.persistence.cmp.ejb-mapping [27]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.admingui.console-jdbc-plugin [55]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [com.sun.xml.bind [158]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.admin.launcher [194]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.flashlight.framework [78]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.pfl.pfl-asm [223]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.javax.faces [136]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [javax.security.jacc-api [146]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.eclipse.persistence.asm [210]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.jersey.containers.glassfish.jersey-gf-cdi [168]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.jms.gf-jms-connector [83]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.corba.glassfish-corba-omgapi [95]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [jackson-xc [125]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.eclipse.persistence.antlr [209]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.ejb.internal-api [74]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.codehaus.jettison.jettison [180]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [com.sun.xml.bind.extra [157]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.deployment.autodeploy [66]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.persistence.cmp.utility [34]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.admingui.connector.gf-admingui-connector [79]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.jersey.containers.jersey-container-grizzly2-http [165]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.connectors.gf-connectors-connector [81]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [javax.servlet.jsp-api [148]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.web.weld-integration [274]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.deployment.admin [65]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.eclipse.persistence.jpa.jpql [214]], State = [NEW]]
Found populator: com.sun.enterprise.v3.server.GFDomainXml
#!## LogManagerService.postConstruct : rootFolder=F:\github\glassfish4-b89\glassfish
#!## LogManagerService.postConstruct : templateDir=F:\github\glassfish4-b89\glassfish\lib\templates
#!## LogManagerService.postConstruct : src=F:\github\glassfish4-b89\glassfish\lib\templates\logging.properties
#!## LogManagerService.postConstruct : dest=F:\github\glassfish4-b89\glassfish\domains\domain1\config\logging.properties
INFO: Running GlassFish Version: GlassFish Server Open Source Edition 4.0 (build 89)
INFO: Server log file is using Formatter class: com.sun.enterprise.server.logging.ODLLogFormatter
INFO: SEC1115: Realm [admin-realm] of classtype [com.sun.enterprise.security.auth.realm.file.FileRealm] successfully created.
INFO: SEC1115: Realm [file] of classtype [com.sun.enterprise.security.auth.realm.file.FileRealm] successfully created.
INFO: SEC1115: Realm [certificate] of classtype [com.sun.enterprise.security.auth.realm.certificate.CertificateRealm] successfully created.
INFO: Grizzly Framework 2.3.1 started in: 93ms - bound to [/0.0.0.0:8 080]
INFO: Grizzly Framework 2.3.1 started in: 0ms - bound to [/0.0.0.0:8 181]
INFO: Grizzly Framework 2.3.1 started in: 47ms - bound to [/0.0.0.0:4 848]
INFO: Authorization Service has successfully initialized.
INFO: Grizzly Framework 2.3.1 started in: 0ms - bound to [/0.0.0.0:3 700]
INFO: Registered org.glassfish.ha.store.adapter.cache.ShoalBackingStoreProxy for persistence-type = replicated in BackingStoreFactoryRegistry
INFO: HV000001: Hibernate Validator 5.0.0.Final
INFO: GlassFish Server Open Source Edition 4.0 (89) startup time : Felix (45 481ms), startup services(3 625ms), total(49 106ms)
INFO: Initiating Jersey application, version Jersey: 2.0 2013-05-03 14:50:15...
INFO: Grizzly Framework 2.3.1 started in: 31ms - bound to [/0.0.0.0:8 080]
WARNING: Cannot start JMX connector JmxConnector config: { name = system, Protocol = rmi_jrmp, Address = 0.0.0.0, Port = 8686, AcceptAll = false, AuthRealmName = admin-realm, SecurityEnabled = false} due to exception java.lang.RuntimeException: Port 8686 is not available for the internal rmi registry. This means that a call was made with the same port, without closing earlier registry instance. This has to do with the system jmx connector configuration in admin-service element of the configuration associated with this instance
SEVERE: java.lang.RuntimeException: Port 8686 is not available for the internal rmi registry. This means that a call was made with the same port, without closing earlier registry instance. This has to do with the system jmx connector configuration in admin-service element of the configuration associated with this instance
at org.glassfish.admin.mbeanserver.RMIConnectorStarter._startRegistry(RMIConnectorStarter.java:238)
at org.glassfish.admin.mbeanserver.RMIConnectorStarter.startRegistry(RMIConnectorStarter.java:216)
at org.glassfish.admin.mbeanserver.RMIConnectorStarter.<init>(RMIConnectorStarter.java:150)
at org.glassfish.admin.mbeanserver.JMXStartupService$JMXConnectorsStarterThread.startConnector(JMXStartupService.java:294)
at org.glassfish.admin.mbeanserver.JMXStartupService$JMXConnectorsStarterThread.run(JMXStartupService.java:333)
INFO: Grizzly Framework 2.3.1 started in: 0ms - bound to [/0.0.0.0:8 181]
INFO: this.makeModuleFor(org.glassfish.main.web.glue, null) returned OSGiModuleImpl:: Bundle = [org.glassfish.main.web.glue [263]], State = [READY]
INFO: this.makeModuleFor(org.glassfish.web.javax.servlet.jsp, null) returned OSGiModuleImpl:: Bundle = [org.glassfish.web.javax.servlet.jsp [149]], State = [READY]
INFO: visiting unvisited references
SEVERE: Config Listener class com.sun.enterprise.connectors.jms.system.JMSConfigListener notification took too long
java.util.concurrent.TimeoutException
at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:258)
at java.util.concurrent.FutureTask.get(FutureTask.java:119)
at org.jvnet.hk2.config.Transactions$ConfigListenerNotifier$1.call(Transactions.java:289)
at org.jvnet.hk2.config.Transactions$ConfigListenerNotifier$1.call(Transactions.java:268)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.java:166)
at org.jvnet.hk2.config.Transactions$Notifier$1$1.run(Transactions.java:167)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.java:166)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:722)

INFO: Grizzly Framework 2.3.1 started in: 0ms - bound to [/0.0.0.0:7 676]
INFO: Registered com.sun.enterprise.glassfish.bootstrap.osgi.EmbeddedOSGiGlassFishImpl@a78915 as OSGi service registration: org.apache.felix.framework.ServiceRegistrationImpl@1e47220.
INFO: SEC1002: Security Manager is OFF.
INFO: SEC1010: Entering Security Startup Service
INFO: SEC1143: Loading policy provider com.sun.enterprise.security.provider.PolicyWrapper.
INFO: SEC1011: Security Service(s) Started Successfully
INFO: Created HTTP listener http-listener-1 on host/port 0.0.0.0:8080
INFO: Created HTTP listener http-listener-2 on host/port 0.0.0.0:8181
INFO: Created HTTP listener admin-listener on host/port 0.0.0.0:4848
INFO: Created virtual server server
INFO: Created virtual server __asadmin
INFO: Setting JAAS app name glassfish-web
INFO: Virtual server server loaded default web module
INFO: visiting unvisited references
INFO: visiting unvisited references
INFO: visiting unvisited references
INFO: visiting unvisited references
INFO: visiting unvisited references
INFO: visiting unvisited references
INFO: visiting unvisited references
INFO: visiting unvisited references
INFO: visiting unvisited references
INFO: visiting unvisited references
INFO: visiting unvisited references
INFO: visiting unvisited references
INFO: visiting unvisited references
INFO: visiting unvisited references
INFO: visiting unvisited references
INFO: visiting unvisited references
INFO: visiting unvisited references
INFO: visiting unvisited references
INFO: visiting unvisited references
INFO: visiting unvisited references
INFO: visiting unvisited references
INFO: visiting unvisited references
INFO: visiting unvisited references
INFO: visiting unvisited references
INFO: visiting unvisited references
INFO: visiting unvisited references
INFO: EJB5181:Portable JNDI names for EJB EJBManagedBean: [java:global/WebApplication1/EJBManagedBean!com.demo.EJBManagedBean, java:global/WebApplication1/EJBManagedBean]
INFO: WELD-000900 2.0.0 (SP1)
WARNING: AS-CDI-005
WARNING: AS-CDI-005
INFO: WELD-000119 Not generating any bean definitions from com.sun.jersey.guice.spi.container.servlet.GuiceContainer because of underlying class loading error: Type com.google.inject.Injector not found. If this is unexpected, enable DEBUG logging to see the full error.
SEVERE: Exception during lifecycle processing
org.glassfish.deployment.common.DeploymentException: CDI deployment failure:Error loading class com.sun.jersey.guice.spi.container.servlet.GuiceContainer
at org.glassfish.weld.WeldDeployer.event(WeldDeployer.java:225)
at org.glassfish.kernel.event.EventsImpl.send(EventsImpl.java:131)
at org.glassfish.internal.data.ApplicationInfo.load(ApplicationInfo.java:328)
at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:493)
at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:219)
at org.glassfish.deployment.admin.DeployCommand.execute(DeployCommand.java:491)
at com.sun.enterprise.v3.admin.CommandRunnerImpl$2$1.run(CommandRunnerImpl.java:527)
at com.sun.enterprise.v3.admin.CommandRunnerImpl$2$1.run(CommandRunnerImpl.java:523)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:356)
at com.sun.enterprise.v3.admin.CommandRunnerImpl$2.execute(CommandRunnerImpl.java:522)
at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:546)
at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:1423)
at com.sun.enterprise.v3.admin.CommandRunnerImpl.access$1500(CommandRunnerImpl.java:108)
at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1762)
at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1674)
at com.sun.enterprise.v3.admin.AdminAdapter.doCommand(AdminAdapter.java:534)
at com.sun.enterprise.v3.admin.AdminAdapter.onMissingResource(AdminAdapter.java:224)
at org.glassfish.grizzly.http.server.StaticHttpHandler.service(StaticHttpHandler.java:297)
at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:246)
at org.glassfish.grizzly.http.server.HttpHandler.runService(HttpHandler.java:191)
at org.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:168)
at org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:189)
at org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:288)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:206)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:136)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:114)
at org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
at org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:838)
at org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:113)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:115)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:55)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:135)
at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:564)
at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
at java.lang.Thread.run(Thread.java:722)
Caused by: org.jboss.weld.resources.spi.ResourceLoadingException: Error loading class com.sun.jersey.guice.spi.container.servlet.GuiceContainer
at org.jboss.weld.resources.ClassTransformer.getBackedAnnotatedType(ClassTransformer.java:179)
at org.jboss.weld.resources.ClassTransformer.getBackedAnnotatedType(ClassTransformer.java:188)
at org.jboss.weld.manager.BeanManagerImpl.createAnnotatedType(BeanManagerImpl.java:1136)
at org.glassfish.weld.WeldDeployer.firePITEvent(WeldDeployer.java:389)
at org.glassfish.weld.WeldDeployer.fireProcessInjectionTargetEvents(WeldDeployer.java:360)
at org.glassfish.weld.WeldDeployer.event(WeldDeployer.java:212)
... 36 more
Caused by: java.lang.NoClassDefFoundError: com/google/inject/Injector
at java.lang.Class.getDeclaredConstructors0(Native Method)
at java.lang.Class.privateGetDeclaredConstructors(Class.java:2413)
at java.lang.Class.getDeclaredConstructors(Class.java:1855)
at org.jboss.weld.security.GetDeclaredConstructorsAction.run(GetDeclaredConstructorsAction.java:30)
at org.jboss.weld.security.GetDeclaredConstructorsAction.run(GetDeclaredConstructorsAction.java:22)
at java.security.AccessController.doPrivileged(Native Method)
at org.jboss.weld.annotated.slim.backed.BackedAnnotatedType$BackedAnnotatedConstructors.computeValue(BackedAnnotatedType.java:161)
at org.jboss.weld.annotated.slim.backed.BackedAnnotatedType$BackedAnnotatedConstructors.computeValue(BackedAnnotatedType.java:158)
at org.jboss.weld.util.LazyValueHolder.get(LazyValueHolder.java:35)
at org.jboss.weld.annotated.slim.backed.BackedAnnotatedType$EagerlyInitializedLazyValueHolder.<init>(BackedAnnotatedType.java:154)
at org.jboss.weld.annotated.slim.backed.BackedAnnotatedType$BackedAnnotatedConstructors.<init>(BackedAnnotatedType.java:158)
at org.jboss.weld.annotated.slim.backed.BackedAnnotatedType$BackedAnnotatedConstructors.<init>(BackedAnnotatedType.java:158)
at org.jboss.weld.annotated.slim.backed.BackedAnnotatedType.<init>(BackedAnnotatedType.java:64)
at org.jboss.weld.annotated.slim.backed.BackedAnnotatedType.of(BackedAnnotatedType.java:47)
at org.jboss.weld.resources.ClassTransformer$TransformClassToBackedAnnotatedType.apply(ClassTransformer.java:85)
at org.jboss.weld.resources.ClassTransformer$TransformClassToBackedAnnotatedType.apply(ClassTransformer.java:82)
at com.google.common.collect.ComputingConcurrentHashMap$ComputingValueReference.compute(ComputingConcurrentHashMap.java:358)
at com.google.common.collect.ComputingConcurrentHashMap$ComputingSegment.compute(ComputingConcurrentHashMap.java:184)
at com.google.common.collect.ComputingConcurrentHashMap$ComputingSegment.getOrCompute(ComputingConcurrentHashMap.java:153)
at com.google.common.collect.ComputingConcurrentHashMap.getOrCompute(ComputingConcurrentHashMap.java:69)
at com.google.common.collect.ComputingConcurrentHashMap$ComputingMapAdapter.get(ComputingConcurrentHashMap.java:396)
at org.jboss.weld.resources.ClassTransformer.getBackedAnnotatedType(ClassTransformer.java:174)
... 41 more
Caused by: java.lang.ClassNotFoundException: com.google.inject.Injector
at org.glassfish.web.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1761)
at org.glassfish.web.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1611)
... 63 more

SEVERE: Exception while loading the app
SEVERE: Undeployment failed for context /WebApplication1
SEVERE: Exception while loading the app : CDI deployment failure:Error loading class com.sun.jersey.guice.spi.container.servlet.GuiceContainer
org.jboss.weld.resources.spi.ResourceLoadingException: Error loading class com.sun.jersey.guice.spi.container.servlet.GuiceContainer
at org.jboss.weld.resources.ClassTransformer.getBackedAnnotatedType(ClassTransformer.java:179)
at org.jboss.weld.resources.ClassTransformer.getBackedAnnotatedType(ClassTransformer.java:188)
at org.jboss.weld.manager.BeanManagerImpl.createAnnotatedType(BeanManagerImpl.java:1136)
at org.glassfish.weld.WeldDeployer.firePITEvent(WeldDeployer.java:389)
at org.glassfish.weld.WeldDeployer.fireProcessInjectionTargetEvents(WeldDeployer.java:360)
at org.glassfish.weld.WeldDeployer.event(WeldDeployer.java:212)
at org.glassfish.kernel.event.EventsImpl.send(EventsImpl.java:131)
at org.glassfish.internal.data.ApplicationInfo.load(ApplicationInfo.java:328)
at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:493)
at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:219)
at org.glassfish.deployment.admin.DeployCommand.execute(DeployCommand.java:491)
at com.sun.enterprise.v3.admin.CommandRunnerImpl$2$1.run(CommandRunnerImpl.java:527)
at com.sun.enterprise.v3.admin.CommandRunnerImpl$2$1.run(CommandRunnerImpl.java:523)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:356)
at com.sun.enterprise.v3.admin.CommandRunnerImpl$2.execute(CommandRunnerImpl.java:522)
at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:546)
at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:1423)
at com.sun.enterprise.v3.admin.CommandRunnerImpl.access$1500(CommandRunnerImpl.java:108)
at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1762)
at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1674)
at com.sun.enterprise.v3.admin.AdminAdapter.doCommand(AdminAdapter.java:534)
at com.sun.enterprise.v3.admin.AdminAdapter.onMissingResource(AdminAdapter.java:224)
at org.glassfish.grizzly.http.server.StaticHttpHandler.service(StaticHttpHandler.java:297)
at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:246)
at org.glassfish.grizzly.http.server.HttpHandler.runService(HttpHandler.java:191)
at org.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:168)
at org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:189)
at org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:288)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:206)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:136)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:114)
at org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
at org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:838)
at org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:113)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:115)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:55)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:135)
at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:564)
at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
at java.lang.Thread.run(Thread.java:722)
Caused by: java.lang.NoClassDefFoundError: com/google/inject/Injector
at java.lang.Class.getDeclaredConstructors0(Native Method)
at java.lang.Class.privateGetDeclaredConstructors(Class.java:2413)
at java.lang.Class.getDeclaredConstructors(Class.java:1855)
at org.jboss.weld.security.GetDeclaredConstructorsAction.run(GetDeclaredConstructorsAction.java:30)
at org.jboss.weld.security.GetDeclaredConstructorsAction.run(GetDeclaredConstructorsAction.java:22)
at java.security.AccessController.doPrivileged(Native Method)
at org.jboss.weld.annotated.slim.backed.BackedAnnotatedType$BackedAnnotatedConstructors.computeValue(BackedAnnotatedType.java:161)
at org.jboss.weld.annotated.slim.backed.BackedAnnotatedType$BackedAnnotatedConstructors.computeValue(BackedAnnotatedType.java:158)
at org.jboss.weld.util.LazyValueHolder.get(LazyValueHolder.java:35)
at org.jboss.weld.annotated.slim.backed.BackedAnnotatedType$EagerlyInitializedLazyValueHolder.<init>(BackedAnnotatedType.java:154)
at org.jboss.weld.annotated.slim.backed.BackedAnnotatedType$BackedAnnotatedConstructors.<init>(BackedAnnotatedType.java:158)
at org.jboss.weld.annotated.slim.backed.BackedAnnotatedType$BackedAnnotatedConstructors.<init>(BackedAnnotatedType.java:158)
at org.jboss.weld.annotated.slim.backed.BackedAnnotatedType.<init>(BackedAnnotatedType.java:64)
at org.jboss.weld.annotated.slim.backed.BackedAnnotatedType.of(BackedAnnotatedType.java:47)
at org.jboss.weld.resources.ClassTransformer$TransformClassToBackedAnnotatedType.apply(ClassTransformer.java:85)
at org.jboss.weld.resources.ClassTransformer$TransformClassToBackedAnnotatedType.apply(ClassTransformer.java:82)
at com.google.common.collect.ComputingConcurrentHashMap$ComputingValueReference.compute(ComputingConcurrentHashMap.java:358)
at com.google.common.collect.ComputingConcurrentHashMap$ComputingSegment.compute(ComputingConcurrentHashMap.java:184)
at com.google.common.collect.ComputingConcurrentHashMap$ComputingSegment.getOrCompute(ComputingConcurrentHashMap.java:153)
at com.google.common.collect.ComputingConcurrentHashMap.getOrCompute(ComputingConcurrentHashMap.java:69)
at com.google.common.collect.ComputingConcurrentHashMap$ComputingMapAdapter.get(ComputingConcurrentHashMap.java:396)
at org.jboss.weld.resources.ClassTransformer.getBackedAnnotatedType(ClassTransformer.java:174)
... 41 more
Caused by: java.lang.ClassNotFoundException: com.google.inject.Injector
at org.glassfish.web.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1761)
at org.glassfish.web.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1611)
... 63 more

INFO: Domain Pinged: release.glassfish.org



 Comments   
Comment by survivant [ 17/May/13 12:09 PM ]

there is a problem in the source code provided :

here the code version :

package org.netbeans.rest.application.config;

import java.util.Set;
import javax.ws.rs.ApplicationPath;
import javax.ws.rs.core.Application;

/**
*

  • @author sdionne1
    */
    @ApplicationPath("resources")
    public class ApplicationConfig extends Application {

/**

  • Do not modify addRestResourceClasses() method.
  • It is automatically re-generated by NetBeans REST support to populate
  • given list with all resources defined in the project.
    */
    @Override
    public Set<Class<?>> getClasses()
    Unknown macro: { Set<Class<?>> resources = new java.util.HashSet<Class<?>>(); // following code can be used to customize Jersey 2.0 JSON provider}

private void addRestResourceClasses(Set<Class<?>> resources) { resources.add(com.demo.HelloResource.class); }

}

Comment by jjsnyder83 [ 17/May/13 08:15 PM ]

Please provide the application and source code.

Comment by jjsnyder83 [ 22/May/13 10:45 AM ]

Please attach the application with source code.

Comment by survivant [ 22/May/13 12:12 PM ]

Where the link to attach source code in Jira ?

for now.. I send you the source code by email.

Comment by jjsnyder83 [ 22/May/13 02:41 PM ]

I see 2 problems with the application:
1) There are all sorts of jersey jars in the application. They should probably be removed since GlassFish ships with Jersey and so you don't need them in the war.
2) The CNFE happens because com/google/inject/Injector is not in the classpath of the application but when com.sun.jersey.guice.spi.container.servlet.GuiceContainer (contained in WEB-INF/lib/jersey-guice-1.13.jar) is loaded, because it has a reference to INjector it fails.





[GLASSFISH-20531] JSF can't find @Named beans after redeploy Created: 14/May/13  Updated: 22/May/13  Resolved: 22/May/13

Status: Resolved
Project: glassfish
Component/s: cdi, jsf
Affects Version/s: 4.0_b88_RC4
Fix Version/s: None

Type: Bug Priority: Blocker
Reporter: Bruno Borges Assignee: jjsnyder83
Resolution: Cannot Reproduce Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags:
Participants: Bruno Borges and jjsnyder83

 Description   

Playing with Arun's HOL (glassfish.org/hol).

After a redeploy from NetBeans, JSF is not able to load a @Named bean anymore.

/points/points.xhtml @16,69 value="#{sendPointsBean.message}": Target Unreachable, identifier 'sendPointsBean' resolved to null

Full stacktrace:

javax.el.PropertyNotFoundException: /points/points.xhtml @16,69 value="#{sendPointsBean.message}": Target Unreachable, identifier 'sendPointsBean' resolved to null
	at com.sun.faces.facelets.el.TagValueExpression.getType(TagValueExpression.java:100)
	at com.sun.faces.renderkit.html_basic.HtmlBasicInputRenderer.getConvertedValue(HtmlBasicInputRenderer.java:95)
	at javax.faces.component.UIInput.getConvertedValue(UIInput.java:1046)
	at javax.faces.component.UIInput.validate(UIInput.java:976)
	at javax.faces.component.UIInput.executeValidate(UIInput.java:1249)
	at javax.faces.component.UIInput.processValidators(UIInput.java:712)
	at javax.faces.component.UIForm.processValidators(UIForm.java:253)
	at javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:1261)
	at javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:1261)
	at javax.faces.component.UIViewRoot.processValidators(UIViewRoot.java:1195)
	at com.sun.faces.lifecycle.ProcessValidationsPhase.execute(ProcessValidationsPhase.java:76)
	at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
	at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:198)
	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:646)
	at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1682)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:344)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
	at org.glassfish.tyrus.servlet.TyrusServletFilter.doFilter(TyrusServletFilter.java:253)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:316)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:160)
	at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:734)
	at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:673)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:174)
	at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:357)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:260)
	at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:188)
	at org.glassfish.grizzly.http.server.HttpHandler.runService(HttpHandler.java:191)
	at org.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:168)
	at org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:189)
	at org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:288)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:206)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:136)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:114)
	at org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
	at org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:838)
	at org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:113)
	at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:115)
	at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:55)
	at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:135)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:564)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
	at java.lang.Thread.run(Thread.java:722)
Caused by: javax.el.PropertyNotFoundException: Target Unreachable, identifier 'sendPointsBean' resolved to null
	at com.sun.el.parser.AstValue.getTarget(AstValue.java:174)
	at com.sun.el.parser.AstValue.getType(AstValue.java:86)
	at com.sun.el.ValueExpressionImpl.getType(ValueExpressionImpl.java:201)
	at com.sun.faces.facelets.el.TagValueExpression.getType(TagValueExpression.java:98)
	... 44 more


 Comments   
Comment by jjsnyder83 [ 15/May/13 10:53 AM ]

Please attach an application (ear/war) with source code so that we can try to reproduce the problem.

Comment by jjsnyder83 [ 22/May/13 01:32 PM ]

Please provide an application with source code that illustrates the problem.





[GLASSFISH-20516] Uptake Weld 2.0.0.SP1 Created: 13/May/13  Updated: 14/May/13  Resolved: 14/May/13

Status: Resolved
Project: glassfish
Component/s: cdi
Affects Version/s: None
Fix Version/s: 4.0

Type: Bug Priority: Major
Reporter: jjsnyder83 Assignee: jjsnyder83
Resolution: Fixed Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags: 4_0-approved
Participants: jjsnyder83 and Tom Mueller

 Comments   
Comment by jjsnyder83 [ 13/May/13 05:16 PM ]

What is the impact on the customer of the bug?
CDI causing severe memory leak. See https://java.net/jira/browse/GLASSFISH-20474

How likely is it that a customer will see the bug and how serious is the bug?
Is it a regression? Does it meet other bug fix criteria (security, performance, etc.)?
What CTS failures are caused by this bug?
very

What is the cost/risk of fixing the bug?
low

How risky is the fix? How much work is the fix? Is the fix complicated?
low...SP1 only addresses this leak.

Is there an impact on documentation or message strings?
No

Which tests should QA (re)run to verify the fix did not destabilize GlassFish?
See https://java.net/jira/browse/GLASSFISH-20474

Which is the targeted build of 4.0 for this fix?
4.0

If this an integration of a new version of a component from another project,
what are the changes that are being brought in? This might be list of
Jira issues from that project or a list of revision messages.
N/A

Comment by Tom Mueller [ 13/May/13 05:52 PM ]

Approved for 4.0.

Comment by jjsnyder83 [ 14/May/13 01:50 PM ]

Fixed by uptake of Weld 2.0.0.SP1
Committed on trunk: revision 61974.
Committed on 4.0: revision 61975.





[GLASSFISH-20497] [fishcat] Warning appear about JMS but I'm not using any JMS in my sample Created: 09/May/13  Updated: 09/May/13  Resolved: 09/May/13

Status: Resolved
Project: glassfish
Component/s: cdi
Affects Version/s: 4.0_b88_RC4
Fix Version/s: None

Type: Bug Priority: Major
Reporter: survivant Assignee: jjsnyder83
Resolution: Duplicate Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Product Version: NetBeans IDE Dev (Build 201305052300)
Java: 1.7.0_13; Java HotSpot(TM) Client VM 23.7-b01
Runtime: Java(TM) SE Runtime Environment 1.7.0_13-b20
System: Windows XP version 5.1 running on x86; Cp1252; fr_CA (nb)
User directory: C:\Documents and Settings\sdionne1\Application Data\NetBeans\dev
Cache directory: C:\Documents and Settings\sdionne1\Local Settings\Application Data\NetBeans\Cache\dev


Tags: fishcat inject
Participants: jjsnyder83 and survivant

 Description   

I created a basic jax-rs hello sample and added @inject into resource.

I got this warning in GF 4 logs (WELD-001473)

INFO: EJB5181:Portable JNDI names for EJB EJBManagedBean: [java:global/WebApplication1/EJBManagedBean!com.demo.EJBManagedBean, java:global/WebApplication1/EJBManagedBean]
WARNING: WELD-001473 javax.enterprise.inject.spi.Bean implementation org.glassfish.jms.injection.JMSCDIExtension$LocalBean@1c35405 declared a normal scope but does not implement javax.enterprise.inject.spi.PassivationCapable. It won't be possible to inject this bean into a bean with passivating scope (@SessionScoped, @ConversationScoped). This can be fixed by assigning the Bean implementation a unique id by implementing the PassivationCapable interface.
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: Initialisation de Mojarra 2.2.0 (-SNAPSHOT 20130426-2159 https://svn.java.net/svn/mojarra~svn/tags/2.2.0-m15@11912) pour le contexte «/WebApplication1»
INFO: Loading application [WebApplication1] at [/WebApplication1]
INFO: WebApplication1 was successfully deployed in 1 250 milliseconds.
INFO: Initiating Jersey application, version Jersey: 2.0-rc2 2013-04-23 12:04:25...

I'll provide sample in zip file if requested.

here the source files :

package com.demo;

import javax.annotation.PostConstruct;
import javax.inject.Inject;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;

/**
*

  • @author sdionne1
    */
    @Path("hello")
    public class HelloResource {

@Inject
CDIManagedBean bean;

@Inject
EJBManagedBean ejb;

@PostConstruct
public void init(){ System.out.println(HelloResource.class + " post construct"); }

@GET
@Produces("text/plain")
public String getHello(){ return "hello : " + bean.getOutput() + " : " + ejb.getOutput(); }
}

package org.netbeans.rest.application.config;

import java.util.Set;
import javax.ws.rs.ApplicationPath;
import javax.ws.rs.core.Application;

/**
*

  • @author sdionne1
    */
    @ApplicationPath("resources")
    public class ApplicationConfig extends Application {

@Override
public Set<Class<?>> getClasses() {
Set<Class<?>> resources = new java.util.HashSet<Class<?>>();
// following code can be used to customize Jersey 1.x JSON provider:
try { Class jacksonProvider = Class.forName("org.codehaus.jackson.jaxrs.JacksonJsonProvider"); resources.add(jacksonProvider); } catch (ClassNotFoundException ex) { java.util.logging.Logger.getLogger(getClass().getName()).log(java.util.logging.Level.SEVERE, null, ex); }
addRestResourceClasses(resources);
return resources;
}

/**

  • Do not modify addRestResourceClasses() method.
  • It is automatically re-generated by NetBeans REST support to populate
  • given list with all resources defined in the project.
    */
    private void addRestResourceClasses(Set<Class<?>> resources) { resources.add(com.demo.HelloResource.class); }

}

package com.demo;

import javax.annotation.PostConstruct;

/**
*

  • @author sdionne1
    */
    public class CDIManagedBean {

@PostConstruct
public void init(){ System.out.println(CDIManagedBean.class + " post construct"); }

public String getOutput(){ return "Output from " + CDIManagedBean.class + " at : " + System.nanoTime(); }
}

package com.demo;

import javax.annotation.PostConstruct;
import javax.ejb.Stateless;

/**
*

  • @author sdionne1
    */
    @Stateless
    public class EJBManagedBean {

@PostConstruct
public void init(){ System.out.println(EJBManagedBean.class + " post construct"); }

public String getOutput(){ return "Output from " + EJBManagedBean.class + " at : " + System.nanoTime(); }
}



 Comments   
Comment by jjsnyder83 [ 09/May/13 06:46 PM ]

JMS team is aware of it and are using https://java.net/jira/browse/GLASSFISH-20309 to track it.





[GLASSFISH-20492] [fishcat] Glassfish latest (1 may) : JSF and @Inject doesn't print output Created: 08/May/13  Updated: 08/May/13  Resolved: 08/May/13

Status: Resolved
Project: glassfish
Component/s: cdi
Affects Version/s: 4.0_b87_RC3
Fix Version/s: None

Type: Bug Priority: Major
Reporter: survivant Assignee: jjsnyder83
Resolution: Works as designed Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Product Version: NetBeans IDE Dev (Build 201305052300)
Java: 1.7.0_13; Java HotSpot(TM) Client VM 23.7-b01
Runtime: Java(TM) SE Runtime Environment 1.7.0_13-b20
System: Windows XP version 5.1 running on x86; Cp1252; fr_CA (nb)
User directory: C:\Documents and Settings\sdionne1\Application Data\NetBeans\dev
Cache directory: C:\Documents and Settings\sdionne1\Local Settings\Application Data\NetBeans\Cache\dev


Tags: fishcat inject cdi ejb jsf
Participants: jjsnyder83 and survivant

 Description   

I use Netbeans to generate a simple sample.

I use a servlet to test @Inject, a CDIManagedBean and a @Stateless EJB.

if I enter the URL :

http://localhost:8080/TestCDI/PerformanceGate

I got this output :

Output from class com.demo.CDIManagedBean at : 519201693741621
Output from class com.demo.EJBManagedBean at : 519201693763646

and I test the JSF page with :

http://localhost:8080/TestCDI/

and got :

from JSF :

I should get something like this

from JSF : Message from Output from class com.demo.CDIManagedBean at : 519347151889153 and Output from class com.demo.EJBManagedBean at : 519347151924821

My JSF is

<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html">
<h:head>
<title>Facelet Title</title>
</h:head>
<h:body>
from JSF : #{index.message}
</h:body>
</html>

package com.demo;

import javax.enterprise.inject.Model;
import javax.inject.Inject;

/**
*

  • @author sdionne1
    */
    @Model
    public class Index {

@Inject
CDIManagedBean bean;

@Inject
EJBManagedBean ejb;

public String getMessage(){ return "Message from " + bean.getOutput() + " and " + ejb.getOutput(); //return "test"; }
}


I can provide a 7z file if requested.

here the others files

package com.demo;

/**
*
* @author sdionne1
*/
public class CDIManagedBean {

public String getOutput(){ return "Output from " + CDIManagedBean.class + " at : " + System.nanoTime(); }
}




package com.demo;

import javax.ejb.Stateless;

/**
*
* @author sdionne1
*/
@Stateless
public class EJBManagedBean {

public String getOutput(){ return "Output from " + EJBManagedBean.class + " at : " + System.nanoTime(); }
}


package com.demo;

import javax.enterprise.inject.Model;
import javax.inject.Inject;

/**
*
* @author sdionne1
*/
@Model
public class Index {

@Inject
CDIManagedBean bean;

@Inject
EJBManagedBean ejb;

public String getMessage(){ return "Message from " + bean.getOutput() + " and " + ejb.getOutput(); //return "test"; } }
}

package com.demo;

import java.io.IOException;
import java.io.PrintWriter;
import javax.inject.Inject;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
*

  • @author sdionne1
    */
    @WebServlet(name = "PerformanceGate", urlPatterns = {"/PerformanceGate"})
    public class PerformanceGate extends HttpServlet {

@Inject
CDIManagedBean bean;

@Inject
EJBManagedBean ejb;

/**

  • Processes requests for both HTTP
  • <code>GET</code> and
  • <code>POST</code> methods.
    *
  • @param request servlet request
  • @param response servlet response
  • @throws ServletException if a servlet-specific error occurs
  • @throws IOException if an I/O error occurs
    */
    protected void processRequest(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException
    Unknown macro: { response.setContentType("text/html;charset=UTF-8"); PrintWriter out = response.getWriter(); try { /* TODO output your page here. You may use following sample code. */ out.println("<!DOCTYPE html>"); out.println(bean.getOutput()); out.println("<br />"); out.println(ejb.getOutput()); } finally { out.close(); } }

// <editor-fold defaultstate="collapsed" desc="HttpServlet methods. Click on the + sign on the left to edit the code.">
/**

  • Handles the HTTP
  • <code>GET</code> method.
    *
  • @param request servlet request
  • @param response servlet response
  • @throws ServletException if a servlet-specific error occurs
  • @throws IOException if an I/O error occurs
    */
    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException { processRequest(request, response); }

    /**
    * Handles the HTTP
    * <code>POST</code> method.
    *
    * @param request servlet request
    * @param response servlet response
    * @throws ServletException if a servlet-specific error occurs
    * @throws IOException if an I/O error occurs
    */
    @Override
    protected void doPost(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException { processRequest(request, response); } }

/**

  • Returns a short description of the servlet.
    *
  • @return a String containing servlet description
    */
    @Override
    public String getServletInfo() { return "Short description"; }// </editor-fold>

}



 Comments   
Comment by jjsnyder83 [ 08/May/13 02:08 PM ]

I need an application with source code that I can deploy in order to help you. Please send it to me: j.j.snyder@oracle.com

Comment by jjsnyder83 [ 08/May/13 06:38 PM ]

It seems that it was a NetBeans issue in that the application that was deployed did not contain the correct artifacts.





[GLASSFISH-20484] Cannot Perform CDI Created: 08/May/13  Updated: 09/May/13  Resolved: 08/May/13

Status: Resolved
Project: glassfish
Component/s: cdi
Affects Version/s: 4.0_b83
Fix Version/s: None

Type: Bug Priority: Major
Reporter: agksmehx Assignee: jjsnyder83
Resolution: Works as designed Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Fedora 18 running as plugin under Eclipse Kepler M6


Tags:
Participants: agksmehx and jjsnyder83

 Description   

I am trying to run a particularly simple test case using the latest promoted build of Glassfish 4.0. I have tried placing META-INF/beans.xml in all possible permutations including its own jar in WEB-INF/lib

The best I get is the following errors with a layout+sources that are listed after it:

WARNING: Error while trying to load Bean Class WEB-INF.classes.com.example.cdibug.Test : java.lang.ClassNotFoundException: WEB-INF.classes.com.example.cdibug.Test
WARNING: Error while trying to load Bean Class WEB-INF.classes.com.example.cdibug.Foo : java.lang.ClassNotFoundException: WEB-INF.classes.com.example.cdibug.Foo
WARNING: Error while trying to load Bean Class WEB-INF.classes.com.example.cdibug.App : java.lang.ClassNotFoundException: WEB-INF.classes.com.example.cdibug.App
INFO: Registering the Jersey servlet application, named com.example.cdibug.App, at the servlet mapping /rest/*, with the Application class of the same name.
INFO: Loading application [cdibug] at [/cdibug]
INFO: cdibug was successfully deployed in 106 milliseconds.

Layout:

$ jar tvf cdibug.war
0 Tue May 07 23:19:48 HST 2013 META-INF/
68 Tue May 07 23:19:48 HST 2013 META-INF/MANIFEST.MF
0 Tue May 07 23:14:20 HST 2013 META-INF/beans.xml
0 Tue May 07 23:19:32 HST 2013 WEB-INF/
0 Tue May 07 23:18:58 HST 2013 WEB-INF/classes/
0 Tue May 07 22:51:54 HST 2013 WEB-INF/classes/com/
0 Tue May 07 22:51:54 HST 2013 WEB-INF/classes/com/example/
0 Tue May 07 23:09:34 HST 2013 WEB-INF/classes/com/example/cdibug/
174 Tue May 07 22:54:28 HST 2013 WEB-INF/classes/com/example/cdibug/Test.java
171 Tue May 07 22:54:04 HST 2013 WEB-INF/classes/com/example/cdibug/App.java
309 Tue May 07 22:56:30 HST 2013 WEB-INF/classes/com/example/cdibug/Foo.java
398 Tue May 07 23:06:00 HST 2013 WEB-INF/classes/com/example/cdibug/Test.class
304 Tue May 07 23:06:00 HST 2013 WEB-INF/classes/com/example/cdibug/App.class
634 Tue May 07 23:06:00 HST 2013 WEB-INF/classes/com/example/cdibug/Foo.class
$

Source of `beans.xml`:

$ cat META-INF/beans.xml # EMPTY 0 bytes

Source of `App.java`:

$ cat WEB-INF/classes/com/example/cdibug/App.java
package com.example.cdibug;

import javax.ws.rs.ApplicationPath;
import javax.ws.rs.core.Application;

@ApplicationPath("/rest")
public class App extends Application {
}

Source of `Test.java`:

$ cat WEB-INF/classes/com/example/cdibug/Test.java
package com.example.cdibug;

import javax.ws.rs.GET;
import javax.ws.rs.Path;

@Path("/test")
public class Test {
@GET
public String greet () { return "hello"; }
}

Source of `Foo.java`:

$ cat WEB-INF/classes/com/example/cdibug/Foo.java
package com.example.cdibug;

import java.util.logging.Logger;

import javax.enterprise.context.ApplicationScoped;

@ApplicationScoped
public class Foo {
public Foo () { System.out.println("stdout: Foo()"); System.err.println("stderr: Foo()"); Logger.getGlobal().info("global_log: Foo()"); }
}



 Comments   
Comment by agksmehx [ 08/May/13 09:38 AM ]

Also posted on Stackoverflow (check for answers + better formatting): http://stackoverflow.com/questions/16437146/cannot-perform-cdi-in-glassfish-4-0

Comment by jjsnyder83 [ 08/May/13 10:19 AM ]

beans.xml can reside in either WEB-INF or WEB-INF/classes/META-INF. Most people place it in WEB-INF.

If you're still having trouble with the application please reopen this issue and send the application (with source) to me: j.j.snyder@oracle.com

Comment by agksmehx [ 08/May/13 10:09 PM ]

following email sent with attachment

I tried putting beans.xml in WEB-INF and also in WEB-INF/classes/META-INF. I slightly modified the test case to be sure there was a problem.

The attached cdibug.war contains both source and classes. The following command out is for your convenience.

$ jar cvf ../cdibug.war .
added manifest
adding: WEB-INF/(in = 0) (out= 0)(stored 0%)
adding: WEB-INF/beans.xml(in = 255) (out= 154)(deflated 39%)
adding: WEB-INF/classes/(in = 0) (out= 0)(stored 0%)
adding: WEB-INF/classes/com/(in = 0) (out= 0)(stored 0%)
adding: WEB-INF/classes/com/example/(in = 0) (out= 0)(stored 0%)
adding: WEB-INF/classes/com/example/cdibug/(in = 0) (out= 0)(stored 0%)
adding: WEB-INF/classes/com/example/cdibug/Test.java(in = 232) (out= 156)(deflated 32%)
adding: WEB-INF/classes/com/example/cdibug/Foo.java(in = 309) (out= 187)(deflated 39%)
adding: WEB-INF/classes/com/example/cdibug/App.java(in = 171) (out= 118)(deflated 30%)
adding: WEB-INF/classes/com/example/cdibug/Test.class(in = 475) (out= 321)(deflated 32%)
adding: WEB-INF/classes/com/example/cdibug/App.class(in = 304) (out= 235)(deflated 22%)
adding: WEB-INF/classes/com/example/cdibug/Foo.class(in = 634) (out= 439)(deflated 30%)

$ cat WEB-INF/classes/META-INF/beans.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
</beans>

$ cat WEB-INF/classes/com/example/cdibug/Foo.java
package com.example.cdibug;

import java.util.logging.Logger;

import javax.enterprise.context.ApplicationScoped;

@ApplicationScoped
public class Foo {
public Foo () { System.out.println("stdout: Foo()"); System.err.println("stderr: Foo()"); Logger.getGlobal().info("global_log: Foo()"); }
}

$ cat WEB-INF/classes/com/example/cdibug/App.java
package com.example.cdibug;

import javax.ws.rs.ApplicationPath;
import javax.ws.rs.core.Application;

@ApplicationPath("/rest")
public class App extends Application {
}

$ cat WEB-INF/classes/com/example/cdibug/Test.java
package com.example.cdibug;

import javax.inject.Inject;

import javax.ws.rs.GET;
import javax.ws.rs.Path;

@Path("/test")
public class Test {
@Inject
public Foo foo;

@GET
public String greet () { return "hello"; }
}

I upload the war to glassfish via management console with all defaults. The glassfish log contains:

INFO: Registering the Jersey servlet application, named com.example.cdibug.App, at the servlet mapping /rest/*, with the Application class of the same name.
INFO: Loading application [cdibug] at [/cdibug]
INFO: cdibug was successfully deployed in 147 milliseconds.

Then I use a browser to access: http://localhost:8080/cdibug/rest/test

That causes an exception, seeming to indicate that the class scanning needed for introspection did not happen:

INFO: Initiating Jersey application, version Jersey: 2.0-m12-1 2013-02-15 10:05:31...
WARNING: StandardWrapperValve[com.example.cdibug.App]: Servlet.service() for servlet com.example.cdibug.App threw exception
org.glassfish.hk2.api.UnsatisfiedDependencyException: There was no object available for injection at Injectee(requiredType=Foo,parent=Test,qualifiers={}),position=-1,optional=false,self=false,unqualified=null,913957636)
at org.jvnet.hk2.internal.ThreeThirtyResolver.resolve(ThreeThirtyResolver.java:74)
at org.jvnet.hk2.internal.ClazzCreator.resolve(ClazzCreator.java:174)
at org.jvnet.hk2.internal.ClazzCreator.resolveAllDependencies(ClazzCreator.java:197)
at org.jvnet.hk2.internal.ClazzCreator.create(ClazzCreator.java:294)
at org.jvnet.hk2.internal.SystemDescriptor.create(SystemDescriptor.java:433)
at org.glassfish.jersey.process.internal.RequestScope.findOrCreate(RequestScope.java:157)
at org.jvnet.hk2.internal.Utilities.createService(Utilities.java:2099)
at org.jvnet.hk2.internal.ServiceLocatorImpl.getService(ServiceLocatorImpl.java:570)
at org.jvnet.hk2.internal.ServiceLocatorImpl.getService(ServiceLocatorImpl.java:557)
at org.glassfish.jersey.internal.inject.Injections.getOrCreate(Injections.java:193)
at org.glassfish.jersey.server.model.MethodHandler$ClassBasedMethodHandler.getInstance(MethodHandler.java:185)
at org.glassfish.jersey.server.internal.routing.PushMethodHandlerRouter.apply(PushMethodHandlerRouter.java:105)
at org.glassfish.jersey.server.internal.routing.RoutingStage._apply(RoutingStage.java:118)
at org.glassfish.jersey.server.internal.routing.RoutingStage._apply(RoutingStage.java:121)
at org.glassfish.jersey.server.internal.routing.RoutingStage._apply(RoutingStage.java:121)
at org.glassfish.jersey.server.internal.routing.RoutingStage._apply(RoutingStage.java:121)
at org.glassfish.jersey.server.internal.routing.RoutingStage.apply(RoutingStage.java:102)
at org.glassfish.jersey.server.internal.routing.RoutingStage.apply(RoutingStage.java:62)
at org.glassfish.jersey.process.internal.Stages.process(Stages.java:197)
at org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:198)
at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:317)
at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:183)
at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:852)
at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:321)
at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:372)
at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:335)
at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:218)
at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1682)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:342)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:160)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:734)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:673)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:176)
at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:357)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:260)
at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:188)
at org.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:164)
at org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:175)
at org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:273)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:200)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:134)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:112)
at org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
at org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:820)
at org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:113)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:115)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:55)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:135)
at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:564)
at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
at java.lang.Thread.run(Thread.java:722)

Placing beans.xml in WEB-INF/classes/META-INF results in exact same situation as above.

Placing beans.xml in ./META-INF/beans.xml (outside WEB-INF), as reported in the bug, is the only one that shows any sign of life from CDI scanning, and results in the following anomalous output as well as the above exception.
WARNING: Error while trying to load Bean Class WEB-INF.classes.com.example.cdibug.Test : java.lang.ClassNotFoundException: WEB-INF.classes.com.example.cdibug.Test
WARNING: Error while trying to load Bean Class WEB-INF.classes.com.example.cdibug.Foo : java.lang.ClassNotFoundException: WEB-INF.classes.com.example.cdibug.Foo
WARNING: Error while trying to load Bean Class WEB-INF.classes.com.example.cdibug.App : java.lang.ClassNotFoundException: WEB-INF.classes.com.example.cdibug.App

Comment by agksmehx [ 09/May/13 06:15 AM ]

Update: please ignore; works fine in glassfish-4.0-b87 It was not working in the version bundled with Eclipse Kepler m06. Sorry for the bother.





[GLASSFISH-20483] Enable and disable implicit scanning per JAR. Created: 07/May/13  Updated: 12/Aug/13  Resolved: 12/Jun/13

Status: Closed
Project: glassfish
Component/s: cdi
Affects Version/s: None
Fix Version/s: 4.0.1

Type: Bug Priority: Major
Reporter: jjsnyder83 Assignee: phil.zampino
Resolution: Fixed Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags:
Participants: aaronjwhiteside, jjsnyder83 and phil.zampino

 Description   

beans.xml cannot be added to a third-party JAR. Disabling implicit CDI is one option but but it works at the application level.

This will not work when different third-party JARs make different assumptions about implicit beans. So it would be helpful if GlassFish (or Weld) offered a way to enable or disable implicit scanning per JAR.



 Comments   
Comment by jjsnyder83 [ 07/May/13 03:43 PM ]

According to 12.1 of CDI spec:
"For compatibility with Contexts and Dependency 1.0, products must contain an option to cause an archive to be ignored by the container when no beans.xml is present."

We are probably a little light in our implementation of this as we only allow entire apps to be enabled/disabled for implicit scanning.

Comment by aaronjwhiteside [ 28/May/13 02:56 PM ]

Related to GLASSFISH-20579. It would be good if this was part of the final 4.0.0 release. Perhaps something in glassfish-web.xml?

Comment by aaronjwhiteside [ 28/May/13 07:42 PM ]

http://docs.jboss.org/weld/reference/latest/en-US/html/configure.html

This doesn't work as far as I can tell.

Maybe fixing the WELD integration so that this works is the solution?

Comment by aaronjwhiteside [ 29/May/13 04:28 PM ]

I can add a beans.xml as per the CDI 1.1 spec, but that does not appear to work either.

CDI 1.1 Spec, Section 12.1
bean-discovery-mode="none" should disable an archives contents from being considered by CDI.

Comment by phil.zampino [ 10/Jun/13 01:52 PM ]

The cited beans.xml addition should work. If it is being applied correctly, and Glassfish is not honoring it, then that's a bug. Can you provide an application to reproduce this behavior?

Additionally, there is a new deployment property that will disable support for implicit bean archives at the application level. (asadmin deploy --property implicitCdiEnabled=false <archive file>)





[GLASSFISH-20476] [Fishcat] org.jboss.weld.exceptions.IllegalArgumentException: WELD-001408 Unsatisfied dependencies for type [CDIManagedBean] with qualifiers [@Default] at injection point [[BackedAnnotatedField] @Inject com.demo.PerformanceGate.bean] Created: 06/May/13  Updated: 08/May/13  Resolved: 08/May/13

Status: Resolved
Project: glassfish
Component/s: cdi
Affects Version/s: 4.0_b85
Fix Version/s: None

Type: Bug Priority: Major
Reporter: survivant Assignee: jjsnyder83
Resolution: Cannot Reproduce Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Product Version: NetBeans IDE Dev (Build 201305052300)
Java: 1.7.0_13; Java HotSpot(TM) Client VM 23.7-b01
Runtime: Java(TM) SE Runtime Environment 1.7.0_13-b20
System: Windows XP version 5.1 running on x86; Cp1252; fr_CA (nb)
User directory: C:\Documents and Settings\sdionne1\Application Data\NetBeans\dev
Cache directory: C:\Documents and Settings\sdionne1\Local Settings\Application Data\NetBeans\Cache\dev


Tags: fishcat cdi inject
Participants: jjsnyder83 and survivant

 Description   

I'm building this sample with NetBeans and when I do RUN in the servlet, I obtain this HTTP Error 500.

SOURCE

Java web Project (JavaEE7)

CDIManagedBean

package com.demo;

/**
*

  • @author sdionne1
    */
    public class CDIManagedBean {

public String getOutput(){ return "Output from " + CDIManagedBean.class + " at : " + System.nanoTime(); }
}

PerformanceGate.java

package com.demo;

import java.io.IOException;
import java.io.PrintWriter;
import javax.inject.Inject;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
*

  • @author sdionne1
    */
    @WebServlet(name = "PerformanceGate", urlPatterns = {"/PerformanceGate"})
    public class PerformanceGate extends HttpServlet {

@Inject
CDIManagedBean bean;

/**

  • Processes requests for both HTTP
  • <code>GET</code> and
  • <code>POST</code> methods.
    *
  • @param request servlet request
  • @param response servlet response
  • @throws ServletException if a servlet-specific error occurs
  • @throws IOException if an I/O error occurs
    */
    protected void processRequest(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException
    Unknown macro: { response.setContentType("text/html;charset=UTF-8"); PrintWriter out = response.getWriter(); try { /* TODO output your page here. You may use following sample code. */ out.println("<!DOCTYPE html>"); out.println(bean.getOutput()); } finally { out.close(); } }

// <editor-fold defaultstate="collapsed" desc="HttpServlet methods. Click on the + sign on the left to edit the code.">
/**

  • Handles the HTTP
  • <code>GET</code> method.
    *
  • @param request servlet request
  • @param response servlet response
  • @throws ServletException if a servlet-specific error occurs
  • @throws IOException if an I/O error occurs
    */
    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException { processRequest(request, response); }

    /**
    * Handles the HTTP
    * <code>POST</code> method.
    *
    * @param request servlet request
    * @param response servlet response
    * @throws ServletException if a servlet-specific error occurs
    * @throws IOException if an I/O error occurs
    */
    @Override
    protected void doPost(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException { processRequest(request, response); } }

/**

  • Returns a short description of the servlet.
    *
  • @return a String containing servlet description
    */
    @Override
    public String getServletInfo() { return "Short description"; }// </editor-fold>

}

Internet Explorer

HTTP Status 500 - Internal Server Error

--------------------------------------------------------------------------------

type Exception report

messageInternal Server Error

descriptionThe server encountered an internal error that prevented it from fulfilling this request.

exception

javax.servlet.ServletException: Error instantiating servlet class com.demo.PerformanceGate
root cause

com.sun.enterprise.container.common.spi.util.InjectionException: Error creating managed object for class: class com.demo.PerformanceGate
root cause

org.jboss.weld.exceptions.IllegalArgumentException: WELD-001408 Unsatisfied dependencies for type [CDIManagedBean] with qualifiers [@Default] at injection point [[BackedAnnotatedField] @Inject com.demo.PerformanceGate.bean]
root cause

org.jboss.weld.exceptions.DeploymentException: WELD-001408 Unsatisfied dependencies for type [CDIManagedBean] with qualifiers [@Default] at injection point [[BackedAnnotatedField] @Inject com.demo.PerformanceGate.bean]
note The full stack traces of the exception and its root causes are available in the GlassFish Server Open Source Edition 4.0 logs.

--------------------------------------------------------------------------------

Glassfish stacktrace

Launching GlassFish on Felix platform
mai 06, 2013 1:08:56 PM com.sun.enterprise.glassfish.bootstrap.osgi.BundleProvisioner createBundleProvisioner
INFO: Create bundle provisioner class = class com.sun.enterprise.glassfish.bootstrap.osgi.BundleProvisioner.
mai 06, 2013 1:08:56 PM com.sun.enterprise.glassfish.bootstrap.osgi.BundleProvisioner$DefaultCustomizer getLocations
WARNING: Skipping entry because it is not an absolute URI.
mai 06, 2013 1:08:56 PM com.sun.enterprise.glassfish.bootstrap.osgi.BundleProvisioner$DefaultCustomizer getLocations
WARNING: Skipping entry because it is not an absolute URI.
Registered com.sun.enterprise.glassfish.bootstrap.osgi.EmbeddedOSGiGlassFishRuntime@75b281 in service registry.
Registry Info:: Total repositories: 1, Total modules = 292
Attached repository: []
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.hk2.config-types [40]], State = [READY]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.resources.javamail-connector [127]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.osgi-platforms.osgi-cli-remote [218]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.common.container-common [60]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.web.sse [266]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.hk2.class-model [22]], State = [READY]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.persistence.cmp.internal-api [29]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.external.j-interop-repackaged [120]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.external.trilead-ssh2-repackaged [249]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.persistence.cmp.support-sqlstore [32]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.transaction.jts [191]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.batch.glassfish-batch-commands [90]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.metro.webservices-extra-jdk-packages [269]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.connectors.runtime [44]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.admingui.console-web-plugin [59]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.security.ee [237]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [javax.websocket-api [152]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.external.libpam4j-repackaged [195]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.eclipse.persistence.jpa [212]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.fighterfish.osgi-javaee-base [288]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.registration.registration-impl [230]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.admingui.console-cluster-plugin [45]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.security.ssl-impl [245]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.web.javax.servlet.jsp.jstl [150]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.jersey.ext.jersey-bean-validation [161]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.web.jspcaching-connector [187]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.resources.connector [231]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.javax.el [131]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [stax2-api [247]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.web.javax.servlet.jsp [148]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.web.gf-weld-connector [88]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.corba.glassfish-corba-orb [95]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.fighterfish.osgi-ejb-container [286]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.admingui.console-jts-plugin [56]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.jersey.core.jersey-common [163]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.hk2.locator [114]], State = [READY]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.external.dbschema-repackaged [63]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.persistence.jpa-container [183]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.jdbc.runtime [160]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.deployment.dol [70]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.apache.felix.fileinstall [279]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [javax.enterprise.concurrent-api [132]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.admin.monitoring-core [201]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [com.google.guava [107]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.admingui.console-corba-plugin [50]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.apache.felix.gogo.command [280]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [JSR352.API [129]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.hk2.osgi-adapter [217]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [javax.enterprise.deploy-api [134]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.core.glassfish-extra-jre-packages [97]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.admingui.console-ejb-plugin [52]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.jersey.containers.jersey-container-servlet-core [165]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.eclipse.persistence.oracle [216]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.batch.glassfish-batch-connector [91]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.connectors.work-management [276]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.jersey.core.jersey-client [162]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.appclient.server.appclient-connector [15]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.appclient.acc-config [5]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.jersey.media.jersey-media-sse [174]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.jersey.containers.glassfish.jersey-gf-cdi [167]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.common.glassfish-mbeanserver [99]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.eclipse.persistence.core [210]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [javax.interceptor-api [137]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.common.simple-glassfish-api [243]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [JSR352.RI.SPI [34]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.hk2.external.cglib [21]], State = [READY]]
Registered Module: [OSGiModuleImpl:: Bundle = [javax.management.j2ee-api [141]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.jms.gf-jms-injection [83]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.ejb.ejb-full-container [72]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.jersey.media.jersey-media-json-processing [171]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.admin.backup [19]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.common.annotation-framework [11]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.admingui.connector.gf-admingui-connector [78]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.apache.felix.bundlerepository [207]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.web.gui-plugin-common [263]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.core.logging [197]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.eclipse.persistence.moxy [215]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.cluster.gms-adapter [105]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.metro.webservices-api-osgi [3]], State = [READY]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.tyrus.websocket-core [257]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.eclipse.persistence.jpa.modelgen [214]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.orb.connector [204]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [jackson-core-asl [121]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.security.appclient.security [17]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.eclipse.persistence.jpa.jpql [213]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.admin.launcher [193]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.webservices.jsr109-impl [188]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.fighterfish.osgi-jpa [290]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.flashlight.flashlight-extra-jdk-packages [76]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [javax.ejb-api [130]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.web.core [260]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.webservices.connector [268]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.ha.shoal-cache-bootstrap [110]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.jersey.ext.jersey-mvc-jsp [176]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.persistence.cmp.support-ejb [31]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [woodstox-core-asl [275]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.security [239]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.admingui.console-jdbc-plugin [54]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.web.weld-integration-fragment [272]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.hk2.external.bean-validator [20]], State = [READY]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.cluster.admin [23]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.persistence.entitybean-container [75]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.security.webservices.security [271]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.web.cli [259]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.shoal.cache [240]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.appclient.server.appclient-server-core [16]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.core.kernel [192]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.admin.rest-service [234]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.jsonp-jaxrs [186]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.fighterfish.osgi-web-container [292]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.web.jstl-connector [189]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.fighterfish.osgi-cdi [284]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.connectors.inbound-runtime [42]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.external.management-api [198]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.admin.core [7]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [javax.security.jacc [145]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.tyrus.server [255]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.external.ant [12]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.grizzly.glassfish-grizzly-extra-all [98]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.hk2.external.javax.inject [136]], State = [READY]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.jms.core [181]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.security.jaspic.provider.framework [125]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [jackson-jaxrs [122]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.hk2.utils [116]], State = [READY]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.resources.javamail-runtime [128]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.web.naming [265]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [javax.ws.rs.javax.ws.rs-api [153]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [javax.jms-api [138]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.hk2.config [113]], State = [READY]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.corba.glassfish-corba-csiv2-idl [92]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.common.scattered-archive-api [235]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.pfl.pfl-dynamic [225]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.metro.webservices-osgi [270]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.deployment.javaee-core [68]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.hk2.osgi-resource-locator [4]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.persistence.cmp.enhancer [27]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.registration.registration-api [229]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.hk2.runlevel [115]], State = [READY]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.cluster.common [24]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [javax.servlet-api [146]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.persistence.cmp.generator-database [28]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.admingui.console-common-full-plugin [46]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.web.ha [264]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.common.stats77 [246]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.hk2.external.asm-all-repackaged [18]], State = [READY]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.external.ldapbp-repackaged [194]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.pfl.pfl-tf-tools [226]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.deployment.common [67]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.deployment.javaee-full [69]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.web.weld-integration [273]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.security.services [238]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.jersey.core.jersey-server [178]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [com.sun.pkg.client [228]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.external.antlr-repackaged [13]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.hk2.api [112]], State = [READY]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.common.util [36]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.admingui.console-ejb-lite-plugin [51]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.jboss.weld.osgi-bundle [274]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.jdbc.admin [158]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.flashlight.framework [77]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.tyrus.spi [256]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.persistence.common [221]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.common.amx-javaee [10]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.admingui.console-concurrent-plugin [49]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.apache.felix.scr [283]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.corba.glassfish-corba-internal-api [93]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.deployment.admin [64]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.admin.rest-client [233]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.deployment.autodeploy [65]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.webservices.metro-glue [199]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [javax.servlet.jsp.jstl-api [149]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.javax.json [139]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.cluster.ssh [25]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [JSR352.Runtime [35]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.fighterfish.osgi-jpa-extension [220]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.jersey.media.jersey-media-json-jettison [170]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.admingui.console-common [47]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.orb.iiop [206]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.connectors.gf-connectors-connector [80]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.jms.admin [180]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.jersey.media.jersey-media-multipart [173]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.core.javaee-kernel [126]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.admin.gf-restadmin-connector [86]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.security.inmemory.jacc.provider [118]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.hk2.hk2 [117]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.admingui.dataprovider [62]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.orb.enabler [205]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [javax.resource-api [143]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.fighterfish.osgi-http [287]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [javax.transaction-api [151]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [gmbal [104]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.apache.felix.gogo.runtime [281]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.web.jersey-mvc-connector [175]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.eclipse.persistence.dbws [211]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.resources.runtime [232]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.cluster.gms-bootstrap [106]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.shoal.gms-api [241]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.tyrus.container-grizzly [252]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.jersey.containers.glassfish.jersey-gf-ejb [168]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [javax.persistence [142]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.security.websecurity [267]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.pfl.pfl-tf [227]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.external.jmxremote_optional-repackaged [182]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [javax.security.auth.message [144]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.javax.faces [135]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.loadbalancer.gf-load-balancer-connector [85]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.jms.gf-jms-connector [82]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.pfl.pfl-basic-tools [223]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.admin.config-api [39]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.admin.cli [6]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.web.embed-api [261]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.common.amx-core [9]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.loadbalancer.load-balancer-admin [196]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [javax.xml.registry-api [154]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.common.glassfish-ee-api [96]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.registration.glassfish-registration [102]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.ha.shoal-cache-store [111]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.jvnet.mimepull [200]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.osgi-platforms.osgi-container [219]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.shoal.gms-impl [242]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.fighterfish.osgi-jdbc [289]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.persistence.cmp.model [30]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.jersey.containers.jersey-container-servlet [166]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.ha.ha-file-store [109]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.common.glassfish-naming [100]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.persistence.cmp.ejb-mapping [26]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.pfl.pfl-basic [224]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.fighterfish.osgi-ee-resources [285]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.external.schema2beans-repackaged [236]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.deployment.deployment-client [66]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [com.sun.mail.javax.mail [140]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.tyrus.container-servlet [253]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.hk2.core [61]], State = [READY]]
Registered Module: [OSGiModuleImpl:: Bundle = [com.sun.jsftemplating [185]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.apache.felix.eventadmin [278]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.javax.enterprise.concurrent [133]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.ejb.ejb-container [71]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.web.glue [262]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.admingui.console-updatecenter-plugin [58]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.persistence.glassfish-oracle-jdbc-driver-packages [101]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.concurrent.impl [38]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [GlassFish-Application-Common-Module [14]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.tyrus.core [254]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.jersey.media.jersey-media-json-jackson [169]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [jaxb-api [2]], State = [READY]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.jdbc.config [159]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.ejb.internal-api [73]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.webservices.soap-tcp [244]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.tyrus.container-glassfish-cdi [251]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.admingui.console-community-branding-plugin [48]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.persistence.cmp.utility [33]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.apache.felix.gogo.shell [282]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.ha.ha-api [108]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [javax.annotation-api [1]], State = [READY]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.connectors.admin [41]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.jersey.containers.jersey-container-grizzly2-http [164]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.jersey.ext.jersey-mvc [177]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.resourcebase.resources.nucleus-resources [203]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.core.glassfish [103]], State = [READY]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.grizzly.nucleus-grizzly-all [202]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.web.jsf-connector [184]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.appclient.gf-client-module [79]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.fighterfish.osgi-jta [291]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.apache.felix.configadmin [277]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.ejb.gf-ejb-connector [81]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.connectors.internal-api [43]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [jackson-mapper-asl [123]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.web.gf-web-connector [87]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [com.sun.xml.bind [157]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.tyrus.client [250]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.pfl.pfl-asm [222]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.transaction.jta [190]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.jersey.media.jersey-media-moxy [172]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [javax.xml.rpc-api [155]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.admin.util [8]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.eclipse.persistence.asm [209]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [jackson-xc [124]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.corba.glassfish-corba-omgapi [94]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.admingui.console-jca-plugin [53]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.eclipse.persistence.antlr [208]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.admingui.console-jms-plugin [55]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.transaction.internal-api [248]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.codehaus.jettison.jettison [179]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [com.sun.xml.bind.extra [156]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.concurrent.connector [37]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [javax.servlet.jsp-api [147]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.persistence.gf-jpa-connector [84]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.admingui.console-plugin-service [57]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.web.war-util [258]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.security.ejb.security [74]], State = [NEW]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.common.glassfish-api [89]], State = [RESOLVED]]
Registered Module: [OSGiModuleImpl:: Bundle = [org.glassfish.main.common.internal-api [119]], State = [RESOLVED]]
Found populator: com.sun.enterprise.v3.server.GFDomainXml
#!## LogManagerService.postConstruct : rootFolder=F:\github\glassfish4\glassfish
#!## LogManagerService.postConstruct : templateDir=F:\github\glassfish4\glassfish\lib\templates
#!## LogManagerService.postConstruct : src=F:\github\glassfish4\glassfish\lib\templates\logging.properties
#!## LogManagerService.postConstruct : dest=F:\github\glassfish4\glassfish\domains\domain1\config\logging.properties
INFO: Running GlassFish Version: GlassFish Server Open Source Edition 4.0 (build 85)
INFO: Server log file is using Formatter class: com.sun.enterprise.server.logging.ODLLogFormatter
INFO: SEC1115: Realm [admin-realm] of classtype [com.sun.enterprise.security.auth.realm.file.FileRealm] successfully created.
INFO: SEC1115: Realm [file] of classtype [com.sun.enterprise.security.auth.realm.file.FileRealm] successfully created.
INFO: SEC1115: Realm [certificate] of classtype [com.sun.enterprise.security.auth.realm.certificate.CertificateRealm] successfully created.
INFO: Registered org.glassfish.ha.store.adapter.cache.ShoalBackingStoreProxy for persistence-type = replicated in BackingStoreFactoryRegistry
INFO: HV000001: Hibernate Validator 5.0.0.Final
INFO: Authorization Service has successfully initialized.
INFO: Grizzly Framework 2.3.1 started in: 1 452ms - bound to [/0.0.0.0:8 080]
INFO: Grizzly Framework 2.3.1 started in: 0ms - bound to [/0.0.0.0:8 181]
INFO: Grizzly Framework 2.3.1 started in: 0ms - bound to [/0.0.0.0:4 848]
INFO: Initiating Jersey application, version Jersey: 2.0-rc1 2013-03-26 02:00:32...
INFO: Grizzly Framework 2.3.1 started in: 0ms - bound to [/0.0.0.0:3 700]
INFO: GlassFish Server Open Source Edition 4.0 (85) startup time : Felix (18 912ms), startup services(12 666ms), total(31 578ms)
INFO: Grizzly Framework 2.3.1 started in: 16ms - bound to [/0.0.0.0:8 080]
INFO: Grizzly Framework 2.3.1 started in: 16ms - bound to [/0.0.0.0:8 181]
INFO: Grizzly Framework 2.3.1 started in: 0ms - bound to [/0.0.0.0:7 676]
INFO: Registered com.sun.enterprise.glassfish.bootstrap.osgi.EmbeddedOSGiGlassFishImpl@9fb96a as OSGi service registration: org.apache.felix.framework.ServiceRegistrationImpl@78aa2.
INFO: this.makeModuleFor(org.glassfish.main.web.glue, null) returned OSGiModuleImpl:: Bundle = [org.glassfish.main.web.glue [262]], State = [READY]
INFO: this.makeModuleFor(org.glassfish.web.javax.servlet.jsp, null) returned OSGiModuleImpl:: Bundle = [org.glassfish.web.javax.servlet.jsp [148]], State = [READY]
INFO: visiting unvisited references
INFO: SEC1002: Security Manager is OFF.
INFO: SEC1010: Entering Security Startup Service
INFO: SEC1143: Loading policy provider com.sun.enterprise.security.provider.PolicyWrapper.
INFO: SEC1011: Security Service(s) Started Successfully
INFO: Created HTTP listener http-listener-1 on host/port 0.0.0.0:8080
INFO: Created HTTP listener http-listener-2 on host/port 0.0.0.0:8181
INFO: Created HTTP listener admin-listener on host/port 0.0.0.0:4848
INFO: Created virtual server server
INFO: Created virtual server __asadmin
INFO: Setting JAAS app name glassfish-web
INFO: Virtual server server loaded default web module
INFO: visiting unvisited references
INFO: visiting unvisited references
INFO: WELD-000900 2.0.0 (CR2)
WARNING: Class 'javax.ejb.PostActivate' not found, interception based on it is not enabled
WARNING: Class 'javax.ejb.PrePassivate' not found, interception based on it is not enabled
WARNING: WELD-001473 javax.enterprise.inject.spi.Bean implementation org.glassfish.jms.injection.JMSCDIExtension$LocalBean@feb97d declared a normal scope but does not implement javax.enterprise.inject.spi.PassivationCapable. It won't be possible to inject this bean into a bean with passivating scope (@SessionScoped, @ConversationScoped). This can be fixed by assigning the Bean implementation a unique id by implementing the PassivationCapable interface.
INFO: Loading application [TestProject] at [/TestProject]
INFO: TestProject was successfully deployed in 10 464 milliseconds.
INFO: WebModule[null] ServletContext.log():Marking servlet PerformanceGate as unavailable
WARNING: StandardWrapperValve[PerformanceGate]: Allocate exception for servlet PerformanceGate
org.jboss.weld.exceptions.DeploymentException: WELD-001408 Unsatisfied dependencies for type [CDIManagedBean] with qualifiers [@Default] at injection point [[BackedAnnotatedField] @Inject com.demo.PerformanceGate.bean]
at org.jboss.weld.bootstrap.Validator.validateInjectionPointForDeploymentProblems(Validator.java:403)
at org.jboss.weld.bootstrap.Validator.validateInjectionPoint(Validator.java:325)
at org.jboss.weld.bootstrap.Validator.validateProducer(Validator.java:431)
at org.jboss.weld.injection.producer.InjectionTargetService.validateProducer(InjectionTargetService.java:35)
at org.jboss.weld.manager.InjectionTargetFactoryImpl.createInjectionTarget(InjectionTargetFactoryImpl.java:66)
at org.jboss.weld.manager.BeanManagerImpl.createInjectionTarget(BeanManagerImpl.java:1039)
at org.glassfish.weld.services.JCDIServiceImpl.createManagedObject(JCDIServiceImpl.java:312)
at org.glassfish.weld.services.JCDIServiceImpl.createManagedObject(JCDIServiceImpl.java:264)
at com.sun.enterprise.container.common.impl.managedbean.ManagedBeanManagerImpl.createManagedBean(ManagedBeanManagerImpl.java:485)
at com.sun.enterprise.container.common.impl.managedbean.ManagedBeanManagerImpl.createManagedBean(ManagedBeanManagerImpl.java:439)
at com.sun.enterprise.container.common.impl.util.InjectionManagerImpl.createManagedObject(InjectionManagerImpl.java:313)
at com.sun.enterprise.web.WebContainer.createServletInstance(WebContainer.java:983)
at com.sun.enterprise.web.WebModule.createServletInstance(WebModule.java:2130)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1404)
at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:1211)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:237)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:160)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:734)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:673)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:174)
at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:357)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:260)
at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:188)
at org.glassfish.grizzly.http.server.HttpHandler.runService(HttpHandler.java:191)
at org.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:168)
at org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:189)
at org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:288)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:206)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:136)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:114)
at org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
at org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:838)
at org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:113)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:115)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:55)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:135)
at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:564)
at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
at java.lang.Thread.run(Thread.java:722)

INFO: Domain Pinged: dev.glassfish.org



 Comments   
Comment by jjsnyder83 [ 07/May/13 06:02 PM ]

Please send me the application and a zip of the source code so I can take a look. j.j.snyder@oracle.com

Comment by survivant [ 08/May/13 12:05 PM ]

the source code, is already provided in the bug description. Check CDIManagedBean.java and PerformanceGate.java

Comment by jjsnyder83 [ 08/May/13 01:18 PM ]

I cannot reproduce the error with the information provided. Please reopen the issue and send me the application along with source code if you continue to see the problem.





[GLASSFISH-20474] PSR:PERF Major memory leak in EJB app when implicit CDI is enabled Created: 06/May/13  Updated: 14/May/13  Resolved: 14/May/13

Status: Resolved
Project: glassfish
Component/s: cdi
Affects Version/s: 4.0_b87_RC3
Fix Version/s: 4.0

Type: Bug Priority: Critical
Reporter: amitagarwal Assignee: jjsnyder83
Resolution: Fixed Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags: 4_0-approved PSRBUG VIKKUMAR
Participants: amitagarwal, jjsnyder83, marina vatkina, Scott Oaks and Tom Mueller

 Description   

We have a micro benchmark that creates, invokes and deletes local session beans. In latest build 87 (as well as on latest nightly) we noticed old gen quickly gets filled up resulting into continuous Full GCs. This degrades throughput by almost 100%. Class histogram shows that object[] and jboss related objects are quite high in count,

num #instances #bytes class name
----------------------------------------------
1: 6948972 426066232 [Ljava.lang.Object;
2: 6890964 275638560 org.jboss.weld.context.CreationalContextImpl
3: 6890799 220505568 org.jboss.weld.context.SerializableContextualFactory$PassivationCapableSerializableContextual
4: 6943875 166653000 java.util.ArrayList
5: 6891146 165387504 java.util.Collections$SynchronizedRandomAccessList
6: 6890799 165379176 org.jboss.weld.context.SerializableContextualInstanceImpl
7: 112215 16187000 <constMethodKlass>
8: 112215 15273944 <methodKlass>
9: 164287 14696232 [C
10: 13927 13510664 [I
11: 11519 12491400 <constantPoolKlass>
12: 11519 8483480 <instanceKlassKlass>
13: 9661 6845568 <constantPoolCacheKlass>
14: 54051 4324080 java.lang.reflect.Method



 Comments   
Comment by marina vatkina [ 06/May/13 05:54 PM ]

This might be a CDI issue. Can you try disabling CDI scanning to see if it makes any difference?

Comment by Scott Oaks [ 06/May/13 08:01 PM ]

Setting cdi-server.emable-implicit-cdi=false eliminates the memory leak.

The leak is ultimately held by the eventListeners of the WebModule – the WelListener holds an httpConvesationContext, which holds a creationalContext, which holds a CreatinalContextImpl, which holds a huge ArrayList of the SerializeableContextualInstanceImpl objects.

Comment by jjsnyder83 [ 06/May/13 09:12 PM ]

Can you send me the app please? j.j.snyder@oracle.com

Comment by jjsnyder83 [ 07/May/13 06:09 PM ]

This looks like a memory leak in Weld. I have sent the application along with relevant information to JBoss asking for their opinion.

Comment by jjsnyder83 [ 09/May/13 08:23 PM ]

The same leak appears to happen in JBoss application server too.
See https://issues.jboss.org/browse/WELD-1425

Comment by jjsnyder83 [ 13/May/13 05:16 PM ]

What is the impact on the customer of the bug?
CDI causing severe memory leak.

How likely is it that a customer will see the bug and how serious is the bug?
Is it a regression? Does it meet other bug fix criteria (security, performance, etc.)?
What CTS failures are caused by this bug?
very

What is the cost/risk of fixing the bug?
low

How risky is the fix? How much work is the fix? Is the fix complicated?
low...SP1 only addresses this leak.

Is there an impact on documentation or message strings?
No

Which tests should QA (re)run to verify the fix did not destabilize GlassFish?
The application in this jira.

Which is the targeted build of 4.0 for this fix?
4.0

If this an integration of a new version of a component from another project,
what are the changes that are being brought in? This might be list of
Jira issues from that project or a list of revision messages.
N/A

Comment by Tom Mueller [ 13/May/13 05:51 PM ]

Approved for 4.0.

Comment by jjsnyder83 [ 14/May/13 01:49 PM ]

Fixed by uptake of Weld 2.0.0.SP1
Committed on trunk: revision 61974.
Committed on 4.0: revision 61975.





[GLASSFISH-20450] Weld combination of API/implementation in single bundle slows down server startup Created: 01/May/13  Updated: 16/Apr/14  Resolved: 16/Apr/14

Status: Resolved
Project: glassfish
Component/s: cdi
Affects Version/s: 4.0_b86_RC2
Fix Version/s: 4.0.1

Type: Bug Priority: Major
Reporter: Tom Mueller Assignee: phil.zampino
Resolution: Duplicate Votes: 1
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags: devx_web
Participants: jjsnyder83, mtaube, phil.zampino, Sanjeeb Sahoo, TangYong, tlcksnyder and Tom Mueller

 Description   

Currently, the weld-osgi-bundle.jar file contains the javax.enterprise.* (context, inject, event, etc.) classes (the API consisting of 108 classes) and 2716 implementation classes (org.jboss.weld, etc.).

Experiments have shown that if this bundle is split into two bundles, e.g., weld-osgi-api.jar and weld-osgi-impl.jar, then a 3% improvement can be achieved in the devx_web performance benchmark. After server startup, the weld-osgi-impl.jar stays in the installed state. It is resolved during application deployment.

This issue is for making this split.



 Comments   
Comment by Tom Mueller [ 01/May/13 04:50 PM ]

Here is an analysis of how the bundle status changes given this change:

After a server start (with no application), the following modules are no longer resolved after the split (they are in the installed state):

Deployment Related JavaEE Full Profile Classes
JavaServer Pages(TM) Standard Tag Library API
Mojarra JSF Implementation 2.2.0
Weld connector for glassfish
Weld integration for glassfish
org.glassfish.main.web.weld-integration-fragment

The state of all bundles after the deploy of an application is the same (except there is the new added bundle which is resolved).

Comment by jjsnyder83 [ 01/May/13 05:37 PM ]

The packages to move into an weld-osgi-api.jar include:
javax.enterprise.*
javax.decorator

Comment by Tom Mueller [ 02/May/13 04:46 PM ]

It would be nice to get this into 4.0, if possible. Please evaluate.

Comment by tlcksnyder [ 02/May/13 09:00 PM ]

Defer to 4.0.1.

Comment by Sanjeeb Sahoo [ 03/May/13 12:54 AM ]

I think we have a bad dependency issue here. We should not separate the api from implementation bundle.

Comment by mtaube [ 06/May/13 05:56 PM ]

weld-integration-fragment attaches to the weld osgi-bundle, and imports from the weld-integration bundle. This seems to be what is causing the transitive resolution of ejb-container.

Comment by Sanjeeb Sahoo [ 07/May/13 03:18 AM ]

Was weld-osgi bundle getting resolved in 3.1.2 as well? Or is this bad dependency a regression in 4.0?

Comment by Tom Mueller [ 07/May/13 02:48 PM ]

Here are the states of the Weld related bundles after starting 3.1.2:

Weld OSGi Bundle | 3.1.2 | Resolved
Weld integration for glassfish | 3.1.2 | Active
org.glassfish.main.web.weld-integration-fragment | 3.1.2 | Resolved

The problem in 4.0 is not so much that these bundles are getting resolved, but that in 4.0, the resolution of weld-osgi-bundle.jar causes ejb-container to be resolved as well where it didn't in 3.1.2. See issue GLASSFISH-20409.

Comment by Sanjeeb Sahoo [ 07/May/13 03:44 PM ]

My point is we should not separate APIs from implementations. They are against our preferred packaging approach as Bill described in maven/osgi/javaee packaging document. The APIs should only be needed if the corresponding implementation is also needed. It seems to me that some bundles are incorrectly packaged leading these kind of issues.

Comment by TangYong [ 17/Nov/13 02:45 PM ]

Just now, we(I and Jeremy) have done a hard test for the issue as following:

We are doing GlassFish on-demand starting experiments and we have decreased modules into mini-modules for meeting GlassFish Domain normal Starting.

In these mini-modules, some modules as API are necessary and this is reasonable. However,weld-osgi-bundle.jar can not be removed. We know that some modules depend on CDI and only depend on CDI API rather than Impl. We wish that API from weld-osgi-bundle.jar can be separated in order that in on-demand starting env, we can only preserve API and remove impl. Thus, this will improve GF Starting performance.

So, from this point, I agree with separating APIs from implementations.

Comment by TangYong [ 19/Nov/13 02:29 AM ]

Pl. allowing me explain the issue in detailed:

javax.transaction-api.jar imports javax.enterprise.context package, so it depends on cdi api 1.1. On minimizing GlassFish domain starting, javax.transaction-api.jar is necessary.

Well, because cdi api 1.1 is wrapped into weld-osgi-bundle.jar, we must include weld-osgi-bundle.jar even though it also wraps
cdi 1.1 implementation while minimizing GlassFish domain starting. So, from this point, we should separate cdi api from implementations.

On the other hand, I looked into the newest wildfly-8.0.0.Beta1, on its modules splitting, about CDI, it has the following modules,

1) cdi-api-1.1.jar

Its aim is only for cdi api 1.1

2) weld-api-2.1.CR1.jar

Its aim is for weld api, this is related to implementation.

3) weld-core-impl-2.1.0.CR1.jar

Its aim is for weld implementation, this is related to implementation.

4) weld-spi-2.1.CR1.jar

Its aim is for weld spi implementation, this is related to implementation.

Based on the above analyse, I think that current weld-osgi-bundle.jar is not good for modulation principle.

Best Regards!
Tang

Comment by TangYong [ 06/Dec/13 02:37 AM ]

in current GF modules, there are two modules which all exports 'javax.inject'.

1) weld-osgi-bundle.jar
2) javax.inject.jar

seperating Weld API from implementation is a solution for the issue.

Comment by TangYong [ 10/Dec/13 01:38 PM ]

The issues related to this jira will be resolved by GLASSFISH-20922.

Pl. confirming and closing this jira.

Comment by jjsnyder83 [ 16/Apr/14 07:29 PM ]

Duplicate of https://java.net/jira/browse/GLASSFISH-20922





[GLASSFISH-20422] multiple extensions in same bda Created: 26/Apr/13  Updated: 17/Apr/14

Status: Open
Project: glassfish
Component/s: cdi
Affects Version/s: None
Fix Version/s: 4.0.1

Type: Bug Priority: Minor
Reporter: jjsnyder83 Assignee: phil.zampino
Resolution: Unresolved Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags: 4_0_1-review
Participants: jjsnyder83 and phil.zampino

 Description   

So in my debugging of the Producer Bean issue I noticed that in GF we have a jar that contains multiple extensions and no beans.xml. So I have the following questions:
1) Should there be 1 bda for each extension or can multiple extensions go into the same bda?
Multiple extensions can go into the same BDA as long as accessibility rules are fulfilled. Definitely no need to create separate bda per extension.
2) Should the extension class itself be placed into the bda as a bean class?
If they are packaged in the same archive then yes they should end up in the same BDA. However, if you create multiple BDAs and reflect accessibility rules within them in the BDA graph it should again not make a difference.

Also in DeploymentImpl.getBeanDeploymentArchive check the extension bdas too.






[GLASSFISH-20421] Uptake Weld 2.0.0.Final Created: 26/Apr/13  Updated: 26/Apr/13  Resolved: 26/Apr/13

Status: Resolved
Project: glassfish
Component/s: cdi
Affects Version/s: 4.0_b86_RC2
Fix Version/s: 4.0

Type: Bug Priority: Major
Reporter: jjsnyder83 Assignee: jjsnyder83
Resolution: Fixed Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags: 4_0-approved
Participants: jjsnyder83

 Description   

What is the impact on the customer of the bug?
2.0.0.Final version of Weld.

How likely is it that a customer will see the bug and how serious is the bug?
Is it a regression? Does it meet other bug fix criteria (security, performance, etc.)?
What CTS failures are caused by this bug?
N/A

What is the cost/risk of fixing the bug?
N/A

How risky is the fix? How much work is the fix? Is the fix complicated?
N/A

Is there an impact on documentation or message strings?
No

Which tests should QA (re)run to verify the fix did not destabilize GlassFish?
CDI TCK

Which is the targeted build of 4.0 for this fix?
4.0_b86_RC2

If this an integration of a new version of a component from another project,
what are the changes that are being brought in? This might be list of
Jira issues from that project or a list of revision messages.
N/A






[GLASSFISH-20414] automate jms resource creation for weld glassfish tck runner Created: 25/Apr/13  Updated: 26/Apr/13  Resolved: 26/Apr/13

Status: Resolved
Project: glassfish
Component/s: cdi
Affects Version/s: None
Fix Version/s: 4.1

Type: Bug Priority: Major
Reporter: jjsnyder83 Assignee: jjsnyder83
Resolution: Duplicate Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags:
Participants: jjsnyder83

 Description   

See
https://github.com/weld/weld-glassfish-tck-runner/blob/master/src/test/java/org/jboss/weld/tck/glassfish/GlassFishResourceManager.java#L36

Wouldn't it be better to support this directly in the Managed/Remote containers in the same way it's done for Embedded, by exposing a configuration option in ContainerConfiguration. Then any user can install a global resources.xml file during the lifetime of the test execution. Installed in start(), removed in stop() ?

glassfish embedded configuration:
https://github.com/arquillian/arquillian-container-glassfish/blob/master/glassfish-embedded-3.1/src/main/java/org/jboss/arquillian/container/glassfish/embedded_3_1/GlassFishConfiguration.java#L156

glassfish embedded impl:
https://github.com/arquillian/arquillian-container-glassfish/blob/master/glassfish-embedded-3.1/src/main/java/org/jboss/arquillian/container/glassfish/embedded_3_1/GlassFishContainer.java#L186

glassfish-resources.xml example: https://github.com/ahhughes/glassfish3x.resources.xml.example/blob/master/glassfish3x-resources-xml-example-ear/src/main/application/META-INF/glassfish-resources.xml



 Comments   
Comment by jjsnyder83 [ 26/Apr/13 08:13 PM ]

https://java.net/jira/browse/GLASSFISH-20413





[GLASSFISH-20413] automate jms resource creation for weld glassfish tck runner Created: 25/Apr/13  Updated: 03/Jun/13

Status: Open
Project: glassfish
Component/s: cdi
Affects Version/s: None
Fix Version/s: 4.1

Type: Bug Priority: Major
Reporter: jjsnyder83 Assignee: phil.zampino
Resolution: Unresolved Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags:
Participants: jjsnyder83 and phil.zampino

 Description   

See
https://github.com/weld/weld-glassfish-tck-runner/blob/master/src/test/java/org/jboss/weld/tck/glassfish/GlassFishResourceManager.java#L36

Wouldn't it be better to support this directly in the Managed/Remote containers in the same way it's done for Embedded, by exposing a configuration option in ContainerConfiguration. Then any user can install a global resources.xml file during the lifetime of the test execution. Installed in start(), removed in stop() ?

glassfish embedded configuration:
https://github.com/arquillian/arquillian-container-glassfish/blob/master/glassfish-embedded-3.1/src/main/java/org/jboss/arquillian/container/glassfish/embedded_3_1/GlassFishConfiguration.java#L156

glassfish embedded impl:
https://github.com/arquillian/arquillian-container-glassfish/blob/master/glassfish-embedded-3.1/src/main/java/org/jboss/arquillian/container/glassfish/embedded_3_1/GlassFishContainer.java#L186

glassfish-resources.xml example: https://github.com/ahhughes/glassfish3x.resources.xml.example/blob/master/glassfish3x-resources-xml-example-ear/src/main/application/META-INF/glassfish-resources.xml



 Comments   
Comment by jjsnyder83 [ 25/Apr/13 09:56 PM ]

The arquillian.xml property, in this case, allow for a , separated list of resource file references. Tho I'm pretty sure you could define two jms resources in one resource.xml file as well.





[GLASSFISH-20411] Add readme to https://github.com/weld/weld-glassfish-tck-runner Created: 25/Apr/13  Updated: 22/May/13  Resolved: 22/May/13

Status: Resolved
Project: glassfish
Component/s: cdi
Affects Version/s: None
Fix Version/s: 4.0.1

Type: Bug Priority: Major
Reporter: jjsnyder83 Assignee: jjsnyder83
Resolution: Fixed Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags:
Participants: jjsnyder83

 Description   

Add a readme to the weld glassfish tck runner describing the setup required to run the tck. It should include:

  • defining jms resource
  • setting 1 environment variable
  • including 1 application library


 Comments   
Comment by jjsnyder83 [ 25/Apr/13 09:27 PM ]

Must also set enable implicit cdi to tru

Add following under <configs> -><config name="server-config">
<cdi-service enable-implicit-cdi="true"></cdi-service>

Add following under <admin-service system-jmx-connector-name="system" type="das-and-server">

<das-config deploy-xml-validation="none"></das-config>

under the <java-config ...> element add these:
<jvm-options>-DcdiTckExcludeDummy=true</jvm-options>
<jvm-options>-ea:org.jboss.cdi.tck...</jvm-options>

Here's the asadmin commands
asadmin create-jms-resource --restype javax.jms.Queue --property Name=queue_test queue_test
asadmin create-jms-resource --restype javax.jms.Topic --property Name=topic_test topic_test





[GLASSFISH-20371] Can't listen to JMS Queue from a WebSocket Created: 22/Apr/13  Updated: 22/May/13  Resolved: 22/May/13

Status: Resolved
Project: glassfish
Component/s: cdi
Affects Version/s: 4.0_b83
Fix Version/s: future release

Type: Bug Priority: Critical
Reporter: Bruno Borges Assignee: jjsnyder83
Resolution: Duplicate Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags:
Participants: arjavdesai, Bruno Borges, dannycoward, David Zhao, jjsnyder83 and Nigel Deakin

 Description   

It should be possible to connect a WebSocket and a JMS queue using standards. The usecase is based on the idea where each websocket session will be a subscriber to a Topic. In this example specifically, code is based on a WebSocket session consuming a Queue.

It is possible to inject a JMSContext inside a WebSocket using @Inject at constructor [1], but whenever I try to inject a Queue/Topic, it does not get injected using @Resource [2].

Also tried to use JMS 1.1 code (creating a InitialContext, doing lookup on ConnectionFactory, etc), it dit not work.

Most of the time, I get this error [3].

MyWebSocket.java
@Named // with @Named or without, nothing from CDI works as it should
@ServerEndpoint("/path")
public class MyWebSocket implements MessageListener {
  // @Inject at field level does not work
  private JMSContext jmsContext;

  @Resource(mappedName = "jms/myQueue") // [2] jms queue/topic does not get injected
  private Queue queue;

  @Inject // [1] at constructor, it works
  public MyWebSocket(JMSContext jmsc) {
    this.jmsContext = jmsc;
    ... // code to create a MessageListener
   jmsContext.createConsumer(queue).setMessageListener(this);
  }

  public void onMessage(Message m) {
    webSocketSession.getAsyncRemote().sendText(m.getBody(String.class));
  }

}


 Comments   
Comment by David Zhao [ 23/Apr/13 02:19 AM ]

Regarding to the injection into WebSocket, I observed the following behavior. Forwarding to CDI team to take a look.

1. If JMSContext is injected as a field of class, it is not available in constructor(is that expected?). But it is available in @OnMessage method, which is correct. It seems that @OnMessage method of WebSocket doesn't have a vaild transaction or request scope, so the behavior of JMSContext injection will be undefined in JMS 2.0 spec.

2. If JMSContext is injected at constructor, then it is available inside constructor.

3. The queue injected by @Resource is null in both constructor and @OnMessage method.

How does CDI sped define the scope of injection for WebSocket?

Comment by Bruno Borges [ 23/Apr/13 03:35 AM ]

David, some answers and questions to your comment

1.1 It cannot be available at constructor when injection is at field level. That's fine, and expected.

1.2 What would be the transaction/request scope of JMSContext when it is injected into a HttpServlet?

a. Should WebSockets support @ApplicationScoped/@SessionScoped annotations?

2. Works as it should

3. Most problematic issue so far

Comment by Bruno Borges [ 23/Apr/13 03:37 AM ]

Issue https://java.net/jira/browse/GLASSFISH-20255 might be related to this.

Comment by David Zhao [ 23/Apr/13 09:07 AM ]

Bruno,

Please refer to the urls for the scopes of JMSContext injection.

https://java.net/projects/jms-spec/pages/JMSContextScopeProposalsv4p2
https://java.net/projects/jms-spec/pages/JMSContextScopeProposalsv4p3

I shall leave other CDI questions to CDI team.

Comment by jjsnyder83 [ 23/Apr/13 04:26 PM ]

IIRC only @ApplicationScoped and @Dependent is available for WebSocket. @SessionScoped and @RequestScoped injection is not available as http sessions and http requests aren't valid in the web socket world.

I'm not sure about @Resource injection...Can you do a jndi lookup successfully for the queue "jms/myQueue" from within the web socket?

Comment by Bruno Borges [ 23/Apr/13 04:49 PM ]

Traditional lookup of Queue works, but creating a valid consumer using the injected JMSContext does not.

GF throws a SEVERE message error saying that there is no valid EE environment.

Comment by arjavdesai [ 23/Apr/13 05:28 PM ]

Can you please provide us with a test app or netbeans project, if available?

Comment by jjsnyder83 [ 23/Apr/13 06:20 PM ]

The "...no valid EE environment" means that the GF cdi code couldn't access JNDI because the JNDI environment has not been set correctly for the thread on which the code is running. Something similar to how the web container sets up the invocation manager must also be done by the WebSocket code on which the thread is running or the injection of resources will fail. See WebContainerListener.preInvoke and .postInvoke for an example.

Comment by dannycoward [ 23/Apr/13 11:01 PM ]

This we think relates to https://java.net/jira/browse/GLASSFISH-20375

I'll post more information while we test with the fix for that issue.

Comment by arjavdesai [ 25/Apr/13 07:54 PM ]

https://java.net/jira/browse/GLASSFISH-20375 is marked as resolved with 61589. Can you retry your scenario and update this JIRA?

Comment by Bruno Borges [ 25/Apr/13 10:03 PM ]

No, it did not work.

Got this warning, and worse: the WebSocket didn't even initialize.

WARNING: WELD-001473 javax.enterprise.inject.spi.Bean implementation org.glassfish.jms.injection.JMSCDIExtension$LocalBean@55118a0 
declared a normal scope but does not implement javax.enterprise.inject.spi.PassivationCapable. 
It won't be possible to inject this bean into a bean with passivating scope (@SessionScoped, @ConversationScoped). 
This can be fixed by assigning the Bean implementation a unique id by implementing the PassivationCapable interface.
Comment by jjsnyder83 [ 26/Apr/13 01:16 PM ]

You can ignore the warning for now. It does not affect this particular issue.

Comment by Bruno Borges [ 26/Apr/13 01:49 PM ]

The message wasn't appearing before, and now appears, and the WebSocket does not work when there's @Resource for queue + @Inject for JMSContext.

Comment by jjsnyder83 [ 26/Apr/13 01:54 PM ]

I have contacted JMS team about the warning. The problem that the warning is about would only happen during passivation which I don't believe is happening here.

Can you be more specific in your comment that "the WebSocket didn't even initialize?" Are you still seeing the "...no valid EE environment" message?

Comment by Bruno Borges [ 26/Apr/13 02:22 PM ]

That message does not appear, but websocket does not work either, without any error message

Comment by dannycoward [ 29/Apr/13 04:57 PM ]

Can we get the complete code for this failure Bruno ? The sample code above is neither complete nor a well-formed websocket. Thanks.

Comment by Bruno Borges [ 30/Apr/13 06:55 PM ]

Yeah, project published here: https://github.com/brunoborges/javaee7-jms-websocket-bug

Comment by Nigel Deakin [ 02/May/13 03:37 PM ]

I think your code is throwing exceptions which are not being logged. Please update all the callbacks in your code to add a catch block for RuntimeException, and write the exception and stack trace to the server log. This will make it easier to understand what is going wrong.

Comment by Bruno Borges [ 02/May/13 04:04 PM ]

Code changed to print any type of Exception.

Exception found:

SEVERE:   javax.jms.JMSRuntimeException: [C4306]: This method may not be called in a Java EE web or EJB container
	at com.sun.messaging.jmq.jmsclient.JMSConsumerImpl.setMessageListener(JMSConsumerImpl.java:261)
	at org.glassfish.javaee7wsjms.SampleWebSocket.onOpen(SampleWebSocket.java:45)
	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.glassfish.tyrus.core.AnnotatedEndpoint.callMethod(AnnotatedEndpoint.java:431)
	at org.glassfish.tyrus.core.AnnotatedEndpoint.onOpen(AnnotatedEndpoint.java:468)
	at org.glassfish.tyrus.core.EndpointWrapper.onConnect(EndpointWrapper.java:446)
	at org.glassfish.tyrus.server.TyrusEndpoint.onConnect(TyrusEndpoint.java:146)
	at org.glassfish.tyrus.websockets.DefaultWebSocket.onConnect(DefaultWebSocket.java:122)
	at org.glassfish.tyrus.servlet.TyrusHttpUpgradeHandler.init(TyrusHttpUpgradeHandler.java:98)
	at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:777)

Exception thrown at SampleWebSocket.java:45

Comment by Bruno Borges [ 02/May/13 04:20 PM ]

I understand the message as part of

12.2. Restrictions on the use of JMS API in the Java EE web or EJB
container

But then I wonder how can WebSockets proactively send data to clients, triggered by asynchronous events.

Is it possible for example, to plug a JMS MessageListener with a WebSocket using CDI? Let's say an MDB producing CDI Events and the WebSocket server endpoint consuming that?

Comment by Bruno Borges [ 02/May/13 05:01 PM ]

I've coded a version using CDI Events.

This version demonstrates a specific bug: Can't send messages to a Queue from a WebSocket

SEVERE:   org.jboss.weld.context.ContextNotActiveException: WELD-001303 No active contexts for scope type javax.enterprise.context.RequestScoped
	at org.jboss.weld.manager.BeanManagerImpl.getContext(BeanManagerImpl.java:667)
	at org.jboss.weld.bean.proxy.ContextBeanInstance.getInstance(ContextBeanInstance.java:74)
	at org.jboss.weld.bean.proxy.ProxyMethodHandler.invoke(ProxyMethodHandler.java:79)
	at org.glassfish.jms.injection.RequestedJMSContextManager$Proxy$_$$_WeldClientProxy.getType(Unknown Source)
	at org.glassfish.jms.injection.InjectableJMSContext.delegate(InjectableJMSContext.java:126)
	at org.glassfish.jms.injection.ForwardingJMSContext.createProducer(ForwardingJMSContext.java:61)
	at org.glassfish.javaee7wsjms.SampleWebSocket.onMessage(SampleWebSocket.java:62)

Branch published on GitHub using-cdi

Comment by jjsnyder83 [ 02/May/13 05:27 PM ]

The ContextNotActiveException you are seeing means that an @RequestScoped CDI-injected object was accessed outside of an active http request. More specifically the JMSContext's @RequestScoped delegate is being accessed in SampleWebSocket.onMessage() but there is no active http request. The CDI-injected JMSContext can only be accessed when there's an active http request or active global transaction. If it is accessed outside of these scopes (http request or global transaction) you will see this type of message.

Comment by Nigel Deakin [ 02/May/13 05:31 PM ]

That matches my own experiments. Your call to context.createConsumer was successful, which suggests that an injected JMSContext can be used in the @OnOpen callback. However you should be aware that as an injected JMSContext has @RequestScoped (when there is no transaction) any object created from it will become invalid when the request ends. So the JMSConsumer you create from it won't be usable after then.

However when I invoked your @OnMessage callback (modified to catch exceptions) I got a Weld error:

SEVERE:   org.jboss.weld.context.ContextNotActiveException: 
WELD-001303 No active contexts for scope type javax.enterprise.context.RequestScoped 

which suggests there is a restriction in using an injected JMSContext in the @OnMessage callback. That's an open issue.

However, as you saw, you also hit the restriction that you can't set a MessageListener in a Java EE environment (except the ACC). This restriction is not new and was in Java EE 6.

There is no restriction on consuming messages synchronously (using JMSConsumer.receive()), or in sending messages. But if you want to consume messages asynchronously you're expected to use a MDB.

I suggest moving discussion of your application design to email.

Comment by Bruno Borges [ 02/May/13 07:38 PM ]

I managed to make this work using CDI events. Still, some things had to be changed:

  1. It is impossible, as I understand from the spec, to connect WebSockets and JMS directly.
  2. To send an incoming message from a WebSocket client to a JMS queue, I used a @Stateless session bean
    There's still a bug in here, because it was not possible to @Inject the SB the normal way. Had to use constructor-injected parameter.
  3. SessionBean does use JMS 2 the way it is specified, @Inject JMSContext and @Resource Queue.
  4. @MessageDriven bean produces a CDI event with the JMS payload
  5. The WebSocket server endpoint @Observes for CDI event with the payload. Then payload is sent to all WebSocket sessions

The code is available here

Comment by Bruno Borges [ 02/May/13 07:53 PM ]

Although I'm happy that such integration is possible, I wonder if this could be simplified by JMS_SPEC-100

Comment by Bruno Borges [ 05/May/13 04:43 AM ]

Created two separate bugs that were found due to this issue:

Comment by jjsnyder83 [ 22/May/13 03:04 PM ]

Duplicate of https://java.net/jira/browse/JMS_SPEC-121





[GLASSFISH-20359] Weld InvocationContext Issue causing CTS failures in ejb30/bb suite Created: 19/Apr/13  Updated: 25/Apr/13  Resolved: 25/Apr/13

Status: Closed
Project: glassfish
Component/s: cdi
Affects Version/s: 4.0_b85
Fix Version/s: 4.0

Type: Bug Priority: Major
Reporter: tlcksnyder Assignee: phil.zampino
Resolution: Fixed Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags:
Participants: arjavdesai, phil.zampino and tlcksnyder

 Description   

Weld InvocationContext issue:
ejb30/bb/session/stateless/interceptor/listener/override/Client.java#getParametersEmptyTest
ejb30/bb/session/stateless/interceptor/listener/override/Client.java#getParametersTest
ejb30/bb/session/stateless/interceptor/listener/override/Client.java#setParametersTest
ejb30/bb/session/stateful/interceptor/listener/annotated/Client.java#getParametersEmptyTest
ejb30/bb/session/stateful/interceptor/listener/annotated/Client.java#getParametersTest
ejb30/bb/session/stateful/interceptor/listener/annotated/Client.java#setParametersTest
ejb30/bb/session/stateful/interceptor/listener/override/Client.java#getParametersEmptyTest
ejb30/bb/session/stateful/interceptor/listener/override/Client.java#getParametersTest
ejb30/bb/session/stateful/interceptor/listener/override/Client.java#setParametersTest
ejb30/bb/session/stateless/interceptor/listener/annotated/Client.java#getParametersEmptyTest
ejb30/bb/session/stateless/interceptor/listener/annotated/Client.java#getParametersTest
ejb30/bb/session/stateless/interceptor/listener/annotated/Client.java#setParametersTest
ejb30/bb/mdb/interceptor/listener/annotated/Client.java#getParametersTest
ejb30/bb/mdb/interceptor/listener/descriptor/Client.java#getParametersTest



 Comments   
Comment by arjavdesai [ 19/Apr/13 08:19 PM ]

There are two more failures due to this issue:

ejb30/bb/mdb/interceptor/listener/annotated/Client.java#getMethodTest
ejb30/bb/mdb/interceptor/listener/descriptor/Client.java#getMethodTest

Comment by phil.zampino [ 25/Apr/13 06:12 PM ]

Modified the way interceptors are created via Weld





[GLASSFISH-20357] Weld Duplicate Interceptors in ejb30_bb suite: see https://issues.jboss.org/browse/WELD-1410 Created: 19/Apr/13  Updated: 25/Apr/13  Resolved: 25/Apr/13

Status: Closed
Project: glassfish
Component/s: cdi
Affects Version/s: 4.0_b85
Fix Version/s: 4.0

Type: Bug Priority: Major
Reporter: tlcksnyder Assignee: phil.zampino
Resolution: Fixed Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags:
Participants: phil.zampino and tlcksnyder

 Description   

Duplicate Interceptors (NOT fixed by Weld 2.0.0CR2) See https://issues.jboss.org/browse/WELD-1410
com/sun/ts/tests/ejb30/bb/session/stateless/interceptor/listener/mixed/Client.java#interceptorOrderingOverride: Client_interceptorOrderingOverride
com/sun/ts/tests/ejb30/bb/session/stateless/interceptor/listener/mixed/Client.java#methodLevelClassLevelInterceptorMixedTest: Client_methodLevelClassLevelInterceptorMixedTest
com/sun/ts/tests/ejb30/bb/session/stateless/interceptor/listener/mixed/Client.java#methodLevelInterceptorMixedTest: Client_methodLevelInterceptorMixedTest
com/sun/ts/tests/ejb30/bb/session/stateless/interceptor/listener/mixed/Client.java#repeatedInterceptors: Client_repeatedInterceptors
7832: Exception during lifecycle processing
7833: org.glassfish.deployment.common.DeploymentException: CDI deployment failure:Duplicate interceptor class definition when binding com.sun.ts.tests.ejb30.common.interceptor.Interceptor1 on AROUND_INVOKE
7834: at org.glassfish.weld.WeldDeployer.event(WeldDeployer.java:223)
7835: at org.glassfish.kernel.event.EventsImpl.send(EventsImpl.java:131)
7836: at org.glassfish.internal.data.ApplicationInfo.load(ApplicationInfo.java:328)
7837: at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:493)
7838: at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:219)
7839: at org.glassfish.deployment.admin.DeployCommand.execute(DeployCommand.java:491)
7840: at com.sun.enterprise.v3.admin.CommandRunnerImpl$2.execute(CommandRunnerImpl.java:537)
7841: at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:546)
7842: at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:1423)
7843: at com.sun.enterprise.v3.admin.CommandRunnerImpl.access$1500(CommandRunnerImpl.java:108)
7844: at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1762)
7845: at org.glassfish.deployment.autodeploy.AutoOperation.run(AutoOperation.java:164)
7846: at org.glassfish.deployment.autodeploy.AutoDeployer.deploy(AutoDeployer.java:595)
7847: at org.glassfish.deployment.autodeploy.AutoDeployer.deployAll(AutoDeployer.java:482)
7848: at org.glassfish.deployment.autodeploy.AutoDeployer.run(AutoDeployer.java:410)
7849: at org.glassfish.deployment.autodeploy.AutoDeployer.run(AutoDeployer.java:401)
7850: at org.glassfish.deployment.autodeploy.AutoDeployService$1.run(AutoDeployService.java:233)
7851: at java.util.TimerThread.mainLoop(Timer.java:555)
7852: at java.util.TimerThread.run(Timer.java:505)
7853: Caused by: org.jboss.weld.interceptor.proxy.InterceptorException: Duplicate interceptor class definition when binding com.sun.ts.tests.ejb30.common.interceptor.Interceptor1 on AROUND_INVOKE
7854: at org.jboss.weld.interceptor.builder.InterceptionModelImpl.validateDuplicateInterceptors(InterceptionModelImpl.java:147)
7855: at org.jboss.weld.interceptor.builder.InterceptionModelImpl.appendInterceptorClassesToList(InterceptionModelImpl.java:139)
7856: at org.jboss.weld.interceptor.builder.InterceptionModelImpl.appendInterceptors(InterceptionModelImpl.java:120)
7857: at org.jboss.weld.interceptor.builder.InterceptionModelBuilder$MethodInterceptorDescriptor.with(InterceptionModelBuilder.java:114)
7858: at org.jboss.weld.injection.producer.InterceptionModelInitializer.initClassDeclaredEjbInterceptors(InterceptionModelInitializer.java:251)
7859: at org.jboss.weld.injection.producer.InterceptionModelInitializer.initEjbInterceptors(InterceptionModelInitializer.java:233)
7860: at org.jboss.weld.injection.producer.InterceptionModelInitializer.init(InterceptionModelInitializer.java:113)
7861: at org.jboss.weld.injection.producer.BeanInjectionTarget.initializeInterceptionModel(BeanInjectionTarget.java:91)
7862: at org.jboss.weld.injection.producer.ejb.SessionBeanInjectionTarget.initializeAfterBeanDiscovery(SessionBeanInjectionTarget.java:81)
7863: at org.jboss.weld.injection.producer.InjectionTargetInitializationContext.initialize(InjectionTargetInitializationContext.java:42)
7864: at org.jboss.weld.injection.producer.InjectionTargetService.initialize(InjectionTargetService.java:58)
7865: at org.jboss.weld.bootstrap.WeldBootstrap.deployBeans(WeldBootstrap.java:521)
7866: at org.glassfish.weld.WeldDeployer.event(WeldDeployer.java:211)
7867: ... 18 more



 Comments   
Comment by tlcksnyder [ 25/Apr/13 03:01 PM ]

Fixed with Weld 2.0.0.CR4 that went into 4.0_b86_RC2





[GLASSFISH-20351] Uptake Weld 2.0.0.CR4 Created: 19/Apr/13  Updated: 23/Apr/13  Resolved: 23/Apr/13

Status: Resolved
Project: glassfish
Component/s: cdi
Affects Version/s: 4.0_b85
Fix Version/s: 4.0_b86_RC2

Type: Bug Priority: Major
Reporter: jjsnyder83 Assignee: jjsnyder83
Resolution: Fixed Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags: 4_0-approved
Participants: jjsnyder83, tlcksnyder and Tom Mueller

 Description   

What is the impact on the customer of the bug?
Customers can't run without it

How likely is it that a customer will see the bug and how serious is the bug?
Is it a regression? Does it meet other bug fix criteria (security, performance, etc.)?
What CTS failures are caused by this bug?
It is the latest version of Weld so we must have it

What is the cost/risk of fixing the bug?
N/A

How risky is the fix? How much work is the fix? Is the fix complicated?
N/A

Is there an impact on documentation or message strings?
No

Which tests should QA (re)run to verify the fix did not destabilize GlassFish?
quicklook

Which is the targeted build of 4.0 for this fix?
4.0_b85

If this an integration of a new version of a component from another project,
what are the changes that are being brought in? This might be list of
Jira issues from that project or a list of revision messages.
N/A



 Comments   
Comment by Tom Mueller [ 19/Apr/13 02:37 PM ]

Approved for 4.0.

Comment by tlcksnyder [ 23/Apr/13 01:52 PM ]

skipping CR3 & uptaking CR4 instead.

Comment by jjsnyder83 [ 23/Apr/13 03:33 PM ]

Committed revision 61592.





[GLASSFISH-20341] Support for AroundConstruct Interceptors defined in ejb-jar.xml Created: 17/Apr/13  Updated: 17/Apr/14

Status: Open
Project: glassfish
Component/s: cdi
Affects Version/s: 4.0
Fix Version/s: 4.0.1

Type: Bug Priority: Major
Reporter: arjavdesai Assignee: phil.zampino
Resolution: Unresolved Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags: 4_0_1-review
Participants: arjavdesai, phil.zampino and tlcksnyder

 Description   

We are seeing a few EJB devtest failure

ejb32/interceptors/constructor-level/descriptor/
ejb32/interceptors/aroundconstruct/descriptor/
ejb32/interceptors/get_method_lc/descriptor/

where Interceptor for AroundConstruct on a bean are defined "only in" ejb-jar.xml and implicit CDI scanning has been enabled. The exception reported is:

[java] Caused by: java.lang.RuntimeException: [SfulEJB] InterceptorA.AroundConstruct was not called
[java] at com.acme.BaseBean.verify(BaseBean.java:17)
[java] at com.acme.SfulEJB.hello(SfulEJB.java:19)
[java] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[java] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
[java] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[java] at java.lang.reflect.Method.invoke(Method.java:601)
[java] at org.glassfish.ejb.security.application.EJBSecurityManager.runMethod(EJBSecurityManager.java:1081)
[java] at org.glassfish.ejb.security.application.EJBSecurityManager.invoke(EJBSecurityManager.java:1153)
[java] at com.sun.ejb.containers.BaseContainer.invokeBeanMethod(BaseContainer.java:4695)
[java] at com.sun.ejb.EjbInvocation.invokeBeanMethod(EjbInvocation.java:630)
[java] at com.sun.ejb.containers.interceptors.AroundInvokeChainImpl.invokeNext(InterceptorManager.java:822)
[java] at com.sun.ejb.EjbInvocation.proceed(EjbInvocation.java:582)
[java] at com.acme.InterceptorA.interceptCall(InterceptorA.java:51)
[java] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[java] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
[java] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[java] at java.lang.reflect.Method.invoke(Method.java:601)
[java] at com.sun.ejb.containers.interceptors.AroundInvokeInterceptor.intercept(InterceptorManager.java:883)
[java] at com.sun.ejb.containers.interceptors.AroundInvokeChainImpl.invokeNext(InterceptorManager.java:822)
[java] at com.sun.ejb.EjbInvocation.proceed(EjbInvocation.java:582)
[java] at com.acme.InterceptorB.interceptCall(InterceptorB.java:46)
[java] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[java] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
[java] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[java] at java.lang.reflect.Method.invoke(Method.java:601)
[java] at com.sun.ejb.containers.interceptors.AroundInvokeInterceptor.intercept(InterceptorManager.java:883)
[java] at com.sun.ejb.containers.interceptors.AroundInvokeChainImpl.invokeNext(InterceptorManager.java:822)
[java] at com.sun.ejb.EjbInvocation.proceed(EjbInvocation.java:582)
[java] at org.jboss.weld.ejb.AbstractEJBRequestScopeActivationInterceptor.aroundInvoke(AbstractEJBRequestScopeActivationInterceptor.java:46)
[java] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[java] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
[java] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[java] at java.lang.reflect.Method.invoke(Method.java:601)
[java] at com.sun.ejb.containers.interceptors.AroundInvokeInterceptor.intercept(InterceptorManager.java:883)
[java] at com.sun.ejb.containers.interceptors.AroundInvokeChainImpl.invokeNext(InterceptorManager.java:822)
[java] at com.sun.ejb.containers.interceptors.InterceptorManager.intercept(InterceptorManager.java:369)
[java] at com.sun.ejb.containers.BaseContainer.__intercept(BaseContainer.java:4667)
[java] at com.sun.ejb.containers.BaseContainer.intercept(BaseContainer.java:4655)
[java] at com.sun.ejb.containers.EJBLocalObjectInvocationHandler.invoke(EJBLocalObjectInvocationHandler.java:212)



 Comments   
Comment by arjavdesai [ 17/Apr/13 08:16 PM ]

Waiting on WELD to resolve https://issues.jboss.org/browse/WELD-1412. In the meantime, if AroundConstruct interceptors are specified in the ejb-jar.xml, that module can't use CDI. Hence the above mentioned tests are modified to disable CDI scanning. To reproduce the issue, please remove beans.xml from it.

Comment by tlcksnyder [ 23/Apr/13 02:09 PM ]

JBoss not planning to fix in Weld 2.0, therefore it is not making initial drop for EE7 / 4.0.

Comment by arjavdesai [ 24/Apr/13 06:56 PM ]

Following EJB CTS failure are caused by this issue as well:

com/sun/ts/tests/ejb30/lite/interceptor/singleton/lifecycle/descriptor/Client.java#aroundConstructInterceptorTest_from_ejbembed: Client_aroundConstructInterceptorTest_from_ejbembed
Failed with exception
java.lang.RuntimeException: nullExpecting result list: [InterceptorA, Interceptor9, Interceptor9, InterceptorBaseBase, InterceptorBase, InterceptorBaseBase, InterceptorBase, InterceptorBeanBase, AroundConstructInterceptorBean]null , but actual: [InterceptorBaseBase, InterceptorBase, InterceptorBaseBase, InterceptorBase, InterceptorBeanBase, AroundConstructInterceptorBean]
at com.sun.ts.tests.ejb30.common.helper.Helper.compareResultList(Helper.java:36)
at com.sun.ts.tests.ejb30.common.helper.Helper.compareResultList(Helper.java:42)
at com.sun.ts.tests.ejb30.lite.interceptor.common.lifecycle.ClientBase.interceptorTest(ClientBase.java:146)
at com.sun.ts.tests.ejb30.lite.interceptor.common.lifecycle.ClientBase.aroundConstructInterceptorTest(ClientBase.java:138)
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 com.sun.ts.tests.ejb30.common.lite.EJBLiteClientBase.runTestInVehicle(EJBLiteClientBase.java:221)
at com.sun.ts.tests.ejb30.common.lite.EJBLiteClientBase.getStatus(EJBLiteClientBase.java:114)
at com.sun.ts.tests.common.vehicle.ejbembed.EJBEmbedRunner.run(EJBEmbedRunner.java:41)
at com.sun.ts.lib.harness.ServiceEETest.run(ServiceEETest.java:102)
at com.sun.ts.lib.harness.EETest.getPropsReady(EETest.java:446)
at com.sun.ts.lib.harness.ServiceEETest.run(ServiceEETest.java:210)
at com.sun.ts.lib.harness.EETest.run(EETest.java:257)
at com.sun.ts.tests.common.vehicle.VehicleClient.main(VehicleClient.java:27)

com/sun/ts/tests/ejb30/lite/interceptor/singleton/lifecycle/descriptor/Client.java#aroundConstructInterceptorTest_from_ejblitejsf: Client_aroundConstructInterceptorTest_from_ejblitejsf
com/sun/ts/tests/ejb30/lite/interceptor/singleton/lifecycle/descriptor/Client.java#aroundConstructInterceptorTest_from_ejblitejsp: Client_aroundConstructInterceptorTest_from_ejblitejsp
com/sun/ts/tests/ejb30/lite/interceptor/singleton/lifecycle/descriptor/Client.java#aroundConstructInterceptorTest_from_ejbliteservlet: Client_aroundConstructInterceptorTest_from_ejbliteservlet
com/sun/ts/tests/ejb30/lite/interceptor/singleton/lifecycle/descriptor/Client.java#aroundConstructInterceptorTest_from_ejbliteservlet2: Client_aroundConstructInterceptorTest_from_ejbliteservlet2

java.lang.RuntimeException:
Expecting result list: [InterceptorA, Interceptor9, Interceptor9, InterceptorBaseBase, InterceptorBase, InterceptorBaseBase, InterceptorBase, InterceptorBeanBase, AroundConstructInterceptorBean]
, but actual: [InterceptorBaseBase, InterceptorBase, InterceptorBaseBase, InterceptorBase, InterceptorBeanBase, AroundConstructInterceptorBean]
at com.sun.ts.tests.ejb30.common.helper.Helper.compareResultList(Helper.java:36)
at com.sun.ts.tests.ejb30.common.helper.Helper.compareResultList(Helper.java:42)
at com.sun.ts.tests.ejb30.lite.interceptor.common.lifecycle.ClientBase.interceptorTest(ClientBase.java:146)
at com.sun.ts.tests.ejb30.lite.interceptor.common.lifecycle.ClientBase.aroundConstructInterceptorTest(ClientBase.java:138)
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 com.sun.ts.tests.ejb30.common.lite.EJBLiteClientBase.runTestInVehicle(EJBLiteClientBase.java:221)
at com.sun.ts.tests.ejb30.common.lite.EJBLiteClientBase.getStatus(EJBLiteClientBase.java:114)
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 javax.el.BeanELResolver.getValue(BeanELResolver.java:363)
at com.sun.faces.el.DemuxCompositeELResolver._getValue(DemuxCompositeELResolver.java:176)
at com.sun.faces.el.DemuxCompositeELResolver.getValue(DemuxCompositeELResolver.java:203)
at com.sun.el.parser.AstValue.getValue(AstValue.java:140)
at com.sun.el.parser.AstValue.getValue(AstValue.java:204)
at com.sun.el.parser.AstDeferredExpression.getValue(AstDeferredExpression.java:63)
at com.sun.el.parser.AstCompositeExpression.getValue(AstCompositeExpression.java:68)
at com.sun.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:226)
at org.jboss.weld.el.WeldValueExpression.getValue(WeldValueExpression.java:50)
at org.jboss.weld.el.WeldValueExpression.getValue(WeldValueExpression.java:50)
at javax.faces.component.ComponentStateHelper.eval(ComponentStateHelper.java:194)
at javax.faces.component.ComponentStateHelper.eval(ComponentStateHelper.java:182)
at javax.faces.component.UIOutput.getValue(UIOutput.java:174)

Comment by phil.zampino [ 20/Jun/13 07:28 PM ]

The associated Weld issue (https://issues.jboss.org/browse/WELD-1412) is targeted for 2.0.1, but is as of yet unresolved.





[GLASSFISH-20325] SFSB passivation fails with NotSerializableException: org.jboss.weld.context.ejb.EjbRequestContextImpl Created: 16/Apr/13  Updated: 23/Apr/13  Resolved: 23/Apr/13

Status: Resolved
Project: glassfish
Component/s: cdi
Affects Version/s: 4.0_b84_RC1
Fix Version/s: 4.0_b86_RC2

Type: Bug Priority: Blocker
Reporter: marina vatkina Assignee: jjsnyder83
Resolution: Fixed Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Dependency
blocks GLASSFISH-20318 SFSB passivation fails with CDI enabled Resolved
Tags:
Participants: jjsnyder83 and marina vatkina

 Description   

ejb31/full/passact fails with NotSerializableException: org.jboss.weld.context.ejb.EjbRequestContextImpl even if the rest of passivation is working.



 Comments   
Comment by marina vatkina [ 16/Apr/13 10:58 PM ]

Blocks passivation of a SFSB that injects other beans via @EJB and SessionContext via @Resource

Comment by jjsnyder83 [ 17/Apr/13 05:53 PM ]

JBoss has a fix for this. It will be available in CR3 which is due out this week.

Comment by jjsnyder83 [ 23/Apr/13 04:30 PM ]

Fixed with Weld 2.0.0.CR4 added to GF with revision 61592.





[GLASSFISH-20324] EJB devtest ejb30/clientview/core failing with Weld 2.0.0.CR2 Created: 16/Apr/13  Updated: 17/Apr/13  Resolved: 17/Apr/13

Status: Resolved
Project: glassfish
Component/s: cdi
Affects Version/s: None
Fix Version/s: 4.0_b85

Type: Bug Priority: Major
Reporter: jjsnyder83 Assignee: jjsnyder83
Resolution: Fixed Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags: 4_0-approved
Participants: jjsnyder83 and Tom Mueller

 Comments   
Comment by jjsnyder83 [ 16/Apr/13 08:40 PM ]

Dev test failure

Comment by jjsnyder83 [ 16/Apr/13 10:28 PM ]

What is the impact on the customer of the bug?

  • It's not released to the customer yet.

How likely is it that a customer will see the bug and how serious is the bug?
Is it a regression? Does it meet other bug fix criteria (security, performance, etc.)?
What CTS failures are caused by this bug?
It is a regression in the ejb dev tests

  • What is the cost/risk of fixing the bug?
  • low

How risky is the fix? How much work is the fix? Is the fix complicated?

  • low
  • Is there an impact on documentation or message strings?
    No
  • Which tests should QA (re)run to verify the fix did not destabilize GlassFish?
    EJB Dev tests
  • Which is the targeted build of 4.0 for this fix?
  • The next build.
  • If this an integration of a new version of a component from another project,
    what are the changes that are being brought in? This might be list of
    Jira issues from that project or a list of revision messages.
Comment by Tom Mueller [ 16/Apr/13 10:32 PM ]

Approved for 4.0





[GLASSFISH-20323] FindBugs fixes Created: 16/Apr/13  Updated: 12/Aug/13  Resolved: 12/Jun/13

Status: Closed
Project: glassfish
Component/s: cdi
Affects Version/s: 4.0_b83
Fix Version/s: 4.0.1

Type: Bug Priority: Major
Reporter: jjsnyder83 Assignee: phil.zampino
Resolution: Fixed Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags:
Participants: jjsnyder83 and phil.zampino

 Comments   
Comment by jjsnyder83 [ 18/Apr/13 06:52 PM ]
  • What is the impact on the customer of the bug?
    None

How likely is it that a customer will see the bug and how serious is the bug?
Is it a regression? Does it meet other bug fix criteria (security, performance, etc.)?
What CTS failures are caused by this bug?
findBugs fix

  • What is the cost/risk of fixing the bug?
    None

How risky is the fix? How much work is the fix? Is the fix complicated?
very minor

  • Is there an impact on documentation or message strings?
    No
  • Which tests should QA (re)run to verify the fix did not destabilize GlassFish?
    quicklook
  • Which is the targeted build of 4.0 for this fix?
    4.0_b85
  • If this an integration of a new version of a component from another project,
    what are the changes that are being brought in? This might be list of
    Jira issues from that project or a list of revision messages.
    N/A




[GLASSFISH-20312] com/sun/ts/tests/ejb30/bb/mdb/interceptor/listener/* cts tests are failing when running imq.xml target in CTS. Created: 15/Apr/13  Updated: 25/Apr/13  Resolved: 19/Apr/13

Status: Closed
Project: glassfish
Component/s: cdi
Affects Version/s: 4.0_b84_RC1
Fix Version/s: 4.0

Type: Bug Priority: Critical
Reporter: saradak Assignee: phil.zampino
Resolution: Fixed Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags:
Participants: arjavdesai, David Zhao, jjsnyder83, marina vatkina, phil.zampino, saradak and shreedhar_ganapathy

 Description   

com/sun/ts/tests/ejb30/bb/mdb/interceptor/listener/ CTS tests are failing when run imq.xml target in CTS.

steps to reproduce the problem:

1. Download CTS bundle & internal bundle.
2. Follow the CTS instructions to set the variables.
3. cd $TS_HOME/bin
4. Run ant -f imq.xml smoke (this target runs all jms related tests across the CTS bundle).

Tests results are not consistent.
com/sun/ts/tests/ejb30/bb/mdb/interceptor/listener/ tests are failing in the test run. Test prints "Fail: we didnt get the expected msg back!" error.



 Comments   
Comment by marina vatkina [ 15/Apr/13 06:51 PM ]

Let's start with the jms container. The MDB container just reacts to the invocations

Comment by David Zhao [ 16/Apr/13 07:42 AM ]

Marina,

This doesn't seem to be JMS issue. The message sending/receiving is fine.

When debugging the failed CTS cases, I observed something interesting with the interceptor. If putting breakpoint in @AroundInvoke InterceptorMDB1.intercept1(InvocationContext ctx), I can see InvocationContext ctx is org.jboss.weld.interceptor.proxy.InterceptorInvocationContext@76cad8,

ctx.parameters is [EjbInvocation componentId=mdb_interceptor_listener_annotated_mdb_interceptor_listener_annotated_ejb.jar_AroundInvokeBean_MDB_QUEUE89528542497144832,isLocal=false,isRemote=false,isBusinessInterface=false,isWebService=false,isMessageDriven=true,isHome=false,clientInterface=null,method=public abstract void javax.jms.MessageListener.onMessage(javax.jms.Message),ejb=com.sun.ts.tests.ejb30.bb.mdb.interceptor.listener.annotated.AroundInvokeBean@7dc937,exception=null,exceptionFromBeanMethod=null,invId=0,wasCancelCalled=false,yetToSubmitStatus=true]

ctx.method is protected void com.sun.ts.tests.ejb30.common.interceptor.AroundInvokeTestMDBImpl.getMethodTest(javax.interceptor.InvocationContext)

But ctx.method is expected to be onMessage and ctx.parameters is expected to javax.jms.Message because the interceptor is on MDB (Refer to http://docs.oracle.com/javaee/6/api/javax/interceptor/InvocationContext.html).

ctx.target and ctx.contextData might have the same problem too.

Let's firstly make the InvocationContext carrying correct values then check the CTS cases again.

Comment by saradak [ 16/Apr/13 02:40 PM ]

These failures can be easily produced by just running ejb30/bb/mdb tests.

cd $TS_HOME/bin/
$TS_HOME/tools/ant/bin/ant config.vi.javadb
cd $TS_HOME/src/com/sun/ts/tests/ejb30/bb/mdb

$TS_HOME/tools/ant/bin/ant runclient

Comment by saradak [ 16/Apr/13 05:26 PM ]

I have run the same tests with b84-04_10_2013 build & b85-04_15_2013 nightly build.
Few observations when running with both the builds.

b84-04_10_2013
----------------

1. Following tests failed when run the tests as it is:

FAILED........com/sun/ts/tests/ejb30/bb/mdb/dest/fullpath/Client.java#test1
FAILED........com/sun/ts/tests/ejb30/bb/mdb/dest/jarwar/Client.java#test1
FAILED........com/sun/ts/tests/ejb30/bb/mdb/dest/onejar/Client.java#test1
FAILED........com/sun/ts/tests/ejb30/bb/mdb/dest/optional/Client.java#test1
FAILED........com/sun/ts/tests/ejb30/bb/mdb/dest/optional2/Client.java#test1
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/listener/annotated/Client.java#getBeanTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/listener/annotated/Client.java#getContextDataTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/listener/annotated/Client.java#getMethodTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/listener/annotated/Client.java#getParametersTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/listener/annotated/Client.java#orderTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/listener/annotated/Client.java#sameInvocationContextTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/listener/annotated/Client.java#setParametersTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/listener/descriptor/Client.java#getBeanTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/listener/descriptor/Client.java#getContextDataTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/listener/descriptor/Client.java#getMethodTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/listener/descriptor/Client.java#getParametersTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/listener/descriptor/Client.java#orderTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/listener/descriptor/Client.java#sameInvocationContextTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/listener/descriptor/Client.java#setParametersTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/method/annotated/Client.java#getBeanTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/method/annotated/Client.java#getContextDataTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/method/annotated/Client.java#getMethodTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/method/annotated/Client.java#getParametersTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/method/annotated/Client.java#sameSecContextTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/method/annotated/Client.java#setParametersTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/method/descriptor/Client.java#getBeanTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/method/descriptor/Client.java#getContextDataTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/method/descriptor/Client.java#getMethodTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/method/descriptor/Client.java#getParametersTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/method/descriptor/Client.java#sameSecContextTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/method/descriptor/Client.java#setParametersTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/listenerintf/implementing/externalizable/Client.java#test1
FAILED........com/sun/ts/tests/ejb30/bb/mdb/listenerintf/implementing/serializable/Client.java#test1

2. All tests passed after I put com/sun/ts/tests/ejb30/bb/mdb/customlistener/Client.java#isPostConstructCalledTest
in the CTS exclude list.

b85-04_15_2013
----------------
1. Following tests failed when run the tests as it is:

FAILED........com/sun/ts/tests/ejb30/bb/mdb/dest/fullpath/Client.java#test1
FAILED........com/sun/ts/tests/ejb30/bb/mdb/dest/jarwar/Client.java#test1
FAILED........com/sun/ts/tests/ejb30/bb/mdb/dest/onejar/Client.java#test1
FAILED........com/sun/ts/tests/ejb30/bb/mdb/dest/optional/Client.java#test1
FAILED........com/sun/ts/tests/ejb30/bb/mdb/dest/optional2/Client.java#test1
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/listener/annotated/Client.java#getBeanTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/listener/annotated/Client.java#getContextDataTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/listener/annotated/Client.java#getMethodTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/listener/annotated/Client.java#getParametersTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/listener/annotated/Client.java#orderTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/listener/annotated/Client.java#sameInvocationContextTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/listener/annotated/Client.java#setParametersTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/listener/descriptor/Client.java#getBeanTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/listener/descriptor/Client.java#getMethodTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/listener/descriptor/Client.java#getParametersTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/listener/descriptor/Client.java#orderTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/listener/descriptor/Client.java#sameInvocationContextTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/method/annotated/Client.java#getBeanTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/method/annotated/Client.java#getContextDataTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/method/annotated/Client.java#getMethodTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/method/annotated/Client.java#getParametersTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/method/annotated/Client.java#sameSecContextTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/method/annotated/Client.java#setParametersTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/method/descriptor/Client.java#getBeanTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/method/descriptor/Client.java#getContextDataTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/method/descriptor/Client.java#getMethodTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/method/descriptor/Client.java#getParametersTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/method/descriptor/Client.java#sameSecContextTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/method/descriptor/Client.java#setParametersTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/listenerintf/implementing/externalizable/Client.java#test1

2. Following tests failed after putting the test com/sun/ts/tests/ejb30/bb/mdb/customlistener/Client.java#isPostConstructCalledTest in exclude list.

FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/listener/annotated/Client.java#getContextDataTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/listener/annotated/Client.java#getMethodTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/listener/annotated/Client.java#getParametersTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/listener/annotated/Client.java#orderTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/listener/annotated/Client.java#sameInvocationContextTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/listener/annotated/Client.java#setParametersTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/listener/descriptor/Client.java#getBeanTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/listener/descriptor/Client.java#getContextDataTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/listener/descriptor/Client.java#getMethodTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/listener/descriptor/Client.java#getParametersTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/listener/descriptor/Client.java#orderTest

Comment by marina vatkina [ 16/Apr/13 06:20 PM ]

Does the test pass if you disable CDI scanning?

Comment by saradak [ 16/Apr/13 07:41 PM ]


I have been using default glassfish settings. What should I set to disable CDI scanning?

Comment by marina vatkina [ 16/Apr/13 10:00 PM ]

asadmin create-module-config cdi-service
asadmin set configs.config.server-config.cdi-service.enable-implicit-cdi=false

Comment by marina vatkina [ 17/Apr/13 06:43 PM ]

the MDB was always receiving five messages, and those mesages arrived at the queue at right time, so the QueueReceiver.recieveNoWait() call consumed those messages, now with latest builds the messages arrive late and hence we see this problem.

Comment by saradak [ 17/Apr/13 10:40 PM ]

I ran the ejb30/bb/mdb tests after CTS test fixes but still seeing 6 test failures. we should address the issue that David mentioned in the bug report regarding interceptor failures.

FAILED........com/sun/ts/tests/ejb30/bb/mdb/dest/fullpath/Client.java#test1
FAILED........com/sun/ts/tests/ejb30/bb/mdb/dest/jarwar/Client.java#test1
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/listener/annotated/Client.java#getMethodTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/listener/annotated/Client.java#getParametersTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/listener/descriptor/Client.java#getMethodTest
FAILED........com/sun/ts/tests/ejb30/bb/mdb/interceptor/listener/descriptor/Client.java#getParametersTest

Comment by marina vatkina [ 17/Apr/13 10:46 PM ]

Assigning to CDI team to investigate wrong invocation types from Weld

Comment by jjsnyder83 [ 18/Apr/13 01:20 AM ]

Phil is already looking into this.

Comment by phil.zampino [ 19/Apr/13 04:20 AM ]

I've raised this issue with Weld, since it appears that they are not propagating InvocationContext parameters correctly.

Comment by shreedhar_ganapathy [ 19/Apr/13 03:29 PM ]

Any chance of getting the fix before next promoted build ? i.e wed 24th?
RC testing is beginning and we need fixes to go in before that.

Comment by arjavdesai [ 19/Apr/13 08:28 PM ]

Most of the issues reported at the start are fixed in latest glassfish build. The reminder of issues are being tracked by http://java.net/jira/browse/GLASSFISH-20359 so resolving this one.





[GLASSFISH-20297] Uptake Weld 2.0.0.CR2 Created: 12/Apr/13  Updated: 12/Apr/13  Resolved: 12/Apr/13

Status: Resolved
Project: glassfish
Component/s: cdi
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: Major
Reporter: jjsnyder83 Assignee: jjsnyder83
Resolution: Fixed Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags:
Participants: jjsnyder83

 Comments   
Comment by jjsnyder83 [ 12/Apr/13 01:38 PM ]

Committed revision 61390.





[GLASSFISH-20285] CLONE -CDI Unqualified String Producer is visible to the application Created: 11/Apr/13  Updated: 11/Apr/13  Resolved: 11/Apr/13

Status: Resolved
Project: glassfish
Component/s: cdi
Affects Version/s: 4.0_b83
Fix Version/s: None

Type: Bug Priority: Major
Reporter: abien Assignee: jjsnyder83
Resolution: Works as designed Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags: fishcat
Participants: abien and jjsnyder83

 Description   

String injection fails:

@Inject
private String something;

Causes the following exception:

at com.ibm.jbatch.container.cdi.BatchProducerBean.produceProperty(BatchProducerBean.java:46)
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.jboss.weld.annotated.runtime.InvokableAnnotatedMethod.invokeOnInstance(InvokableAnnotatedMethod.java:97)
at org.jboss.weld.injection.MethodInjectionPoint.invokeOnInstanceWithSpecialValue(MethodInjectionPoint.java:77)
at org.jboss.weld.injection.MethodInjectionPoint.invokeOnInstance(MethodInjectionPoint.java:71)
at org.jboss.weld.injection.producer.ProducerMethodProducer.produce(ProducerMethodProducer.java:97)
at org.jboss.weld.injection.producer.AbstractMemberProducer.produce(AbstractMemberProducer.java:187)
at org.jboss.weld.bean.AbstractProducerBean.create(AbstractProducerBean.java:190)
at org.jboss.weld.context.unbound.DependentContextImpl.get(DependentContextImpl.java:69)
at org.jboss.weld.manager.BeanManagerImpl.getReference(BeanManagerImpl.java:711)
at org.jboss.weld.manager.BeanManagerImpl.getReference(BeanManagerImpl.java:769)
at org.jboss.weld.injection.FieldInjectionPoint.inject(FieldInjectionPoint.java:88)
at org.jboss.weld.util.Beans.injectBoundFields(Beans.java:368)
at org.jboss.weld.util.Beans.injectFieldsAndInitializers(Beans.java:377)
at org.jboss.weld.injection.producer.DefaultInjector.inject(DefaultInjector.java:72)
at org.jboss.weld.injection.producer.ResourceInjector.inject(ResourceInjector.java:60)
at org.jboss.weld.injection.producer.DefaultInjector$1.proceed(DefaultInjector.java:66)
at org.glassfish.weld.services.InjectionServicesImpl.aroundInject(InjectionServicesImpl.java:142)
at org.jboss.weld.injection.InjectionContextImpl.run(InjectionContextImpl.java:46)
at org.jboss.weld.injection.producer.DefaultInjector.inject(DefaultInjector.java:64)
at org.jboss.weld.injection.producer.BasicInjectionTarget.inject(BasicInjectionTarget.java:97)
at org.jboss.weld.bean.ManagedBean.create(ManagedBean.java:158)
at org.jboss.weld.context.AbstractContext.get(AbstractContext.java:103)
at org.jboss.weld.bean.proxy.ContextBeanInstance.getInstance(ContextBeanInstance.java:93)
at org.jboss.weld.bean.proxy.ProxyMethodHandler.invoke(ProxyMethodHandler.java:82)
at com.abien.stringproducerinterference.StringInjectionTarget$Proxy$_$$_WeldClientProxy.getMessage(Unknown Source)
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 javax.el.BeanELResolver.getValue(BeanELResolver.java:363)
at com.sun.faces.el.DemuxCompositeELResolver._getValue(DemuxCompositeELResolver.java:176)
at com.sun.faces.el.DemuxCompositeELResolver.getValue(DemuxCompositeELResolver.java:203)
at com.sun.el.parser.AstValue.getValue(AstValue.java:140)
at com.sun.el.parser.AstValue.getValue(AstValue.java:204)
at com.sun.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:226)
at org.jboss.weld.el.WeldValueExpression.getValue(WeldValueExpression.java:50)
at com.sun.faces.facelets.el.ELText$ELTextVariable.writeText(ELText.java:227)
at com.sun.faces.facelets.el.ELText$ELTextComposite.writeText(ELText.java:150)
at com.sun.faces.facelets.compiler.TextInstruction.write(TextInstruction.java:85)
... 37 more

The erroneously exposed @Producer also causes the introduction of application producer (ambiguous dependency error).

The problem seems to be caused by the batch component. However right now it is not possible to chooose a batch "component" from the Jira menu.



 Comments   
Comment by jjsnyder83 [ 11/Apr/13 10:43 AM ]

You must qualify String producers. Include some custom qualifier on your String producer.





[GLASSFISH-20273] CDI String Producer is visible to the application Created: 10/Apr/13  Updated: 10/Apr/13  Resolved: 10/Apr/13

Status: Closed
Project: glassfish
Component/s: cdi
Affects Version/s: 4.0_b83
Fix Version/s: None

Type: Bug Priority: Major
Reporter: abien Assignee: jjsnyder83
Resolution: Works as designed Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags: fishcat
Participants: abien and jjsnyder83

 Description   

String injection fails:

@Inject
private String something;

Causes the following exception:

at com.ibm.jbatch.container.cdi.BatchProducerBean.produceProperty(BatchProducerBean.java:46)
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.jboss.weld.annotated.runtime.InvokableAnnotatedMethod.invokeOnInstance(InvokableAnnotatedMethod.java:97)
at org.jboss.weld.injection.MethodInjectionPoint.invokeOnInstanceWithSpecialValue(MethodInjectionPoint.java:77)
at org.jboss.weld.injection.MethodInjectionPoint.invokeOnInstance(MethodInjectionPoint.java:71)
at org.jboss.weld.injection.producer.ProducerMethodProducer.produce(ProducerMethodProducer.java:97)
at org.jboss.weld.injection.producer.AbstractMemberProducer.produce(AbstractMemberProducer.java:187)
at org.jboss.weld.bean.AbstractProducerBean.create(AbstractProducerBean.java:190)
at org.jboss.weld.context.unbound.DependentContextImpl.get(DependentContextImpl.java:69)
at org.jboss.weld.manager.BeanManagerImpl.getReference(BeanManagerImpl.java:711)
at org.jboss.weld.manager.BeanManagerImpl.getReference(BeanManagerImpl.java:769)
at org.jboss.weld.injection.FieldInjectionPoint.inject(FieldInjectionPoint.java:88)
a