1

我需要帮助在 jdeveloper 11g 中编译我的项目。以前我的应用程序(jsp+servlets)在 jdeveloper 10g 和 oc4j 中运行顺利(部署在 WAR 文件中)。但由于我迁移到 jdeveloper 11g,它出现了几个这样的错误:

<Nov 27, 2009 1:13:50 PM WIT> <Error> <Deployer> <BEA-149265> <Failure occurred in the execution of deployment request with ID '1259302429721' for task '2'. Error is: 'java.lang.ClassNotFoundException: oracle.dmt.op.re.base.Enum$EnumType'
java.lang.ClassNotFoundException: oracle.dmt.op.re.base.Enum$EnumType
 at weblogic.utils.classloaders.GenericClassLoader.findLocalClass(GenericClassLoader.java:296)
 at weblogic.utils.classloaders.GenericClassLoader.findClass(GenericClassLoader.java:269)
 at weblogic.utils.classloaders.ChangeAwareClassLoader.findClass(ChangeAwareClassLoader.java:56)
 at java.lang.ClassLoader.loadClass(ClassLoader.java:319)
 at java.lang.ClassLoader.loadClass(ClassLoader.java:254)
 Truncated. see log file for complete stacktrace

Caused By: java.lang.ClassNotFoundException: oracle.dmt.op.re.base.Enum$EnumType
 at weblogic.utils.classloaders.GenericClassLoader.findLocalClass(GenericClassLoader.java:296)
 at weblogic.utils.classloaders.GenericClassLoader.findClass(GenericClassLoader.java:269)
 at weblogic.utils.classloaders.ChangeAwareClassLoader.findClass(ChangeAwareClassLoader.java:56)
 at java.lang.ClassLoader.loadClass(ClassLoader.java:319)
 at java.lang.ClassLoader.loadClass(ClassLoader.java:254)
 Truncated. see log file for complete stacktrace
> 
<Nov 27, 2009 1:13:50 PM WIT> <Warning> <Deployer> <BEA-149004> <Failures were detected while initiating deploy task for application 'TA_HelpDesk'.> 
<Nov 27, 2009 1:13:50 PM WIT> <Warning> <Deployer> <BEA-149078> <Stack trace for message 149004
java.lang.ClassNotFoundException: oracle.dmt.op.re.base.Enum$EnumType
 at weblogic.utils.classloaders.GenericClassLoader.findLocalClass(GenericClassLoader.java:296)
 at weblogic.utils.classloaders.GenericClassLoader.findClass(GenericClassLoader.java:269)
 at weblogic.utils.classloaders.ChangeAwareClassLoader.findClass(ChangeAwareClassLoader.java:56)
 at java.lang.ClassLoader.loadClass(ClassLoader.java:319)
 at java.lang.ClassLoader.loadClass(ClassLoader.java:254)
 Truncated. see log file for complete stacktrace

Caused By: java.lang.ClassNotFoundException: oracle.dmt.op.re.base.Enum$EnumType
 at weblogic.utils.classloaders.GenericClassLoader.findLocalClass(GenericClassLoader.java:296)
 at weblogic.utils.classloaders.GenericClassLoader.findClass(GenericClassLoader.java:269)
 at weblogic.utils.classloaders.ChangeAwareClassLoader.findClass(ChangeAwareClassLoader.java:56)
 at java.lang.ClassLoader.loadClass(ClassLoader.java:319)
 at java.lang.ClassLoader.loadClass(ClassLoader.java:254)
 Truncated. see log file for complete stacktrace
> 
[01:13:50 PM] ####  Deployment incomplete.  ####
[01:13:50 PM] Remote deployment failed (oracle.jdevimpl.deploy.common.Jsr88RemoteDeployer)
#### Cannot run application TA_HelpDesk due to error deploying to IntegratedWebLogicServer.
[Application TA_HelpDesk stopped and undeployed from Server Instance IntegratedWebLogicServer]
<Nov 27, 2009 1:16:55 PM WIT> <Error> <Deployer> <BEA-149265> <Failure occurred in the execution of deployment request with ID '1259302613288' for task '3'. Error is: 'java.lang.ClassNotFoundException: oracle.dmt.op.re.base.Enum$EnumType'
java.lang.ClassNotFoundException: oracle.dmt.op.re.base.Enum$EnumType
 at weblogic.utils.classloaders.GenericClassLoader.findLocalClass(GenericClassLoader.java:296)
 at weblogic.utils.classloaders.GenericClassLoader.findClass(GenericClassLoader.java:269)
 at java.lang.ClassLoader.loadClass(ClassLoader.java:319)
 at java.lang.ClassLoader.loadClass(ClassLoader.java:254)
 at weblogic.utils.classloaders.GenericClassLoader.loadClass(GenericClassLoader.java:177)
 Truncated. see log file for complete stacktrace

Caused By: java.lang.ClassNotFoundException: oracle.dmt.op.re.base.Enum$EnumType
 at weblogic.utils.classloaders.GenericClassLoader.findLocalClass(GenericClassLoader.java:296)
 at weblogic.utils.classloaders.GenericClassLoader.findClass(GenericClassLoader.java:269)
 at java.lang.ClassLoader.loadClass(ClassLoader.java:319)
 at java.lang.ClassLoader.loadClass(ClassLoader.java:254)
 at weblogic.utils.classloaders.GenericClassLoader.loadClass(GenericClassLoader.java:177)
 Truncated. see log file for complete stacktrace
> 
<Nov 27, 2009 1:16:55 PM WIT> <Warning> <Deployer> <BEA-149004> <Failures were detected while initiating deploy task for application 'helpdesk'.> 
<Nov 27, 2009 1:16:55 PM WIT> <Warning> <Deployer> <BEA-149078> <Stack trace for message 149004
java.lang.ClassNotFoundException: oracle.dmt.op.re.base.Enum$EnumType
 at weblogic.utils.classloaders.GenericClassLoader.findLocalClass(GenericClassLoader.java:296)
 at weblogic.utils.classloaders.GenericClassLoader.findClass(GenericClassLoader.java:269)
 at java.lang.ClassLoader.loadClass(ClassLoader.java:319)
 at java.lang.ClassLoader.loadClass(ClassLoader.java:254)
 at weblogic.utils.classloaders.GenericClassLoader.loadClass(GenericClassLoader.java:177)
 Truncated. see log file for complete stacktrace

Caused By: java.lang.ClassNotFoundException: oracle.dmt.op.re.base.Enum$EnumType
 at weblogic.utils.classloaders.GenericClassLoader.findLocalClass(GenericClassLoader.java:296)
 at weblogic.utils.classloaders.GenericClassLoader.findClass(GenericClassLoader.java:269)
 at java.lang.ClassLoader.loadClass(ClassLoader.java:319)
 at java.lang.ClassLoader.loadClass(ClassLoader.java:254)
 at weblogic.utils.classloaders.GenericClassLoader.loadClass(GenericClassLoader.java:177)
 Truncated. see log file for complete stacktrace
> 

并且错误编译是:

Warning: <Nov 27, 2009 1:16:44 PM WIT> <Error> <J2EE> <BEA-160187> <weblogic.appc failed to compile your application. Recompile with the -verbose option for more details. Please see the error message(s) below.> 
Warning: There are 1 nested errors:
Warning: weblogic.servlet.internal.dd.compliance.ComplianceException: The element servlet-class, "helpdesk_project.CaptchaServiceSingleton" must be a subclass of "javax.servlet.Servlet".
Warning:  at weblogic.servlet.internal.dd.compliance.BaseComplianceChecker.addDescriptorError(BaseComplianceChecker.java:74)
Warning:  at weblogic.servlet.internal.dd.compliance.BaseComplianceChecker.addDescriptorError(BaseComplianceChecker.java:80)
Warning:  at weblogic.servlet.internal.dd.compliance.BaseComplianceChecker.isClassAssignable(BaseComplianceChecker.java:149)
Warning:  at weblogic.servlet.internal.dd.compliance.ServletComplianceChecker.checkServlet(ServletComplianceChecker.java:104)
Warning:  at weblogic.servlet.internal.dd.compliance.ServletComplianceChecker.check(ServletComplianceChecker.java:42)
Warning:  at weblogic.servlet.internal.dd.compliance.ComplianceUtils.checkCompliance(ComplianceUtils.java:48)
Warning:  at weblogic.servlet.jsp.JspcInvoker.checkCompliance(JspcInvoker.java:145)
Warning:  at weblogic.servlet.jsp.JspcInvoker.compile(JspcInvoker.java:198)
Warning:  at weblogic.application.compiler.AppcUtils.compileWAR(AppcUtils.java:377)
Warning:  at weblogic.application.compiler.WARModule.compile(WARModule.java:236)
Warning:  at weblogic.application.compiler.flow.SingleModuleCompileFlow.proecessModule(SingleModuleCompileFlow.java:18)
Warning:  at weblogic.application.compiler.flow.SingleModuleFlow.compile(SingleModuleFlow.java:37)
Warning:  at weblogic.application.compiler.FlowDriver$FlowStateChange.next(FlowDriver.java:69)
Warning:  at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:83)
Warning:  at weblogic.application.compiler.FlowDriver.nextState(FlowDriver.java:36)
Warning:  at weblogic.application.compiler.FlowDriver.run(FlowDriver.java:26)
Warning:  at weblogic.application.compiler.WARCompiler.compile(WARCompiler.java:29)
Warning:  at weblogic.application.compiler.flow.AppCompilerFlow.compileInput(AppCompilerFlow.java:112)
Warning:  at weblogic.application.compiler.flow.AppCompilerFlow.compile(AppCompilerFlow.java:37)
Warning:  at weblogic.application.compiler.Appc.runBody(Appc.java:200)
Warning:  at weblogic.utils.compiler.Tool.run(Tool.java:158)
Warning:  at weblogic.utils.compiler.Tool.run(Tool.java:115)
Warning:  at weblogic.application.compiler.Appc.main(Appc.java:259)
Warning:  at weblogic.appc.main(appc.java:14)

然后部署过程以不完整状态结束。那我该怎么办?多谢。

4

2 回答 2

3

看起来您oracle.dmt.op.re.base.Enum在类路径中丢失了,因此:

java.lang.ClassNotFoundException: oracle.dmt.op.re.base.Enum$EnumType

添加${ORACLE_HOME}/dmt/oputil.jar和/或${ORACLE_HOME}/dmt/opreapi-batch.jar在您的类路径上(不确定哪一个包含缺少的类,但无论如何它们经常一起使用)。

然后,重新运行 appc 作为第二个错误(helpdesk_project.CaptchaServiceSingleton可能与第一个问题有关。

于 2009-11-27T21:37:52.967 回答
1

似乎找不到此类:java.lang.ClassNotFoundException: oracle.dmt.op.re.base.Enum$EnumType

还需要包含上面的类,你需要找到一个包含该类的 jar。

于 2009-11-27T08:32:03.237 回答