Hi,

I did a quick check at the wsdl you append, it's an invalid wsdl indeed per jaxws
<wsdl:operation name="SubscriptionEndOp">
     <wsdl:output message="wse:SubscriptionEnd"
wsa:Action="http://schemas.xmlsoap.org/ws/2004/08/eventing/SubscriptionEnd " />
 </wsdl:operation>

This operation has no input message, generally this kind of operation is considered as notification, but it's not supported by jaxws. And generally you can use callback to send a notification from server to client as a solution(we have a callback example shipped with kit which you may wanna take a look), but this kind of wsdl isn't supported in jaxws, jaxws requires input message anyway.

Freeman


On 2012-4-10, at 下午5:23, Mirco Dunker wrote:

Hi folks,

I want to generate a CXF Client for the HP Operation Manager System. The Operation Manager provides me 9 WSDL Files and 16 XSD Files (see appendix). And there are generated axis2 client sources. But I want to use CXF instead ot axis. So I tried to generate my own cxf client.

Now I got an error using the wsdl2java generator:

Loading FrontEnd jaxws ...
Loading DataBinding jaxb ...
wsdl2java -client -d C:\Data\Workspace \Eclipse_Indigo_x86\HpOmuWsClient\.cxftmp/src -classdir C:\Data \Workspace\Eclipse_Indigo_x86\HpOmuWsClient\target\classes -p http://schemas.hp.com/ism/ServiceOperation/IncidentManagement/1/Incident=com.hp.schemas.ism.serviceoperation.incidentmanagement.1.incident -impl -validate -exsh false -dns true -dex true -wsdlLocation http:/ xxx/opr-webservice/Incident.svc?wsdl -verbose -defaultValues -fe jaxws -db jaxb -wv 1.1 file:/C:/Data/Workspace/Eclipse_Indigo_x86/ HpOmuWsClient/src/main/resources/wsdls/IncidentService.wsdl
wsdl2java - Apache CXF 2.5.1


WSDLToJava Error:
Summary:  Failures: 1, Warnings: 0

<<< ERROR!
Invalid WSDL, Operation SubscriptionEndOp in PortType {http://schemas.hp.com/ism/ServiceOperation/IncidentManagement/1/Incident }IncidentAccess not request-response or one-way

Non unique body parts, operation [ Put ] and operation [ Create ] in binding {http://schemas.hp.com/ism/ServiceOperation/IncidentManagement/1/Incident }WsManIncidentBinding have the same body block: {http://schemas.hp.com/ism/ServiceOperation/IncidentManagement/1/Incident }Incident



org.apache.cxf.tools.common.ToolException:
Summary:  Failures: 1, Warnings: 0

<<< ERROR!
Invalid WSDL, Operation SubscriptionEndOp in PortType {http://schemas.hp.com/ism/ServiceOperation/IncidentManagement/1/Incident }IncidentAccess not request-response or one-way

Non unique body parts, operation [ Put ] and operation [ Create ] in binding {http://schemas.hp.com/ism/ServiceOperation/IncidentManagement/1/Incident }WsManIncidentBinding have the same body block: {http://schemas.hp.com/ism/ServiceOperation/IncidentManagement/1/Incident }Incident


at org .apache .cxf .tools .validator.internal.WSDL11Validator.isValid(WSDL11Validator.java:137) at org .apache .cxf .tools .wsdlto .frontend .jaxws .wsdl11.JAXWSDefinitionBuilder.validate(JAXWSDefinitionBuilder.java: 201) at org .apache .cxf .tools .wsdlto .frontend .jaxws .wsdl11.JAXWSDefinitionBuilder.validate(JAXWSDefinitionBuilder.java: 61) at org .apache .cxf .tools .wsdlto.WSDLToJavaContainer.processWsdl(WSDLToJavaContainer.java:177) at org .apache .cxf .tools.wsdlto.WSDLToJavaContainer.execute(WSDLToJavaContainer.java: 138) at org .apache .cxf .tools.wsdlto.WSDLToJavaContainer.execute(WSDLToJavaContainer.java: 286) at org .apache.cxf.tools.common.toolspec.ToolRunner.runTool(ToolRunner.java: 103)
        at org.apache.cxf.tools.wsdlto.WSDLToJava.run(WSDLToJava.java:113)
        at org.apache.cxf.tools.wsdlto.WSDLToJava.run(WSDLToJava.java:86)
        at org.apache.cxf.tools.wsdlto.WSDLToJava.main(WSDLToJava.java:184)

I can't believe that I have to change the standard HP WSDL Files to generate a cxf client. Is there a way to avoid this error and gerate a working cxf client?

Thanks in advance,
Mirco
<HPOM.zip>

---------------------------------------------
Freeman Fang

FuseSource
Email:[email protected]
Web: fusesource.com
Twitter: freemanfang
Blog: http://freemanfang.blogspot.com
http://blog.sina.com.cn/u/1473905042
weibo: http://weibo.com/u/1473905042










Reply via email to