J
jason
Hello.
I just installed PocketSoap 1.4 on my non .NET client.
I tested a sample wsh wscript and was able to consume some stock web
service sample they had.
I have a very simple .net web service i wrote that returns a string.
If I call the service via a browser (from that same non .net client)
and invoke it producing:
<?xml version="1.0" encoding="utf-8" ?>
<string xmlns="http://tempuri.org/">Hello Web Service</string>
From a client with .NET, I can call the following asp.net web page and
consume the web service with no problem.
<%@ Page language="vb"%>
<%@ Import Namespace="nws1" %>
<HTML>
<BODY>
<script language="vb" runat="server">
Public Sub Page_Load(sender As [Object], e As EventArgs)
Dim mystring As string
mystring = new nws1.cws1().fws1()
response.write(mystring)
End Sub
</script>
</BODY>
</HTML>
===
The guts of the WSDL generated VB for this .NET client looks like
this:
Namespace nws1
'<remarks/>
<System.Diagnostics.DebuggerStepThroughAttribute(), _
System.ComponentModel.DesignerCategoryAttribute("code"), _
System.Web.Services.WebServiceBindingAttribute(Name:="cws1Soap",
[Namespace]:="http://tempuri.org/")> _
Public Class cws1
Inherits System.Web.Services.Protocols.SoapHttpClientProtocol
'<remarks/>
Public Sub New()
MyBase.New
Me.Url = "http://nnn.nnn.nnn.nnn/ws1.asmx"
End Sub
====
I'm attempt to consume this web service on the non .net client using
POCKETSOAP: Here's the vbs code I'm trying and the errors I'm getting:
dim env
set env = CreateObject("pocketSOAP.Envelope.2")
env.SetMethod "fws1", "urn:nws1"
dim http
set http = CreateObject("pocketSOAP.HTTPTransport.2")
http.SOAPAction = ""
http.Send "http://nnn.nnn.nnn.nnn/ws1.asmx",env.serialize
env.parse http
wscript.echo env.Parameters.Item(0).Value
The error in DOS:
C:\jcp>cscript ws1.vbs
Microsoft (R) Windows Script Host Version 5.1 for Windows
Copyright (C) Microsoft Corporation 1996-1999. All rights reserved.
C:\jcp\ws1.vbs(9, 1) pocketSOAP.Envelope.2: Client :
System.Web.Services.Protoco
ls.SoapException: Server did not recognize the value of HTTP Header
SOAPAction:
..
at System.Web.Services.Protocols.SoapServerProtocol.Initialize()
at System.Web.Services.Protocols.ServerProtocolFactory.Create(Type
type, Http
Context context, HttpRequest request, HttpResponse response, Boolean&
abortProce
ssing)
Thanks for any info or help with this!
I just installed PocketSoap 1.4 on my non .NET client.
I tested a sample wsh wscript and was able to consume some stock web
service sample they had.
I have a very simple .net web service i wrote that returns a string.
If I call the service via a browser (from that same non .net client)
and invoke it producing:
<?xml version="1.0" encoding="utf-8" ?>
<string xmlns="http://tempuri.org/">Hello Web Service</string>
From a client with .NET, I can call the following asp.net web page and
consume the web service with no problem.
<%@ Page language="vb"%>
<%@ Import Namespace="nws1" %>
<HTML>
<BODY>
<script language="vb" runat="server">
Public Sub Page_Load(sender As [Object], e As EventArgs)
Dim mystring As string
mystring = new nws1.cws1().fws1()
response.write(mystring)
End Sub
</script>
</BODY>
</HTML>
===
The guts of the WSDL generated VB for this .NET client looks like
this:
Namespace nws1
'<remarks/>
<System.Diagnostics.DebuggerStepThroughAttribute(), _
System.ComponentModel.DesignerCategoryAttribute("code"), _
System.Web.Services.WebServiceBindingAttribute(Name:="cws1Soap",
[Namespace]:="http://tempuri.org/")> _
Public Class cws1
Inherits System.Web.Services.Protocols.SoapHttpClientProtocol
'<remarks/>
Public Sub New()
MyBase.New
Me.Url = "http://nnn.nnn.nnn.nnn/ws1.asmx"
End Sub
====
I'm attempt to consume this web service on the non .net client using
POCKETSOAP: Here's the vbs code I'm trying and the errors I'm getting:
dim env
set env = CreateObject("pocketSOAP.Envelope.2")
env.SetMethod "fws1", "urn:nws1"
dim http
set http = CreateObject("pocketSOAP.HTTPTransport.2")
http.SOAPAction = ""
http.Send "http://nnn.nnn.nnn.nnn/ws1.asmx",env.serialize
env.parse http
wscript.echo env.Parameters.Item(0).Value
The error in DOS:
C:\jcp>cscript ws1.vbs
Microsoft (R) Windows Script Host Version 5.1 for Windows
Copyright (C) Microsoft Corporation 1996-1999. All rights reserved.
C:\jcp\ws1.vbs(9, 1) pocketSOAP.Envelope.2: Client :
System.Web.Services.Protoco
ls.SoapException: Server did not recognize the value of HTTP Header
SOAPAction:
..
at System.Web.Services.Protocols.SoapServerProtocol.Initialize()
at System.Web.Services.Protocols.ServerProtocolFactory.Create(Type
type, Http
Context context, HttpRequest request, HttpResponse response, Boolean&
abortProce
ssing)
Thanks for any info or help with this!