Charles Robertson
08/04/2023, 12:05 PMzackster
08/04/2023, 12:06 PMdswitzer
08/04/2023, 12:06 PMThere is a problem with the way Lucee handles web services, especially how it formats the response.
When a response leaves the web service method, it is just a plain old Coldfusion object.
Then the Axis1 server intercepts the response and converts it into XML.
But Lucee seems to add multiRefs.Andreas
08/04/2023, 12:07 PMCharles Robertson
08/04/2023, 12:07 PMdswitzer
08/04/2023, 12:08 PMCharles Robertson
08/04/2023, 12:10 PM<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:Header>
<ns1:authToken loggedin="YES" soapenv:actor="" soapenv:mustUnderstand="0" xmlns="<https://api.learningassistant.com>" xmlns:ns1="<https://api.learningassistant.com>">
<ns1:id type="xsd:string">[redacted]</ns1:id>
<ns1:uuid type="xsd:string">[redacted]</ns1:uuid>
</ns1:authToken>
</soapenv:Header>
<soapenv:Body>
<ValidateBookingsResponse xmlns="<http://moderation.types.soap.webservices>">
<ValidateBookingsReturn>
<BatchId>ECB3474B-1DE5-4E95-BA00-E64F52BC8F1E</BatchId>
<ErrorDescription>10300 - Moderation bookings contain invalid data.</ErrorDescription>
<Success>false</Success>
<ValidateBookingsResponseItems>
<ValidateBookingsResponseItems xsi:type="ns2:Type_ValidateBookingsResponseItem" xmlns:ns2="<http://moderation.types.soap.webservices>">
<ValidationErrors>
<ValidationErrors xsi:type="ns2:Type_ValidationError">
<ErrorCode/>
<ErrorMessage>Posname (Level 2 Technical Certificate in Equine Carea..) does not match the course name (Level 2 Technical Certificate in Equine Care) in LA.</ErrorMessage>
</ValidationErrors>
</ValidationErrors>
<salesorder>106603627</salesorder>
<salesorderitem>001010</salesorderitem>
<valid>false</valid>
</ValidateBookingsResponseItems>
<ValidateBookingsResponseItems xsi:type="ns3:Type_ValidateBookingsResponseItem" xmlns:ns3="<http://moderation.types.soap.webservices>">
<ValidationErrors>
<ValidationErrors xsi:type="ns3:Type_ValidationError">
<ErrorCode/>
<ErrorMessage>Posname (Level 2 Technical Certificate in Equine Carea..) does not match the course name (Level 2 Technical Certificate in Equine Care) in LA.</ErrorMessage>
</ValidationErrors>
</ValidationErrors>
<salesorder>106603627</salesorder>
<salesorderitem>001030</salesorderitem>
<valid>false</valid>
</ValidateBookingsResponseItems>
</ValidateBookingsResponseItems>
</ValidateBookingsReturn>
</ValidateBookingsResponse>
</soapenv:Body>
</soapenv:Envelope>
LUCEE RESPONSE:
https://apilucpreprod.learningassistant.com/webservices/soap/moderation.cfc
<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:Header>
<ns1:authToken loggedin="true" soapenv:actor="" soapenv:mustUnderstand="0" xmlns="<https://api.learningassistant.com>" xmlns:ns1="<https://api.learningassistant.com>">
<ns1:id type="xsd:string">[redacted]</ns1:id>
<ns1:uuid type="xsd:string">[redacted]</ns1:uuid>
</ns1:authToken>
</soapenv:Header>
<soapenv:Body>
<ns2:ValidateBookingsResponse soapenv:encodingStyle="<http://schemas.xmlsoap.org/soap/encoding/>" xmlns:ns2="<http://moderation.types.soap.webservices>">
<ValidateBookingsReturn href="#id0"/>
</ns2:ValidateBookingsResponse>
<multiRef id="id0" soapenc:root="0" soapenv:encodingStyle="<http://schemas.xmlsoap.org/soap/encoding/>" xsi:type="ns3:webservices.soap.types.moderation.Type_ValidateBookingsResponse" xmlns:soapenc="<http://schemas.xmlsoap.org/soap/encoding/>" xmlns:ns3="<http://rpc.xml.coldfusion>">
<batchId xsi:type="xsd:string">56E5C7CE-6B2B-4E66-BE45-785EC5F17378</batchId>
<errorDescription xsi:type="xsd:string">10300 - Moderation bookings contain invalid data.</errorDescription>
<success xsi:type="xsd:boolean">false</success>
<validateBookingsResponseItems soapenc:arrayType="xsd:anyType[2]" xsi:type="soapenc:Array">
<validateBookingsResponseItems href="#id1"/>
<validateBookingsResponseItems href="#id2"/>
</validateBookingsResponseItems>
</multiRef>
<multiRef id="id1" soapenc:root="0" soapenv:encodingStyle="<http://schemas.xmlsoap.org/soap/encoding/>" xsi:type="ns4:webservices.soap.types.moderation.Type_ValidateBookingsResponseItem" xmlns:ns4="<http://rpc.xml.coldfusion>" xmlns:soapenc="<http://schemas.xmlsoap.org/soap/encoding/>">
<salesorder xsi:type="xsd:string">106603627</salesorder>
<salesorderitem xsi:type="xsd:string">001010</salesorderitem>
<valid xsi:type="xsd:boolean">false</valid>
<validationErrors soapenc:arrayType="xsd:anyType[1]" xsi:type="soapenc:Array">
<validationErrors href="#id3"/>
</validationErrors>
</multiRef>
<multiRef id="id2" soapenc:root="0" soapenv:encodingStyle="<http://schemas.xmlsoap.org/soap/encoding/>" xsi:type="ns5:webservices.soap.types.moderation.Type_ValidateBookingsResponseItem" xmlns:ns5="<http://rpc.xml.coldfusion>" xmlns:soapenc="<http://schemas.xmlsoap.org/soap/encoding/>">
<salesorder xsi:type="xsd:string">106603627</salesorder>
<salesorderitem xsi:type="xsd:string">001030</salesorderitem>
<valid xsi:type="xsd:boolean">false</valid>
<validationErrors soapenc:arrayType="xsd:anyType[1]" xsi:type="soapenc:Array">
<validationErrors href="#id4"/>
</validationErrors>
</multiRef>
<multiRef id="id3" soapenc:root="0" soapenv:encodingStyle="<http://schemas.xmlsoap.org/soap/encoding/>" xsi:type="ns6:webservices.soap.types.moderation.Type_ValidationError" xmlns:ns6="<http://rpc.xml.coldfusion>" xmlns:soapenc="<http://schemas.xmlsoap.org/soap/encoding/>">
<errorCode xsi:type="xsd:string"/>
<errorMessage xsi:type="xsd:string">Posname (Level 2 Technical Certificate in Equine Carea..) does not match the course name (Level 2 Technical Certificate in Equine Care) in LA.</errorMessage>
</multiRef>
<multiRef id="id4" soapenc:root="0" soapenv:encodingStyle="<http://schemas.xmlsoap.org/soap/encoding/>" xsi:type="ns7:webservices.soap.types.moderation.Type_ValidationError" xmlns:ns7="<http://rpc.xml.coldfusion>" xmlns:soapenc="<http://schemas.xmlsoap.org/soap/encoding/>">
<errorCode xsi:type="xsd:string"/>
<errorMessage xsi:type="xsd:string">Posname (Level 2 Technical Certificate in Equine Carea..) does not match the course name (Level 2 Technical Certificate in Equine Care) in LA.</errorMessage>
</multiRef>
</soapenv:Body>
</soapenv:Envelope>Charles Robertson
08/04/2023, 12:11 PMdswitzer
08/04/2023, 12:17 PMCharles Robertson
08/04/2023, 12:18 PMdswitzer
08/04/2023, 12:19 PMdswitzer
08/04/2023, 12:21 PMAdam Cameron
Charles Robertson
08/04/2023, 12:30 PMdswitzer
08/04/2023, 12:34 PM