2015-09-11 321 views
4

我正試圖將簡單的SpringBoot應用程序轉換爲在WebLogic中部署。它在buildin TomCat服務器中運行良好。然後我對它進行更改並創建一個新的戰爭文件。當我嘗試部署war文件時,出現此錯誤。WebLogic - 在WebLogic Server中部署SpringBoot war

的WebLogic控制檯錯誤 WebLogic Console Error

的Servlet初始化爲web.xml中

package demo; 

import org.springframework.boot.builder.SpringApplicationBuilder; 
import org.springframework.boot.context.web.SpringBootServletInitializer; 

public class ServletInitializer extends SpringBootServletInitializer { 

    @Override 
    protected SpringApplicationBuilder configure(SpringApplicationBuilder application) { 
     return application.sources(SampleStsApplication.class); 
    } 

} 

Application.java文件

package demo; 

import org.springframework.boot.SpringApplication; 
import org.springframework.boot.autoconfigure.EnableAutoConfiguration; 
import org.springframework.boot.autoconfigure.SpringBootApplication; 
import org.springframework.boot.builder.SpringApplicationBuilder; 
import org.springframework.boot.context.web.SpringBootServletInitializer; 
import org.springframework.context.annotation.ComponentScan; 
import org.springframework.context.annotation.Configuration; 
import org.springframework.web.WebApplicationInitializer; 

@SpringBootApplication 
@Configuration 
@ComponentScan 
@EnableAutoConfiguration 
public class Application extends SpringBootServletInitializer implements 
     WebApplicationInitializer { 

    @Override 
    protected SpringApplicationBuilder configure(
      SpringApplicationBuilder application) { 
     return application.sources(Application.class); 
    } 

    public static void main(String[] args) { 
     SpringApplication.run(Application.class, args); 
    } 

} 

的pom.xml

<?xml version="1.0" encoding="UTF-8"?> 
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 
    <modelVersion>4.0.0</modelVersion> 

    <groupId>com.simplain.samplests</groupId> 
    <artifactId>demo</artifactId> 
    <version>0.0.1-SNAPSHOT</version> 
    <packaging>war</packaging> 

    <name>SampleSTS</name> 
    <description>Demo project for Spring Boot</description> 

    <parent> 
     <groupId>org.springframework.boot</groupId> 
     <artifactId>spring-boot-starter-parent</artifactId> 
     <version>1.2.5.RELEASE</version> 
     <relativePath /> <!-- lookup parent from repository --> 
    </parent> 

<properties> 
     <start-class>demo.Application</start-class> 
     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 
     <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> 
     <java.version>1.7</java.version> 
    </properties> 
    <repositories> 
     <repository> 
      <id>spring-snapshots</id> 
      <name>Spring Snapshots</name> 
      <url>http://repo.spring.io/snapshot</url> 
      <snapshots> 
       <enabled>true</enabled> 
      </snapshots> 
     </repository> 
     <repository> 
      <id>spring-milestones</id> 
      <name>Spring Milestones</name> 
      <url>http://repo.spring.io/milestone</url> 
      <snapshots> 
       <enabled>false</enabled> 
      </snapshots> 
     </repository> 
    </repositories> 
    <pluginRepositories> 
     <pluginRepository> 
      <id>spring-snapshots</id> 
      <name>Spring Snapshots</name> 
      <url>http://repo.spring.io/snapshot</url> 
      <snapshots> 
       <enabled>true</enabled> 
      </snapshots> 
     </pluginRepository> 
     <pluginRepository> 
      <id>spring-milestones</id> 
      <name>Spring Milestones</name> 
      <url>http://repo.spring.io/milestone</url> 
      <snapshots> 
       <enabled>false</enabled> 
      </snapshots> 
     </pluginRepository> 
    </pluginRepositories> 

    <dependencies> 
     <dependency> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot-starter-web</artifactId> 
     </dependency> 

<!--  <dependency> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot-starter-tomcat</artifactId> 
      <scope>provided</scope> 
     </dependency> --> 
     <dependency> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot-starter-test</artifactId> 
      <scope>test</scope> 
     </dependency> 
<!--  <dependency> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot-configuration-processor</artifactId> 
     </dependency> --> 
    </dependencies> 

    <build> 
     <plugins> 
<!--   <plugin> 
       <groupId>org.springframework.boot</groupId> 
       <artifactId>spring-boot-maven-plugin</artifactId> 
       <version>${spring-boot-version}</version> 
       <configuration> 
        <mainClass>demo.Application</mainClass> 
       </configuration> 
       <executions> 
        <execution> 
         <goals> 
          <goal>repackage</goal> 
         </goals> 
        </execution> 
       </executions> 
      </plugin> --> 
     </plugins> 
    </build> 


</project> 

weblogic.xml文件

<?xml version="1.0" encoding="UTF-8"?> 
<wls:weblogic-web-app 
    xmlns:wls="http://xmlns.oracle.com/weblogic/weblogic-web-app" 
    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/ejb-jar_3_0.xsd 
     http://xmlns.oracle.com/weblogic/weblogic-web-app 
     http://xmlns.oracle.com/weblogic/weblogic-web-app/1.4/weblogic-web-app.xsd"> 
    <wls:container-descriptor> 
     <wls:prefer-application-packages> 
      <wls:package-name>demo</wls:package-name> 
     </wls:prefer-application-packages> 
    </wls:container-descriptor> 
</wls:weblogic-web-app> 
< [有效] ExecuteThread: '4' 的隊列: 'weblogic.kernel.Default(自調諧)'> <> <> < 144201069 8389>
at weblogic.descriptor.internal.MarshallerFactory$1.createDescriptor(MarshallerFactory.java:161) 
    at weblogic.descriptor.BasicDescriptorManager.createDescriptor(BasicDescriptorManager.java:327) 
    at weblogic.application.descriptor.AbstractDescriptorLoader2.getDescriptorBeanFromReader(AbstractDescriptorLoader2.java:817) 
    at weblogic.application.descriptor.AbstractDescriptorLoader2.createDescriptorBean(AbstractDescriptorLoader2.java:415) 
    at weblogic.application.descriptor.AbstractDescriptorLoader2.loadDescriptorBeanWithoutPlan(AbstractDescriptorLoader2.java:779) 
    at weblogic.application.descriptor.AbstractDescriptorLoader2.loadDescriptorBean(AbstractDescriptorLoader2.java:792) 
    at weblogic.servlet.internal.fragment.WebFragmentLoader.getWebFragmentBean(WebFragmentLoader.java:36) 
    at weblogic.servlet.internal.fragment.WebFragmentManager.prepareForTopologicalSort(WebFragmentManager.java:164) 
    at weblogic.servlet.internal.fragment.WebFragmentManager.sortRelatively(WebFragmentManager.java:152) 
    at weblogic.servlet.internal.fragment.WebFragmentManager.sortFragments(WebFragmentManager.java:109) 
    at weblogic.servlet.internal.fragment.WebFragmentManager.<init>(WebFragmentManager.java:54) 
    at weblogic.servlet.internal.fragment.WebFragmentManager.<init>(WebFragmentManager.java:43) 
    at weblogic.servlet.tools.WARModule.initWebFragmentManager(WARModule.java:524) 
    at weblogic.servlet.tools.WARModule.merge(WARModule.java:549) 
    at weblogic.application.compiler.ToolsModuleWrapper.merge(ToolsModuleWrapper.java:96) 
    at weblogic.application.utils.CustomModuleManager.merge(CustomModuleManager.java:78) 
    at weblogic.application.compiler.flow.SingleModuleMergeFlow.proecessModule(SingleModuleMergeFlow.java:27) 
    at weblogic.application.compiler.flow.SingleModuleFlow.compile(SingleModuleFlow.java:63) 
    at weblogic.application.compiler.FlowDriver$FlowStateChange.next(FlowDriver.java:70) 
    at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:42) 
    at weblogic.application.compiler.FlowDriver.nextState(FlowDriver.java:37) 
    at weblogic.application.compiler.BaseMerger.merge(BaseMerger.java:20) 
    at weblogic.application.compiler.flow.AppMergerFlow.mergeInput(AppMergerFlow.java:75) 
    at weblogic.application.compiler.flow.AppMergerFlow.compile(AppMergerFlow.java:40) 
    at weblogic.application.compiler.FlowDriver$FlowStateChange.next(FlowDriver.java:70) 
    at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:42) 
    at weblogic.application.compiler.FlowDriver.nextState(FlowDriver.java:37) 
    at weblogic.application.compiler.AppMerge.runBody(AppMerge.java:144) 
    at weblogic.utils.compiler.Tool.run(Tool.java:158) 
    at weblogic.utils.compiler.Tool.run(Tool.java:115) 
    at weblogic.application.compiler.AppMerge.merge(AppMerge.java:156) 
    at weblogic.deploy.api.internal.utils.AppMerger.merge(AppMerger.java:94) 
    at weblogic.deploy.api.internal.utils.AppMerger.getMergedApp(AppMerger.java:58) 
    at weblogic.deploy.api.model.internal.WebLogicDeployableObjectFactoryImpl.createDeployableObject(WebLogicDeployableObjectFactoryImpl.java:182) 
    at weblogic.deploy.api.model.internal.WebLogicDeployableObjectFactoryImpl.createLazyDeployableObject(WebLogicDeployableObjectFactoryImpl.java:157) 
    at weblogic.deploy.api.tools.SessionHelper.inspect(SessionHelper.java:698) 
    at com.bea.console.actions.app.install.Flow$2.execute(Flow.java:476) 
    at com.bea.console.utils.DeploymentUtils.runDeploymentAction(DeploymentUtils.java:5157) 
    at com.bea.console.actions.app.install.Flow.appSelected(Flow.java:474) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.lang.reflect.Method.invoke(Method.java:606) 
    at org.apache.beehive.netui.pageflow.FlowController.invokeActionMethod(FlowController.java:870) 
    at org.apache.beehive.netui.pageflow.FlowController.getActionMethodForward(FlowController.java:809) 
    at org.apache.beehive.netui.pageflow.FlowController.internalExecute(FlowController.java:478) 
    at org.apache.beehive.netui.pageflow.PageFlowController.internalExecute(PageFlowController.java:306) 
    at org.apache.beehive.netui.pageflow.FlowController.execute(FlowController.java:336) 
    at org.apache.beehive.netui.pageflow.internal.FlowControllerAction.execute(FlowControllerAction.java:52) 
    at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431) 
    at org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.access$201(PageFlowRequestProcessor.java:97) 
    at org.apache.beehive.netui.pageflow.PageFlowRequestProcessor$ActionRunner.execute(PageFlowRequestProcessor.java:2044) 
    at org.apache.beehive.netui.pageflow.interceptor.action.internal.ActionInterceptors$WrapActionInterceptorChain.continueChain(ActionInterceptors.java:64) 
    at 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) 
    at org.apache.beehive.netui.pageflow.interceptor.action.internal.ActionInterceptors$WrapActionInterceptorChain.continueChain(ActionInterceptors.java:58) 
    at org.apache.beehive.netui.pageflow.interceptor.action.internal.ActionInterceptors.wrapAction(ActionInterceptors.java:87) 
    at org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.processActionPerform(PageFlowRequestProcessor.java:2116) 
    at com.bea.console.internal.ConsolePageFlowRequestProcessor.processActionPerform(ConsolePageFlowRequestProcessor.java:264) 
    at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236) 
    at org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.processInternal(PageFlowRequestProcessor.java:556) 
    at org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.process(PageFlowRequestProcessor.java:853) 
    at org.apache.beehive.netui.pageflow.AutoRegisterActionServlet.process(AutoRegisterActionServlet.java:631) 
    at org.apache.beehive.netui.pageflow.PageFlowActionServlet.process(PageFlowActionServlet.java:158) 
    at com.bea.console.internal.ConsoleActionServlet.process(ConsoleActionServlet.java:262) 
    at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414) 
    at com.bea.console.internal.ConsoleActionServlet.doGet(ConsoleActionServlet.java:134) 
    at org.apache.beehive.netui.pageflow.PageFlowUtils.strutsLookup(PageFlowUtils.java:1199) 
    at org.apache.beehive.netui.pageflow.PageFlowUtils.strutsLookup(PageFlowUtils.java:1129) 
    at com.bea.portlet.adapter.scopedcontent.framework.internal.PageFlowUtilsBeehiveDelegate.strutsLookupInternal(PageFlowUtilsBeehiveDelegate.java:43) 
    at com.bea.portlet.adapter.scopedcontent.framework.PageFlowUtils.strutsLookup(PageFlowUtils.java:108) 
    at com.bea.portlet.adapter.scopedcontent.ScopedContentCommonSupport.executeAction(ScopedContentCommonSupport.java:707) 
    at com.bea.portlet.adapter.scopedcontent.ScopedContentCommonSupport.processActionInternal(ScopedContentCommonSupport.java:141) 
    at com.bea.portlet.adapter.scopedcontent.PageFlowStubImpl.processAction(PageFlowStubImpl.java:108) 
    at com.bea.portlet.adapter.NetuiActionHandler.raiseScopedAction(NetuiActionHandler.java:111) 
    at com.bea.netuix.servlets.controls.content.NetuiContent.raiseScopedAction(NetuiContent.java:181) 
    at com.bea.netuix.servlets.controls.content.NetuiContent.raiseScopedAction(NetuiContent.java:167) 
    at com.bea.netuix.servlets.controls.content.NetuiContent.handlePostbackData(NetuiContent.java:225) 
    at com.bea.netuix.nf.ControlLifecycle$2.visit(ControlLifecycle.java:180) 
    at 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(ControlTreeWalker.java:334) 
    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(ControlTreeWalker.java:334) 
    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(ControlTreeWalker.java:334) 
    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(ControlTreeWalker.java:334) 
    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(ControlTreeWalker.java:334) 
    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(ControlTreeWalker.java:334) 
    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(ControlTreeWalker.java:334) 
    at com.bea.netuix.nf.ControlTreeWalker.walk(ControlTreeWalker.java:130) 
    at com.bea.netuix.nf.Lifecycle.processLifecycles(Lifecycle.java:399) 
    at 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:465) 
    at com.bea.netuix.servlets.manager.UIServlet.doPost(UIServlet.java:291) 
    at com.bea.netuix.servlets.manager.UIServlet.service(UIServlet.java:219) 
    at com.bea.netuix.servlets.manager.SingleFileServlet.service(SingleFileServlet.java:275) 
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:844) 
    at com.bea.console.utils.MBeanUtilsInitSingleFileServlet.service(MBeanUtilsInitSingleFileServlet.java:64) 
    at weblogic.servlet.AsyncInitServlet.service(AsyncInitServlet.java:125) 
    at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:280) 
    at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:254) 
    at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:136) 
    at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:346) 
    at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:25) 
    at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:79) 
    at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27) 
    at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:79) 
    at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3436) 
    at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3402) 
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321) 
    at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120) 
    at weblogic.servlet.provider.WlsSubjectHandle.run(WlsSubjectHandle.java:57) 
    at weblogic.servlet.internal.WebAppServletContext.doSecuredExecute(WebAppServletContext.java:2285) 
    at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2201) 
    at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2179) 
    at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1572) 
    at weblogic.servlet.provider.ContainerSupportProviderImpl$WlsRequestExecutor.run(ContainerSupportProviderImpl.java:255) 
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:311) 
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:263) 

所致:com.bea.xml.XmlException:未能加載Java類型對應於E = web的片段@http://xmlns.jcp.org/xml/ns/javaee 在com.bea.staxb.runtime.internal.UnmarshalResult.getPojoBindingType(UnmarshalResult.java:371) at com.bea.staxb.runtime.internal.UnmarshalResult.determineTypeForGlobalElement(UnmarshalResult.java:326) at com.bea.staxb.runtime.internal.UnmarshalResult.determineTypeForGlobalElement(UnmarshalResult.java:336) at com.bea.staxb。 runtime.internal.UnmarshalResult.determineRootType(UnmarshalResult.java:317) at com.bea.staxb.runtime.internal.UnmarshalResult.unmarshalDocument(UnmarshalResult.java:168) at com.bea.staxb.runtime.internal.UnmarshallerImpl。解組(UnmarshallerImpl.java:67) 在weblogic.descriptor.internal.MarshallerFactory $ 1.createDescriptor(MarshallerFactory.java:150) ... 133多個

+0

你還可以添加你的** web.xml **嗎? – kvatashydze

+1

我沒有web.xml。我用java代碼設置它。我也在這裏添加了java代碼。 –

+0

但* war *模塊需要** web.xml *。 – kvatashydze

回答