首页 文章

将ear文件部署到weblogic 10g

提问于
浏览
4

我用java ee编写了项目 . 通过使用java ee版本6.当我尝试将我的ear文件部署到weblogic 10g时,我收到以下错误:

我怎样才能实现它?如何正确部署文件?

无法访问所选应用程序 . weblogic.descriptor.DescriptorException:Unmarshaller的失败在weblogic.descriptor.internal.MarshallerFactory $ 1.createDescriptor(MarshallerFactory例外在进展AppMerge流在AppMerge流动进展例外:在解析为1BB.ear应用程序描述符[J2EE 160161]错误 . java:152)at weblogic.descriptor.BasicDescriptorManager.createDescriptor(BasicDescriptorManager.java:306)at weblogic.application.descriptor.AbstractDescriptorLoader2.getDescriptorBeanFromReader(AbstractDescriptorLoader2.java:788)at weblogic.application.descriptor.AbstractDescriptorLoader2.createDescriptorBean(AbstractDescriptorLoader2.java :409)at weblogic.application.application.descriptor.AbstractDescriptorLoader2.loadDescriptorBean(AbstractDescriptorLoader2.java:768)weblogic.application.descriptor.AbstractDescriptorLoader2.loadDescriptorBeanWithoutPlan(AbstractDescriptorLoader2.java:759)at weblogic.application.ApplicationDescriptor.getWeblogicApplicationDescriptor(ApplicationDescriptor.jav) a:339)at weblogic.application.complication.Complication.Clax.application.appD.sx上的weblogic.application.application.complication.AppcUtils.setDDs(AppcUtils.java:142)中的weblogic.application.compiler.CompilerCtx.setApplicationDescriptor(CompilerCtx.java:139) (DescriptorParsingFlow.java:57)在weblogic.application.compiler.FlowDriver $ FlowStateChange.next(FlowDriver.java:69)在weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:37)在weblogic.application.compiler . weblogic.application中的weblogic.application.application.compiler.adge上的weblogic.application.complication.compiler(ReadOnlyEarMerger.merge(ReadOnlyEarMerger.java:49)中的weblogic.application.compiler.FlowDriver $ CompilerFlowDriver.compile(FlowDriver.java:96)中的FlowDriver.nextState(FlowDriver.java:36) .compiler.flow.AppMergerFlow.mergeInput(AppMergerFlow.java:94)在weblogic.application.compiler.flow.AppMergerFlow.compile(AppMergerFlow.java:47)在weblogic.application.compiler.FlowDriver $ FlowStateChange.next(FlowDriver.java :69)在weblogic.application.utils.StateMachineDriver.nextStat E(StateMachineDriver.java:37)在weblogic.application.compiler.FlowDriver.nextState(FlowDriver.java:36)在weblogic.application.compiler.FlowDriver $ CompilerFlowDriver.compile(FlowDriver.java:96)在weblogic.application.compiler .AppMerge.runBody(AppMerge.java:157)在weblogic.utils.compiler.Tool.run(Tool.java:158)在weblogic.utils.compiler.Tool.run(Tool.java:115)在weblogic.application . compiler.AppMerge.merge(AppMerge.java:169)在weblogic.deploy.api.internal.utils.AppMerger.merge(AppMerger.java:88)在weblogic.deploy.api.internal.utils.AppMerger.getMergedApp(AppMerger . java:63)at weblogic.deploy.api.model.internal.WebLogicDeployableObjectFactoryImpl.createDeployableObject(WebLogicDeployableObjectFactoryImpl.java:181)at weblogic.deploy.api.model.internal.WebLogicDeployableObjectFactoryImpl.createLazyDeployableObject(WebLogicDeployableObjectFactoryImpl.java:156)at weblogic.deploy .api.tools.SessionHelper.inspect(SessionHelper.java:661)at com.bea.console.actions.app.install.Flow $ 2.exe可爱(Flow.java:463)在com.bea.console.utils.DeploymentUtils.runDeploymentAction(DeploymentUtils.java:4625)在com.bea.console.actions.app.install.Flow.appSelected(Flow.java:461)在sun.reflect.GeneratedMethodAccessor1036.invoke(未知来源)在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)在java.lang.reflect.Method.invoke(Method.java:597)在org.apache.beehive .netui.pageflow.FlowController.invokeActionMethod(FlowController.java:870)在org.apache.beehive.netui.pageflow.FlowController.getActionMethodForward(FlowController.java:809)在org.apache.beehive.netui.pageflow.FlowController.internalExecute (FlowController.java:478)在org.apache.beehive.netui.pageflow.PageFlowController.internalExecute(PageFlowController.java:306)在org.apache.beehive.netui.pageflow.FlowController.execute(FlowController.java:336)在Org.apache.trache.truts.action.Reaction上的org.apache.beehive.netui.pageflow.internal.FlowControllerAction.execute(FlowControllerAction.java:52)位于org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.access $ 201(PageFlowRequestProcessor.java:97)的tProcessor.processActionPerform(RequestProcessor.java:431)atorg.apache.beehive.netui.pageflow.PageFlowRequestProcessor $ ActionRunner.execute(PageFlowRequestProcessor.java:2044)org.apache.beehive.netui.pageflow.interceptor.action.internal.ActionInterceptors $ WrapActionInterceptorChain.continueChain(ActionInterceptors.java:64 )org.apache.beehive.netui.pageflow.interceptor.action.ActionInterceptor.wrapAction(ActionInterceptor.java:184)at org.apache.beehive.netui.pageflow.interceptor.action.internal.ActionInterceptors $ WrapActionInterceptorChain.invoke(ActionInterceptors) .java:50)org.apache.beehive.netui.pageflow.interceptor.action.internal.ActionInterceptors $ WrapActionInterceptorChain.continueChain(ActionInterceptors.java:58)at org.apache.beehive.netui.pageflow.interceptor.action.internal位于com.bea.console.internal.ConsolePageFlowRequestProcessor.processActionPerf的org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.processActionPerform(PageFlowRequestProcessor.java:2116)的.ActionInterceptors.wrapAction(ActionInterceptors.java:87) orm(ConsolePageFlowRequestProcessor.java:255)org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.processInternal(PageFlowRequestProcessor.java:556)org位于org.apache.beehive.netui.pageflow的org.apache.beehive.netui.pageflow.AutoRegisterActionServlet.process(AutoRegisterActionServlet.java:631)上的.apache.beehive.netui.pageflow.PageFlowRequestProcessor.process(PageFlowRequestProcessor.java:853) .PageFlowActionServlet.process(PageFlowActionServlet.java:158)位于org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)的com.bea.console.internal.ConsoleActionServlet.process(ConsoleActionServlet.java:256) Com.bea.console.internal.ConsoleActionServlet.doGet(ConsoleActionServlet.java:133)位于com.bea.portlet.adapter.scopedcontent的org.apache.beehive.netui.pageflow.PageFlowUtils.strutsLookup(PageFlowUtils.java:1199) . ScopedContentCommonSupport.executeAction(ScopedContentCommonSupport.java:6 86)com.bea.port上的com.bea.portlet.adapter.scopedcontent.ScopedContentCommonSupport.processActionInternal(ScopedContentCommonSupport.java:142)com.bea.port上的com.bea.portlet.adapter.scopedcontent.PageFlowStubImpl.processAction(PageFlowStubImpl.java:106) .adapter.NetuiActionHandler.raiseScopedAction(NetuiActionHandler.java:111)位于com.bea.netuix.servlets.controls.content.NetuiContent的com.bea.netuix.servlets.controls.content.NetuiContent.raiseScopedAction(NetuiContent.java:181) .raiseScopedAction(NetuiContent.java:167)com.bea.netuix.servlets.controls.content.NetuiContent.handlePostbackData(NetuiContent.java:225)at com.bea.netuix.nf.ControlLifecycle $ 2.visit(ControlLifecycle.java: 180)com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:324)at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)at com.bea.netuix.nf.ControlTreeWalker .walkRecursive(ControlTreeWalker.java:334)at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWa) lker.java:334)com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)位于com.bea.netuix的com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334) .nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)位于com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334) )com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)位于com.bea.netuix.nf.ControlTreeWalker的com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334) . walkRecursive(ControlTreeWalker.java:334)位于com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)的com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)com.bea位于com.bea.ne的com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)的.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334) tuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)位于com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)的com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java: 334)com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)at com.bea.netuix.nf.ControlTreeWalker .walkRecursive(ControlTreeWalker.java:334)atcom.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)位于com.bea.netuix.nf.ControlTreeWalker.walk(ControlTreeWalker.java:130)com.bea.netuix.nf.Lifecycle.processLifecycles( Lifecycle.java:395)com.bea.netuix.nf.Lifecycle.processLifecycles(Lifecycle.java:361)at com.bea.netuix.nf.Lifecycle.processLifecycles(Lifecycle.java:352)at com.bea.netuix .nf.Lifecycle.runInbound(Lifecycle.java:184)at com.bea.netuix.nf.Lifecycle.run(Lifecycle.java:159)at com.bea.netuix.servlets.manager.UIServlet.runLifecycle(UIServlet.java) :388)com.bea.netuix.servlets.manager.UIServlet.doPost(UIServlet.java:258)com.bea上的com.bea.netuix.servlets.manager.UIServlet.service(UIServlet.java:199) . netuix.servlets.manager.SingleFileServlet.service(SingleFileServlet.java:251)位于com.bea.console.utils.MBeanUtilsInitSingleFileServlet.service的javax.servlet.http.HttpServlet.service(HttpServlet.java:820)中(MBeanUtilsInitSingleFileServlet.java: 54)在weblogic.servlet.AsyncInitServlet.service (AsyncInitServlet.java:130)weblogic.servial.StubSecurityHelper $ ServletServiceAction.run(StubSecurityHelper.java:227)位于weblogic.servlet.internal上的weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125) . ServletStubImpl.execute(ServletStubImpl.java:292)位于weblogic.servlet上的weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:42)的weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)位于weblogic的weblogic.servlet.internal.WebAppServletContext $ ServletInvocationAction.run(WebAppServletContext.java:3496)的weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:42)中的.RequestEventsFilter.doFilter(RequestEventsFilter.java:27) . weblogic上的weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2180)中的weblogic.security.service.SecurityManager.runAs(未知来源)中的security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321) . servlet.i nirty.WebAppServletContext.execute(WebAppServletContext.java:2086)位于weblogic.work.ExecuteThread.exe(ExecuteThread.java:201)weblogic.work.ExecuteThread上的weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1406) .run(ExecuteThread.java:173)引起:com.bea.xml.XmlException:无法加载与e = weblogic-application @ http://xmlns.oracle.com/weblogic/weblogic-application对应的java类型.bea.staxb.runtime.internal.UnmarshalResult.getPojoBindingType(UnmarshalResult.java:361)位于com.bea.staxb.runtime.internal的com.bea.staxb.runtime.internal.UnmarshalResult.determineTypeForGlobalElement(UnmarshalResult.java:316)位于com.bea.staxb.runtime.internal.UnmarshalResult.determineRootType(UnmarshalResult.java:307)的com.bea.staxb.runtime.internal.UnmarshalResult.unmarshalDocument(UnmarshalResult.java)中的.UnmarshalResult.determineTypeForGlobalElement(UnmarshalResult.java:326) :158)at com.bea.staxb.runtime.internal.UnmarshallerImpl.unmarshal(UnmarshallerImp) l.java:65)at weblogic.descriptor.internal.MarshallerFactory $ 1.createDescriptor(MarshallerFactory.java:141)... 119更多 .

这是我的weblogic-application.xml文件:

<?xml version="1.0" encoding="UTF-8"?>
<weblogic-application xmlns="http://xmlns.oracle.com/weblogic/weblogic-application" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/javaee_5.xsd http://xmlns.oracle.com/weblogic/weblogic-application http://xmlns.oracle.com/weblogic/weblogic-application/1.0/weblogic-application.xsd"/>

3 回答

  • 0

    尝试将3个文件添加到EAR:

    1) META-INF\application.xml

    <?xml version="1.0" encoding="ASCII"?>
    <application xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:application="http://java.sun.com/xml/ns/javaee/application_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/application_5.xsd" version="5">
      <display-name>My App</display-name>
      <module>
        <ejb>appEJB.jar</ejb>
      </module>
      <module>
        <web>
          <web-uri>app.war</web-uri>
          <context-root>app</context-root>
        </web>
      </module>
    </application>
    

    2) META-INF\weblogic-application.xml

    <?xml version="1.0" encoding="UTF-8"?>
    <wls:weblogic-application xmlns:wls="http://xmlns.oracle.com/weblogic/weblogic-application" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/javaee_5.xsd http://xmlns.oracle.com/weblogic/weblogic-application http://xmlns.oracle.com/weblogic/weblogic-application/1.0/weblogic-application.xsd">
        <!--weblogic-version:10.3.2-->
        <wls:application-param>
            <wls:param-name>webapp.encoding.default</wls:param-name>
            <wls:param-value>UTF-8</wls:param-value>
        </wls:application-param>
    </wls:weblogic-application>
    

    3) META-INF\MANIFEST.MF

    Manifest-Version: 1.0
    Class-Path: 
    Weblogic-Application-Version: 1.0
    
  • 0

    在两种情况下可能出现此错误,

    • web.xml文件已损坏

    • web.xml文件中缺少任何配置 .

    • web-app标签可能未正确定义,具体取决于您的项目 .

    在我的情况下,错误原因是第一点 .

  • 0

    尝试保留web.xml @WebContent而不是WEB-INF(如果是这种情况) . 这解决了我的问题 .

相关问题