Skip to main content
Participating Frequently
February 2, 2010
Question

Posting to Webmethods webservice hosted internally

  • February 2, 2010
  • 1 reply
  • 1237 views

edI am unable to connect to an internally hosting webservice via ColdFusion MX or ColdFusion 8.  ColdFusion MX will be the production environment.  Dreamweaver will not pulling in the WSDL to generate the CFINVOKE framework and hand-coding the CFINVOKE with the parameters returns an unrecognized error.  I have been able to complete a request using SoapUI via the desktop app, but can't through ColdFusion.

Any assistance would be greatly appreciated.

Here's the WSDL file:

<?xml version="1.0" encoding="UTF-8" ?>
- <wsdl:definitions xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://generic-domain.com/MyAccount/Descriptor/MyAccountRPC" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" name="MyAccountRPC" targetNamespace="http://generic-domain.com/MyAccount/Descriptor/MyAccountRPC">
- <wsdl:types>
- <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://generic-domain.com/MyAccount/Descriptor/MyAccountRPC" targetNamespace="http://generic-domain.com/MyAccount/Descriptor/MyAccountRPC">
- <xsd:complexType name="AccountForEveryone">
- <xsd:sequence>
  <xsd:element name="Request" nillable="true" type="tns:Request" />
  </xsd:sequence>
  </xsd:complexType>
- <xsd:complexType name="Request">
- <xsd:sequence>
  <xsd:element name="EmailProgramReq" nillable="true" type="tns:EmailProgramReq" />
  </xsd:sequence>
  </xsd:complexType>
- <xsd:complexType name="EmailProgramReq">
- <xsd:sequence>
  <xsd:element name="Email" nillable="true" type="xsd:string" />
  <xsd:element name="CAN" nillable="true" type="xsd:string" minOccurs="0" />
  </xsd:sequence>
  </xsd:complexType>
- <xsd:complexType name="AccountForEveryoneResponse">
- <xsd:sequence>
  <xsd:element name="Response" nillable="true" type="tns:Response" />
  </xsd:sequence>
  </xsd:complexType>
- <xsd:complexType name="Response">
- <xsd:sequence>
  <xsd:element name="EmailProgramResp" nillable="true" type="tns:EmailProgramResp" />
  </xsd:sequence>
  </xsd:complexType>
+ <xsd:complexType name="EmailProgramResp">
- <xsd:sequence>
  <xsd:element name="Email" nillable="true" type="xsd:string" />
  <xsd:element name="AccExit" nillable="true" type="xsd:string" />
  <xsd:element name="ReturnCode" nillable="true" type="xsd:string" />
  <xsd:element name="ReturnMessage" nillable="true" type="xsd:string" />
  </xsd:sequence>
  </xsd:complexType>
  <xsd:element name="AccountForEveryone" type="tns:AccountForEveryone" />
  <xsd:element name="AccountForEveryoneResponse" type="tns:AccountForEveryoneResponse" />
  </xsd:schema>
  </wsdl:types>
- <wsdl:message name="MyAccountRPC_PortType_AccountForEveryone">
  <wsdl:part name="Request" type="tns:Request" />
  </wsdl:message>
- <wsdl:message name="MyAccountRPC_PortType_AccountForEveryoneResponse">
  <wsdl:part name="Response" type="tns:Response" />
  </wsdl:message>
- <wsdl:portType name="MyAccountRPC_PortType">
- <wsdl:operation name="AccountForEveryone">
  <wsdl:input message="tns:MyAccountRPC_PortType_AccountForEveryone" />
  <wsdl:output message="tns:MyAccountRPC_PortType_AccountForEveryoneResponse" />
  </wsdl:operation>
  </wsdl:portType>
- <wsdl:binding name="MyAccount_Descriptor_MyAccountRPC_Binder" type="tns:MyAccountRPC_PortType">
  <soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http" />
- <wsdl:operation name="AccountForEveryone">
  <soap:operation soapAction="MyAccount_Descriptor_MyAccountRPC_Binder_AccountForEveryone" style="rpc" />
- <wsdl:input>
  <soap:body parts="Request" use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://generic-domain.com/MyAccount/Descriptor/MyAccountRPC" />
  </wsdl:input>
- <wsdl:output>
  <soap:body parts="Response" use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://generic-domain.com/MyAccount/Descriptor/MyAccountRPC" />
  </wsdl:output>
  </wsdl:operation>
  </wsdl:binding>
- <wsdl:service name="MyAccountRPC">
- <wsdl:port name="MyAccount_Descriptor_MyAccountRPC_Port" binding="tns:MyAccount_Descriptor_MyAccountRPC_Binder">
  <soap:address location="https://generic-domain.com:5510/ws/MyAccount.Descriptor:MyAccountRPC" />
  </wsdl:port>
  </wsdl:service>
  </wsdl:definitions>

This topic has been closed for replies.

1 reply

Inspiring
February 2, 2010

What do you mean by an "an unrecognized error"?

What's the URL to the web service, and what's your calling code?

(can't help with DreamWeaver issues, but I presume your experiences there are a symptom of a wider issue).

--

Adam

grotycomAuthor
Participating Frequently
February 2, 2010

Sorry, can't publish the actual url, it's internal.

Request:

<cfinvoke
     webservice="http://generic-domain.com/myaccount/MyAccountRPC.wsdl?wsdl"
     method="EmailProgramReq"
     returnvariable="aString">
        <cfinvokeargument name="Email" value="test@generic-domain.com"/>   
        <cfinvokeargument name="CAN" value="12121212121"/>       
    </cfinvoke>

Response :

Web service  operation "EmailProgramReq" with parameters  {Email={test@generic-domain.com},CAN={12121212121},} could not be found.

The  error occurred in F:\Inetpub\wwwroot\myAccount\request.cfm: line  30
28 :       returnvariable="aString">
29 :           <cfinvokeargument name="Email" value="scott.grotyohann@pb.com"/>     
30 :           <cfinvokeargument name="CAN" value="12121212121"/>          
31 :      </cfinvoke>
32 :      
Inspiring
February 2, 2010

Is this correct:

http://generic-domain.com/myaccount/MyAccountRPC.wsdl?wsdl

?

ie, the file extension on the file is wsdl, and you also need a URL param of wsdl?  Is that the exact URL you browse to to get the WSDL output?

Can your CF server do a <cfhttp> request to that URL, and get a 200-OK back, as well as the WSDL doc in the response?

--

Adam