Issue :
org.mule.api.lifecycle.LifecycleException: Failed to invoke lifecycle phase "start" on object: SedaService{TestService}
at org.mule.lifecycle.DefaultLifecyclePhase.applyLifecycle(DefaultLifecyclePhase.java:276)
Caused by: org.mule.api.lifecycle.InitialisationException: Initialisation Failure: Could not find portType named {http://aaa.bbb.ccc/services}TestServices at org.mule.transport.cxf.CxfMessageReceiver.doInitialise(CxfMessageReceiver.java:305)
Solution:
The solution for the issue which we are facing by using Enterprise Mule version.The Enterprise Mule which uses particular version CXF (2.1.5)
which predefining the wsdl port name should end with "Port" in the *.wsdl files.
Below code changes which we made during fixing this issue without changing any "classpath:*" protocol for associating a wsdlLocation with a service in the mule config.
Please see the code changes in brown color text.
Before Fix (Standalone Mule):
After Fix (Enterprise Mule):
wsdl:service name="TestServices"
wsdl:port binding="mc:TestService" name="TestService"
soap:address location="http://localhost:8080/services/v1/TestServices"
wsdl:port
wsdl:service
wsdl:port binding="mc:TestService" name="TestService"
soap:address location="http://localhost:8080/services/v1/TestServices"
wsdl:port
wsdl:service
After Fix (Enterprise Mule):
wsdl:service name="TestServices"
wsdl:port binding="mc:TestService" name="TestServicesPort"
soap:address location="http://localhost:8080/services/v1/TestServices"
wsdl:port
wsdl:service
wsdl:port binding="mc:TestService" name="TestServicesPort"
soap:address location="http://localhost:8080/services/v1/TestServices"
wsdl:port
wsdl:service
Please use the opening and closing tags in above code.
No comments:
Post a Comment