2014-03-25 36 views
0

在Weblogic 10.3.4上部署我的Web服务应用程序时出现错误。将Web应用程序从Tomcat 7.2迁移到Weblogic 10.3时出错

我已将Web应用程序版本从3.0更改为2.5,因为它在Weblogic 10.3版本中不受支持。

部署应用程序时获取以下例外:

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'com.sun.xml.ws.transport.http.servlet.SpringBinding#0' defined in ServletContext resource [/WEB-INF/applicationContext.xml]: Cannot create inner bean '(inner bean)' of type [org.jvnet.jax_ws_commons.spring.SpringService] while setting bean property 'service'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name '(inner bean)': FactoryBean threw exception on object creation; nested exception is java.lang.NoSuchMethodError: com.sun.xml.ws.server.EndpointFactory.verifyImplementorClass(Ljava/lang/Class;Lcom/sun/xml/ws/api/databinding/MetadataReader;)Z 
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveInnerBean(BeanDefinitionValueResolver.java:282) 
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:126) 
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1387) 
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1128) 
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:519) 
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:458) 
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:295) 
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:223) 
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:292) 
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:194) 
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:626) 
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:932) 
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:479) 
at org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:389) 
at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:294) 
at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:112) 
at com.oracle.weblogic.wsee.wrapper.org.springframework.web.context.ContextLoaderListener.contextInitialized(Unknown Source) 
at weblogic.servlet.internal.EventsManager$FireContextListenerAction.run(EventsManager.java:481) 
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321) 
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120) 
at weblogic.servlet.internal.EventsManager.notifyContextCreatedEvent(EventsManager.java:181) 
at weblogic.servlet.internal.WebAppServletContext.preloadResources(WebAppServletContext.java:1872) 
at weblogic.servlet.internal.WebAppServletContext.start(WebAppServletContext.java:3153) 
at weblogic.servlet.internal.WebAppModule.startContexts(WebAppModule.java:1508) 
at weblogic.servlet.internal.WebAppModule.start(WebAppModule.java:482) 
at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:425) 
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52) 
at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:119) 
at weblogic.application.internal.flow.ScopedModuleDriver.start(ScopedModuleDriver.java:200) 
at weblogic.application.internal.flow.ModuleListenerInvoker.start(ModuleListenerInvoker.java:247) 
at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:425) 
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52) 
at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:119) 
at weblogic.application.internal.flow.StartModulesFlow.activate(StartModulesFlow.java:27) 
at weblogic.application.internal.BaseDeployment$2.next(BaseDeployment.java:636) 
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52) 
at weblogic.application.internal.BaseDeployment.activate(BaseDeployment.java:205) 
at weblogic.application.internal.SingleModuleDeployment.activate(SingleModuleDeployment.java:43) 
at weblogic.application.internal.DeploymentStateChecker.activate(DeploymentStateChecker.java:161) 
at weblogic.deploy.internal.targetserver.AppContainerInvoker.activate(AppContainerInvoker.java:79) 
at weblogic.deploy.internal.targetserver.BasicDeployment.activate(BasicDeployment.java:184) 
at weblogic.deploy.internal.targetserver.BasicDeployment.activateFromServerLifecycle(BasicDeployment.java:361) 
at weblogic.management.deploy.internal.DeploymentAdapter$1.doActivate(DeploymentAdapter.java:51) 
at weblogic.management.deploy.internal.DeploymentAdapter.activate(DeploymentAdapter.java:200) 
at weblogic.management.deploy.internal.AppTransition$2.transitionApp(AppTransition.java:30) 
at weblogic.management.deploy.internal.ConfiguredDeployments.transitionApps(ConfiguredDeployments.java:240) 
at weblogic.management.deploy.internal.ConfiguredDeployments.activate(ConfiguredDeployments.java:169) 
at weblogic.management.deploy.internal.ConfiguredDeployments.deploy(ConfiguredDeployments.java:123) 
at weblogic.management.deploy.internal.DeploymentServerService.resume(DeploymentServerService.java:180) 
at weblogic.management.deploy.internal.DeploymentServerService.start(DeploymentServerService.java:96) 
at weblogic.t3.srvr.SubsystemRequest.run(SubsystemRequest.java:64) 
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:207) 
at weblogic.work.ExecuteThread.run(ExecuteThread.java:176) 

网。 XML是

<?xml version="1.0" encoding="UTF-8"?> 
<!-- <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0"> --> 
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
     xmlns="http://java.sun.com/xml/ns/javaee" 
     xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" 
     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
          http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" 
     id="WebApp_ID" version="2.5"> 
    <display-name>SpringWS</display-name> 
    <servlet> 
    <servlet-name>jaxws-servlet</servlet-name> 
    <servlet-class> 
         com.sun.xml.ws.transport.http.servlet.WSSpringServlet 
       </servlet-class> 
    </servlet> 
    <servlet-mapping> 
    <servlet-name>jaxws-servlet</servlet-name> 
    <url-pattern>/jaxws-spring</url-pattern> 
    </servlet-mapping> 
    <listener> 
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> 
    </listener> 
    </web-app> 

Spring配置内容是

<?xml version="1.0" encoding="UTF-8"?> 
<beans xmlns="http://www.springframework.org/schema/beans" 
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
     xmlns:context="http://www.springframework.org/schema/context" 
     xmlns:ws="http://jax-ws.dev.java.net/spring/core" 
     xmlns:wss="http://jax-ws.dev.java.net/spring/servlet" 
     xsi:schemaLocation="http://www.springframework.org/schema/beans 
     http://www.springframework.org/schema/beans/spring-beans-2.5.xsd 
     http://jax-ws.dev.java.net/spring/core 
     http://jax-ws.java.net/spring/core.xsd 
     http://jax-ws.dev.java.net/spring/servlet 
     http://jax-ws.java.net/spring/servlet.xsd"> 




    <wss:binding url="/jaxws-spring"> 
     <wss:service> 
      <ws:service bean="#multipleResponseWS"/> 

     </wss:service> 
    </wss:binding> 
+0

Spring配置文件的代码片段后解决 – Nagesh

回答

0

问题是在weblogic.xml指定以下片断

<wls:container-descriptor> 
    <wls:prefer-application-packages> 
     <wls:package-name>com.sun.xml.ws.server</wls:package-name> 
    </wls:prefer-application-packages> 
    </wls:container-descriptor> 
相关问题