Smart questions
Smart answers
Smart people
INTELLIGENT WORK FORUMS
FOR COMPUTER PROFESSIONALS

Member Login




Remember Me
Forgot Password?
Join Us!

Come Join Us!

Are you a
Computer / IT professional?
Join Tek-Tips now!
  • Talk With Other Members
  • Be Notified Of Responses
    To Your Posts
  • Keyword Search
  • One-Click Access To Your
    Favorite Forums
  • Automated Signatures
    On Your Posts
  • Best Of All, It's Free!

Join Tek-Tips
*Tek-Tips's functionality depends on members receiving e-mail. By joining you are opting in to receive e-mail.

Posting Guidelines

Promoting, selling, recruiting, coursework and thesis posting is forbidden.
Jobs from Indeed

Link To This Forum!

Partner Button
Add Stickiness To Your Site By Linking To This Professionally Managed Technical Forum.
Just copy and paste the
code below into your site.

bbolte (Programmer) (OP)
25 Feb 03 10:17
I can't find any reference to this error:

Run-time error '5054'
Method 'EndMessage' of object 'ISoapConnector' failed


background: I went through the MS Soap 3 tutes, now i'm trying to set up a soap service with one of my active x exe's. did the wgen on it. now i'm setting up a vb6 client to test. basically, used the tutorial test client as a base and added my stuff in. here is some the code for the test client:


Private Function GetImage(ByVal Method As String, ByVal CatalogID As String, ByVal ItemNum As String, _
            ByVal TheStyle As String, ByVal ColorDes As String, ByVal TheText1 As String, ByVal TheText2 As String)

    Dim Serializer As SoapSerializer30
    Dim Reader As SoapReader30
    Dim ResultElm As IXMLDOMElement
    Dim FaultElm As IXMLDOMElement
    Dim Connector As SoapConnector30
    
    Set Connector = New httpConnector30
    Connector.Property("EndPointURL") = END_POINT_URL
    Connector.Connect
    
    ' binding/operation/soapoperation
    Connector.Property("SoapAction") = SoapAction & Method
    Connector.BeginMessage
    
    Set Serializer = New SoapSerializer30
    Serializer.Init Connector.InputStream
    
    Serializer.StartEnvelope
    Serializer.StartBody
    Serializer.StartElement Method, CREATE_GRAPHIC
    Serializer.StartElement "strCatID"
    Serializer.WriteString CatalogID
    Serializer.EndElement
    Serializer.StartElement "strItemNo"
    Serializer.WriteString ItemNum
    Serializer.EndElement
    Serializer.StartElement "strStyle"
    Serializer.WriteString TheStyle
    Serializer.EndElement
    Serializer.StartElement "strColorDesc"
    Serializer.WriteString ColorDes
    Serializer.EndElement
    Serializer.StartElement "strText1"
    Serializer.WriteString TheText1
    Serializer.EndElement
    Serializer.StartElement "strText2"
    Serializer.WriteString TheText2
    Serializer.EndElement
    Serializer.EndElement
    Serializer.EndBody
    Serializer.EndEnvelope
    
    Connector.EndMessage    '<--- LINE THAT IT FAILS ON
        
    Set Reader = New SoapReader30
    Reader.Load Connector.OutputStream
    
    If Not Reader.Fault Is Nothing Then
        MsgBox Reader.FaultString.Text, vbExclamation
    Else
        GetImage = Reader.RpcResult.Text
    End If
End Function


can anyone lend me a hand here?
bbolte (Programmer) (OP)
25 Feb 03 15:06
ok, solved that error by changing my endpointurl to the asp listener instead of the wsdl file. but now i have a new error:


"WSDLReader:The operation requested in the Soap message with soapAction http://tempuri.org/sartpreviewws/SARTPreviewServer/SartPreview.CreateGraphics isn't defined in the WSDL file.  This may be because it is in the wrong namespace or has incorrect cae"


here is my soapAction declaration:

Private Const SoapAction = "http://tempuri.org/sartpreviewws/SARTPreviewServer/SartPreview."

it is put together in Connector.Property("SoapAction") = SoapAction & Method with the passed in method parameter (above function)

i'm a little lost, trying to learn this. here is my wsdl file:

<?xml version='1.0' encoding='UTF-8' ?>
<!-- Generated 02/19/03 by Microsoft SOAP Toolkit WSDL File Generator, Version 3.00.1325.0 -->
<definitions
    name='sartpreview'
    targetNamespace='http://tempuri.org/sartpreview/wsdl/'
    xmlns:wsdlns='http://tempuri.org/sartpreview/wsdl/'
    xmlns:typens='http://tempuri.org/sartpreview/type/'
    xmlns:soap='http://schemas.xmlsoap.org/wsdl/soap/'
    xmlns:xsd='http://www.w3.org/2001/XMLSchema'
    xmlns:stk='http://schemas.microsoft.com/soap-toolkit/wsdl-extension'
    xmlns:dime='http://schemas.xmlsoap.org/ws/2002/04/dime/wsdl/'
    xmlns:ref='http://schemas.xmlsoap.org/ws/2002/04/reference/'
    xmlns:content='http://schemas.xmlsoap.org/ws/2002/04/content-type/'
    xmlns:wsdl='http://schemas.xmlsoap.org/wsdl/'
    xmlns='http://schemas.xmlsoap.org/wsdl/'>

    <types>
        <schema
            targetNamespace='http://tempuri.org/sartpreview/type/'
            xmlns='http://www.w3.org/2001/XMLSchema'
            xmlns:SOAP-ENC='http://schemas.xmlsoap.org/soap/encoding/'
            xmlns:wsdl='http://schemas.xmlsoap.org/wsdl/'
            elementFormDefault='qualified'>

            <import namespace='http://schemas.xmlsoap.org/soap/encoding/'/>
            <import namespace='http://schemas.xmlsoap.org/wsdl/'/>
            <import namespace='http://schemas.xmlsoap.org/ws/2002/04/reference/'/>
            <import namespace='http://schemas.xmlsoap.org/ws/2002/04/content-type/'/>

        </schema>
    </types>

    <message name='CreatePreview.CreateGraphics'>
        <part name='strCatID' type='xsd:anyType'/>
        <part name='strItemNo' type='xsd:anyType'/>
        <part name='strStyle' type='xsd:anyType'/>
        <part name='strColorDesc' type='xsd:anyType'/>
        <part name='strText1' type='xsd:anyType'/>
        <part name='strText2' type='xsd:anyType'/>
    </message>

    <message name='CreatePreview.CreateGraphicsResponse'>
        <part name='Result' type='xsd:anyType'/>
        <part name='strCatID' type='xsd:anyType'/>
        <part name='strItemNo' type='xsd:anyType'/>
        <part name='strStyle' type='xsd:anyType'/>
        <part name='strColorDesc' type='xsd:anyType'/>
        <part name='strText1' type='xsd:anyType'/>
        <part name='strText2' type='xsd:anyType'/>
    </message>

    <message name='CreatePreview.tmpID'>
    </message>

    <message name='CreatePreview.tmpIDResponse'>
        <part name='Result' type='xsd:string'/>
    </message>

    <portType name='CreatePreviewSoapPort'>

        <operation name='CreateGraphics' parameterOrder='strCatID strItemNo strStyle strColorDesc strText1 strText2'>
            <input message='wsdlns:CreatePreview.CreateGraphics'/>
            <output message='wsdlns:CreatePreview.CreateGraphicsResponse'/>
        </operation>

        <operation name='tmpID' parameterOrder=''>
            <input message='wsdlns:CreatePreview.tmpID'/>
            <output message='wsdlns:CreatePreview.tmpIDResponse'/>
        </operation>

    </portType>

    <binding name='CreatePreviewSoapBinding' type='wsdlns:CreatePreviewSoapPort' >

        <stk:binding preferredEncoding='UTF-8'/>
        <soap:binding style='rpc' transport='http://schemas.xmlsoap.org/soap/http'/>

        <operation name='CreateGraphics'>
            <soap:operation soapAction='http://tempuri.org/sartpreview/action/CreatePreview.CreateGraphics'/>
            <input>
                <soap:body
                    use='encoded'
                    namespace='http://tempuri.org/sartpreview/message/'
                    encodingStyle='http://schemas.xmlsoap.org/soap/encoding/'
                    parts='strCatID strItemNo strStyle strColorDesc strText1 strText2'/>
            </input>
            <output>
                <soap:body
                    use='encoded'
                    namespace='http://tempuri.org/sartpreview/message/'
                    encodingStyle='http://schemas.xmlsoap.org/soap/encoding/'
                    parts='Result strCatID strItemNo strStyle strColorDesc strText1 strText2'/>
            </output>
        </operation>

        <operation name='tmpID'>
            <soap:operation soapAction='http://tempuri.org/sartpreview/action/CreatePreview.tmpID'/>
            <input>
                <soap:body
                    use='encoded'
                    namespace='http://tempuri.org/sartpreview/message/'
                    encodingStyle='http://schemas.xmlsoap.org/soap/encoding/'/>
            </input>
            <output>
                <soap:body
                    use='encoded'
                    namespace='http://tempuri.org/sartpreview/message/'
                    encodingStyle='http://schemas.xmlsoap.org/soap/encoding/'
                    parts='Result'/>
            </output>
        </operation>

    </binding>

    <service name='sartpreview' >
        <port name='CreatePreviewSoapPort' binding='wsdlns:CreatePreviewSoapBinding' >
            <soap:address location='http://bolteb/sartpreviewws/sartpreviewserver/sartpreview.ASP'/>
        </port>
    </service>

</definitions>


i noticed the this line in the "operation" declaration - <input message='wsdlns:CreatePreview.CreateGraphics'/> and tried to use that namespace(?) but still got the same error.

so now what?
wwwebb (Programmer)
21 May 03 15:22
Check to make sure that the Connector.Property("EndPointURL") points to a web page that has the reference to the DLL that is doing the "work".

When the web page is not there you can get this message.
skollipa (Programmer)
12 Sep 03 15:31
Were you able to get around the problem "WSDLReader:The operation requested in the Soap message with soapAction". If so, can you please explain me how you did it. I am having the same problem.
bbolte (Programmer) (OP)
13 Sep 03 8:48
i'm trying to remember but i think it was because the host provider didn't have the latest soap toolkit installed. they wouldn't install it either. so i had to take a different route with the MS XMLHTTP object (which was there).

Reply To This Thread

Posting in the Tek-Tips forums is a member-only feature.

Click Here to join Tek-Tips and talk with other members!

Back To Forum

Close Box

Join Tek-Tips® Today!

Join your peers on the Internet's largest technical computer professional community.
It's easy to join and it's free.

Here's Why Members Love Tek-Tips Forums:

Register now while it's still free!

Already a member? Close this window and log in.

Join Us             Close