I'm using jbossws 1.0.2 but i also made some test with 1.0.3, and still have the same
problem, but wasn't a jbossws problem, i solve it using the low level soapsdk way,
making line by line my own soap archive in visual b.
|
| Option Explicit
| Dim URL
| Const ENC = "http://schemas.xmlsoap.org/soap/encoding/"
| Const XSI = "http://www.w3.org/1999/XMLSchema-instance"
| Const XSD = "http://www.w3.org/1999/XMLSchema"
| Const NS = "http://localhost/eset/py/ServiceWS"
| Dim Method
| Dim Connector
| Dim Serializer
|
| Function init(aParameters, aValues) As String
| Dim URI
| URL = Parametros.SERVER_HOST & "/eset/ServiceWS?wsdl"
| Set Connector = CreateObject("MSSOAP.HttpConnector30")
| Set Serializer = CreateObject("MSSOAP.SoapSerializer30")
|
| Dim Reader
| Set Reader = CreateObject("MSSOAP.SoapReader30")
| URI = NS
| Connector.Property("EndPointURL") = URL
| Connector.Property("SoapAction") = Method
| Call Connector.Connect
| Call Connector.BeginMessage
| Serializer.init Connector.InputStream
| Serializer.StartEnvelope "soapenv", ENC
| Serializer.SoapNamespace "xsi", XSI
| Serializer.SoapNamespace "xsd", XSD
| Serializer.StartBody "soapenv"
| Serializer.startElement Method
| Serializer.SoapAttribute "xmlns", "", NS, ""
|
| Dim iCount
| iCount = 0
| Dim sP
|
| For Each sP In aParameters
| WriteElement sP, aValues(iCount)
| 'MsgBox(sP & ":" & aValues(iCount))
| iCount = iCount + 1
| Next
|
| Serializer.endElement
| Serializer.EndBody
| Serializer.EndEnvelope
| Connector.EndMessage
| Reader.Load Connector.OutputStream
| If Not Reader.Fault Is Nothing Then
| MsgBox Reader.faultstring.Text, vbExclamation
| Else
| 'Response is in Reader.DOM - just parse it
| 'Reader.RPCResult.XML
| init = Reader.RPCResult.Text
| End If
| End Function
|
|
| Sub WriteElement(sName, sValue)
| 'MsgBox(sName & ":" & sValue)
| Serializer.startElement sName
| 'Serializer.SoapAttribute "type", , "xsd:string",
"xsi"
| Serializer.SoapAttribute "xmlns", "", "",
""
| Serializer.WriteString sValue
| Serializer.endElement
| End Sub
|
|
|
| Public Function aSpecifMethod(pamam1 As String, param2 As String) As String
| Dim result
| Dim aParameters
| Dim aValues
| '(sName, sValue)
| Method = "aSpecifMethod"
| aParameters = Array("String_1", "String_2")
| aValues = Array(param1, param2)
| aSpecifMethod = init(aParameters, aValues)
|
| End Function
|
|
|
this code works fine on visual basic.
View the original post :
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3980746#...
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&a...