this is the first time i write on this forum because i googled and i've seen related post with no solution.
I will expose briefly the problem.
I'm using c# 3.5 and i'm trying using a web service.
Unfortunatly i get a NULL response and i can't understand why.
RpcRsat.RSATWSPortType rpt = new RpcRsat.RSATWSPortTypeClient();
RpcRsat.retrieve_seqResponse res = rpt.retrieve_seq(req);
res is NULL.
I've seen that this problem is a naming related problem so i think that if i post both the wsdl and server request/answer would be possible to correct the wsdl to have a not null answer.
The wsdl of the service
Expand|Select|Wrap|Line Numbers
- <?xml version="1.0"?>
- <?xml-stylesheet type="text/xsl" href="RSATWS.xsl"?>
- <definitions name="RSATWS"
- targetNamespace="urn:RSATWS"
- xmlns:tns="urn:RSATWS"
- xmlns:xsd="http://www.w3.org/2001/XMLSchema"
- xmlns="http://schemas.xmlsoap.org/wsdl/"
- xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
- xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">
- <types>
- <xsd:schema targetNamespace="urn:RSATWS" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">
- <xsd:complexType name="RetrieveSequenceRequest">
- <xsd:annotation>
- <xsd:documentation>
- Parameters for the operation retrieve_seq.
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="output" type="xsd:string" minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
- Return type. Accepted values: 'server' (result is stored on a file on the server), 'client' (result is directly transferred to the client), or 'both'. Default is 'both'.
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="organism" type="xsd:string" minOccurs="1">
- <xsd:annotation>
- <xsd:documentation>
- Organism. Words need to be underscore separated (example: Escherichia_coli_K12).
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="query" type="xsd:string" minOccurs="0" maxOccurs="unbounded">
- <xsd:annotation>
- <xsd:documentation>
- A list of query genes.
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="all" type="xsd:int" minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
- Return sequences for all the genes of the organism if value =
- 1. Incompatible with query.
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="noorf" type="xsd:int" minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
- Prevent overlap with upstream open reading frames (ORF) if
- value = 1.
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="from" type="xsd:int" minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
- Inferior limit of the region to retrieve. Default is organism dependant (example: Saccharomyces cerevisiae = -800).
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="to" type="xsd:int" minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
- Superior limit of the region to retrieve. Default is '-1'.
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="feattype" type="xsd:string" minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
- Type of genome features to load. Supported: CDS, mRNA, tRNA, rRNA.
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="type" type="xsd:string" minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
- Sequence type. Supported: upstream, downstream, ORF (unspliced open reading frame).
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="format" type="xsd:string" minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
- Sequence format. Supported: IG (Intelligenetics), WC (wconsensus), raw, FastA
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="lw" type="xsd:int" minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
- Line width (0 for whole sequence on one line).
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="label" type="xsd:string" minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
- Field(s) to be used in the sequence label. Multiple fields can be specified, separated by commas. Supported: id, name, organism_name, sequence_type, current_from, current_to, ctg, orf_strand, reg_left, reg_right. Default: name.
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="label_sep" type="xsd:string" minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
- Separator between the label fields. Default: | (pipe character).
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="nocom" type="xsd:int" minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
- No comments if value = 1. Only the identifier and the sequence are returned. By default, the comment indicates the ORF and upstream sequence coordinates.
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="repeat" type="xsd:int" minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
- Use the repeat masked version of the genome if value = 1. Attention: repeated regions are annotated for some genomes only.
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="imp_pos" type="xsd:int" minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
- Admit imprecise positions if value = 1.
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="RetrieveSequenceResponse">
- <xsd:sequence>
- <xsd:element name="server" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>
- Location of the result file on the server. This can be used as input for a further request.
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="command" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>
- The stand alone command executed on the server.
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="client" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>
- The results.
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:schema>
- </types>
- <message name="RetrieveSequenceInput">
- <part name="request" type="tns:RetrieveSequenceRequest"/>
- </message>
- <message name="RetrieveSequenceOutput">
- <part name="response" type="tns:RetrieveSequenceResponse"/>
- </message>
- <portType name="RSATWSPortType">
- <operation name="retrieve_seq">
- <input name="RetrieveSequenceRequest" message="tns:RetrieveSequenceInput"/>
- <output name="RetrieveSequenceResponse" message="tns:RetrieveSequenceOutput"/>
- <documentation>Returns upstream, downstream or coding DNA sequences
- for list of query genes.
- </documentation>
- </operation>
- </portType>
- <binding name="RSATWSBinding" type="tns:RSATWSPortType">
- <soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>
- <operation name="retrieve_seq">
- <soap:operation soapAction="urn:RSATWS#retrieve_seq"/>
- <input name="RetrieveSequenceRequest">
- <soap:body use="literal" namespace="urn:RSATWS" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
- </input>
- <output name="RetrieveSequenceResponse">
- <soap:body use="literal" namespace="urn:RSATWS" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
- </output>
- </operation>
- </binding>
- <service name="RSATWebServices">
- <documentation>
- Web services for the Regulatory Sequence Analysis Tools (RSAT).
- Tools developed by Jacques van Helden
- (jvanheld@scmbb.ulb.ac.be), SOAP/WSDL interface developed by
- Olivier Sand (oly@scmbb.ulb.ac.be).
- </documentation>
- <port name="RSATWSPortType" binding="tns:RSATWSBinding">
- <soap:address location="http://rsat.scmbb.ulb.ac.be/rsat/web_services/RSATWS.cgi"/>
- <!--soap:address location="http://localhost/rsat/web_services/RSATWS.cgi"/-->
- </port>
- </service>
- </definitions>[/i]
- The request
- POST /rsat/web_services/RSATWS.cgi HTTP/1.1..Content-Type: text/xml; charset=utf-8..VsDebuggerCausalityData: uIDPozNkTwqKKWxEvLtLCIpZ12sAAAAAwFGQKj7fw0m0XzI12/8zRVZAMVRscIJMobGqcgydosMACQAA..SOAPAction: "urn:RSATWS#retrieve_seq"..Host: rsat.scmbb.ulb.ac.be..Content-Length: 396..Expect: 100-continue..Connection: Keep-Alive....
- <s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
- <s:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
- <retrieve_seq xmlns="urn:RSATWS">
- <request xmlns="">
- <organism>Escherichia_coli_K12</organism>
- <query>MetA</query><feattype>CDS</feattype><type>upstream</type><format>FastA</format>
- </request>
- </retrieve_seq>
- </s:Body>
- </s:Envelope>
- The answer of the server
- [i]
- HTTP/1.1 200 OK..Date: Tue, 05 Aug 2008 08:53:41 GMT..Server: Apache/2.2.8 (Linux/SUSE)..LOG ### /home/rsat/rsa-tools/public_html/logs/log-file_rsat_WS_2008_08Status: 200 OK..SOAPServer: SOAP::Lite/Perl/0.710.07..Content-Length: 1269..Keep-Alive: timeout=30, max=100..Connection: Keep-Alive..Content-Type: text/xml; charset=utf-8....
- <?xml version="1.0" encoding="UTF-8"?>
- <soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" soap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
- <soap:Body>
- <retrieve_seqResponse xmlns="urn:RSATWS">
- <response>
- <client xsi:type="xsd:string">>metA.MetA; upstream from -400 to -1; size: 400; location: NC_000913.2 4211903 4212302 D.CATCAGGATCGATAAACAGCGCATCCATATGCTGCCCACTTAGCAACATAAATCCAACCG.GCTGATCCCGCTCATTAACCGCGACCCACAACGGCGCTTCCGGCAGGAAGGAACGAACTA.GGTCCTCCAGCTCGGTCCGATACTCTGCTGATAGAAAATCGTGAGTGGCATCGACAGAAC.GACACCAAATCGCAACGAGTTCCTCCCCTTCCTCATGCCGTGAGCGGCGAATACTAATAA.CCATTTTCTCTCCTTTTAGTCATTCTTATATTCTAACGTAGTCTTTTCCTTGAAACTTTC.TCACCTTCAACATGCAGGCTCGACATTGGCAAATTTTCTGGTTATCTTCAGCTATCTGGA.TGTCTAAACGTATAAGCGTATGTAGTGAGGTAATCAGGTT..</client>
- <server xsi:type="xsd:string">/home/rsat/rsa-tools/public_html/tmp/retrieve-seq.vBF9M7mRXoFastA</server>
- <command xsi:type="xsd:string">/home/rsat/rsa-tools/perl-scripts/retrieve-seq -org 'Escherichia_coli_K12' -q 'MetA' -feattype 'CDS' -type 'upstream' -format 'FastA'</command>
- </response>
- </retrieve_seqResponse>
- </soap:Body>
- </soap:Envelope>