Mule 3.5从cxf获取异常:jaxws-client

时间:2014-05-09 12:25:25

标签: cxf mule

<flow name="weblogic-cxfws-clientFlow1" doc:name="weblogic-cxfws-clientFlow1">
    <http:inbound-endpoint exchange-pattern="request-response" address="http://localhost:8081/client/empWS" doc:name="HTTP">
     <http:body-to-parameter-map-transformer />
    </http:inbound-endpoint>

      <http:outbound-endpoint address="http://localhost:7001/HelloJAXWS/services/empWS" doc:name="weblogic-cxfws" exchange-pattern="request-response">
            <cxf:jaxws-client
                clientClass="org.mule.ws.client.EmpWSImplService"
                port="EmpWSImplPort"
                wsdlLocation="file:/E:/workspace/mule_workspace/weblogic-client/src/main/resources/wsdl/empws.wsdl"
                operation="getEmp">
                <cxf:jaxb-databinding/>
                </cxf:jaxws-client>
      </http:outbound-endpoint>

</flow>

获得异常

INFO  2014-05-09 08:23:02,193 [main] org.mule.lifecycle.AbstractLifecycleManager: Initialising RegistryBroker

INFO  2014-05-09 08:23:02,376 [main] org.mule.config.spring.MuleApplicationContext: 

Refreshing org.mule.config.spring.MuleApplicationContext@c9b619: startup date [Fri May 09 

08:23:02 EDT 2014]; root of context hierarchy

INFO  2014-05-09 08:23:04,495 [main] org.mule.lifecycle.AbstractLifecycleManager: Initialising model: _muleSystemModel

INFO  2014-05-09 08:23:04,732 [main] org.mule.lifecycle.AbstractLifecycleManager: Initialising connector: connector.http.mule.default

INFO  2014-05-09 08:23:05,449 [main] org.mule.lifecycle.AbstractLifecycleManager: Disposing model: _muleSystemModel

ERROR 2014-05-09 08:23:05,453 [main] 
org.mule.module.launcher.application.DefaultMuleApplication: null

java.lang.StackOverflowError
    at java.security.AccessController.doPrivileged(Native Method)
    at 
org.apache.cxf.common.util.ReflectionUtil.getDeclaredFields(ReflectionUtil.java:100)
    at 
org.apache.cxf.jaxb.JAXBContextInitializer.walkReferences(JAXBContextInitializer.java:355)

2 个答案:

答案 0 :(得分:0)

试试这个:

<flow name="weblogic-cxfws-clientFlow1" doc:name="weblogic-cxfws-clientFlow1">
<http:inbound-endpoint exchange-pattern="request-response" address="http://localhost:8081/client/empWS" doc:name="HTTP">
 <http:body-to-parameter-map-transformer />
</http:inbound-endpoint>


 <cxf:jaxws-client
            clientClass="org.mule.ws.client.EmpWSImplService"
            port="EmpWSImplPort"
            wsdlLocation="file:/E:/workspace/mule_workspace/weblogic-client/src/main/resources/wsdl/empws.wsdl"
            operation="getEmp">
            <cxf:jaxb-databinding/>
            </cxf:jaxws-client>
  <http:outbound-endpoint address="http://localhost:7001/HelloJAXWS/services/empWS" doc:name="weblogic-cxfws" exchange-pattern="request-response"/>

答案 1 :(得分:0)

仍然得到例外 INFO 2014-05-10 07:32:38,535 [main] org.mule.lifecycle.AbstractLifecycleManager: 初始化连接器:connector.http.mule.default

INFO 2014-05-10 07:32:39,653 [main] org.mule.lifecycle.AbstractLifecycleManager: 处理模型:_muleSystemModel

ERROR 2014-05-10 07:32:39,660 [主要] org.mule.module.launcher.application.DefaultMuleApplication:null

java.lang.StackOverflowError的

at java.lang.reflect.Field.copy(Unknown Source)

at java.lang.reflect.ReflectAccess.copyField(Unknown Source)

at sun.reflect.ReflectionFactory.copyField(Unknown Source)
at java.lang.Class.copyFields(Unknown Source)
at java.lang.Class.getDeclaredFields(Unknown Source)
at org.apache.cxf.common.util.ReflectionUtil$5.run(ReflectionUtil.java:102)
at org.apache.cxf.common.util.ReflectionUtil$5.run(ReflectionUtil.java:101)
at java.security.AccessController.doPrivileged(Native Method)
at org.apache.cxf.common.util.ReflectionUtil.getDeclaredFields(ReflectionUtil.java:100)
at org.apache.cxf.jaxb.JAXBContextInitializer.walkReferences(JAXBContextInitializer.java:355)
at org.apache.cxf.jaxb.JAXBContextInitializer.addClass(JAXBContextInitializer.java:292) </i>