Hello,
Its possible to have an operation with empty input message:
<wsdl:message name="getRequest">
</wsdl:message>
<wsdl:message name="getResponse">
<wsdl:part element="tns:getResponse" name="parameters" />
</wsdl:message>
<wsdl:operation name="updateCustomer">
<wsdl:input message="tns:getRequest" name="getRequest" />
<wsdl:output message="tns:getResponse" name="getResponse" />
...
On Thu, 22 Jan 2015 12:02:04 +0300, Andrei Shakirin <[email protected]>
wrote:
Hi,
Using Solicit-Response(Output-Input) and Notification (Output-Only)
operations are prohibited by WS-I Basic Profile 1.2 and not currently
supported by CXF:
"4.5.2 Allowed Operations
Solicit-Response and Notification operations are not well defined by
WSDL 1.1; furthermore, WSDL 1.1 does not define bindings for them.
R2303 A DESCRIPTION MUST NOT use Solicit-Response and Notification type
operations in a wsdl:portType definition."
However you can easily simulate Notification (Output-Only) operation by
placing CXF client to the service side and CXF service to the client
side.
Regards,
Andrei.
-----Original Message-----
From: AlexA [mailto:[email protected]]
Sent: Dienstag, 20. Januar 2015 23:06
To: [email protected]
Subject: Re: Is is possible to have an operation with no input message ?
it's supported by axis2 for example I create java from wsdl using
axis2-1.6.2,
but exactly the same wsdl gives me the error if I use cxf:
Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation. All rights reserved.
>C:\apache-cxf-2.7.14\bin\wsdl2java wsdprin
terservice.wsdl
WSDLToJava Error:
Summary: Failures: 6, Warnings: 0
<<< ERROR!
Invalid WSDL, Operation PrinterStatusConditionEvent in PortType
{http://schemas.
microsoft.com/windows/2006/08/wdp/print}PrinterServiceType not request-
response or one-way Invalid WSDL, Operation JobEndStateEvent in PortType
{http://schemas.microsoft.c
om/windows/2006/08/wdp/print}PrinterServiceType not request-response or
one-way Invalid WSDL, Operation PrinterStatusConditionClearedEvent in
PortType {http://s
chemas.microsoft.com/windows/2006/08/wdp/print}PrinterServiceType not
request-re sponse or one-way Invalid WSDL, Operation
PrinterElementsChangeEvent in PortType {http://schemas.m
icrosoft.com/windows/2006/08/wdp/print}PrinterServiceType not request-
response o r one-way Invalid WSDL, Operation PrinterStatusSummaryEvent
in
PortType {http://schemas.mi
crosoft.com/windows/2006/08/wdp/print}PrinterServiceType not request-
response or one-way Invalid WSDL, Operation JobStatusEvent in PortType
{http://schemas.microsoft.com
/windows/2006/08/wdp/print}PrinterServiceType not request-response or
one-
way
C:\Users\afrosa\Desktop\work\buildXML>
the example of such wsdl I can get from microsoft:
https://msdn.microsoft.com/en-
us/library/windows/hardware/dn641604(v=vs.85).aspx
just download the "Print Service Definition v1.2 for Web Services on
Devices"
(or v1.0) and try to run java2wsdl.
here's the parts which throw exception
<operation name="PrinterStatusConditionEvent">
<output message="wprt:PrinterStatusConditionEventMsg"
wsa:Action="http://schemas.microsoft.com/windows/2006/08/wdp/print/Printe
rStatusConditionEvent"
/>
</operation>
<operation name="PrinterStatusConditionClearedEvent">
<output message="wprt:PrinterStatusConditionClearedEventMsg"
wsa:Action="http://schemas.microsoft.com/windows/2006/08/wdp/print/Printe
rStatusConditionClearedEvent"
/>
</operation>
<operation name="JobStatusEvent">
<output message="wprt:JobStatusEventMsg"
wsa:Action="http://schemas.microsoft.com/windows/2006/08/wdp/print/JobSta
tusEvent"
/>
</operation>
<operation name="JobEndStateEvent">
<output message="wprt:JobEndStateEventMsg"
wsa:Action="http://schemas.microsoft.com/windows/2006/08/wdp/print/JobEn
dStateEvent"
/>
</operation>
--
View this message in context:
http://cxf.547215.n5.nabble.com/Is-is-possible-
to-have-an-operation-with-no-input-message-tp564160p5753333.html
Sent from the cxf-user mailing list archive at Nabble.com.
--
Regards, Alexey.