hi,
ich hab da folgendes problem.
Ich hab eine Dao klasse, wie folgt:
und wann immer ich diese update (egal wie; kann auch nur ein leerzeichen und save sein),
muss ich Glassfish (v3) neustarten, damit es geht.
ohne neustart bekomme ich nämlich jedes mal den fehler
laut ein wenig recherche könnte es ein classloader problem sein, aber ich hab noch keine lösung gefunden...wüßte da jemand darüber bescheid oder hat schon mal ähnliches problem gehabt? danke
ich hab da folgendes problem.
Ich hab eine Dao klasse, wie folgt:
Java:
public class UserDaoImpl extends GenericDaoImpl<Person1> implements IUserDao {
public Person1 findByLogin(String login) {
Query query = null;
EntityManagerFactory emf = Persistence.createEntityManagerFactory("web-jpaPU");
EntityManager em = emf.createEntityManager();
query = em.createQuery("select e from Person1 e where e.loginId=:" + Parameter.LOGINID, Person1.class);
query.setParameter(Parameter.LOGINID, login);
return (Person1) query.getSingleResult();
}
}
und wann immer ich diese update (egal wie; kann auch nur ein leerzeichen und save sein),
muss ich Glassfish (v3) neustarten, damit es geht.
ohne neustart bekomme ich nämlich jedes mal den fehler
Java:
[#|2010-11-27T03:47:11.484+0100|WARNING|glassfish3.0.1|javax.enterprise.system.container.web.com.sun.enterprise.web|_ThreadID=30;_ThreadName=Thread-1;|StandardWrapperValve[FrontController]: PWC1406: Servlet.service() for servlet FrontController threw exception
java.lang.ClassCastException: at.swa.domain.Person1 cannot be cast to at.swa.domain.Person1
at at.swa.persistence.impl.UserDaoImpl.findByLogin(UserDaoImpl.java:34)
at at.swa.command.impl.LoginCommand.process(LoginCommand.java:31)
at at.swa.frontcontroller.FrontController.processRequest(FrontController.java:48)
at at.swa.frontcontroller.FrontController.doPost(FrontController.java:82)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:754)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1523)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:279)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:188)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:641)
at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:97)
at com.sun.enterprise.web.PESessionLockingStandardPipeline.invoke(PESessionLockingStandardPipeline.java:85)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:185)
at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:325)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:226)
at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:165)
at com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:791)
at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:693)
at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:954)
at com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:170)
at com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:135)
at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:102)
at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:88)
at com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:76)
at com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:53)
at com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:57)
at com.sun.grizzly.ContextTask.run(ContextTask.java:69)
at com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:330)
at com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:309)
at java.lang.Thread.run(Thread.java:619)
|#]
laut ein wenig recherche könnte es ein classloader problem sein, aber ich hab noch keine lösung gefunden...wüßte da jemand darüber bescheid oder hat schon mal ähnliches problem gehabt? danke