[opencms-dev] Antwort: Re: Antwort: Re: Update OpenCMS 10.5 to 11.0.1 - NoClassDefFoundError
martin.rosenthal at oerag.de
martin.rosenthal at oerag.de
Fri Jul 17 12:16:13 CEST 2020
Hello Michael and Stefan,
thank you for your help. I found the reason for the error. We are using a
custom OpenCMS module which contains als class for creating
EntityManagerFactory for the Application. This calls will be loaded by an
annotation @WebListener.
@WebListener
public class EMF implements ServletContextListener {
private static EntityManagerFactory emf;
@Override
public void contextInitialized(ServletContextEvent event) {
emf = Persistence.createEntityManagerFactory("xxxxxx");
ServiceFactory.initializeServiceFactory(emf);
}
@Override
public void contextDestroyed(ServletContextEvent event) {
if (emf != null) {
emf.close();
}
}
public static EntityManager createEntityManager() {
if (emf == null) {
throw new IllegalStateException("Context is not initialized yet."
);
}
return emf.createEntityManager();
}
public static EntityManagerFactory getEntityManagerFactory() {
return emf;
}
As persistence provide we are using
org.apache.openjpa.persistence.PersistenceProviderImpl in the
persistence.xml file. The db2 driver deliverd by OpenCMS works fine. The
only problem is to get the above shown class working on startup. I've
copied the openjpa-2.4.0.jar in the lib directory but it has no effect. I
get the same error. I think i must write a new class for creating
EntityManagerFactory .
Regards,
Martin
Von: Stephan Schrader <zstephanz at gmail.com>
An: The OpenCms mailing list <opencms-dev at opencms.org>
Datum: 17.07.2020 10:32
Betreff: Re: [opencms-dev] Antwort: Re: Update OpenCMS 10.5 to 11.0.1 -
NoClassDefFoundError
Gesendet von: opencms-dev-bounces at opencms.org
Hi Martin,
I would say, it depends. If you have custom classes referencing
javax.persistence.EntityManagerFactory then copy the missing JARs (OpenJPA
or Hibernate) to the WEB-INF/lib folder or update the dependency management
in your build tool. But this depends on your setup.
If you used the OpenCms JPA DB driver before, then you need to configure
the non JPA DB driver as Michael mentioned.
https://documentation.opencms.org/javadoc/core/org/opencms/db/db2/package-summary.html
Stephan
Am Fr., 17. Juli 2020 um 07:02 Uhr schrieb <martin.rosenthal at oerag.de>:
Hello Stephan,
thanks for your reply. It's really strange. What can i / should use
instead
of JPA???
Regards,
Martin
Von: Stephan Schrader <zstephanz at gmail.com>
An: The OpenCms mailing list <opencms-dev at opencms.org>
Datum: 16.07.2020 20:37
Betreff: Re: [opencms-dev] Update OpenCMS 10.5 to 11.0.1 -
NoClassDefFoundError
Gesendet von: opencms-dev-bounces at opencms.org
Hi Martin,
the JPA support has been removed with commit:
https://github.com/alkacon/opencms-core/commit/375c6bf71f645a84d9121d84beb75c111bc5734a
. Unfortunately I haven't found any reason.
Stephan
Am Do., 16. Juli 2020 um 12:15 Uhr schrieb <martin.rosenthal at oerag.de
>:
Hello,
i'm trying to upgrade my local OpenCMS developer system from
OpenCMS
10.5
to 11.0.1. It is actually running on Windows 10, Oracle Java 8
in a
Tomcat
9.0.30. As database i'm using IBM DB2 v.10.5.0.9 .
After copying the files from the upgrade package in my
installation
directory als described in the readme-file, OpenCMS isn't
starting
After a
few seconds i get the error:
SCHWERWIEGEND: Error deploying web application directory
[D:\apache-tomcat-9.0.30\webapps\web]
java.lang.IllegalStateException: Error starting child
at
org.apache.catalina.core.ContainerBase.addChildInternal
(ContainerBase.java:720)
at org.apache.catalina.core.ContainerBase.addChild
(ContainerBase.java:690)
at org.apache.catalina.core.StandardHost.addChild
(StandardHost.java:705)
at
org.apache.catalina.startup.HostConfig.deployDirectory
(HostConfig.java:1133)
at org.apache.catalina.startup.HostConfig
$DeployDirectory.run
(HostConfig.java:1867)
at java.util.concurrent.Executors$RunnableAdapter.call
(Executors.java:511)
at java.util.concurrent.FutureTask.run
(FutureTask.java:266)
at
org.apache.tomcat.util.threads.InlineExecutorService.execute
(InlineExecutorService.java:75)
at java.util.concurrent.AbstractExecutorService.submit
(AbstractExecutorService.java:112)
at
org.apache.catalina.startup.HostConfig.deployDirectories
(HostConfig.java:1045)
at org.apache.catalina.startup.HostConfig.deployApps
(HostConfig.java:429)
at org.apache.catalina.startup.HostConfig.start
(HostConfig.java:1576)
at
org.apache.catalina.startup.HostConfig.lifecycleEvent
(HostConfig.java:309)
at
org.apache.catalina.util.LifecycleBase.fireLifecycleEvent
(LifecycleBase.java:123)
at
org.apache.catalina.util.LifecycleBase.setStateInternal
(LifecycleBase.java:423)
at org.apache.catalina.util.LifecycleBase.setState
(LifecycleBase.java:366)
at org.apache.catalina.core.ContainerBase.startInternal
(ContainerBase.java:936)
at org.apache.catalina.core.StandardHost.startInternal
(StandardHost.java:841)
at org.apache.catalina.util.LifecycleBase.start
(LifecycleBase.java:183)
at org.apache.catalina.core.ContainerBase
$StartChild.call
(ContainerBase.java:1384)
at org.apache.catalina.core.ContainerBase
$StartChild.call
(ContainerBase.java:1374)
at java.util.concurrent.FutureTask.run
(FutureTask.java:266)
at
org.apache.tomcat.util.threads.InlineExecutorService.execute
(InlineExecutorService.java:75)
at java.util.concurrent.AbstractExecutorService.submit
(AbstractExecutorService.java:134)
at org.apache.catalina.core.ContainerBase.startInternal
(ContainerBase.java:909)
at
org.apache.catalina.core.StandardEngine.startInternal
(StandardEngine.java:262)
at org.apache.catalina.util.LifecycleBase.start
(LifecycleBase.java:183)
at
org.apache.catalina.core.StandardService.startInternal
(StandardService.java:421)
at org.apache.catalina.util.LifecycleBase.start
(LifecycleBase.java:183)
at
org.apache.catalina.core.StandardServer.startInternal
(StandardServer.java:930)
at org.apache.catalina.util.LifecycleBase.start
(LifecycleBase.java:183)
at org.apache.catalina.startup.Catalina.start
(Catalina.java:633)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
Method)
at sun.reflect.NativeMethodAccessorImpl.invoke
(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke
(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.catalina.startup.Bootstrap.start
(Bootstrap.java:343)
at org.apache.catalina.startup.Bootstrap.main
(Bootstrap.java:474)
Caused by: org.apache.catalina.LifecycleException: Failed to
start
component [StandardEngine[Catalina].StandardHost
[localhost].StandardContext
[/web]]
at
org.apache.catalina.util.LifecycleBase.handleSubClassException
(LifecycleBase.java:440)
at org.apache.catalina.util.LifecycleBase.start
(LifecycleBase.java:198)
at
org.apache.catalina.core.ContainerBase.addChildInternal
(ContainerBase.java:717)
... 37 more
Caused by: java.lang.NoClassDefFoundError:
Ljavax/persistence/EntityManagerFactory;
at java.lang.Class.getDeclaredFields0(Native Method)
at java.lang.Class.privateGetDeclaredFields
(Class.java:2583)
at java.lang.Class.getDeclaredFields(Class.java:1916)
at
org.apache.catalina.util.Introspection.getDeclaredFields
(Introspection.java:110)
at
org.apache.catalina.startup.WebAnnotationSet.loadFieldsAnnotation
(WebAnnotationSet.java:269)
at
org.apache.catalina.startup.WebAnnotationSet.loadApplicationListenerAnnotations
(WebAnnotationSet.java:89)
at
org.apache.catalina.startup.WebAnnotationSet.loadApplicationAnnotations
(WebAnnotationSet.java:67)
at
org.apache.catalina.startup.ContextConfig.applicationAnnotationsConfig
(ContextConfig.java:330)
at
org.apache.catalina.startup.ContextConfig.configureStart
(ContextConfig.java:777)
at
org.apache.catalina.startup.ContextConfig.lifecycleEvent
(ContextConfig.java:301)
at
org.apache.catalina.util.LifecycleBase.fireLifecycleEvent
(LifecycleBase.java:123)
at
org.apache.catalina.core.StandardContext.startInternal
(StandardContext.java:5051)
at org.apache.catalina.util.LifecycleBase.start
(LifecycleBase.java:183)
... 38 more
Caused by: java.lang.ClassNotFoundException:
javax.persistence.EntityManagerFactory
at
org.apache.catalina.loader.WebappClassLoaderBase.loadClass
(WebappClassLoaderBase.java:1365)
at
org.apache.catalina.loader.WebappClassLoaderBase.loadClass
(WebappClassLoaderBase.java:1188)
... 51 more
Has anyone the same problem or an idea, what could be the
reason?
Thanks and regards,
Martin Rosenthal
_______________________________________________
This mail is sent to you from the opencms-dev mailing list
To change your list options, or to unsubscribe from the list,
please
visit
http://lists.opencms.org/cgi-bin/mailman/listinfo/opencms-dev
_______________________________________________
This mail is sent to you from the opencms-dev mailing list
To change your list options, or to unsubscribe from the list,
please
visit
http://lists.opencms.org/cgi-bin/mailman/listinfo/opencms-dev
_______________________________________________
This mail is sent to you from the opencms-dev mailing list
To change your list options, or to unsubscribe from the list, please
visit
http://lists.opencms.org/cgi-bin/mailman/listinfo/opencms-dev
_______________________________________________
This mail is sent to you from the opencms-dev mailing list
To change your list options, or to unsubscribe from the list, please
visit
http://lists.opencms.org/cgi-bin/mailman/listinfo/opencms-dev
More information about the opencms-dev
mailing list