SOAP - Beginner Desperately looking for Help



Hi All,

I am a relative beginner to Python and am looking for help with sending and
XML message and getting back a return file. The server is:

https://node.deq.state.or.us/node/node.asmx

I have have successfully sent and recieved using the PING, AUTHENTICATE
(send in username and password and return a secuirity token), SOLICIT(send
in information for a query and get a number indicating the query),
GETSTATUS(status of query) using SOAPpy. I am using Python 2.4 on a Window
XP machine.

What I want to do now is download the result of my query using the DOWNLOAD
method. However, I cann't figure out how to do this. I have tried SOAPpy
and httplib and I cann't send the correct XML outgoing message. Any help
with this would be greatly appreciated. Following is the needed outgoing
XML file and my successful SOAPpy code.

Thank you,

Rodney (rodney_garland@xxxxxxxxxxx)

POST /node/node.asmx HTTP/1.1
Host: node.deq.state.or.us
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: ""

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
xmlns:xsd="http://www.w3.org/2001/XMLSchema";
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/";
xmlns:tns="http://www.ExchangeNetwork.net/schema/v1.0/node.wsdl";
xmlns:types="http://www.ExchangeNetwork.net/schema/v1.0/node.wsdl/encodedTypes";
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/";>
<soap:Body soap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/";>
<q1:Download
xmlns:q1="http://www.ExchangeNetwork.net/schema/v1.0/node.xsd";>
<securityToken xsi:type="xsd:string">string</securityToken>
<transactionId xsi:type="xsd:string">string</transactionId>
<dataflow xsi:type="xsd:string">string</dataflow>
<documents href="#id1" />
</q1:Download>
<soapenc:Array id="id1"
xmlns:q1="http://www.ExchangeNetwork.net/schema/v1.0/node.xsd";
soapenc:arrayType="q1:NodeDocument[2]">
<Item href="#id2" />
<Item href="#id3" />
</soapenc:Array>
<q3:NodeDocument id="id2" xsi:type="q3:NodeDocument"
xmlns:q3="http://www.ExchangeNetwork.net/schema/v1.0/node.xsd";>
<name xsi:type="xsd:string">string</name>
<type xsi:type="xsd:string">string</type>
</q3:NodeDocument>
<q4:NodeDocument id="id3" xsi:type="q4:NodeDocument"
xmlns:q4="http://www.ExchangeNetwork.net/schema/v1.0/node.xsd";>
<name xsi:type="xsd:string">string</name>
<type xsi:type="xsd:string">string</type>
</q4:NodeDocument>
</soap:Body>
</soap:Envelope>
Below is an example of the code that does work.

urlNode = 'https://node.deq.state.or.us/node/node.asmx?op=NodePing'
namespace = 'http://www.ExchangeNetwork.net/schema/v1.0/node.xsd'
server = SOAPProxy(urlNode, namespace)
PING = server.NodePing('Ping')

urlAuth = 'https://node.deq.state.or.us/node/node.asmx?op=Authenticate'
# AUTHENTICATE - Returns a variable with the token
server = SOAPProxy(urlAuth, namespace)
token = server.Authenticate(userId='MYUSERNAME', credential='MYPASSWORD',
authenticationMethod='Invoke')
print token

urlSolicit = 'https://node.deq.state.or.us/node/node.asmx?op=Solicit'
server = SOAPProxy(urlSolicit, namespace)
rowID='0'
maxRows='1000'
service='GetAirMeasurements'
fieldEventStartDate='2005-01-01'
fieldEventEndDate='2005-02-01'
analyteName='PM10'
parameters=[rowID,maxRows,'','','','','','','','','','','','','','','',fieldEventStartDate,fieldEventEndDate,'',analyteName]
transID = server.Solicit(securityToken = token, returnURL = '', request =
'GetAirMeasurements', parameters = parameters)
print transID





.



Relevant Pages

  • Distributed Query: Import XML using OpenRowSet Bulk from UNC - access denied
    ... connecting to SQL2005 Server B, the data is located on a server C at ... DECLARE @xml XML ... SQL server and verified this. ... if I run the query from the SQL ...
    (microsoft.public.sqlserver.xml)
  • Distributed Query: Import XML using OpenRowSet Bulk from UNC - access denied
    ... I'm having issues importing XML data using a distributed query with ... connecting to SQL2005 Server B, the data is located on a server C at ... DECLARE @xml XML ... if I run the query from the SQL ...
    (microsoft.public.sqlserver.security)
  • Re: Distributed Query: Import XML using OpenRowSet Bulk from UNC - access denied
    ... The client is connecting via Integrated Authentication as sysadmin. ... connecting to SQL2005 Server B, the data is located on a server C at ... DECLARE @xml XML ... if I run the query from the SQL ...
    (microsoft.public.sqlserver.security)
  • Re: SQLXML for xml explicit
    ... then from those lessonids i need to form another xml containing topic ids. ... If I am going to use the sql server 2000's 'FOR XML EXPLICIT' it'd take some ... >> the query plan and the indexes are used by Query Processor to implement ... >> UNION ALLs as MERGE UNIONs. ...
    (microsoft.public.sqlserver.xml)
  • Re: Duplicate Record with .ADDNEW
    ... If the database server will allow you to create a table without something, ... table there is no possibility of duplicate records. ... field imported from the XML. ... Use the Command object instead. ...
    (microsoft.public.vb.database.ado)