hello have following problem, when load class without @inject private gson gson runs normaly, when put it throws exception.
class calls gson.
package core.control; import java.util.list; import javax.inject.inject; import javax.inject.named; import com.google.gson.gson; import core.dao.sistemadao; import core.model.sistema; @named public class sistemacontrol { private sistemadao sistemadao; @inject private gson gson; @inject public sistemacontrol(sistemadao sistemadao) { this.sistemadao = sistemadao; } public string gettodosossistemas() { list<sistema> sistemas = sistemadao.buscartodos(); string json = "oiii"; return json; } }
the creator:
package core.control; import javax.enterprise.inject.disposes; import javax.enterprise.inject.produces; import com.google.gson.gson; public class criadorgson { @produces public gson criargson() { gson gson = new gson(); return gson; } public void destruir(@disposes gson gson) { gson = null; } }
the class calls bean calls gson
package core.jsfconnection; import javax.enterprise.context.requestscoped; import javax.inject.inject; import javax.inject.named; import core.control.sistemacontrol; @named("sistemamb") @requestscoped public class sistemamb { @inject private sistemacontrol sistemacontrol; public string gettodossistemas() { string sistemasjson = sistemacontrol.gettodosossistemas(); return sistemasjson; } }
the exception
grave: cdi beans module deployment failed org.apache.webbeans.exception.inject.deploymentexception: javax.enterprise.inject.unsatisfiedresolutionexception: api type [core.control.sistemacontrol] not found qualifiers qualifiers: [@javax.enterprise.inject.default()] injection field injection point, field name : sistemacontrol, bean owner : [sistemamb, name:sistemamb, webbeans type:managed, api types:[java.lang.object,core.jsfconnection.sistemamb], qualifiers:[javax.enterprise.inject.any,javax.enterprise.inject.default,javax.inject.named]] @ org.apache.webbeans.config.beansdeployer.deploy(beansdeployer.java:215) @ org.apache.openejb.cdi.openejblifecycle.startapplication(openejblifecycle.java:194) @ org.apache.openejb.cdi.threadsingletonserviceimpl.initialize(threadsingletonserviceimpl.java:160) @ org.apache.openejb.cdi.cdibuilder.build(cdibuilder.java:41) @ org.apache.openejb.assembler.classic.assembler.createapplication(assembler.java:797) @ org.apache.openejb.assembler.classic.assembler.createapplication(assembler.java:623) @ org.apache.tomee.catalina.tomcatwebappbuilder.startinternal(tomcatwebappbuilder.java:1248) @ org.apache.tomee.catalina.tomcatwebappbuilder.configurestart(tomcatwebappbuilder.java:1087) @ org.apache.tomee.catalina.globallistenersupport.lifecycleevent(globallistenersupport.java:130) @ org.apache.catalina.util.lifecyclesupport.firelifecycleevent(lifecyclesupport.java:117) @ org.apache.catalina.util.lifecyclebase.firelifecycleevent(lifecyclebase.java:90) @ org.apache.catalina.core.standardcontext.startinternal(standardcontext.java:5378) @ org.apache.catalina.util.lifecyclebase.start(lifecyclebase.java:150) @ org.apache.catalina.core.containerbase$startchild.call(containerbase.java:1575) @ org.apache.catalina.core.containerbase$startchild.call(containerbase.java:1565) @ java.util.concurrent.futuretask.run(futuretask.java:262) @ java.util.concurrent.threadpoolexecutor.runworker(threadpoolexecutor.java:1145) @ java.util.concurrent.threadpoolexecutor$worker.run(threadpoolexecutor.java:615) @ java.lang.thread.run(thread.java:745) caused by: javax.enterprise.inject.unsatisfiedresolutionexception: api type [core.control.sistemacontrol] not found qualifiers qualifiers: [@javax.enterprise.inject.default()] injection field injection point, field name : sistemacontrol, bean owner : [sistemamb, name:sistemamb, webbeans type:managed, api types:[java.lang.object,core.jsfconnection.sistemamb], qualifiers:[javax.enterprise.inject.any,javax.enterprise.inject.default,javax.inject.named]] @ org.apache.webbeans.util.injectionexceptionutil.throwunsatisfiedresolutionexception(injectionexceptionutil.java:60) @ org.apache.webbeans.container.injectionresolver.checkinjectionpoint(injectionresolver.java:195) @ org.apache.webbeans.container.beanmanagerimpl.validate(beanmanagerimpl.java:955) @ org.apache.webbeans.config.beansdeployer.validate(beansdeployer.java:491) @ org.apache.webbeans.config.beansdeployer.validateinjectionpoints(beansdeployer.java:422) @ org.apache.webbeans.config.beansdeployer.deploy(beansdeployer.java:202) ... 18 more abr 27, 2015 5:53:03 pm org.apache.catalina.core.containerbase removechild grave: containerbase.removechild: destroy: org.apache.catalina.lifecycleexception: invalid lifecycle transition attempted ([before_destroy]) component [standardengine[catalina].standardhost[localhost].standardcontext[/patrimonio]] in state [starting_prep] @ org.apache.catalina.util.lifecyclebase.invalidtransition(lifecyclebase.java:409) @ org.apache.catalina.util.lifecyclebase.destroy(lifecyclebase.java:299) @ org.apache.catalina.core.containerbase.removechild(containerbase.java:1041) @ org.apache.tomee.catalina.tomcatwebappbuilder.undeploy(tomcatwebappbuilder.java:1524) @ org.apache.tomee.catalina.tomcatwebappbuilder.undeploy(tomcatwebappbuilder.java:1505) @ org.apache.tomee.catalina.tomcatwebappbuilder.undeploywebapps(tomcatwebappbuilder.java:747) @ org.apache.openejb.assembler.classic.assembler.destroyapplication(assembler.java:1668) @ org.apache.openejb.assembler.classic.assembler.createapplication(assembler.java:892) @ org.apache.openejb.assembler.classic.assembler.createapplication(assembler.java:623) @ org.apache.tomee.catalina.tomcatwebappbuilder.startinternal(tomcatwebappbuilder.java:1248) @ org.apache.tomee.catalina.tomcatwebappbuilder.configurestart(tomcatwebappbuilder.java:1087) @ org.apache.tomee.catalina.globallistenersupport.lifecycleevent(globallistenersupport.java:130) @ org.apache.catalina.util.lifecyclesupport.firelifecycleevent(lifecyclesupport.java:117) @ org.apache.catalina.util.lifecyclebase.firelifecycleevent(lifecyclebase.java:90) @ org.apache.catalina.core.standardcontext.startinternal(standardcontext.java:5378) @ org.apache.catalina.util.lifecyclebase.start(lifecyclebase.java:150) @ org.apache.catalina.core.containerbase$startchild.call(containerbase.java:1575) @ org.apache.catalina.core.containerbase$startchild.call(containerbase.java:1565) @ java.util.concurrent.futuretask.run(futuretask.java:262) @ java.util.concurrent.threadpoolexecutor.runworker(threadpoolexecutor.java:1145) @ java.util.concurrent.threadpoolexecutor$worker.run(threadpoolexecutor.java:615) @ java.lang.thread.run(thread.java:745) abr 27, 2015 5:53:03 pm org.apache.openejb.assembler.classic.assembler destroyapplication advertĂncia: cant unbind resource patrimonio/beanmanager abr 27, 2015 5:53:03 pm org.apache.catalina.loader.webappclassloader clearreferencesthreads grave: web application [/patrimonio] appears have started thread named [hsqldb timer @50149626] has failed stop it. create memory leak. abr 27, 2015 5:53:03 pm org.apache.catalina.loader.webappclassloader checkthreadlocalmapforleaks grave: web application [/patrimonio] created threadlocal key of type [com.sun.xml.bind.v2.runtime.coordinator$1] (value [com.sun.xml.bind.v2.runtime.coordinator$1@78523259]) , value of type [java.lang.object[]] (value [[ljava.lang.object;@5c67aec5]) failed remove when web application stopped. threads going renewed on time try , avoid probable memory leak. abr 27, 2015 5:53:03 pm org.apache.catalina.loader.webappclassloader checkthreadlocalmapforleaks grave: web application [/patrimonio] created threadlocal key of type [com.sun.xml.bind.v2.classfactory$1] (value [com.sun.xml.bind.v2.classfactory$1@1b0336e8]) , value of type [java.util.weakhashmap] (value [{class org.apache.openejb.jee.jpa.unit.persistence=java.lang.ref.weakreference@7009c732, class java.util.arraylist=java.lang.ref.weakreference@11f4dd15, class org.apache.openejb.jee.jpa.unit.property=java.lang.ref.weakreference@62de96e8, class javax.xml.bind.annotation.adapters.collapsedstringadapter=java.lang.ref.weakreference@3858c0e, class org.apache.openejb.jee.jpa.unit.properties=java.lang.ref.weakreference@34adecf0, class org.apache.openejb.jee.jpa.unit.propertiesadapter=java.lang.ref.weakreference@69e9b95, class org.apache.openejb.jee.jpa.unit.persistenceunit=java.lang.ref.weakreference@16f85698}]) failed remove when web application stopped. threads going renewed on time try , avoid probable memory leak. abr 27, 2015 5:53:03 pm org.apache.tomee.catalina.tomcatwebappbuilder startinternal grave: unable deploy collapsed ear in war standardengine[catalina].standardhost[localhost].standardcontext[/patrimonio] org.apache.openejb.openejbexception: creating application failed: /home/thiago/workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp1/wtpwebapps/patrimonio: couldn't start owb context @ org.apache.openejb.assembler.classic.assembler.createapplication(assembler.java:896) @ org.apache.openejb.assembler.classic.assembler.createapplication(assembler.java:623) @ org.apache.tomee.catalina.tomcatwebappbuilder.startinternal(tomcatwebappbuilder.java:1248) @ org.apache.tomee.catalina.tomcatwebappbuilder.configurestart(tomcatwebappbuilder.java:1087) @ org.apache.tomee.catalina.globallistenersupport.lifecycleevent(globallistenersupport.java:130) @ org.apache.catalina.util.lifecyclesupport.firelifecycleevent(lifecyclesupport.java:117) @ org.apache.catalina.util.lifecyclebase.firelifecycleevent(lifecyclebase.java:90) @ org.apache.catalina.core.standardcontext.startinternal(standardcontext.java:5378) @ org.apache.catalina.util.lifecyclebase.start(lifecyclebase.java:150) @ org.apache.catalina.core.containerbase$startchild.call(containerbase.java:1575) @ org.apache.catalina.core.containerbase$startchild.call(containerbase.java:1565) @ java.util.concurrent.futuretask.run(futuretask.java:262) @ java.util.concurrent.threadpoolexecutor.runworker(threadpoolexecutor.java:1145) @ java.util.concurrent.threadpoolexecutor$worker.run(threadpoolexecutor.java:615) @ java.lang.thread.run(thread.java:745) caused by: org.apache.openejb.openejbruntimeexception: couldn't start owb context @ org.apache.openejb.cdi.threadsingletonserviceimpl.initialize(threadsingletonserviceimpl.java:162) @ org.apache.openejb.cdi.cdibuilder.build(cdibuilder.java:41) @ org.apache.openejb.assembler.classic.assembler.createapplication(assembler.java:797) ... 14 more caused by: org.apache.openejb.openejbruntimeexception: org.apache.webbeans.exception.inject.deploymentexception: javax.enterprise.inject.unsatisfiedresolutionexception: api type [core.control.sistemacontrol] not found qualifiers qualifiers: [@javax.enterprise.inject.default()] injection field injection point, field name : sistemacontrol, bean owner : [sistemamb, name:sistemamb, webbeans type:managed, api types:[java.lang.object,core.jsfconnection.sistemamb], qualifiers:[javax.enterprise.inject.any,javax.enterprise.inject.default,javax.inject.named]] @ org.apache.openejb.cdi.openejblifecycle.startapplication(openejblifecycle.java:197) @ org.apache.openejb.cdi.threadsingletonserviceimpl.initialize(threadsingletonserviceimpl.java:160) ... 16 more caused by: org.apache.webbeans.exception.inject.deploymentexception: javax.enterprise.inject.unsatisfiedresolutionexception: api type [core.control.sistemacontrol] not found qualifiers qualifiers: [@javax.enterprise.inject.default()] injection field injection point, field name : sistemacontrol, bean owner : [sistemamb, name:sistemamb, webbeans type:managed, api types:[java.lang.object,core.jsfconnection.sistemamb], qualifiers:[javax.enterprise.inject.any,javax.enterprise.inject.default,javax.inject.named]] @ org.apache.webbeans.config.beansdeployer.deploy(beansdeployer.java:215) @ org.apache.openejb.cdi.openejblifecycle.startapplication(openejblifecycle.java:194) ... 17 more caused by: javax.enterprise.inject.unsatisfiedresolutionexception: api type [core.control.sistemacontrol] not found qualifiers qualifiers: [@javax.enterprise.inject.default()] injection field injection point, field name : sistemacontrol, bean owner : [sistemamb, name:sistemamb, webbeans type:managed, api types:[java.lang.object,core.jsfconnection.sistemamb], qualifiers:[javax.enterprise.inject.any,javax.enterprise.inject.default,javax.inject.named]] @ org.apache.webbeans.util.injectionexceptionutil.throwunsatisfiedresolutionexception(injectionexceptionutil.java:60) @ org.apache.webbeans.container.injectionresolver.checkinjectionpoint(injectionresolver.java:195) @ org.apache.webbeans.container.beanmanagerimpl.validate(beanmanagerimpl.java:955) @ org.apache.webbeans.config.beansdeployer.validate(beansdeployer.java:491) @ org.apache.webbeans.config.beansdeployer.validateinjectionpoints(beansdeployer.java:422) @ org.apache.webbeans.config.beansdeployer.deploy(beansdeployer.java:202) ... 18 more abr 27, 2015 5:53:03 pm org.apache.catalina.core.containerbase startinternal grave: child container failed during start java.util.concurrent.executionexception: org.apache.catalina.lifecycleexception: failed start component [standardengine[catalina].standardhost[localhost].standardcontext[/patrimonio]] @ java.util.concurrent.futuretask.report(futuretask.java:122) @ java.util.concurrent.futuretask.get(futuretask.java:188) @ org.apache.catalina.core.containerbase.startinternal(containerbase.java:1123) @ org.apache.catalina.core.standardhost.startinternal(standardhost.java:816) @ org.apache.catalina.util.lifecyclebase.start(lifecyclebase.java:150) @ org.apache.catalina.core.containerbase$startchild.call(containerbase.java:1575) @ org.apache.catalina.core.containerbase$startchild.call(containerbase.java:1565) @ java.util.concurrent.futuretask.run(futuretask.java:262) @ java.util.concurrent.threadpoolexecutor.runworker(threadpoolexecutor.java:1145) @ java.util.concurrent.threadpoolexecutor$worker.run(threadpoolexecutor.java:615) @ java.lang.thread.run(thread.java:745) caused by: org.apache.catalina.lifecycleexception: failed start component [standardengine[catalina].standardhost[localhost].standardcontext[/patrimonio]] @ org.apache.catalina.util.lifecyclebase.start(lifecyclebase.java:154) ... 6 more caused by: org.apache.tomee.catalina.tomeeruntimeexception: org.apache.openejb.openejbexception: creating application failed: /home/thiago/workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp1/wtpwebapps/patrimonio: couldn't start owb context @ org.apache.tomee.catalina.tomcatwebappbuilder.startinternal(tomcatwebappbuilder.java:1257) @ org.apache.tomee.catalina.tomcatwebappbuilder.configurestart(tomcatwebappbuilder.java:1087) @ org.apache.tomee.catalina.globallistenersupport.lifecycleevent(globallistenersupport.java:130) @ org.apache.catalina.util.lifecyclesupport.firelifecycleevent(lifecyclesupport.java:117) @ org.apache.catalina.util.lifecyclebase.firelifecycleevent(lifecyclebase.java:90) @ org.apache.catalina.core.standardcontext.startinternal(standardcontext.java:5378) @ org.apache.catalina.util.lifecyclebase.start(lifecyclebase.java:150) ... 6 more caused by: org.apache.openejb.openejbexception: creating application failed: /home/thiago/workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp1/wtpwebapps/patrimonio: couldn't start owb context @ org.apache.openejb.assembler.classic.assembler.createapplication(assembler.java:896) @ org.apache.openejb.assembler.classic.assembler.createapplication(assembler.java:623) @ org.apache.tomee.catalina.tomcatwebappbuilder.startinternal(tomcatwebappbuilder.java:1248) ... 12 more caused by: org.apache.openejb.openejbruntimeexception: couldn't start owb context @ org.apache.openejb.cdi.threadsingletonserviceimpl.initialize(threadsingletonserviceimpl.java:162) @ org.apache.openejb.cdi.cdibuilder.build(cdibuilder.java:41) @ org.apache.openejb.assembler.classic.assembler.createapplication(assembler.java:797) ... 14 more caused by: org.apache.openejb.openejbruntimeexception: org.apache.webbeans.exception.inject.deploymentexception: javax.enterprise.inject.unsatisfiedresolutionexception: api type [core.control.sistemacontrol] not found qualifiers qualifiers: [@javax.enterprise.inject.default()] injection field injection point, field name : sistemacontrol, bean owner : [sistemamb, name:sistemamb, webbeans type:managed, api types:[java.lang.object,core.jsfconnection.sistemamb], qualifiers:[javax.enterprise.inject.any,javax.enterprise.inject.default,javax.inject.named]] @ org.apache.openejb.cdi.openejblifecycle.startapplication(openejblifecycle.java:197) @ org.apache.openejb.cdi.threadsingletonserviceimpl.initialize(threadsingletonserviceimpl.java:160) ... 16 more caused by: org.apache.webbeans.exception.inject.deploymentexception: javax.enterprise.inject.unsatisfiedresolutionexception: api type [core.control.sistemacontrol] not found qualifiers qualifiers: [@javax.enterprise.inject.default()] injection field injection point, field name : sistemacontrol, bean owner : [sistemamb, name:sistemamb, webbeans type:managed, api types:[java.lang.object,core.jsfconnection.sistemamb], qualifiers:[javax.enterprise.inject.any,javax.enterprise.inject.default,javax.inject.named]] @ org.apache.webbeans.config.beansdeployer.deploy(beansdeployer.java:215) @ org.apache.openejb.cdi.openejblifecycle.startapplication(openejblifecycle.java:194) ... 17 more caused by: javax.enterprise.inject.unsatisfiedresolutionexception: api type [core.control.sistemacontrol] not found qualifiers qualifiers: [@javax.enterprise.inject.default()] injection field injection point, field name : sistemacontrol, bean owner : [sistemamb, name:sistemamb, webbeans type:managed, api types:[java.lang.object,core.jsfconnection.sistemamb], qualifiers:[javax.enterprise.inject.any,javax.enterprise.inject.default,javax.inject.named]] @ org.apache.webbeans.util.injectionexceptionutil.throwunsatisfiedresolutionexception(injectionexceptionutil.java:60) @ org.apache.webbeans.container.injectionresolver.checkinjectionpoint(injectionresolver.java:195) @ org.apache.webbeans.container.beanmanagerimpl.validate(beanmanagerimpl.java:955) @ org.apache.webbeans.config.beansdeployer.validate(beansdeployer.java:491) @ org.apache.webbeans.config.beansdeployer.validateinjectionpoints(beansdeployer.java:422) @ org.apache.webbeans.config.beansdeployer.deploy(beansdeployer.java:202) ... 18 more abr 27, 2015 5:53:03 pm org.apache.catalina.core.containerbase startinternal grave: child container failed during start java.util.concurrent.executionexception: org.apache.catalina.lifecycleexception: failed start component [standardengine[catalina].standardhost[localhost]] @ java.util.concurrent.futuretask.report(futuretask.java:122) @ java.util.concurrent.futuretask.get(futuretask.java:188) @ org.apache.catalina.core.containerbase.startinternal(containerbase.java:1123) @ org.apache.catalina.core.standardengine.startinternal(standardengine.java:300) @ org.apache.catalina.util.lifecyclebase.start(lifecyclebase.java:150) @ org.apache.catalina.core.standardservice.startinternal(standardservice.java:443) @ org.apache.catalina.util.lifecyclebase.start(lifecyclebase.java:150) @ org.apache.catalina.core.standardserver.startinternal(standardserver.java:739) @ org.apache.catalina.util.lifecyclebase.start(lifecyclebase.java:150) @ org.apache.catalina.startup.catalina.start(catalina.java:689) @ sun.reflect.nativemethodaccessorimpl.invoke0(native method) @ sun.reflect.nativemethodaccessorimpl.invoke(nativemethodaccessorimpl.java:57) @ sun.reflect.delegatingmethodaccessorimpl.invoke(delegatingmethodaccessorimpl.java:43) @ java.lang.reflect.method.invoke(method.java:606) @ org.apache.catalina.startup.bootstrap.start(bootstrap.java:321) @ org.apache.catalina.startup.bootstrap.main(bootstrap.java:455) caused by: org.apache.catalina.lifecycleexception: failed start component [standardengine[catalina].standardhost[localhost]] @ org.apache.catalina.util.lifecyclebase.start(lifecyclebase.java:154) @ org.apache.catalina.core.containerbase$startchild.call(containerbase.java:1575) @ org.apache.catalina.core.containerbase$startchild.call(containerbase.java:1565) @ java.util.concurrent.futuretask.run(futuretask.java:262) @ java.util.concurrent.threadpoolexecutor.runworker(threadpoolexecutor.java:1145) @ java.util.concurrent.threadpoolexecutor$worker.run(threadpoolexecutor.java:615) @ java.lang.thread.run(thread.java:745) caused by: org.apache.catalina.lifecycleexception: child container failed during start @ org.apache.catalina.core.containerbase.startinternal(containerbase.java:1131) @ org.apache.catalina.core.standardhost.startinternal(standardhost.java:816) @ org.apache.catalina.util.lifecyclebase.start(lifecyclebase.java:150) ... 6 more abr 27, 2015 5:53:03 pm org.apache.catalina.startup.catalina start grave: required server component failed start tomcat unable start. org.apache.catalina.lifecycleexception: failed start component [standardserver[8005]] @ org.apache.catalina.util.lifecyclebase.start(lifecyclebase.java:154) @ org.apache.catalina.startup.catalina.start(catalina.java:689) @ sun.reflect.nativemethodaccessorimpl.invoke0(native method) @ sun.reflect.nativemethodaccessorimpl.invoke(nativemethodaccessorimpl.java:57) @ sun.reflect.delegatingmethodaccessorimpl.invoke(delegatingmethodaccessorimpl.java:43) @ java.lang.reflect.method.invoke(method.java:606) @ org.apache.catalina.startup.bootstrap.start(bootstrap.java:321) @ org.apache.catalina.startup.bootstrap.main(bootstrap.java:455) caused by: org.apache.catalina.lifecycleexception: failed start component [standardservice[catalina]] @ org.apache.catalina.util.lifecyclebase.start(lifecyclebase.java:154) @ org.apache.catalina.core.standardserver.startinternal(standardserver.java:739) @ org.apache.catalina.util.lifecyclebase.start(lifecyclebase.java:150) ... 7 more caused by: org.apache.catalina.lifecycleexception: failed start component [standardengine[catalina]] @ org.apache.catalina.util.lifecyclebase.start(lifecyclebase.java:154) @ org.apache.catalina.core.standardservice.startinternal(standardservice.java:443) @ org.apache.catalina.util.lifecyclebase.start(lifecyclebase.java:150) ... 9 more caused by: org.apache.catalina.lifecycleexception: child container failed during start @ org.apache.catalina.core.containerbase.startinternal(containerbase.java:1131) @ org.apache.catalina.core.standardengine.startinternal(standardengine.java:300) @ org.apache.catalina.util.lifecyclebase.start(lifecyclebase.java:150) ... 11 more
it's not gson problem. providing sistemacontrol in sistemamb class? stack trace looks nothing is.
for example add produces method class:
public class criadormodule { @produces public sistemacontrol criarsistemacontrol() { return new sistemacontrol(); } @produces public gson criargson() { gson gson = new gson(); return gson; } // fyi destroy in criadorgson class has no effect, need understand how variables work in java. gson local copy of reference. }