cxf-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Daniel Kulp <dk...@apache.org>
Subject Re: How develop document/literal of CXF
Date Tue, 21 Jul 2009 14:24:25 GMT

To be specific, you are hitting rule 2:

ii) The input message part refers to a global element declaration whose 
localname is equal to the operation name.

Your element name is "RequestMessage" which does not equal the operation name 
of "SubmitEtaxInvoice".    If you change the element name to that, it should 
map to your desired interface.

Dan


On Mon July 20 2009 11:08:34 pm Freeman Fang wrote:
> Hi,
>
> I guess what you want is doc/lit/wrapped, right?
> Per JAX-WS SPEC, to generate wrapper style, your wsdl must be (as
> described in jaxws specs)
>
> 2.3.1.2 Wrapper Style 21
> A WSDL operation qualifies for wrapper style mapping only if the
> following criteria are met: 22
> (i) The operation’s input and output messages (if present) each
> contain only a single part 23
> (ii) The input message part refers to a global element declaration
> whose localname is equal to the opera- 24
> tion name 25
> (iii) The output message part refers to a global element declaration 26
> (iv) The elements referred to by the input and output message parts
> (henceforth referred to as wrapper 27
> elements) are both complex types defined using the xsd:sequence
> compositor 28
> (v) The wrapper elements only contain child elements, they must not
> contain other structures such as 29
> wildcards (element or attribute), xsd:choice, substitution groups
> (element references are not per- 30
> mitted) or attributes; furthermore, they must not be nillable.
>
> You need change your wsdl accordingly.
> Freeman
>
> On 2009-7-21, at 上午10:38, 김강원 wrote:
> > Dear developer of CXF
> >
> > My name is Kangwon from Korea.
> >
> > First ,  We are thanks for your supplying  of a good Webservice
> > Engine.
> >
> > We are developing the WebService Bridge by the Apache CXF
> >
> > But We have a problem about soap binding
> >
> > We want to make our project soap binding of a document/literal
> >
> > If we operated wsdl2java for doc/literal of soap  , we always had
> > ‘ParameterStyle.BARE’
> >
> > Why didn’t CXF made doc/literal by the wsdl2java tool
> >
> > Please asap your answer, thanks…
> >
> >
> >
> > This is WSDL of our project
> >
> >
> >
> > <?xml version="1.0" encoding="utf-8"?>
> >
> > <wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
> > xmlns:xs="http://www.w3.org/2001/XMLSchema"
> >
> > xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
> > xmlns:wsa="http://www.w3 .
> > org/2005/08/addressing"
> >
> > xmlns:rm="http://docs.oasis-open.org/ws-rx/wsrm/200608"
> > xmlns:tns="http://docs.oasis-open.org/ws-rx/wsrm/200608/wsdl"
> >
> > xmlns:nts="http://nts.go.kr/nts-ts"
> > targetNamespace="http://nts.go.kr/nts- ts">
> >
> > <wsdl:types>
> >
> > <xs:schema  elementFormDefault="qualified"
> > xmlns:xs="http://www.w3.org/2001/XMLSchema"
> > targetNamespace="http://nts.go.kr/nts-ts">
> >
> >             <xs:element name="RequestMessage">
> >
> >             <xs:complexType>
> >
> >             <xs:sequence>
> >
> >                           <xs:element name="SubmitID">
> >
> >                           </xs:element>
> >
> >                           <xs:element name="TotalCount">
> >
> >                           </xs:element>
> >
> >                           <xs:element name="ReferenceID">
> >
> >                           </xs:element>
> >
> >             </xs:sequence>
> >
> >             </xs:complexType>
> >
> >             </xs:element>
> >
> >             <xs:element name="ResponseMessage">
> >
> >                           <xs:complexType>
> >
> >                                        <xs:sequence>
> >
> >                                                     <xs:element
> > name="RefSubmitID">
> >
> >                                                     </xs:element>
> >
> >                                        </xs:sequence>
> >
> >                           </xs:complexType>
> >
> >             </xs:element>
> >
> > </xs:schema>
> >
> > </wsdl:types>
> >
> >
> >
> > <wsdl:message name="SubmitEtaxInvoiceRequestMessage">
> >
> >             <wsdl:part name="request" element="nts:RequestMessage"/>
> >
> > </wsdl:message>
> >
> > <wsdl:message name="SubmitEtaxInvoiceResponseMessage">
> >
> >             <wsdl:part name="response" element="nts:ResponseMessage"/>
> >
> > </wsdl:message>
> >
> >
> >
> > <wsdl:portType name="SubmitEtaxInvoicePortType">
> >
> >             <wsdl:operation name="SubmitEtaxInvoice">
> >
> >                           <wsdl:input
> > message="nts:SubmitEtaxInvoiceRequestMessage" name="request"
> > wsa:Action="http://nts.go.kr/nts/TaxInvoiceSubmit"/>
> >
> >                           <wsdl:output
> > message="nts:SubmitEtaxInvoiceResponseMessage"  name="response"
> > wsa:Action="http://nts.go.kr/nts/TaxInvoiceRecvAck"/>
> >
> >             </wsdl:operation>
> >
> > </wsdl:portType>
> >
> >
> >
> >
> >
> > <wsdl:binding name="SubmitEtaxInvoiceBinding"
> > type="nts:SubmitEtaxInvoicePortType">
> >
> >             <soap:binding style="document"
> > transport="http://schemas.xmlsoap.org/soap/http"/>
> >
> >             <wsdl:operation name="SubmitEtaxInvoice">
> >
> >              <soap:operation style="document"
> > soapAction="http://itab.ktnet.com/TSR/callTSR"/>
> >
> >                           <wsdl:input name="request">
> >
> >                           <soap:body  use="literal"/>
> >
> >                           </wsdl:input>
> >
> >                           <wsdl:output name="response">
> >
> >                           <soap:body use="literal"/>
> >
> >                           </wsdl:output>
> >
> >             </wsdl:operation>
> >
> > </wsdl:binding>
> >
> >
> >
> > <wsdl:service name="SubmitEtaxInvoiceService">
> >
> > <wsdl:port name="SubmitEtaxInvoicePort"
> > binding="nts:SubmitEtaxInvoiceBinding">
> >
> > <soap:address location="http://nts.go.kr:8080/Etax/msh?wsdl=eTax-Service
> > "/>
> >
> > </wsdl:port>
> >
> > </wsdl:service>
> >
> > </wsdl:definitions>

-- 
Daniel Kulp
dkulp@apache.org
http://www.dankulp.com/blog

Mime
View raw message