java - A system exception occurred during an invocation on EJB -
warning: ejb5184:a system exception occurred during invocation on ejb empfacade, method: public java.util.list com.session.abstractfacade.findall() warning: javax.ejb.ejbexception @ com.sun.ejb.containers.ejbcontainertransactionmanager.processsystemexception(ejbcontainertransactionmanager.java:748) @ com.sun.ejb.containers.ejbcontainertransactionmanager.completenewtx(ejbcontainertransactionmanager.java:698) @ com.sun.ejb.containers.ejbcontainertransactionmanager.postinvoketx(ejbcontainertransactionmanager.java:503) @ com.sun.ejb.containers.basecontainer.postinvoketx(basecontainer.java:4475) @ com.sun.ejb.containers.basecontainer.postinvoke(basecontainer.java:2009) @ com.sun.ejb.containers.basecontainer.postinvoke(basecontainer.java:1979) @ com.sun.ejb.containers.ejblocalobjectinvocationhandler.invoke(ejblocalobjectinvocationhandler.java:220) @ com.sun.ejb.containers.ejblocalobjectinvocationhandlerdelegate.invoke(ejblocalobjectinvocationhandlerdelegate.java:88) @ com.sun.proxy.$proxy243.findall(unknown source) @ com.session.__ejb31_generated__empfacade__intf____bean__.findall(unknown source) @ com.control.entitycontroller.processrequest(entitycontroller.java:62) @ com.control.entitycontroller.doget(entitycontroller.java:157) @ javax.servlet.http.httpservlet.service(httpservlet.java:687) @ javax.servlet.http.httpservlet.service(httpservlet.java:790) @ org.apache.catalina.core.standardwrapper.service(standardwrapper.java:1682) @ org.apache.catalina.core.standardwrappervalve.invoke(standardwrappervalve.java:318) @ org.apache.catalina.core.standardcontextvalve.invoke(standardcontextvalve.java:160) @ org.apache.catalina.core.standardpipeline.doinvoke(standardpipeline.java:734) @ org.apache.catalina.core.standardpipeline.invoke(standardpipeline.java:673) @ com.sun.enterprise.web.webpipeline.invoke(webpipeline.java:99) @ org.apache.catalina.core.standardhostvalve.invoke(standardhostvalve.java:174) @ org.apache.catalina.connector.coyoteadapter.doservice(coyoteadapter.java:357) @ org.apache.catalina.connector.coyoteadapter.service(coyoteadapter.java:260) @ com.sun.enterprise.v3.services.impl.containermapper.service(containermapper.java:188) @ org.glassfish.grizzly.http.server.httphandler.runservice(httphandler.java:191) @ org.glassfish.grizzly.http.server.httphandler.dohandle(httphandler.java:168) @ org.glassfish.grizzly.http.server.httpserverfilter.handleread(httpserverfilter.java:189) @ org.glassfish.grizzly.filterchain.executorresolver$9.execute(executorresolver.java:119) @ org.glassfish.grizzly.filterchain.defaultfilterchain.executefilter(defaultfilterchain.java:288) @ org.glassfish.grizzly.filterchain.defaultfilterchain.executechainpart(defaultfilterchain.java:206) @ org.glassfish.grizzly.filterchain.defaultfilterchain.execute(defaultfilterchain.java:136) @ org.glassfish.grizzly.filterchain.defaultfilterchain.process(defaultfilterchain.java:114) @ org.glassfish.grizzly.processorexecutor.execute(processorexecutor.java:77) @ org.glassfish.grizzly.nio.transport.tcpniotransport.fireioevent(tcpniotransport.java:838) @ org.glassfish.grizzly.strategies.abstractiostrategy.fireioevent(abstractiostrategy.java:113) @ org.glassfish.grizzly.strategies.workerthreadiostrategy.run0(workerthreadiostrategy.java:115) @ org.glassfish.grizzly.strategies.workerthreadiostrategy.access$100(workerthreadiostrategy.java:55) @ org.glassfish.grizzly.strategies.workerthreadiostrategy$workerthreadrunnable.run(workerthreadiostrategy.java:135) @ org.glassfish.grizzly.threadpool.abstractthreadpool$worker.dowork(abstractthreadpool.java:564) @ org.glassfish.grizzly.threadpool.abstractthreadpool$worker.run(abstractthreadpool.java:544) @ java.lang.thread.run(thread.java:744) caused by: java.lang.illegalargumentexception: no [entitytype] found key class [com.entity.emp] in metamodel - please verify [entity] class referenced in persistence.xml using specific <class>com.entity.emp</class> property or global <exclude-unlisted-classes>false</exclude-unlisted-classes> element. @ org.eclipse.persistence.internal.jpa.metamodel.metamodelimpl.entityembeddablemanagedtypenotfound(metamodelimpl.java:173) @ org.eclipse.persistence.internal.jpa.metamodel.metamodelimpl.entity(metamodelimpl.java:193) @ org.eclipse.persistence.internal.jpa.querydef.commonabstractcriteriaimpl.internalfrom(commonabstractcriteriaimpl.java:114) @ org.eclipse.persistence.internal.jpa.querydef.abstractqueryimpl.from(abstractqueryimpl.java:246) @ com.session.abstractfacade.findall(abstractfacade.java:43) @ 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.glassfish.ejb.security.application.ejbsecuritymanager.runmethod(ejbsecuritymanager.java:1081) @ org.glassfish.ejb.security.application.ejbsecuritymanager.invoke(ejbsecuritymanager.java:1153) @ com.sun.ejb.containers.basecontainer.invokebeanmethod(basecontainer.java:4695) @ com.sun.ejb.ejbinvocation.invokebeanmethod(ejbinvocation.java:630) @ com.sun.ejb.containers.interceptors.aroundinvokechainimpl.invokenext(interceptormanager.java:822) @ com.sun.ejb.ejbinvocation.proceed(ejbinvocation.java:582) @ org.jboss.weld.ejb.abstractejbrequestscopeactivationinterceptor.aroundinvoke(abstractejbrequestscopeactivationinterceptor.java:46) @ 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) @ com.sun.ejb.containers.interceptors.aroundinvokeinterceptor.intercept(interceptormanager.java:883) @ com.sun.ejb.containers.interceptors.aroundinvokechainimpl.invokenext(interceptormanager.java:822) @ com.sun.ejb.ejbinvocation.proceed(ejbinvocation.java:582) @ com.sun.ejb.containers.interceptors.systeminterceptorproxy.docall(systeminterceptorproxy.java:163) @ com.sun.ejb.containers.interceptors.systeminterceptorproxy.aroundinvoke(systeminterceptorproxy.java:140) @ 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) @ com.sun.ejb.containers.interceptors.aroundinvokeinterceptor.intercept(interceptormanager.java:883) @ com.sun.ejb.containers.interceptors.aroundinvokechainimpl.invokenext(interceptormanager.java:822) @ com.sun.ejb.containers.interceptors.interceptormanager.intercept(interceptormanager.java:369) @ com.sun.ejb.containers.basecontainer.__intercept(basecontainer.java:4667) @ com.sun.ejb.containers.basecontainer.intercept(basecontainer.java:4655) @ com.sun.ejb.containers.ejblocalobjectinvocationhandler.invoke(ejblocalobjectinvocationhandler.java:212) ... 34 more warning: standardwrappervalve[entitycontroller]: servlet.service() servlet entitycontroller threw exception javax.ejb.ejbexception @ com.sun.ejb.containers.ejbcontainertransactionmanager.processsystemexception(ejbcontainertransactionmanager.java:748) @ com.sun.ejb.containers.ejbcontainertransactionmanager.completenewtx(ejbcontainertransactionmanager.java:698) @ com.sun.ejb.containers.ejbcontainertransactionmanager.postinvoketx(ejbcontainertransactionmanager.java:503) @ com.sun.ejb.containers.basecontainer.postinvoketx(basecontainer.java:4475) @ com.sun.ejb.containers.basecontainer.postinvoke(basecontainer.java:2009) @ com.sun.ejb.containers.basecontainer.postinvoke(basecontainer.java:1979) @ com.sun.ejb.containers.ejblocalobjectinvocationhandler.invoke(ejblocalobjectinvocationhandler.java:220) @ com.sun.ejb.containers.ejblocalobjectinvocationhandlerdelegate.invoke(ejblocalobjectinvocationhandlerdelegate.java:88) @ com.sun.proxy.$proxy243.findall(unknown source) @ com.session.__ejb31_generated__empfacade__intf____bean__.findall(unknown source) @ com.control.entitycontroller.processrequest(entitycontroller.java:62) @ com.control.entitycontroller.doget(entitycontroller.java:157) @ javax.servlet.http.httpservlet.service(httpservlet.java:687) @ javax.servlet.http.httpservlet.service(httpservlet.java:790) @ org.apache.catalina.core.standardwrapper.service(standardwrapper.java:1682) @ org.apache.catalina.core.standardwrappervalve.invoke(standardwrappervalve.java:318) @ org.apache.catalina.core.standardcontextvalve.invoke(standardcontextvalve.java:160) @ org.apache.catalina.core.standardpipeline.doinvoke(standardpipeline.java:734) @ org.apache.catalina.core.standardpipeline.invoke(standardpipeline.java:673) @ com.sun.enterprise.web.webpipeline.invoke(webpipeline.java:99) @ org.apache.catalina.core.standardhostvalve.invoke(standardhostvalve.java:174) @ org.apache.catalina.connector.coyoteadapter.doservice(coyoteadapter.java:357) @ org.apache.catalina.connector.coyoteadapter.service(coyoteadapter.java:260) @ com.sun.enterprise.v3.services.impl.containermapper.service(containermapper.java:188) @ org.glassfish.grizzly.http.server.httphandler.runservice(httphandler.java:191) @ org.glassfish.grizzly.http.server.httphandler.dohandle(httphandler.java:168) @ org.glassfish.grizzly.http.server.httpserverfilter.handleread(httpserverfilter.java:189) @ org.glassfish.grizzly.filterchain.executorresolver$9.execute(executorresolver.java:119) @ org.glassfish.grizzly.filterchain.defaultfilterchain.executefilter(defaultfilterchain.java:288) @ org.glassfish.grizzly.filterchain.defaultfilterchain.executechainpart(defaultfilterchain.java:206) @ org.glassfish.grizzly.filterchain.defaultfilterchain.execute(defaultfilterchain.java:136) @ org.glassfish.grizzly.filterchain.defaultfilterchain.process(defaultfilterchain.java:114) @ org.glassfish.grizzly.processorexecutor.execute(processorexecutor.java:77) @ org.glassfish.grizzly.nio.transport.tcpniotransport.fireioevent(tcpniotransport.java:838) @ org.glassfish.grizzly.strategies.abstractiostrategy.fireioevent(abstractiostrategy.java:113) @ org.glassfish.grizzly.strategies.workerthreadiostrategy.run0(workerthreadiostrategy.java:115) @ org.glassfish.grizzly.strategies.workerthreadiostrategy.access$100(workerthreadiostrategy.java:55) @ org.glassfish.grizzly.strategies.workerthreadiostrategy$workerthreadrunnable.run(workerthreadiostrategy.java:135) @ org.glassfish.grizzly.threadpool.abstractthreadpool$worker.dowork(abstractthreadpool.java:564) @ org.glassfish.grizzly.threadpool.abstractthreadpool$worker.run(abstractthreadpool.java:544) @ java.lang.thread.run(thread.java:744) caused by: java.lang.illegalargumentexception: no [entitytype] found key class [com.entity.emp] in metamodel - please verify [entity] class referenced in persistence.xml using specific <class>com.entity.emp</class> property or global <exclude-unlisted-classes>false</exclude-unlisted-classes> element. @ org.eclipse.persistence.internal.jpa.metamodel.metamodelimpl.entityembeddablemanagedtypenotfound(metamodelimpl.java:173) @ org.eclipse.persistence.internal.jpa.metamodel.metamodelimpl.entity(metamodelimpl.java:193) @ org.eclipse.persistence.internal.jpa.querydef.commonabstractcriteriaimpl.internalfrom(commonabstractcriteriaimpl.java:114) @ org.eclipse.persistence.internal.jpa.querydef.abstractqueryimpl.from(abstractqueryimpl.java:246) @ com.session.abstractfacade.findall(abstractfacade.java:43) @ 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.glassfish.ejb.security.application.ejbsecuritymanager.runmethod(ejbsecuritymanager.java:1081) @ org.glassfish.ejb.security.application.ejbsecuritymanager.invoke(ejbsecuritymanager.java:1153) @ com.sun.ejb.containers.basecontainer.invokebeanmethod(basecontainer.java:4695) @ com.sun.ejb.ejbinvocation.invokebeanmethod(ejbinvocation.java:630) @ com.sun.ejb.containers.interceptors.aroundinvokechainimpl.invokenext(interceptormanager.java:822) @ com.sun.ejb.ejbinvocation.proceed(ejbinvocation.java:582) @ org.jboss.weld.ejb.abstractejbrequestscopeactivationinterceptor.aroundinvoke(abstractejbrequestscopeactivationinterceptor.java:46) @ 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) @ com.sun.ejb.containers.interceptors.aroundinvokeinterceptor.intercept(interceptormanager.java:883) @ com.sun.ejb.containers.interceptors.aroundinvokechainimpl.invokenext(interceptormanager.java:822) @ com.sun.ejb.ejbinvocation.proceed(ejbinvocation.java:582) @ com.sun.ejb.containers.interceptors.systeminterceptorproxy.docall(systeminterceptorproxy.java:163) @ com.sun.ejb.containers.interceptors.systeminterceptorproxy.aroundinvoke(systeminterceptorproxy.java:140) @ 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) @ com.sun.ejb.containers.interceptors.aroundinvokeinterceptor.intercept(interceptormanager.java:883) @ com.sun.ejb.containers.interceptors.aroundinvokechainimpl.invokenext(interceptormanager.java:822) @ com.sun.ejb.containers.interceptors.interceptormanager.intercept(interceptormanager.java:369) @ com.sun.ejb.containers.basecontainer.__intercept(basecontainer.java:4667) @ com.sun.ejb.containers.basecontainer.intercept(basecontainer.java:4655) @ com.sun.ejb.containers.ejblocalobjectinvocationhandler.invoke(ejblocalobjectinvocationhandler.java:212) ... 34 more
emp.java
@entity @table(name = "emp") @xmlrootelement @namedqueries({ @namedquery(name = "emp.findall", query = "select e emp e"), @namedquery(name = "emp.findbyempno", query = "select e emp e e.empno = :empno"), @namedquery(name = "emp.findbyename", query = "select e emp e e.ename = :ename"), @namedquery(name = "emp.findbyjob", query = "select e emp e e.job = :job"), @namedquery(name = "emp.findbymgr", query = "select e emp e e.mgr = :mgr"), @namedquery(name = "emp.findbyhiredate", query = "select e emp e e.hiredate = :hiredate"), @namedquery(name = "emp.findbysal", query = "select e emp e e.sal = :sal"), @namedquery(name = "emp.findbycomm", query = "select e emp e e.comm = :comm"), @namedquery(name = "emp.findbydeptno", query = "select e emp e e.deptno = :deptno")}) public class emp implements serializable { private static final long serialversionuid = 1l; // @max(value=?) @min(value=?)//if know range of decimal fields consider using these annotations enforce field validation @id @basic(optional = false) @notnull @column(name = "empno") private bigdecimal empno; @size(max = 10) @column(name = "ename") private string ename; @size(max = 9) @column(name = "job") private string job; @column(name = "mgr") private short mgr; @column(name = "hiredate") @temporal(temporaltype.timestamp) private date hiredate; @column(name = "sal") private bigdecimal sal; @column(name = "comm") private bigdecimal comm; @column(name = "deptno") private short deptno; public emp() { } public emp(bigdecimal empno) { this.empno = empno; } public bigdecimal getempno() { return empno; } public void setempno(bigdecimal empno) { this.empno = empno; } public string getename() { return ename; } public void setename(string ename) { this.ename = ename; } public string getjob() { return job; } public void setjob(string job) { this.job = job; } public short getmgr() { return mgr; } public void setmgr(short mgr) { this.mgr = mgr; } public date gethiredate() { return hiredate; } public void sethiredate(date hiredate) { this.hiredate = hiredate; } public bigdecimal getsal() { return sal; } public void setsal(bigdecimal sal) { this.sal = sal; } public bigdecimal getcomm() { return comm; } public void setcomm(bigdecimal comm) { this.comm = comm; } public short getdeptno() { return deptno; } public void setdeptno(short deptno) { this.deptno = deptno; } @override public int hashcode() { int hash = 0; hash += (empno != null ? empno.hashcode() : 0); return hash; } @override public boolean equals(object object) { // todo: warning - method won't work in case id fields not set if (!(object instanceof emp)) { return false; } emp other = (emp) object; if ((this.empno == null && other.empno != null) || (this.empno != null && !this.empno.equals(other.empno))) { return false; } return true; } @override public string tostring() { return "com.entity.emp[ empno=" + empno + " ]"; } }
persistence.xml
<?xml version="1.0" encoding="utf-8"?> <persistence version="2.1" xmlns="http://xmlns.jcp.org/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/xmlschema-instance" xsi:schemalocation="http://xmlns.jcp.org/xml/ns/persistence http://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd"> <persistence-unit name="samplebeanpu" transaction-type="jta"> <jta-data-source>jdbc/oracleds</jta-data-source> <class>com.entity.emp</class> <class>com.entity.dept</class> <properties> <property name="eclipselink.logging.level.sql" value="finest"/> </properties> </persistence-unit> </persistence>
after each clean , build
or compiling of file i'm getting above exception while accessing page. resolve issue each time have restart glassfish server. since, won't solution. so, me resolve issue ?
it seems resolved issue. found link
and added following code in class i'm creating instance of emf
@predestroy public void destruct() { emf.close(); }
and @override
servlet destroy
method , call above method. now, works.!!!
Comments
Post a Comment