最近研究cxf的webservice,遇到了一个问题就是在tomcat下可以发布,但是移到weblogic上就报错:
严重: Context initialization failed
org.springframework.beans.factory.BeanCreationException: Error creating bean wit
h name 'checkCode': Invocation of init method failed; nested exception is javax.
xml.ws.WebServiceException: java.lang.IllegalArgumentException: Cannot create UR
L for this address soap.udp://239.255.255.250:3702
at org.springframework.beans.factory.support.AbstractAutowireCapableBean
Factory.initializeBean(AbstractAutowireCapableBeanFactory.java:1422)
at org.springframework.beans.factory.support.AbstractAutowireCapableBean
Factory.doCreateBean(AbstractAutowireCapableBeanFactory.java:518)
at org.springframework.beans.factory.support.AbstractAutowireCapableBean
Factory.createBean(AbstractAutowireCapableBeanFactory.java:455)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getOb
ject(AbstractBeanFactory.java:293)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistr
y.getSingleton(DefaultSingletonBeanRegistry.java:222)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBe
an(AbstractBeanFactory.java:290)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean
(AbstractBeanFactory.java:192)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.
preInstantiateSingletons(DefaultListableBeanFactory.java:585)
at org.springframework.context.support.AbstractApplicationContext.finish
BeanFactoryInitialization(AbstractApplicationContext.java:895)
at org.springframework.context.support.AbstractApplicationContext.refres
h(AbstractApplicationContext.java:425)
at org.springframework.web.context.ContextLoader.createWebApplicationCon
text(ContextLoader.java:282)
at org.springframework.web.context.ContextLoader.initWebApplicationConte
xt(ContextLoader.java:204)
at org.springframework.web.context.ContextLoaderListener.contextInitiali
zed(ContextLoaderListener.java:47)
at weblogic.servlet.internal.EventsManager$FireContextListenerAction.run
(EventsManager.java:465)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(Authenticate
dSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(Unknown Source)
at weblogic.servlet.internal.EventsManager.notifyContextCreatedEvent(Eve
ntsManager.java:175)
at weblogic.servlet.internal.WebAppServletContext.preloadResources(WebAp
pServletContext.java:1784)
at weblogic.servlet.internal.WebAppServletContext.start(WebAppServletCon
text.java:2999)
at weblogic.servlet.internal.WebAppModule.startContexts(WebAppModule.jav
a:1371)
at weblogic.servlet.internal.WebAppModule.start(WebAppModule.java:468)
at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleSta
teDriver.java:204)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineD
river.java:37)
at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStat
eDriver.java:60)
at weblogic.application.internal.flow.ScopedModuleDriver.start(ScopedMod
uleDriver.java:200)
at weblogic.application.internal.flow.ModuleListenerInvoker.start(Module
ListenerInvoker.java:117)
at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleSta
teDriver.java:204)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineD
river.java:37)
at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStat
eDriver.java:60)
at weblogic.application.internal.flow.StartModulesFlow.activate(StartMod
ulesFlow.java:27)
at weblogic.application.internal.BaseDeployment$2.next(BaseDeployment.ja
va:635)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineD
river.java:37)
at weblogic.application.internal.BaseDeployment.activate(BaseDeployment.
java:212)
at weblogic.application.internal.SingleModuleDeployment.activate(SingleM
oduleDeployment.java:16)
at weblogic.application.internal.DeploymentStateChecker.activate(Deploym
entStateChecker.java:162)
at weblogic.deploy.internal.targetserver.AppContainerInvoker.activate(Ap
pContainerInvoker.java:79)
at weblogic.deploy.internal.targetserver.operations.AbstractOperation.ac
tivate(AbstractOperation.java:569)
at weblogic.deploy.internal.targetserver.operations.ActivateOperation.ac
tivateDeployment(ActivateOperation.java:140)
at weblogic.deploy.internal.targetserver.operations.ActivateOperation.do
Commit(ActivateOperation.java:106)
at weblogic.deploy.internal.targetserver.operations.StartOperation.doCom
mit(StartOperation.java:143)
at weblogic.deploy.internal.targetserver.operations.AbstractOperation.co
mmit(AbstractOperation.java:323)
at weblogic.deploy.internal.targetserver.DeploymentManager.handleDeploym
entCommit(DeploymentManager.java:820)
at weblogic.deploy.internal.targetserver.DeploymentManager.activateDeplo
ymentList(DeploymentManager.java:1227)
at weblogic.deploy.internal.targetserver.DeploymentManager.handleCommit(
DeploymentManager.java:436)
at weblogic.deploy.internal.targetserver.DeploymentServiceDispatcher.com
mit(DeploymentServiceDispatcher.java:163)
at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallb
ackDeliverer.doCommitCallback(DeploymentReceiverCallbackDeliverer.java:181)
at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallb
ackDeliverer.access$100(DeploymentReceiverCallbackDeliverer.java:12)
at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallb
ackDeliverer$2.run(DeploymentReceiverCallbackDeliverer.java:67)
at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTunin
gWorkManagerImpl.java:516)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
Caused by: javax.xml.ws.WebServiceException: java.lang.IllegalArgumentException:
Cannot create URL for this address soap.udp://239.255.255.250:3702
at org.apache.cxf.jaxws.EndpointImpl.doPublish(EndpointImpl.java:369)
at org.apache.cxf.jaxws.EndpointImpl.publish(EndpointImpl.java:251)
at org.apache.cxf.jaxws.EndpointImpl.publish(EndpointImpl.java:537)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
百度了一圈只有提问的,没有解答的,经过一天的时间研究了这个问题,终于让我找到问题所在了,我用的是cxf官方的最新jar包,版本是2.7.6,这个版本有问题啊,tomcat上没事,weblogic就报如上错误,经过各种实验,我同样一个web工程,把lib下的jar全部换成2.6.1版本的时候,奇迹出现了,weblogic能启动成功了,而且wsdl发布成功!!!不知道2.7.6这个版本为啥会有这样的问题,但是低版本就不存在,而且官方也没有给出解释,目前只能这样解决问题了。
我百度的时候只搜到问题,没有解答者,那个无助啊,所以博客分享一下吧
相关推荐
一个CXF webservice 实例,兼容tomcat和weblogic; 已解决了报错:javax.xml.ws.soap.SOAPFaultException: Cannot create a secure XMLInputFactory
这样,当你在编写如`cxf.xml`或`spring-context.xml`这样的配置文件时,IDE就能识别出CXF的特定标签,并提供相应的代码提示。 例如,一个简单的CXF JAX-RS配置可能会如下所示: ```xml <beans xmlns="http://...
<import resource="classpath:META-INF/cxf/cxf.xml"/> <import resource="classpath:META-INF/cxf/cxf-extension-soap.xml"/> <import resource="classpath:META-INF/cxf/cxf-servlet.xml"/>
带详细解决方案说明文档,提供三种解决方式,另外包含stax2-api.jar,stax2-api-source.jar,woodstox-core-asl-4.4.1.jar,stax-ex.jar,wstx-asl-3.2.9.jar等jar文件,亲测有效。
"GlassFish:CXF调用错误-----Cannot create a secure XMLInputFactory" 是一个典型的错误,它涉及到两个关键的技术组件:GlassFish服务器和CXF框架。下面将详细解释这个问题的成因、解决方法以及相关知识点。 ...
import org.apache.cxf.frontend.ClientProxyFactoryBean; public class ClientConfig { public static YourServiceInterface createClient() { ClientProxyFactoryBean factory = new ClientProxyFactoryBean();...
Apache CXF是一个开源的Java框架,它主要用于构建和开发服务导向架构(SOA)和Web服务。这个"apache-cxf-2.4.6.zip"压缩包包含了CXF框架的2.4.6版本,这是一个相对早期的版本,发布于2012年。在深入探讨CXF之前,...
http://cxf.apache.org/index.html http://cxf.apache.org/docs/ws-security.html http://resource.ajava.org/java/jdk-6.0-api-zh/javax/security/auth/callback/CallbackHandler.html 2)CXFWS工程是基于WS-...
<servlet-class>org.apache.cxf.transport.servlet.CXFServlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-name>CXFServlet</servlet-name> <url-pattern>/services/*</url-...
在使用Idea根据wsdl自动生成java code的时候;抛出无法找到主类:org.apache.axis.wsdl.WSDL2Java(Throws Could not find main class: org.apache.axis.wsdl.WSDL2Java)。 添加本文的jar包压缩包解压出来的所有jar包...
<import resource="classpath:META-INF/cxf/cxf.xml"/> <import resource="classpath:META-INF/cxf/cxf-extension-soap.xml"/> <import resource="classpath:META-INF/cxf/cxf-servlet.xml"/> <cxf:bus> <cxf...
CXF(CXF: Composite eXtensible Services Framework)是一个开源的Java框架,它提供了用于构建和服务导向架构(SOA)的应用程序。该框架支持多种Web服务标准,如SOAP、WS-*、RESTful等,同时也提供了与Spring框架的...
<servlet-class>org.apache.cxf.transport.servlet.CXFServlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-name>CXFServlet</servlet-name> <url-pattern>/services/*</url-...
它支持多种协议和标准,如SOAP、RESTful、JAX-RS和JAX-WS等。Spring框架则是Java应用开发中的核心框架,提供了依赖注入、面向切面编程等特性,广泛用于企业级应用。将CXF与Spring整合,可以充分利用Spring的灵活性和...
<bean id="inMessageInterceptor" class="org.apache.cxf.interceptor.LoggingInInterceptor"/> <bean id="outLoggingInterceptor" class="org.apache.cxf.interceptor.LoggingOutInterceptor"/> <!-- 服务端...
xmlns:soap="http://cxf.apache.org/bindings/soap" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd ...
<servlet-class>org.apache.cxf.transport.servlet.CXFServlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-name>CXFServlet</servlet-name> <url-pattern>/services/*</url-...
<servlet-class>org.apache.cxf.transport.servlet.CXFServlet</servlet-class> </servlet> ... ``` 在上面的代码中,我们定义了一个CXFServlet来处理WebService请求,并配置了相关的参数。 使用Apache CXF和...
赠送jar包:cxf-rt-bindings-soap-3.0.1.jar; 赠送原API文档:cxf-rt-bindings-soap-3.0.1-javadoc.jar; 赠送源代码:cxf-rt-bindings-soap-3.0.1-sources.jar; 赠送Maven依赖信息文件:cxf-rt-bindings-soap-...
<bean id="myWebServiceEndpoint" class="org.apache.cxf.frontend.ServerFactoryBean"> <property name="serviceBean" ref="myWebService" /> <property name="address" value="/MyWebService" /> </bean> </...