Java 不推荐使用weblogic.ejbc编译器:weblogic 12c中的EJB应用程序部署
我将EJB2.1、JDK1.6与WebLogic11g一起用于应用程序开发。我最新了解的是在WebLogic12c中部署应用程序的过程 正如我从在线源代码中了解到的,我需要JDK1.7和更高版本才能在WebLogic12c中运行应用程序。当我使用JDK1.7或更高版本编译EJB2.1时,我还遇到了以下错误Java 不推荐使用weblogic.ejbc编译器:weblogic 12c中的EJB应用程序部署,java,ejb,weblogic,weblogic12c,weblogic11g,Java,Ejb,Weblogic,Weblogic12c,Weblogic11g,我将EJB2.1、JDK1.6与WebLogic11g一起用于应用程序开发。我最新了解的是在WebLogic12c中部署应用程序的过程 正如我从在线源代码中了解到的,我需要JDK1.7和更高版本才能在WebLogic12c中运行应用程序。当我使用JDK1.7或更高版本编译EJB2.1时,我还遇到了以下错误 DEPRECATED: The weblogic.ejbc compiler is deprecated and will be removed in a future version of
DEPRECATED: The weblogic.ejbc compiler is deprecated and will be removed in a future version of WebLogic Server. Please use weblogic.appc instead.
java.lang.NoSuchMethodError: weblogic.xml.babel.baseparser.BaseParser.setMaxAttrsPerElement(I)V
at weblogic.xml.stax.XMLStreamReaderBase.prime(XMLStreamReaderBase.java:89)
at weblogic.xml.stax.XMLStreamReaderBase.setInput(XMLStreamReaderBase.java:148)
at weblogic.xml.stax.XMLStreamInputFactory.createXMLStreamReader(XMLStreamInputFactory.java:322)
at weblogic.xml.stax.XMLStreamInputFactory.createXMLStreamReader(XMLStreamInputFactory.java:54)
at weblogic.application.descriptor.BasicMunger2.<init>(BasicMunger2.java:96)
at weblogic.application.descriptor.BasicMunger2.<init>(BasicMunger2.java:114)
at weblogic.application.descriptor.VersionMunger.<init>(VersionMunger.java:79)
at weblogic.application.descriptor.VersionMunger.<init>(VersionMunger.java:63)
at weblogic.application.descriptor.VersionMunger.<init>(VersionMunger.java:45)
at weblogic.ejb.container.metadata.EjbJarReader.<init>(EjbJarReader.java:46)
at weblogic.ejb.container.metadata.EjbJarLoader.createXMLStreamReader(EjbJarLoader.java:49)
at weblogic.application.descriptor.AbstractDescriptorLoader2.createDescriptorBean(AbstractDescriptorLoader2.java:438)
at weblogic.application.descriptor.AbstractDescriptorLoader2.loadDescriptorBeanWithoutPlan(AbstractDescriptorLoader2.java:832)
at weblogic.application.descriptor.AbstractDescriptorLoader2.loadDescriptorBean(AbstractDescriptorLoader2.java:841)
at weblogic.ejb.container.metadata.EjbDescriptorReaderImpl.processEjbJarXML(EjbDescriptorReaderImpl.java:440)
at weblogic.ejb.container.metadata.EjbDescriptorReaderImpl.createReadOnlyDescriptorFromJarFile(EjbDescriptorReaderImpl.java:263)
at weblogic.ejb.container.metadata.EjbDescriptorReaderImpl.createReadOnlyDescriptorFromJarFile(EjbDescriptorReaderImpl.java:250)
at weblogic.ejb.spi.EjbDescriptorFactory.createReadOnlyDescriptorFromJarFile(EjbDescriptorFactory.java:92)
at weblogic.ejbc20.getDescriptorFromJar(ejbc20.java:683)
at weblogic.ejbc20.runBody(ejbc20.java:455)
at weblogic.utils.compiler.Tool.run(Tool.java:159)
at weblogic.utils.compiler.Tool.run(Tool.java:116)
at weblogic.ejbc.main(ejbc.java:36)
at BuildEjbs.main(BuildEjbs.java:97)
Exception in thread "main" java.lang.NoSuchMethodError: weblogic.xml.babel.baseparser.BaseParser.setMaxAttrsPerElement(I)V
at weblogic.xml.stax.XMLStreamReaderBase.prime(XMLStreamReaderBase.java:89)
at weblogic.xml.stax.XMLStreamReaderBase.setInput(XMLStreamReaderBase.java:148)
at weblogic.xml.stax.XMLStreamInputFactory.createXMLStreamReader(XMLStreamInputFactory.java:322)
at weblogic.xml.stax.XMLStreamInputFactory.createXMLStreamReader(XMLStreamInputFactory.java:54)
at weblogic.application.descriptor.BasicMunger2.<init>(BasicMunger2.java:96)
at weblogic.application.descriptor.BasicMunger2.<init>(BasicMunger2.java:114)
at weblogic.application.descriptor.VersionMunger.<init>(VersionMunger.java:79)
at weblogic.application.descriptor.VersionMunger.<init>(VersionMunger.java:63)
at weblogic.application.descriptor.VersionMunger.<init>(VersionMunger.java:45)
at weblogic.ejb.container.metadata.EjbJarReader.<init>(EjbJarReader.java:46)
at weblogic.ejb.container.metadata.EjbJarLoader.createXMLStreamReader(EjbJarLoader.java:49)
at weblogic.application.descriptor.AbstractDescriptorLoader2.createDescriptorBean(AbstractDescriptorLoader2.java:438)
at weblogic.application.descriptor.AbstractDescriptorLoader2.loadDescriptorBeanWithoutPlan(AbstractDescriptorLoader2.java:832)
at weblogic.application.descriptor.AbstractDescriptorLoader2.loadDescriptorBean(AbstractDescriptorLoader2.java:841)
at weblogic.ejb.container.metadata.EjbDescriptorReaderImpl.processEjbJarXML(EjbDescriptorReaderImpl.java:440)
at weblogic.ejb.container.metadata.EjbDescriptorReaderImpl.createReadOnlyDescriptorFromJarFile(EjbDescriptorReaderImpl.java:263)
at weblogic.ejb.container.metadata.EjbDescriptorReaderImpl.createReadOnlyDescriptorFromJarFile(EjbDescriptorReaderImpl.java:250)
at weblogic.ejb.spi.EjbDescriptorFactory.createReadOnlyDescriptorFromJarFile(EjbDescriptorFactory.java:92)
at weblogic.ejbc20.getDescriptorFromJar(ejbc20.java:683)
at weblogic.ejbc20.runBody(ejbc20.java:455)
at weblogic.utils.compiler.Tool.run(Tool.java:159)
at weblogic.utils.compiler.Tool.run(Tool.java:116)
at weblogic.ejbc.main(ejbc.java:36)
at BuildEjbs.main(BuildEjbs.java:97)
Going to the <application> build directory
Deleting JAR files
*****FINISHED JAR AND EJBC FOR ALL THE EJBS*****
已弃用:weblogic.ejbc编译器已弃用,将在未来版本的weblogic Server中删除。请改用weblogic.appc。
java.lang.NoSuchMethodError:weblogic.xml.babel.baseparser.baseparser.setMaxAttrsPerElement(I)V
位于weblogic.xml.stax.XMLStreamReaderBase.prime(XMLStreamReaderBase.java:89)
在weblogic.xml.stax.XMLStreamReaderBase.setInput(XMLStreamReaderBase.java:148)
在weblogic.xml.stax.XMLStreamInputFactory.createXMLStreamReader(XMLStreamInputFactory.java:322)上
在weblogic.xml.stax.XMLStreamInputFactory.createXMLStreamReader上(XMLStreamInputFactory.java:54)
位于weblogic.application.descriptor.BasicMunger2.(BasicMunger2.java:96)
位于weblogic.application.descriptor.BasicMunger2.(BasicMunger2.java:114)
位于weblogic.application.descriptor.VersionMunger.(VersionMunger.java:79)
位于weblogic.application.descriptor.VersionMunger.(VersionMunger.java:63)
位于weblogic.application.descriptor.VersionMunger.(VersionMunger.java:45)
位于weblogic.ejb.container.metadata.ejbjareader.(ejbjareader.java:46)
位于weblogic.ejb.container.metadata.EjbJarLoader.createXMLStreamReader(EjbJarLoader.java:49)
在weblogic.application.descriptor.AbstractDescriptorLoader2.createDescriptorBean(AbstractDescriptorLoader2.java:438)
位于weblogic.application.descriptor.AbstractDescriptorLoader2.loadDescriptorBeanWithoutPlan(AbstractDescriptorLoader2.java:832)
位于weblogic.application.descriptor.AbstractDescriptorLoader2.loadDescriptorBean(AbstractDescriptorLoader2.java:841)
位于weblogic.ejb.container.metadata.EjbDescriptorReaderImpl.processEjbJarXML(EjbDescriptorReaderImpl.java:440)
位于weblogic.ejb.container.metadata.EjbDescriptorReaderImpl.createReadOnlyDescriptorFromJarFile(EjbDescriptorReaderImpl.java:263)
位于weblogic.ejb.container.metadata.EjbDescriptorReaderImpl.createReadOnlyDescriptorFromJarFile(EjbDescriptorReaderImpl.java:250)
在weblogic.ejb.spi.EjbDescriptorFactory.createReadOnlyDescriptorFromJarFile(EjbDescriptorFactory.java:92)中
位于weblogic.ejbc20.getDescriptorFromJar(ejbc20.java:683)
位于weblogic.ejbc20.runBody(ejbc20.java:455)
位于weblogic.utils.compiler.Tool.run(Tool.java:159)
位于weblogic.utils.compiler.Tool.run(Tool.java:116)
位于weblogic.ejbc.main(ejbc.java:36)
位于BuildEjbs.main(BuildEjbs.java:97)
线程“main”java.lang.NoSuchMethodError中出现异常:weblogic.xml.babel.baseparser.baseparser.setMaxAttrsPerrelation(I)V
位于weblogic.xml.stax.XMLStreamReaderBase.prime(XMLStreamReaderBase.java:89)
在weblogic.xml.stax.XMLStreamReaderBase.setInput(XMLStreamReaderBase.java:148)
在weblogic.xml.stax.XMLStreamInputFactory.createXMLStreamReader(XMLStreamInputFactory.java:322)上
在weblogic.xml.stax.XMLStreamInputFactory.createXMLStreamReader上(XMLStreamInputFactory.java:54)
位于weblogic.application.descriptor.BasicMunger2.(BasicMunger2.java:96)
位于weblogic.application.descriptor.BasicMunger2.(BasicMunger2.java:114)
位于weblogic.application.descriptor.VersionMunger.(VersionMunger.java:79)
位于weblogic.application.descriptor.VersionMunger.(VersionMunger.java:63)
位于weblogic.application.descriptor.VersionMunger.(VersionMunger.java:45)
位于weblogic.ejb.container.metadata.ejbjareader.(ejbjareader.java:46)
位于weblogic.ejb.container.metadata.EjbJarLoader.createXMLStreamReader(EjbJarLoader.java:49)
在weblogic.application.descriptor.AbstractDescriptorLoader2.createDescriptorBean(AbstractDescriptorLoader2.java:438)
位于weblogic.application.descriptor.AbstractDescriptorLoader2.loadDescriptorBeanWithoutPlan(AbstractDescriptorLoader2.java:832)
位于weblogic.application.descriptor.AbstractDescriptorLoader2.loadDescriptorBean(AbstractDescriptorLoader2.java:841)
位于weblogic.ejb.container.metadata.EjbDescriptorReaderImpl.processEjbJarXML(EjbDescriptorReaderImpl.java:440)
位于weblogic.ejb.container.metadata.EjbDescriptorReaderImpl.createReadOnlyDescriptorFromJarFile(EjbDescriptorReaderImpl.java:263)
位于weblogic.ejb.container.metadata.EjbDescriptorReaderImpl.createReadOnlyDescriptorFromJarFile(EjbDescriptorReaderImpl.java:250)
在weblogic.ejb.spi.EjbDescriptorFactory.createReadOnlyDescriptorFromJarFile(EjbDescriptorFactory.java:92)中
位于weblogic.ejbc20.getDescriptorFromJar(ejbc20.java:683)
位于weblogic.ejbc20.runBody(ejbc20.java:455)
位于weblogic.utils.compiler.Tool.run(Tool.java:159)
位于weblogic.utils.compiler.Tool.run(Tool.java:116)
位于weblogic.ejbc.main(ejbc.java:36)
位于BuildEjbs.main(BuildEjbs.java:97)
转到生成目录
删除JAR文件
*****完成了所有EJB的JAR和EJBC*****
有没有可能通过不推荐的方式用JDK 1.6或最低版本编译EJB 2.1?我们使用的是在jdk1.6上编译并部署在weblogic 12c JDK 1.7上的EJB 3.0。我们没有遇到任何类似的问题。它工作得非常好。我认为您需要对部署描述符进行更改。 您可以尝试使用weblogic文档中定义的描述符。
我们使用的是在jdk1.6上编译并部署在weblogic 12c jdk 1.7上的ejb 3.0。我们没有遇到任何类似的问题。它工作得非常好。我认为您需要更改部署描述符。 您可以尝试使用weblogic文档中定义的描述符。
为什么不直接用jdk 5编译,然后用jdk 7运行呢?有依赖项b