SitePoint Sponsor

User Tag List

Results 1 to 5 of 5

Hybrid View

  1. #1
    SitePoint Member
    Join Date
    Sep 2011
    Posts
    5
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Using classic ASP to access XML values generated by ColdFusion...

    NOTE: This is a cross-post from ASP classic forum.

    Hi:
    I have this sample section of an XML file generated from a ColdFusion server:

    -<wsdl: PortType name="organizationalModule">
    -<wsdl: operation name="getPositions" parameterOrder="siteid validationkey WhichPosition WhichUnit">
    <wsdl: input name="getPositionsRequest" message="impl:getPositionsRequest"/>
    <wsdl: output name="getPositionsResponse" message="impl:getPositionsResponse"/>
    <wsdl: fault name="CFCInvocationException" message="impl:CFCInvocationException"/>
    -</wsdl: operation>

    I was trying to retrieve the valus associated with siteid, validationkey, WhichPosition, and WhichUnit by using the following code from as classic ASP page:

    <%

    Dim returnString
    Dim myXML ' this variable hold the XML data in a DOM Object
    Dim SoapRequest
    Dim SoapURL
    Dim ResponseXML
    Dim bXMLLoadError

    Set SoapRequest = Server.CreateObject("MSXML2.XMLHTTP")
    Set myXML =Server.CreateObject("MSXML.DOMDocument")

    myXML.Async=False
    SoapURL = "https://ourserver.com/applicationAPI/organizationalModule.cfc?wsdl"
    SoapRequest.Open "GET",SoapURL , False
    SoapRequest.Send()

    'Check that the XML was retrieved successfully by checking to ensure that a HTTP status code of 200 was received (200 = OK)

    if Not myXML.load(SoapRequest.responseXML) or XMLHTTP.Status <> 200 then 'an Error loading XML
    Response.Write("<font color=""red"">Page Error: Could not load XML from remote server</font><br>") 'Show error message
    bXMLLoadError = True

    Else 'parse the XML

    Dim siteid
    Dim validationkey
    Dim WhichPosition
    Dim WhichUnit
    Dim siteValue
    Dim validValue
    Dim positValue
    Dim unitValue

    Set NodeList = objXML.documentElement.selectNodes("/portType/operation")

    Set nodesiteid=myXML.documentElement.selectSingleNode("//siteid").text
    siteValue=nodesiteid.getAttribute("siteid")
    MsgBox siteValue

    Set nodevalid=myXML.documentElement.selectSingleNode("//validationkey").text
    validValue=nodevalid.getAttribute("validationkey")
    MsgBox validValue

    Set nodePos=myXML.documentElement.selectSingleNode("//WhichPosition").text
    positValue=nodePos.getAttribute("WhichPosition")
    MsgBox positValue

    Set nodeUnit=myXML.documentElement.selectSingleNode("//WhichUnit").text
    unitValue=nodeUnit.getAttribute("WhichUnit")
    MsgBox unitValue


    Set myXML = Nothing

    End If


    %>


    My problem is I am not seeing anything back when I run this script. Am I missing something? Do I have to do a specific response.write for each retrieved field?

    I would appreciate any suggestion that would make my crude code work.

    Thanks.
    ReySan

  2. #2
    SitePoint Author silver trophybronze trophy
    wwb_99's Avatar
    Join Date
    May 2003
    Location
    Washington, DC
    Posts
    10,576
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)
    Right now you are just asking for the description of the service (wsdl) not the actual data. Probably should also be sending HTTP POST requests to get the data. In any case you probably want to find the old COM+ SOAP Toolkit -- that should make life alot easier. There are vastly better things one can do than manually parse the verbosity that is SOAP.

  3. #3
    SitePoint Member
    Join Date
    Sep 2011
    Posts
    5
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Thanks wwb_99. I am just starting out and am just gettting a grasp of dealing with XML and web services. I now know I need to do an hhtp post request to get back the data!

    'Appreciate it.
    ReySan

  4. #4
    SitePoint Author silver trophybronze trophy
    wwb_99's Avatar
    Join Date
    May 2003
    Location
    Washington, DC
    Posts
    10,576
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)
    You missed the important part here -- don't consume SOAP web services manually. The toy you want to use is the SOAP Toolkit.

  5. #5
    SitePoint Member
    Join Date
    Sep 2011
    Posts
    5
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    wwb_99:
    Yes I realized that after looking at those scary nodes! In fact I already downloaded the SOAP Toolkit and has been fiddling with it since my last post.
    Thanks for pointing me in the right direction.

    Cheers!
    ReySan


Tags for this Thread

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •