Integration using Appian Advance webservice query function

Hello All,

We are using appian Advance web service query function to consume a SOAP wsdl. Below is the code snippet.When executing we are getting errors.Please let me know what will is issue and how to resolve this.I suspect there is some problem with SOAPBody xml but not able to know exactly.Appreciate all the details.

Input

fn!advancedwebservicequery(


wsdlUrl: "adsvcs.dev.myjonline.com/.../CorporateActionsService.svc

serviceNamespace: "schemas.myjonline.com/.../1.0",

serviceName: "CorporateActionsService",

soapBodyXml:"<wsdl:CorporateActionsRequest xmlns:wsdl='schemas.myjonline.com/.../1.0 '><RequestedDate>5</RequestedDate><RequestedIndex>10</RequestedIndex></wsdl:CorporateActionsRequest>",

serviceAuthentication: {
keystoreSystemKey: "corporateactions.service",
keystoreDocument: cons!CA_KEYSTORE_DOC

}

)

 

Output

 

Dictionary Error Occurred: true Error Message:

"XML reader error: javax.xml.stream.XMLStreamException: Parse Error at [row,col]:[1,50]

Message: White spaces are required between publicId and systemId."

ResponseHTTPHeaderKeys: List of Text String: 0 items

ResponseHTTPHeaderValues: List of Text String: 0 items

ResponseSOAPHeadersXml: List of Text String: 0 items ResponseXml: null (Text)

 

Cheers

RajHasti

  Discussion posts and replies are publicly visible

  • Also I have updated the call like below and used toxml still i am getting error

    Input
    load(
    local!request: 'type!{schemas.myjonline.com/.../1.0}CorporateActionRequest'(
    RequestedDate: "01/07/2019",
    RequestedIndex: "0"
    ),
    local!body: toxml(
    local!request
    ),
    local!advanceWebserviceCall: fn!advancedwebservicequery(
    wsdlUrl: "adsvcs.dev.myjonline.com/.../CorporateActionsService.svc
    serviceNamespace: "schemas.myjonline.com/.../1.0""",
    serviceName: "CorporateActionsService",
    soapBodyXml: local!body,
    serviceAuthentication: {
    keystoreSystemKey: "corporateactions.service",
    keystoreDocument: cons!CA_KEYSTORE_DOC
    },
    httpHeaderKeys: {
    "Content-Type"
    },
    httpHeaderValues: {
    "text/xml;charset=UTF-8"
    }
    ),
    with(
    local!body
    /*,*/
    /*local!advanceWebserviceCall*/
    )
    )


    Error


    Dictionary
    ErrorOccurred: true
    ErrorMessage: "XML reader error: javax.xml.stream.XMLStreamException: ParseError at [row,col]:[1,50]
    Message: White spaces are required between publicId and systemId."
    ResponseHTTPHeaderKeys: List of Text String: 0 items
    ResponseHTTPHeaderValues: List of Text String: 0 items
    ResponseSOAPHeadersXml: List of Text String: 0 items
    ResponseXml: null (Text)
  • 0
    Certified Associate Developer
    in reply to RajHasti

    Have you been able to get data back using a different tool e.g. Soap UI? / Does the service work?

    What is the publicId and systemId

  • Hello Raj,

    Have you tested the WS on another tool like SoapUI? It is probably not a problem it self on the structure,but I am not sure we should blame the xml body at least not yet.

    There are multiple reason for that issue on the white spaces to happen, before jumping into debugging I would suggest to do that step to make sure you have a fully responsive request/response Combinations.

    I found quite interesting this link regarding the issue, but this will work later on when debugging to understand what is happening.
    developer.ibm.com/.../

    For debugging you need to turn on certain flags mentioned on the documentation

    Jose