Good morning,
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
-
<?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>
Thank you in adwance, i hope you can help me because i'm working on this problem from centuries.