Loading ...
Sorry, an error occurred while loading the content.

Re: [soaplite] FW: At my wits end.

Expand Messages
  • Byrne Reese
    ... I love it when people read articles I write. :) ... Yes - it does, you have to either write your own serializer, or manually build the SOAP::Data
    Message 1 of 4 , Jun 12, 2003
    • 0 Attachment
      On Thu, 2003-06-12 at 09:00, Brian Gilman wrote:
      > I've gotten a lot farther this morning! I read an article at:
      >
      > http://soapenv.org/article.pl?sid=02/02/11/1740229&mode=thread

      I love it when people read articles I write. :)

      > Which helped me understand how SOAP::Lite handles complex data
      > structures. But, I've hit two more walls:
      >
      > 1) SOAP::Lite encodes arrays using it's own arrayType
      > apache axis barfs on this

      Yes - it does, you have to either write your own serializer, or manually
      build the SOAP::Data structure. I have attached a server-side stub of
      the WS-I Supplier Interop Demo written in Perl - it only implements two
      methods, but it does show how to compose arrays of complex types that
      Axis can understand. <attached file: ISupplier.pm>

      >
      > 2) Attachments don't work! or at least apache Axis dies when I try to
      > use them.

      Correct - you will need to download and install MIME::tools version
      6.106 alpha. Then you will need to enter the following code into your
      script:

      BEGIN {
      $MIME::Entity::BOUNDARY_DELIMITER = "\r\n";
      }

      That will fix the SOAP::Lite and Axis MIME interop bug. Soon this will
      be fixed in a new version of SOAP::Lite...

      >
      > As for your questions about DataHandler: It get's serialized into a SOAP
      > attachment
      >
      > Does it matter what ParameterInfo looks like in Java? Here's the SOAP
      > structure that I want to build with corresponding SOAP::Lite code:

      Try looking at my ISupplier.pm sample code and see if that helps... if
      not, let me know and we can go from there.

      > <SOAP-ENV:Body><namesp1:submitJob xmlns:namesp1="Analysis"><name
      > xsi:type="xsd:int">0</name><parameters xsi:type="SOAP-ENC:Array"
      > SOAP-ENC:arrayType="xsd:ur-type[2]"><item><description
      > xsi:type="xsd:string">input1</description><inputFile
      > xsi:type="xsd:boolean">true</inputFile><label xsi:type="xsd:string"/><name
      > xsi:type="xsd:string">-f1</name><outputFile
      > xsi:type="xsd:boolean">false</outputFile><value
      > xsi:type="xsd:string">/Users/gilmanb/mysql.html</value></item><item><descrip
      > tion xsi:type="xsd:string">input1</description><inputFile
      > xsi:type="xsd:boolean">true</inputFile><label xsi:type="xsd:string"/><name
      > xsi:type="xsd:string">-f2</name><outputFile
      > xsi:type="xsd:boolean">false</outputFile><value
      > xsi:type="xsd:string">/Users/gilmanb/sourceforge/omnigene2/build.xml</value>
      > </item></parameters></namesp1:submitJob></SOAP-ENV:Body>
      >
      > Here's the SOAP::Lite code that generates this:
      >
      > my $soap = SOAP::Lite
      > ->uri("Analysis")
      > ->on_action(sub {return "Analysis"})
      > ->proxy("http://localhost:9090/axis/servlet/AxisServlet")
      > #->parts([$ent1, $ent2])
      > ->submitJob(SOAP::Data->name("name" => 0)
      > ->type("xsd:int"),
      > SOAP::Data->name("parameters" =>[
      >
      > \SOAP::Data->value(SOAP::Data->name("description"
      > => "input1"),
      > SOAP::Data->name("inputFile" =>
      > "true")->type("xsd:boolean"),
      > SOAP::Data->name("label" => ""),
      > SOAP::Data->name("name" => "-f1"),
      > SOAP::Data->name("outputFile" =>
      > "false")->type("xsd:boolean"),
      > SOAP::Data->name("value" => $file1)),
      >
      > \SOAP::Data->value(SOAP::Data->name("description"
      > => "input1"),
      > SOAP::Data->name("inputFile" =>
      > "true")->type("xsd:boolean"),
      > SOAP::Data->name("label" => ""),
      > SOAP::Data->name("name" => "-f2"),
      > SOAP::Data->name("outputFile" =>
      > "false")->type("xsd:boolean"),
      > SOAP::Data->name("value" => $file2))
      > ])
      >
      >
      > );
      >
      >
      > Now here's what Apache Axis generates:
      >
      > I've cut and pasted this so that the superfluous stuff has been left
      > out.
      >
      > <arg1 xsi:type="soapenc:Array" soapenc:arrayType="ns1:ParmInfo[2]"
      > xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">
      > <item href="#id0"/>
      > <item href="#id1"/>
      > </arg1>
      > <multiRef id="id0" soapenc:root="0"
      > soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
      > xsi:type="ns2:ParmInfo"
      > xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
      > xmlns:ns2="Analysis">
      > <attributes href="#id3"/>
      > <description xsi:type="xsd:string">input file 1</description>
      > <inputFile xsi:type="xsd:boolean">true</inputFile>
      > <label xsi:type="xsd:string"></label>
      > <name xsi:type="xsd:string">-f1</name>
      > <outputFile xsi:type="xsd:boolean">false</outputFile>
      > <value xsi:type="xsd:string">test1.txt</value>
      > </multiRef>
      > <multiRef id="id2" soapenc:root="0"
      > soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
      > xsi:type="ns3:Map" xmlns:ns3="http://xml.apache.org/xml-soap"
      > xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">
      > <item>
      > <key xsi:type="xsd:string">test1.txt</key>
      > <value href="cid:519D4713CAC92D0A55F7F849680F1D56"
      > xmlns:ns4="Analysis"/>
      > </item>
      > <item>
      > <key xsi:type="xsd:string">test2.txt</key>
      > <value href="cid:4D580598F9E5C89FA1FD17407BADABF5"
      > xmlns:ns5="Analysis"/>
      > </item>
      > </multiRef>
      > <multiRef id="id1" soapenc:root="0"
      > soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
      > xsi:type="ns6:ParmInfo" xmlns:ns6="Analysis"
      > xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">
      > <attributes href="#id4"/>
      > <description xsi:type="xsd:string">input file 2</description>
      > <inputFile xsi:type="xsd:boolean">true</inputFile>
      > <label xsi:type="xsd:string"></label>
      > <name xsi:type="xsd:string">-f2</name>
      > <outputFile xsi:type="xsd:boolean">false</outputFile>
      > <value xsi:type="xsd:string">test2.txt</value>
      > </multiRef>
      > <multiRef id="id3" soapenc:root="0"
      > soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
      > xsi:type="ns7:Map" xmlns:ns7="http://xml.apache.org/xml-soap"
      > xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">
      > <item>
      > <key xsi:type="xsd:string">MODE</key>
      > <value xsi:type="xsd:string">IN</value>
      > </item>
      > <item>
      > <key xsi:type="xsd:string">TYPE</key>
      > <value xsi:type="xsd:string">FILE</value>
      > </item>
      > </multiRef>
      > <multiRef id="id4" soapenc:root="0"
      > soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
      > xsi:type="ns8:Map" xmlns:ns8="http://xml.apache.org/xml-soap"
      > xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">
      > <item>
      > <key xsi:type="xsd:string">MODE</key>
      > <value xsi:type="xsd:string">IN</value>
      > </item>
      > <item>
      > <key xsi:type="xsd:string">TYPE</key>
      > <value xsi:type="xsd:string">FILE</value>
      > </item>
      > </multiRef>
      >
      >
      >
      > Now the problem is that SOAP::Lite has decided to use the following
      > arrayType attribute:
      >
      > SOAP-ENC:arrayType="xsd:ur-type[2]
      >
      > I need this:
      >
      > SOAP-ENC:arrayType"namesp1:ParmInfo[2]
      >
      > Apache seems to choke on the "xsd:ur-type[2]"
      >
      > I'm thinking that I need a custom serializer here but, I don't have a
      > clue where to start!
      >
      > Also, do you know if SOAP::Lite supports DIME? Or if there's a DIME
      > library I can use? If so, where can I find it?
      >
      > I've attached the ParameterInfo class per your request.
      >
      > Thanks for the help!!
      >
      > > The method signature you provide is helpful, but without knowing
      > > anything about the underlying data structures it is difficult to tell
      > > you what you need to do. A custom serializer will certainly make things
      > > easier for you, but I am not sure if you want to go into that level of
      > > detail in your book. But who knows, maybe you do. :)
      > >
      > > The SOAP::MIME stuff looks good...
      > >
      > > As for constructing the ARRAY of objects, one can easily do that using
      > > SOAP::Data objects as you have already indicated, but again, what does
      > > the ParameterInfo and DataHandler objects "look like?"
      > >
      > > On Wed, 2003-06-11 at 20:31, Brian Gilman wrote:
      > >> Hello,
      > >>
      > >> My name is Brian Gilman. I am currently writing a book on XML and
      > >> BioInformatics for O'Reilly that includes a section on SOAP::Lite and
      > >> Apache
      > >> Axis toolkits.
      > >>
      > >> I am also the Inventor of a BioInformatics Toolkit called
      > >> OmniGene. This
      > >> is a toolkit that exposes Bioinformatics services as web services. I
      > >> am
      > >> trying to write a simple Client for our analysis engine. The method
      > >> signature in java is:
      > >>
      > >> public JobInfo submitJob(int taskID, ParameterInfo[] parameters,
      > >> DataHandler[] files);
      > >>
      > >> This is serialized into the SOAP messages: request and response
      > >> attached
      > >> and shown below.
      > >>
      > >> I have read through the perdoc/your book/ and a few hundred other
      > >> resources and do not quite know how to write the code to talk to this
      > >> service. I would like to put this into the book but cannot due to this
      > >> roadblock.
      > >>
      > >> Here is what I understand so far:
      > >>
      > >> In order to do attachments I use SOAP::MIME. I wrote the following
      > >> code
      > >> to handle this (please forgive the really bad Perl coding as this is
      > >> not my
      > >> native tongue):
      > >>
      > >> if(@Files){
      > >> foreach my $file (@Files){
      > >> my $fileCounter++;
      > >>
      > >> my $ent = build MIME::Entity
      > >> Type => "text/plain",
      > >> Encoding => "binary",
      > >> Path => $file,
      > >> 'Content-Id' =>'<File' . $fileCounter . '>',
      > >> Disposition => "attachment";
      > >>
      > >> push(@fileHolder, $ent);
      > >> }
      > >> }
      > >>
      > >> I pass this to a SOAP::Lite object using the ->parts(@fileHolder)
      > >> method.
      > >>
      > >> Now here's where I get lost:
      > >>
      > >> I need to construct an array of objects called ParameterInfo and
      > >> pass
      > >> them to my service. How do I do this in SOAP::Lite? I've looked into
      > >> SOAP::Data objects and they look promising but, I'm not sure how to
      > >> get the
      > >> SOAP::Lite toolkit to encode these as a Java Map (well in this case
      > >> Axis
      > >> serialized Map?). Do I need to make my own serializer here?
      > >>
      > >> I would really appreciate your help!
      > >>
      > >> Best,
      > >>
      > >> Brian Gilman
      > >>
      > >>
      > >>
      > >>
      > >> ==============
      > >> Listen Port: 9090
      > >> Target Host: localhost
      > >> Target Port: 8080
      > >> ==== Request ====
      > >> POST /axis/servlet/AxisServlet HTTP/1.0
      > >>
      > >> Content-Type: multipart/related; type="text/xml";
      > >> start="<97C2115D38FF77499E2CA04BB838E901>";
      > >> boundary="----=_Part_0_7089827.1055376896680"
      > >>
      > >> Accept: application/soap+xml, application/dime, multipart/related,
      > >> text/*
      > >>
      > >> User-Agent: Axis/1.1RC2
      > >>
      > >> Host: localhost
      > >>
      > >> Cache-Control: no-cache
      > >>
      > >> Pragma: no-cache
      > >>
      > >> SOAPAction: ""
      > >>
      > >> Content-Length: 3796
      > >>
      > >>
      > >>
      > >>
      > >>
      > >> ------=_Part_0_7089827.1055376896680
      > >>
      > >> Content-Type: text/xml; charset=UTF-8
      > >>
      > >> Content-Transfer-Encoding: binary
      > >>
      > >> Content-Id: <97C2115D38FF77499E2CA04BB838E901>
      > >>
      > >>
      > >>
      > >> <?xml version="1.0" encoding="UTF-8"?>
      > >> <soapenv:Envelope
      > >> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
      > >> xmlns:xsd="http://www.w3.org/2001/XMLSchema"
      > >> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
      > >> <soapenv:Body>
      > >> <ns1:submitJob
      > >> soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
      > >> xmlns:ns1="Analysis">
      > >> <arg0 xsi:type="xsd:int">0</arg0>
      > >> <arg1 xsi:type="soapenc:Array" soapenc:arrayType="ns1:ParmInfo[2]"
      > >> xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">
      > >> <item href="#id0"/>
      > >> <item href="#id1"/>
      > >> </arg1>
      > >> <arg2 href="#id2"/>
      > >> </ns1:submitJob>
      > >> <multiRef id="id0" soapenc:root="0"
      > >> soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
      > >> xsi:type="ns2:ParmInfo"
      > >> xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
      > >> xmlns:ns2="Analysis">
      > >> <attributes href="#id3"/>
      > >> <description xsi:type="xsd:string">input file 1</description>
      > >> <inputFile xsi:type="xsd:boolean">true</inputFile>
      > >> <label xsi:type="xsd:string"></label>
      > >> <name xsi:type="xsd:string">-f1</name>
      > >> <outputFile xsi:type="xsd:boolean">false</outputFile>
      > >> <value xsi:type="xsd:string">test1.txt</value>
      > >> </multiRef>
      > >> <multiRef id="id2" soapenc:root="0"
      > >> soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
      > >> xsi:type="ns3:Map" xmlns:ns3="http://xml.apache.org/xml-soap"
      > >> xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">
      > >> <item>
      > >> <key xsi:type="xsd:string">test1.txt</key>
      > >> <value href="cid:519D4713CAC92D0A55F7F849680F1D56"
      > >> xmlns:ns4="Analysis"/>
      > >> </item>
      > >> <item>
      > >> <key xsi:type="xsd:string">test2.txt</key>
      > >> <value href="cid:4D580598F9E5C89FA1FD17407BADABF5"
      > >> xmlns:ns5="Analysis"/>
      > >> </item>
      > >> </multiRef>
      > >> <multiRef id="id1" soapenc:root="0"
      > >> soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
      > >> xsi:type="ns6:ParmInfo" xmlns:ns6="Analysis"
      > >> xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">
      > >> <attributes href="#id4"/>
      > >> <description xsi:type="xsd:string">input file 2</description>
      > >> <inputFile xsi:type="xsd:boolean">true</inputFile>
      > >> <label xsi:type="xsd:string"></label>
      > >> <name xsi:type="xsd:string">-f2</name>
      > >> <outputFile xsi:type="xsd:boolean">false</outputFile>
      > >> <value xsi:type="xsd:string">test2.txt</value>
      > >> </multiRef>
      > >> <multiRef id="id3" soapenc:root="0"
      > >> soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
      > >> xsi:type="ns7:Map" xmlns:ns7="http://xml.apache.org/xml-soap"
      > >> xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">
      > >> <item>
      > >> <key xsi:type="xsd:string">MODE</key>
      > >> <value xsi:type="xsd:string">IN</value>
      > >> </item>
      > >> <item>
      > >> <key xsi:type="xsd:string">TYPE</key>
      > >> <value xsi:type="xsd:string">FILE</value>
      > >> </item>
      > >> </multiRef>
      > >> <multiRef id="id4" soapenc:root="0"
      > >> soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
      > >> xsi:type="ns8:Map" xmlns:ns8="http://xml.apache.org/xml-soap"
      > >> xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">
      > >> <item>
      > >> <key xsi:type="xsd:string">MODE</key>
      > >> <value xsi:type="xsd:string">IN</value>
      > >> </item>
      > >> <item>
      > >> <key xsi:type="xsd:string">TYPE</key>
      > >> <value xsi:type="xsd:string">FILE</value>
      > >> </item>
      > >> </multiRef>
      > >> </soapenv:Body>
      > >> </soapenv:Envelope>
      > >>
      > >> ------=_Part_0_7089827.1055376896680
      > >>
      > >> Content-Type: text/plain
      > >>
      > >> Content-Transfer-Encoding: binary
      > >>
      > >> Content-Id: <519D4713CAC92D0A55F7F849680F1D56>
      > >>
      > >>
      > >>
      > >>> Test1
      > >> aaaaaaaaggggggtttttttttccccccc
      > >>
      > >>
      > >> ------=_Part_0_7089827.1055376896680
      > >>
      > >> Content-Type: text/plain
      > >>
      > >> Content-Transfer-Encoding: binary
      > >>
      > >> Content-Id: <4D580598F9E5C89FA1FD17407BADABF5>
      > >>
      > >>
      > >>
      > >>> Test2
      > >> aaaaaaaatttttttggggggggggggggggccccccccccc
      > >>
      > >>
      > >> ------=_Part_0_7089827.1055376896680--
      > >>
      > >> ==== Response ====
      > >> HTTP/1.1 200 OK
      > >>
      > >> Set-Cookie: JSESSIONID=DAA82FFC4487D346BC5FFF90B8278066; Path=/axis
      > >>
      > >> Content-Type: text/xml; charset=utf-8
      > >>
      > >> Date: Thu, 12 Jun 2003 00:14:58 GMT
      > >>
      > >> Server: Apache Coyote/1.0
      > >>
      > >> Connection: close
      > >>
      > >>
      > >>
      > >> <?xml version="1.0" encoding="UTF-8"?>
      > >> <soapenv:Envelope
      > >> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
      > >> xmlns:xsd="http://www.w3.org/2001/XMLSchema"
      > >> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
      > >> <soapenv:Body>
      > >> <ns1:submitJobResponse
      > >> soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
      > >> xmlns:ns1="Analysis">
      > >> <submitJobReturn xsi:type="ns1:JobInfo">
      > >> <dateCompleted xsi:type="xsd:dateTime" xsi:nil="true"/>
      > >> <dateSubmitted
      > >> xsi:type="xsd:dateTime">2003-06-12T00:14:57.876Z</dateSubmitted>
      > >> <inputFileName xsi:type="xsd:string"></inputFileName>
      > >> <jobNumber xsi:type="xsd:int">0</jobNumber>
      > >> <parameterInfo xsi:type="xsd:string"><?xml
      > >> version="1.0"
      > >> encoding="UTF-8"?>
      > >>
      > >> <ANALYSISPARAMETERS>
      > >> <PARAMETER name="-f1"
      > >> value="/Users/gilmanb/sourceforge/omnigene2/omnigene-1.1.3/runtime/jaka
      > >> rta-tomcat-4.1.24/webapps/axis/WEB-INF/attachments/Axis53370axis_test1.txt&q
      > >> uot;>
      > >> <DESCRIPTION>input file 1</DESCRIPTION>
      > >> <ATTRIBUTE key="MODE">IN</ATTRIBUTE>
      > >> <ATTRIBUTE key="TYPE">FILE</ATTRIBUTE>
      > >> <ATTRIBUTE
      > >> key="LABEL"></ATTRIBUTE></PARAMETER>
      > >> <PARAMETER name="-f2"
      > >> value="/Users/gilmanb/sourceforge/omnigene2/omnigene-1.1.3/runtime/jaka
      > >> rta-tomcat-4.1.24/webapps/axis/WEB-INF/attachments/Axis53371axis_test2.txt&q
      > >> uot;>
      > >> <DESCRIPTION>input file 2</DESCRIPTION>
      > >> <ATTRIBUTE key="MODE">IN</ATTRIBUTE>
      > >> <ATTRIBUTE key="TYPE">FILE</ATTRIBUTE>
      > >> <ATTRIBUTE
      > >> key="LABEL"></ATTRIBUTE></PARAMETER></ANALYSISPA
      > >> RAMETERS>
      > >> </parameterInfo>
      > >> <parameterInfoArray xsi:type="soapenc:Array"
      > >> soapenc:arrayType="ns1:ParmInfo[2]"
      > >> xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">
      > >> <item>
      > >> <attributes xsi:type="ns2:Map"
      > >> xmlns:ns2="http://xml.apache.org/xml-soap">
      > >> <item>
      > >> <key xsi:type="xsd:string">MODE</key>
      > >> <value xsi:type="xsd:string">IN</value>
      > >> </item>
      > >> <item>
      > >> <key xsi:type="xsd:string">TYPE</key>
      > >> <value xsi:type="xsd:string">FILE</value>
      > >> </item>
      > >> <item>
      > >> <key xsi:type="xsd:string">LABEL</key>
      > >> <value xsi:type="xsd:string"></value>
      > >> </item>
      > >> </attributes>
      > >> <description xsi:type="xsd:string">input file 1</description>
      > >> <inputFile xsi:type="xsd:boolean">true</inputFile>
      > >> <label xsi:type="xsd:string"></label>
      > >> <name xsi:type="xsd:string">-f1</name>
      > >> <outputFile xsi:type="xsd:boolean">false</outputFile>
      > >> <value
      > >> xsi:type="xsd:string">/Users/gilmanb/sourceforge/omnigene2/omnigene-1.1.3/ru
      > >> ntime/jakarta-tomcat-4.1.24/webapps/axis/WEB-INF/attachments/Axis53370axis_t
      > >> est1.txt</value>
      > >> </item>
      > >> <item>
      > >> <attributes xsi:type="ns3:Map"
      > >> xmlns:ns3="http://xml.apache.org/xml-soap">
      > >> <item>
      > >> <key xsi:type="xsd:string">MODE</key>
      > >> <value xsi:type="xsd:string">IN</value>
      > >> </item>
      > >> <item>
      > >> <key xsi:type="xsd:string">TYPE</key>
      > >> <value xsi:type="xsd:string">FILE</value>
      > >> </item>
      > >> <item>
      > >> <key xsi:type="xsd:string">LABEL</key>
      > >> <value xsi:type="xsd:string"></value>
      > >> </item>
      > >> </attributes>
      > >> <description xsi:type="xsd:string">input file 2</description>
      > >> <inputFile xsi:type="xsd:boolean">true</inputFile>
      > >> <label xsi:type="xsd:string"></label>
      > >> <name xsi:type="xsd:string">-f2</name>
      > >> <outputFile xsi:type="xsd:boolean">false</outputFile>
      > >> <value
      > >> xsi:type="xsd:string">/Users/gilmanb/sourceforge/omnigene2/omnigene-1.1.3/ru
      > >> ntime/jakarta-tomcat-4.1.24/webapps/axis/WEB-INF/attachments/Axis53371axis_t
      > >> est2.txt</value>
      > >> </item>
      > >> </parameterInfoArray>
      > >> <resultFileName xsi:type="xsd:string" xsi:nil="true"/>
      > >> <status xsi:type="xsd:string">Not Started</status>
      > >> <taskID xsi:type="xsd:int">0</taskID>
      > >> <userId xsi:type="xsd:string"></userId>
      > >> </submitJobReturn>
      > >> </ns1:submitJobResponse>
      > >> </soapenv:Body>
      > >> </soapenv:Envelope>
      > >> ==============
      > >>
      > >>
      > >> --
      > >> Brian Gilman <gilmanb@...>
      > >> Group Leader Medical & Population Genetics Dept.
      > >> MIT/Whitehead Inst. Center for Genome Research
      > >> One Kendall Square, Bldg. 300 / Cambridge, MA 02139-1561 USA
      > >> phone +1 617 252 1069 / fax +1 617 252 1902
      > >>
      > >> ------ End of Forwarded Message
      > >>
      > >>
      > >> Yahoo! Groups Sponsor
      > >>
      > >>
      > >>
      > >> To unsubscribe from this group, send an email to:
      > >> soaplite-unsubscribe@yahoogroups.com
      > >>
      > >>
      > >>
      > >> Your use of Yahoo! Groups is subject to the Yahoo! Terms of Service.
      --
      Byrne Reese <breese@...>
      Grand Central Communications
    Your message has been successfully submitted and would be delivered to recipients shortly.