[erlang-questions] Troubleshooting using YAWS + SOAP
Laura M. Castro Souto
lcastro@REDACTED
Tue Jul 17 11:44:45 CEST 2007
Hello Willem, hello list,
> Can you give a little more background information?
Of course. I should have in my email to the list, actually (sorry for that).
> - Did you use the soap functionality that is packaged with YAWS? (as
> described here: http://yaws.hyber.org/soap_intro.yaws)
Yes, we are using yaws soap functionality (version is 1.68). And yes, what we
did is essentially what is explained on the "The SOAP server side" section of
that page.
> - Do you use an WSDL? Could you send it to me (or to the list), so I could
> do some tests?
Yes, we do have an WSDL file. You can find it attached.
> - Did you try to use the soap client that is provided with yaws? Does that
> work?
No, we didn't. Since we used our own client and also the SOAPUi client (and
obtained the same results), we figured out that the problem shouldn't be
involving the client. Do you think this is a possibility? If you do, where in
the yaws distribution is that sample soap client located?
We have also tried to increment the gen_server timeout, but there was no
improvement. Even though the process seems to die due to a timeout (as the
error message claims), the death is just inmediate, as if it were just
receiving the client call, invoking our handler module and then crashing
right after that.
By the way, we had exactly the same problem that Ahmed Ali referred to, with
the "nillable" property of the service parameters, but after we removed them
(and also an "attributeFormDefault="qualified"" from the wsdl:definitions
header) that problem dissapeared in our case (I am attaching the original
WSDL file, too).
Thank you very much for your time.
Regards,
--
Laura M. Castro
MADS Group - Computer Science Department
University of A Corunna
http://www.madsgroup.org/staff/laura/index_en.html
-------------- next part --------------
<wsdl:definitions xmlns:axis2="http://ws.apache.org/axis2" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:ns="http://ws.apache.org/axis2/xsd" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" targetNamespace="http://ws.apache.org/axis2"><wsdl:types><xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://ws.apache.org/axis2/xsd">
<xs:element name="setParte">
<xs:complexType>
<xs:sequence>
<xs:element name="param0" nillable="true" type="xs:string" />
<xs:element name="param1" nillable="true" type="xs:string" />
<xs:element name="param2" nillable="true" type="xs:string" />
<xs:element name="param3" nillable="true" type="xs:string" />
<xs:element name="param4" nillable="true" type="xs:string" />
<xs:element name="param5" nillable="true" type="xs:string" />
<xs:element name="param6" nillable="true" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="setParteResponse">
<xs:complexType>
<xs:sequence>
<xs:element name="return" nillable="true" type="ns:CodigoVO" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="CodigoVO" type="ns:CodigoVO" />
<xs:complexType name="CodigoVO">
<xs:sequence>
<xs:element name="etiqueta" nillable="true" type="xs:string" />
<xs:element name="valor" type="xs:int" />
</xs:sequence>
</xs:complexType>
</xs:schema></wsdl:types><wsdl:message name="setParteMessage"><wsdl:part name="part1" element="ns:setParte"
/></wsdl:message><wsdl:message name="setParteResponseMessage"><wsdl:part name="part1" element="ns:setParteResponse"
/></wsdl:message><wsdl:portType name="Service.yawsPortType"><wsdl:operation name="setParte"><wsdl:input
message="axis2:setParteMessage" /><wsdl:output message="axis2:setParteResponseMessage"
/></wsdl:operation></wsdl:portType><wsdl:binding name="Service.yawsSOAP11Binding"
type="axis2:Service.yawsPortType"><soap:binding transport="http://schemas.xmlsoap.org/soap/http"
style="document" /><wsdl:operation name="setParte"><soap:operation soapAction="urn:setParte" style="document"
/><wsdl:input><soap:body use="literal" namespace="http://ws.apache.org/axis2" /></wsdl:input><wsdl:output><soap:body
use="literal" namespace="http://ws.apache.org/axis2" /></wsdl:output></wsdl:operation></wsdl:binding><wsdl:binding
name="Service.yawsSOAP12Binding" type="axis2:Service.yawsPortType"><soap12:binding
transport="http://schemas.xmlsoap.org/soap/http" style="document" /><wsdl:operation
name="setParte"><soap12:operation soapAction="urn:setParte" style="document" /><wsdl:input><soap12:body
use="literal" namespace="http://ws.apache.org/axis2" /></wsdl:input><wsdl:output><soap12:body use="literal"
namespace="http://ws.apache.org/axis2" /></wsdl:output></wsdl:operation></wsdl:binding><wsdl:service
name="Service.yaws"><wsdl:port name="Service.yawsSOAP11port"
binding="axis2:Service.yawsSOAP11Binding"><soap:address
location="http://localhost:8888/Service.yaws" /></wsdl:port><wsdl:port
name="Service.yawsSOAP12port" binding="axis2:Service.yawsSOAP12Binding"><soap12:address location="http://localhost:8888/Service.yaws" /></wsdl:port></wsdl:service></wsdl:definitions>
-------------- next part --------------
<wsdl:definitions xmlns:axis2="http://ws.apache.org/axis2" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:ns="http://ws.apache.org/axis2/xsd" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" targetNamespace="http://ws.apache.org/axis2"><wsdl:types><xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://ws.apache.org/axis2/xsd">
<xs:element name="setParte">
<xs:complexType>
<xs:sequence>
<xs:element name="param0" type="xs:string" />
<xs:element name="param1" type="xs:string" />
<xs:element name="param2" type="xs:string" />
<xs:element name="param3" type="xs:string" />
<xs:element name="param4" type="xs:string" />
<xs:element name="param5" type="xs:string" />
<xs:element name="param6" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="setParteResponse">
<xs:complexType>
<xs:sequence>
<xs:element name="return" type="ns:CodigoVO" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="CodigoVO" type="ns:CodigoVO" />
<xs:complexType name="CodigoVO">
<xs:sequence>
<xs:element name="etiqueta" type="xs:string" />
<xs:element name="valor" type="xs:int" />
</xs:sequence>
</xs:complexType>
</xs:schema></wsdl:types><wsdl:message name="setParteMessage"><wsdl:part name="part1" element="ns:setParte"
/></wsdl:message><wsdl:message name="setParteResponseMessage"><wsdl:part name="part1" element="ns:setParteResponse"
/></wsdl:message><wsdl:portType name="Service.yawsPortType"><wsdl:operation name="setParte"><wsdl:input
message="axis2:setParteMessage" /><wsdl:output message="axis2:setParteResponseMessage"
/></wsdl:operation></wsdl:portType><wsdl:binding name="Service.yawsSOAP11Binding"
type="axis2:Service.yawsPortType"><soap:binding transport="http://schemas.xmlsoap.org/soap/http"
style="document" /><wsdl:operation name="setParte"><soap:operation soapAction="urn:setParte" style="document"
/><wsdl:input><soap:body use="literal" namespace="http://ws.apache.org/axis2" /></wsdl:input><wsdl:output><soap:body
use="literal" namespace="http://ws.apache.org/axis2" /></wsdl:output></wsdl:operation></wsdl:binding><wsdl:binding
name="Service.yawsSOAP12Binding" type="axis2:Service.yawsPortType"><soap12:binding
transport="http://schemas.xmlsoap.org/soap/http" style="document" /><wsdl:operation
name="setParte"><soap12:operation soapAction="urn:setParte" style="document" /><wsdl:input><soap12:body
use="literal" namespace="http://ws.apache.org/axis2" /></wsdl:input><wsdl:output><soap12:body use="literal"
namespace="http://ws.apache.org/axis2" /></wsdl:output></wsdl:operation></wsdl:binding><wsdl:service
name="Service.yaws"><wsdl:port name="Service.yawsSOAP11port"
binding="axis2:Service.yawsSOAP11Binding"><soap:address
location="http://localhost:8888/Service.yaws" /></wsdl:port><wsdl:port
name="Service.yawsSOAP12port" binding="axis2:Service.yawsSOAP12Binding"><soap12:address location="http://localhost:8888/Service.yaws" /></wsdl:port></wsdl:service></wsdl:definitions>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part.
URL: <http://erlang.org/pipermail/erlang-questions/attachments/20070717/309e5be4/attachment.bin>
More information about the erlang-questions
mailing list