2012-05-09 128 views
0

我們有一個Java Web服務(WSDL)和一個ASP客戶端。我們使用SOAP Toolkit 3.0來調用Java Web服務。 Java Web服務正在公開對象,所以我需要使用複雜類型的映射器。將傳統ASP傳遞給SOAP的對象屬性

當我想這個,我得到的錯誤 -

SoapMapper:Saving SoapMapper account failed HRESULT=0x80004002: No such interface supported - Client:Unspecified client error. HRESULT=0x80004002: No such interface supported 

的代碼是這樣的:

On Error Resume Next 

Dim objWebSvcClient 
Dim strSuccess 
Dim myaccount 

set objWebSvcClient = server.CreateObject("MSSOAP.SoapClient30") 
objWebSvcClient.ClientProperty("ServerHTTPRequest") = True 
objWebSvcClient.MSSoapInit ("c:\TestAsp.wsdl") 


class Account 
    Dim maccid 'As String 
    Dim maccName 'As String 

    Public Property Get accId() 'As String 
     accId = maccid 
    End Property 

    Public Property Let accId(ByVal Value) 
     maccid = Value 
    End Property 

    Public Property Get accName() 'As String 
     accName = maccName 
    End Property 

    Public Property Let accName(ByVal Value) 
     maccName = Value 
    End Property 
End class 

Set myaccount = new Account 
myaccount.accId = "ABC" 
myaccount.accName = "ABC" 

strSuccess = objWebSvcClient.setAccount(myaccount) 

請讓我知道如果我錯過了一些信息。

引用一些例子來做相同的實現也是有幫助的。

+1

此代碼中的哪一行是否顯示錯誤?爲了正確調試它,請刪除'在錯誤恢復下一個'語句。 – thevikas

+0

strSuccess = objWebSvcClient.setAccount(myaccount)我在上面的行收到錯誤。我將對象屬性傳遞給此方法。所以我不知道應該如何將對象傳遞給方法。 – user1377291

+0

我真的非常喜歡thevikas,他至少回答,因爲我想盡快讓我從這裏出來 – user1377291

回答

0

聲明objWebSvcClient.MSSoapInit ("c:\TestAsp.wsdl")將物理文件設置爲URL。你可以用這種方式解析WSDL,但是wsdl本身給出的URL可能不起作用,或者相對路徑失敗。

嘗試提供完整的http url甚至是wsdl文件。

+0

URL:http://query.jiemai.com/services/UsJieMaiSlService?wsdl在這種情況下,我需要通過具有不同屬性的ProductCondition對象和我得到相同的錯誤您可以在這裏看到參數http://soapclient.com/soapclient?template=%2Fclientform.html&fn=soapform&SoapTemplate=%2FSoapResult.html&SoapWSDL=http%3A%2F%2Fquery。 jiemai.com%2Fservices%2FUsJieMaiSlService%3Fwsdl&_ArraySize = 2 – user1377291

+0

我正在處理的方法ie queryProduct – user1377291