WSDL failure

已查看 90 次
跳至第一个未读帖子

Viktor Hedefalk

未读,
2014年4月24日 09:29:082014/4/24
收件人 sca...@googlegroups.com
Hi,

I'm trying to generate client stubs for some services and get:

> last compile:scalaxb
scalaxb.ParserFailure: Error while parsing <operation
name="getValidCodes" xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:tns="http://service.linkon.se/gtssales/v1_14"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns="http://schemas.xmlsoap.org/wsdl/">
<soap:operation soapAction=""/>
<documentation>
The operation returns the valid (relevant) code lists
for this service.
</documentation>
<input>
<soap:header use="literal" part="clientInformationHeader"
message="tns:WSGtsSales_getValidCodeRequest"/>
<soap:body use="literal" parts="parameters"/>
</input>
<output>
<soap:header use="literal" part="serverInformationHeader"
message="tns:ServerInformation"/>
<soap:body use="literal"/>
</output>
<fault name="GtsSalesException">
<soap:fault use="literal" name="GtsSalesException"/>
</fault>
</operation>: parser error "`{http://schemas.xmlsoap.org/wsdl/}fault'
expected but {http://schemas.xmlsoap.org/wsdl/}documentation found"
while parsing /{http://schemas.xmlsoap.org/wsdl/}definitions/{http://schemas.xmlsoap.org/wsdl/}binding/{http://schemas.xmlsoap.org/wsdl/}operation/{http://schemas.xmlsoap.org/wsdl/soap/}operation{http://schemas.xmlsoap.org/wsdl/}documentation{http://schemas.xmlsoap.org/wsdl/}input{http://schemas.xmlsoap.org/wsdl/}output{http://schemas.xmlsoap.org/wsdl/}fault
^
at scalaxb.package$.fromXML(scalaxb.scala:15)
at wsdl11.XXMLProtocol$DefaultWsdl11XBindingTypeFormat$$anonfun$parser$33$$anonfun$apply$59.apply(wsdl11_xmlprotocol.scala:437)
at wsdl11.XXMLProtocol$DefaultWsdl11XBindingTypeFormat$$anonfun$parser$33$$anonfun$apply$59.apply(wsdl11_xmlprotocol.scala:437)
at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:244)
at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:244)
at scala.collection.immutable.List.foreach(List.scala:318)
at scala.collection.TraversableLike$class.map(TraversableLike.scala:244)
at scala.collection.AbstractTraversable.map(Traversable.scala:105)
at wsdl11.XXMLProtocol$DefaultWsdl11XBindingTypeFormat$$anonfun$parser$33.apply(wsdl11_xmlprotocol.scala:437)
at wsdl11.XXMLProtocol$DefaultWsdl11XBindingTypeFormat$$anonfun$parser$33.apply(wsdl11_xmlprotocol.scala:434)
at scala.util.parsing.combinator.Parsers$Success.map(Parsers.scala:136)
at scala.util.parsing.combinator.Parsers$Success.map(Parsers.scala:135)
at scala.util.parsing.combinator.Parsers$Parser$$anonfun$map$1.apply(Parsers.scala:242)
at scala.util.parsing.combinator.Parsers$Parser$$anonfun$map$1.apply(Parsers.scala:242)
at scala.util.parsing.combinator.Parsers$$anon$3.apply(Parsers.scala:222)
at scala.util.parsing.combinator.Parsers$$anon$2$$anonfun$apply$14.apply(Parsers.scala:891)
at scala.util.parsing.combinator.Parsers$$anon$2$$anonfun$apply$14.apply(Parsers.scala:891)
at scala.util.DynamicVariable.withValue(DynamicVariable.scala:57)
at scala.util.parsing.combinator.Parsers$$anon$2.apply(Parsers.scala:890)
at scalaxb.ElemNameParser$class.parse(scalaxb.scala:679)
at wsdl11.XXMLProtocol$$anon$12.parse(wsdl11_xmlprotocol.scala:30)
at scalaxb.ElemNameParser$class.reads(scalaxb.scala:659)




Same wsdl works with Axis2.

Any idea on what might be wrong?

Using scalaxb 1.1.2.

Thanks,
Viktor

eugene yokota

未读,
2014年4月25日 02:07:092014/4/25
收件人 sca...@googlegroups.com
I'm looking at the definition of operationType in wsdl:

   <complexType name="operationType">
      <complexContent>
   <extension base="wsdl:documented">
      <choice>
         <group ref="wsdl:onewayoperation"/>
         <group ref="wsdl:requestresponseoperation"/>
         <group ref="wsdl:solicitresponseoperation"/>
         <group ref="wsdl:notificationoperation"/>
      </choice>
      <attribute name="name" type="NCName" use="required"/>
   </extension>
  </complexContent>
  </complexType>

I'm guessing scalaxb is not handling the extension of wsdl:documented because the base is sequence.
A workaround for now would be to remove <documentation> tag from the operation.

Please file a github issue on this.

-eugene




--
You received this message because you are subscribed to the Google Groups "scalaxb" group.
To unsubscribe from this group and stop receiving emails from it, send an email to scalaxb+u...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Viktor Hedefalk

未读,
2014年4月27日 01:54:552014/4/27
收件人 sca...@googlegroups.com
Sorry for late reply:

https://github.com/eed3si9n/scalaxb/issues/248

Thanks for looking into it!

Cheers,
Viktor
回复全部
回复作者
转发
0 个新帖子