从 WAS8.5 迁移到 WAS9 的 Openjpa 问题

问题描述

我们将 WebSphere 版本从 WAS8.5 升级WAS9,并且应用程序具有 spring 2.5、hibernate 3、struts 1.x并休眠为 ORM 和 WebSphere 服务器中的 JPA 提供程序设置为 com.ibm.websphere.persistence.PersistenceProviderImpl

版本是2.0。

当我们部署应用程序时,服务器抛出 Openjpa 错误,我们没有在应用程序的任何地方使用任何特定于 openjpa 的东西或 WebSphere 服务器中的任何特定设置。

以下是由于应用程序无法成功而导致的 openJpa 错误错误日志。请让我知道如何解决此问题,或者是否必须在服务器配置或任何其他级别检查某些内容

Caused by: <openjpa-2.2.3-SNAPSHOT-ra68a0f1 fatal user error> org.apache.openjpa.util.MetaDataException: The id class specified by type "class com.mazdausa.persistence.model.ContactUsRule" does not match the primary key fields of the class.  Make sure your identity class has the same primary keys as your persistent type,including pk field types. Mismatched property: "field"
                at org.apache.openjpa.Meta.ClassMetaData.validateAppIdClasspKs(ClassMetaData.java:2227)
                at org.apache.openjpa.Meta.ClassMetaData.validateAppIdClass(ClassMetaData.java:2071)
                at org.apache.openjpa.Meta.ClassMetaData.validateIdentity(ClassMetaData.java:2037)
                at org.apache.openjpa.Meta.ClassMetaData.validateMeta(ClassMetaData.java:1949)
                at org.apache.openjpa.Meta.ClassMetaData.resolve(ClassMetaData.java:1810)
                at org.apache.openjpa.Meta.MetaDataRepository.processBuffer(MetaDataRepository.java:829)
                at org.apache.openjpa.Meta.MetaDataRepository.resolveMeta(MetaDataRepository.java:726)
                at org.apache.openjpa.Meta.MetaDataRepository.resolve(MetaDataRepository.java:650)
                at org.apache.openjpa.Meta.MetaDataRepository.getMetaDataInternal(MetaDataRepository.java:418)
                at org.apache.openjpa.Meta.MetaDataRepository.getMetaData(MetaDataRepository.java:389)
                at org.apache.openjpa.enhance.PCEnhancer.<init>(PCEnhancer.java:285)
                at org.apache.openjpa.enhance.PCEnhancer.<init>(PCEnhancer.java:256)
                at org.apache.openjpa.enhance.PcclassFileTransformer.transform0(PcclassFileTransformer.java:151)
                at org.apache.openjpa.enhance.PcclassFileTransformer.transform(PcclassFileTransformer.java:128)
                at org.apache.openjpa.persistence.PersistenceProviderImpl$ClasstransformerImpl.transform(PersistenceProviderImpl.java:292)
                at com.ibm.ws.jpa.management.JPAPUnitInfo.transformClass(JPAPUnitInfo.java:1516)
                at com.ibm.ws.classloader.CompoundClassLoader._defineClass(CompoundClassLoader.java:876)
                at com.ibm.ws.classloader.CompoundClassLoader.localFindClass(CompoundClassLoader.java:759)
                at com.ibm.ws.classloader.CompoundClassLoader.loadClass(CompoundClassLoader.java:609)
                at java.lang.classLoader.loadClass(ClassLoader.java:872)
                at java.lang.class.forNameImpl(Native Method)
                at java.lang.class.forName(Class.java:337)
                at org.hibernate.util.ReflectHelper.classForName(ReflectHelper.java:192)
                at org.hibernate.ejb.packaging.NativeScanner.getClassesInJar(NativeScanner.java:136)
                at org.hibernate.ejb.Ejb3Configuration.addScannedEntries(Ejb3Configuration.java:478)
                at org.hibernate.ejb.Ejb3Configuration.scanForClasses(Ejb3Configuration.java:851)
                ... 89 more
                
Caused by: <openjpa-2.2.3-SNAPSHOT-ra68a0f1 fatal user error> org.apache.openjpa.util.MetaDataException: The id class specified by type "class com.mazdausa.persistence.model.ContactUsRule" does not match the primary key fields of the class.  Make sure your identity class has the same primary keys as your persistent type,including pk field types. Mismatched property: "field"

                at org.apache.openjpa.Meta.ClassMetaData.validateAppIdClasspKs(ClassMetaData.java:2227)
                at org.apache.openjpa.Meta.ClassMetaData.validateAppIdClass(ClassMetaData.java:2071)
                at org.apache.openjpa.Meta.ClassMetaData.validateIdentity(ClassMetaData.java:2037)
                at org.apache.openjpa.Meta.ClassMetaData.validateMeta(ClassMetaData.java:1949)
                at org.apache.openjpa.Meta.ClassMetaData.resolve(ClassMetaData.java:1810)
                at org.apache.openjpa.Meta.MetaDataRepository.processBuffer(MetaDataRepository.java:829)
                at org.apache.openjpa.Meta.MetaDataRepository.resolveMeta(MetaDataRepository.java:726)
                at org.apache.openjpa.Meta.MetaDataRepository.resolve(MetaDataRepository.java:650)
                at org.apache.openjpa.Meta.MetaDataRepository.getMetaDataInternal(MetaDataRepository.java:418)
                at org.apache.openjpa.Meta.MetaDataRepository.getMetaData(MetaDataRepository.java:389)
                at org.apache.openjpa.enhance.PCEnhancer.<init>(PCEnhancer.java:285)
                at org.apache.openjpa.enhance.PCEnhancer.<init>(PCEnhancer.java:256)
                at org.apache.openjpa.enhance.PcclassFileTransformer.transform0(PcclassFileTransformer.java:151)
                at org.apache.openjpa.enhance.PcclassFileTransformer.transform(PcclassFileTransformer.java:128)
                at org.apache.openjpa.persistence.PersistenceProviderImpl$ClasstransformerImpl.transform(PersistenceProviderImpl.java:292)
                at com.ibm.ws.jpa.management.JPAPUnitInfo.transformClass(JPAPUnitInfo.java:1516)
                at com.ibm.ws.classloader.CompoundClassLoader._defineClass(CompoundClassLoader.java:876)
                at com.ibm.ws.classloader.CompoundClassLoader.localFindClass(CompoundClassLoader.java:759)
                at com.ibm.ws.classloader.CompoundClassLoader.loadClass(CompoundClassLoader.java:609)
                at java.lang.classLoader.loadClass(ClassLoader.java:872)
                at java.lang.class.forNameImpl(Native Method)
                at java.lang.class.forName(Class.java:337)
                at org.hibernate.util.ReflectHelper.classForName(ReflectHelper.java:192)
                at org.hibernate.ejb.packaging.NativeScanner.getClassesInJar(NativeScanner.java:136)
                at org.hibernate.ejb.Ejb3Configuration.addScannedEntries(Ejb3Configuration.java:478)
                at org.hibernate.ejb.Ejb3Configuration.scanForClasses(Ejb3Configuration.java:851)
                ... 89 more
<openjpa-2.2.3-SNAPSHOT-ra68a0f1 fatal user error> org.apache.openjpa.util.MetaDataException: "com.mazdausa.persistence.model.Email.mailId" declares generator name "EmailSeq",but uses the AUTO generation type.  The only valid generator names under AUTO are "uuid-hex" and "uuid-string".

[5/14/21 16:16:18:656 PDT] 00000122 FfdcProvider  W com.ibm.ws.ffdc.impl.FfdcProvider logIncident FFDC1003I: FFDC Incident emitted on D:\WebSphere90\AppServer\profiles\ConsSrv01\logs\ffdc\ConsSrv01_595f9b5f_21.05.14_16.16.18.6532263116515879413762.txt com.ibm.ws.webcontainer.servlet.ServletInstance.init 181

[5/14/21 16:16:18:657 PDT] 00000122 ServletWrappe E com.ibm.ws.webcontainer.servlet.ServletWrapper init SRVE0271E: Uncaught init() exception created by servlet [ScheduledJobServlet] in application [MusaWebEAR]: <openjpa-2.2.3-SNAPSHOT-ra68a0f1 fatal user error> org.apache.openjpa.util.MetaDataException: "com.mazdausa.persistence.model.Email.mailId" declares generator name "EmailSeq",but uses the AUTO generation type.  The only valid generator names under AUTO are "uuid-hex" and "uuid-string".

                at org.apache.openjpa.persistence.AnnotationPersistenceMetaDataParser.getGeneratedValueStrategy(AnnotationPersistenceMetaDataParser.java:1413)
                at org.apache.openjpa.persistence.AnnotationPersistenceMetaDataParser.parseGeneratedValue(AnnotationPersistenceMetaDataParser.java:1368)
                at org.apache.openjpa.persistence.AnnotationPersistenceMetaDataParser.parseGeneratedValue(AnnotationPersistenceMetaDataParser.java:1360)
                at org.apache.openjpa.persistence.AnnotationPersistenceMetaDataParser.parseMemberAnnotations(AnnotationPersistenceMetaDataParser.java:1220)
                at org.apache.openjpa.persistence.AnnotationPersistenceMetaDataParser.parseClassAnnotations(AnnotationPersistenceMetaDataParser.java:690)
                at org.apache.openjpa.persistence.AnnotationPersistenceMetaDataParser.parse(AnnotationPersistenceMetaDataParser.java:415)
                at org.apache.openjpa.persistence.PersistenceMetaDataFactory.load(PersistenceMetaDataFactory.java:260)
                at org.apache.openjpa.Meta.MetaDataRepository.getMetaDataInternal(MetaDataRepository.java:587)
                at org.apache.openjpa.Meta.MetaDataRepository.getMetaDataInternal(MetaDataRepository.java:397)
                at org.apache.openjpa.Meta.MetaDataRepository.getMetaData(MetaDataRepository.java:389)
                at org.apache.openjpa.enhance.PCEnhancer.<init>(PCEnhancer.java:285)
                at org.apache.openjpa.enhance.PCEnhancer.<init>(PCEnhancer.java:256)
                at org.apache.openjpa.enhance.PcclassFileTransformer.transform0(PcclassFileTransformer.java:151)
                at org.apache.openjpa.enhance.PcclassFileTransformer.transform(PcclassFileTransformer.java:128)
                at org.apache.openjpa.persistence.PersistenceProviderImpl$ClasstransformerImpl.transform(PersistenceProviderImpl.java:292)
                at com.ibm.ws.jpa.management.JPAPUnitInfo.transformClass(JPAPUnitInfo.java:1516)
                at com.ibm.ws.classloader.CompoundClassLoader._defineClass(CompoundClassLoader.java:876)
                at com.ibm.ws.classloader.CompoundClassLoader.localFindClass(CompoundClassLoader.java:759)
                at com.ibm.ws.classloader.CompoundClassLoader.loadClass(CompoundClassLoader.java:609)
                at java.lang.classLoader.loadClass(ClassLoader.java:872)
                at com.mazdausa.util.ScheduledJobHelper.processFailedJob(ScheduledJobHelper.java:56)
                at com.mazdausa.util.ScheduledJobHelper.processFailedJob(ScheduledJobHelper.java:34)
                at com.mazdausa.consumer.marketing.web.application.ScheduledJobServlet.init(ScheduledJobServlet.java:107)
                at javax.servlet.GenericServlet.init(GenericServlet.java:244)
                at com.ibm.ws.webcontainer.servlet.ServletWrapper.init(ServletWrapper.java:342)
                at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.init(ServletWrapperImpl.java:169)
                at com.ibm.ws.webcontainer.servlet.ServletWrapper.loadOnStartupCheck(ServletWrapper.java:1376)
                at com.ibm.ws.webcontainer.webapp.WebApp.doLoadOnStartupActions(WebApp.java:673)
                at com.ibm.ws.webcontainer.webapp.WebApp.commonInitializationFinally(WebApp.java:639)
                at com.ibm.ws.webcontainer.webapp.WebAppImpl.initialize(WebAppImpl.java:454)
                at com.ibm.ws.webcontainer.webapp.WebGroupImpl.addWebApplication(WebGroupImpl.java:88)
                at com.ibm.ws.webcontainer.VirtualHostImpl.addWebApplication(VirtualHostImpl.java:171)
                at com.ibm.ws.webcontainer.WSWebContainer.addWebApp(WSWebContainer.java:904)
                at com.ibm.ws.webcontainer.WSWebContainer.addWebApplication(WSWebContainer.java:789)
                at com.ibm.ws.webcontainer.component.WebContainerImpl.install(WebContainerImpl.java:427)
                at com.ibm.ws.webcontainer.component.WebContainerImpl.start(WebContainerImpl.java:719)
                at com.ibm.ws.runtime.component.ApplicationMgrImpl.start(ApplicationMgrImpl.java:1249)
                at com.ibm.ws.runtime.component.DeployedApplicationImpl.fireDeployedobjectStart(DeployedApplicationImpl.java:1590)
                at com.ibm.ws.runtime.component.DeployedModuleImpl.start(DeployedModuleImpl.java:707)
                at com.ibm.ws.runtime.component.DeployedApplicationImpl.start(DeployedApplicationImpl.java:1161)
                at com.ibm.ws.runtime.component.ApplicationMgrImpl.startApplication(ApplicationMgrImpl.java:801)
                at com.ibm.ws.runtime.component.ApplicationMgrImpl.startApplicationDynamically(ApplicationMgrImpl.java:1451)
                at com.ibm.ws.runtime.component.ApplicationMgrImpl.start(ApplicationMgrImpl.java:2319)
                at com.ibm.ws.runtime.component.CompositionUnitMgrImpl.start(CompositionUnitMgrImpl.java:436)
                at com.ibm.ws.runtime.component.CompositionUnitImpl.start(CompositionUnitImpl.java:123)
                at com.ibm.ws.runtime.component.CompositionUnitMgrImpl.start(CompositionUnitMgrImpl.java:379)
                at com.ibm.ws.runtime.component.CompositionUnitMgrImpl.access$500(CompositionUnitMgrImpl.java:127)
                at com.ibm.ws.runtime.component.CompositionUnitMgrImpl$1.run(CompositionUnitMgrImpl.java:654)
                at com.ibm.ws.security.auth.ContextManagerImpl.runAs(ContextManagerImpl.java:5536)
                at com.ibm.ws.security.auth.ContextManagerImpl.runAsSystem(ContextManagerImpl.java:5662)
                at com.ibm.ws.security.core.SecurityContext.runAsSystem(SecurityContext.java:255)
                at com.ibm.ws.runtime.component.CompositionUnitMgrImpl.startCompositionUnit(CompositionUnitMgrImpl.java:668)
                at com.ibm.ws.runtime.component.CompositionUnitMgrImpl.startCompositionUnit(CompositionUnitMgrImpl.java:612)
               

Caused by: <openjpa-2.2.3-SNAPSHOT-ra68a0f1 fatal user error> org.apache.openjpa.util.MetaDataException: "com.mazdausa.persistence.model.Dealer.dealerId" declares generator name "DealerSeq",but uses the AUTO generation type.  The only valid generator names under AUTO are "uuid-hex" and "uuid-string".
                at org.apache.openjpa.persistence.AnnotationPersistenceMetaDataParser.getGeneratedValueStrategy(AnnotationPersistenceMetaDataParser.java:1413)
                at org.apache.openjpa.persistence.AnnotationPersistenceMetaDataParser.parseGeneratedValue(AnnotationPersistenceMetaDataParser.java:1368)
                at org.apache.openjpa.persistence.AnnotationPersistenceMetaDataParser.parseGeneratedValue(AnnotationPersistenceMetaDataParser.java:1360)
                at org.apache.openjpa.persistence.AnnotationPersistenceMetaDataParser.parseMemberAnnotations(AnnotationPersistenceMetaDataParser.java:1220)
                at org.apache.openjpa.persistence.AnnotationPersistenceMetaDataParser.parseClassAnnotations(AnnotationPersistenceMetaDataParser.java:690)
                at org.apache.openjpa.persistence.AnnotationPersistenceMetaDataParser.parse(AnnotationPersistenceMetaDataParser.java:415)
                at org.apache.openjpa.persistence.PersistenceMetaDataFactory.load(PersistenceMetaDataFactory.java:260)
                at org.apache.openjpa.Meta.MetaDataRepository.getMetaDataInternal(MetaDataRepository.java:587)
                at org.apache.openjpa.Meta.MetaDataRepository.getMetaDataInternal(MetaDataRepository.java:397)
                at org.apache.openjpa.Meta.MetaDataRepository.getMetaData(MetaDataRepository.java:389)
                at org.apache.openjpa.Meta.ValueMetaDataimpl.resolveDeclaredType(ValueMetaDataimpl.java:491)
                at org.apache.openjpa.Meta.ValueMetaDataimpl.resolve(ValueMetaDataimpl.java:470)
                at org.apache.openjpa.jdbc.Meta.ValueMappingImpl.resolve(ValueMappingImpl.java:508)
                at org.apache.openjpa.Meta.FieldMetaData.resolve(FieldMetaData.java:1881)
                at org.apache.openjpa.jdbc.Meta.FieldMapping.resolve(FieldMapping.java:460)
                at org.apache.openjpa.Meta.ClassMetaData.resolveMeta(ClassMetaData.java:1874)
                at org.apache.openjpa.Meta.ClassMetaData.resolve(ClassMetaData.java:1808)
                at org.apache.openjpa.Meta.MetaDataRepository.processBuffer(MetaDataRepository.java:829)
                at org.apache.openjpa.Meta.MetaDataRepository.resolveMeta(MetaDataRepository.java:726)
                at org.apache.openjpa.Meta.MetaDataRepository.resolve(MetaDataRepository.java:650)
            

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...