Home All Groups Group Topic Archive Search About
Author
10 Feb 2006 11:01 PM
Bryan Dickerson
Ok, simple question: from a VB.Net web service (as I've said before, I'm a
newbie to SOAP), how would I get the SOAP body into a string?  My boss and I
concur that it, at least from our perspective, should be as simple as
defining an object and viewing a parameter on that object.  My boss has
worked with it and I'm still tryin'...

TIA!

--
TFWBWY...A

Author
10 Feb 2006 11:09 PM
John Bailo
Could you run that by us once more?

Bryan Dickerson wrote:
Show quoteHide quote
> Ok, simple question: from a VB.Net web service (as I've said before, I'm a
> newbie to SOAP), how would I get the SOAP body into a string?  My boss and I
> concur that it, at least from our perspective, should be as simple as
> defining an object and viewing a parameter on that object.  My boss has
> worked with it and I'm still tryin'...
>
> TIA!
>
Author
12 Feb 2006 2:05 AM
Nick Malik [Microsoft]
"Bryan Dickerson" <txprp***@netscape.net> wrote in message
news:%230su3XpLGHA.3100@tk2msftngp13.phx.gbl...
> Ok, simple question: from a VB.Net web service (as I've said before, I'm a
> newbie to SOAP), how would I get the SOAP body into a string?  My boss and
> I concur that it, at least from our perspective, should be as simple as
> defining an object and viewing a parameter on that object.  My boss has
> worked with it and I'm still tryin'...
>

It already is.  When you tell VB.Net or C# that you are attaching to a web
service, the Visual Studio environment writes code for you, then proceeds to
hide it.  You can see if you wish.  The code is written by VS.Net after it
reads the WSDL for the web service which describes the structure of the data
in the SOAP body.  If you inspect that code, you can see what it is doing
and, just for fun, you can modify it for your own needs.

--
--- Nick Malik [Microsoft]
    MCSD, CFPS, Certified Scrummaster
    http://blogs.msdn.com/nickmalik

Disclaimer: Opinions expressed in this forum are my own, and not
representative of my employer.
   I do not answer questions on behalf of my employer.  I'm just a
programmer helping programmers.
--
Author
12 Feb 2006 6:36 PM
m.posseth
click the show all files option in the project explorer , now see the before
hidden code files under your web reference

regards

Michel Posseth [MCP]




Show quoteHide quote
"Nick Malik [Microsoft]" <nickmalik@hotmail.nospam.com> schreef in bericht
news:n4qdnWpGmdi7CnPenZ2dnUVZ_smdnZ2d@comcast.com...
>
>
> "Bryan Dickerson" <txprp***@netscape.net> wrote in message
> news:%230su3XpLGHA.3100@tk2msftngp13.phx.gbl...
>> Ok, simple question: from a VB.Net web service (as I've said before, I'm
>> a newbie to SOAP), how would I get the SOAP body into a string?  My boss
>> and I concur that it, at least from our perspective, should be as simple
>> as defining an object and viewing a parameter on that object.  My boss
>> has worked with it and I'm still tryin'...
>>
>
> It already is.  When you tell VB.Net or C# that you are attaching to a web
> service, the Visual Studio environment writes code for you, then proceeds
> to hide it.  You can see if you wish.  The code is written by VS.Net after
> it reads the WSDL for the web service which describes the structure of the
> data in the SOAP body.  If you inspect that code, you can see what it is
> doing and, just for fun, you can modify it for your own needs.
>
> --
> --- Nick Malik [Microsoft]
>    MCSD, CFPS, Certified Scrummaster
>    http://blogs.msdn.com/nickmalik
>
> Disclaimer: Opinions expressed in this forum are my own, and not
> representative of my employer.
>   I do not answer questions on behalf of my employer.  I'm just a
> programmer helping programmers.
> --
>
>
Author
13 Feb 2006 3:18 PM
Bryan Dickerson
Maybe I didn't phrase the question correctly.  If my web service is called
via SOAP and an XML document is sent in the SOAP message body, what object
would I instantiate and what property would I need to get that XML string so
that I could do something with it?

Show quoteHide quote
"m.posseth" <poss***@planet.nl> wrote in message
news:eqfDhMAMGHA.420@tk2msftngp13.phx.gbl...
> click the show all files option in the project explorer , now see the
> before hidden code files under your web reference
>
> regards
>
> Michel Posseth [MCP]
>
>
>
>
> "Nick Malik [Microsoft]" <nickmalik@hotmail.nospam.com> schreef in bericht
> news:n4qdnWpGmdi7CnPenZ2dnUVZ_smdnZ2d@comcast.com...
>>
>>
>> "Bryan Dickerson" <txprp***@netscape.net> wrote in message
>> news:%230su3XpLGHA.3100@tk2msftngp13.phx.gbl...
>>> Ok, simple question: from a VB.Net web service (as I've said before, I'm
>>> a newbie to SOAP), how would I get the SOAP body into a string?  My boss
>>> and I concur that it, at least from our perspective, should be as simple
>>> as defining an object and viewing a parameter on that object.  My boss
>>> has worked with it and I'm still tryin'...
>>>
>>
>> It already is.  When you tell VB.Net or C# that you are attaching to a
>> web service, the Visual Studio environment writes code for you, then
>> proceeds to hide it.  You can see if you wish.  The code is written by
>> VS.Net after it reads the WSDL for the web service which describes the
>> structure of the data in the SOAP body.  If you inspect that code, you
>> can see what it is doing and, just for fun, you can modify it for your
>> own needs.
>>
>> --
>> --- Nick Malik [Microsoft]
>>    MCSD, CFPS, Certified Scrummaster
>>    http://blogs.msdn.com/nickmalik
>>
>> Disclaimer: Opinions expressed in this forum are my own, and not
>> representative of my employer.
>>   I do not answer questions on behalf of my employer.  I'm just a
>> programmer helping programmers.
>> --
>>
>>
>
>
Author
13 Feb 2006 5:24 PM
John Bailo
First of all forget about SOAP -- SOAP is an encapsulation method that
makes all datatypes available.  It is a messaging protocol basically.
The fact that it uses XML has nothing to do with what you're asking,
which is "how do I retrieve the results of a web method whose return
type is XmlDocument".

Here is the method I use:

XmlDocument dom = new XmlDocument();

//this is a web method that returns a list of clients as an XmlDocument
XmlNode lcx = lc.ClientList();


//this turns the XmlDocument from my webservice into
//something I can use locally
dom.AppendChild(dom.ImportNode(
    lcx
    ,true));




Bryan Dickerson wrote:
Show quoteHide quote
> Maybe I didn't phrase the question correctly.  If my web service is called
> via SOAP and an XML document is sent in the SOAP message body, what object
> would I instantiate and what property would I need to get that XML string so
> that I could do something with it?
Author
13 Feb 2006 6:08 PM
Bryan Dickerson
Ok, here's the full scope of the problem: I am trying to work with a 3rd
party product called GIS that is essentially a java-based EDI product and
the documentation and 'technical assistants' (term used loosely) say that
'it will use SOAP to call my (.Net) web service and it will pass an XML
Document to it in the SOAP Body and that XML document is what my web service
is supposed to work with.'  Does that make any sense?  I'm not sure that it
does to me, but it seems the best way that I can understand it.


Show quoteHide quote
"John Bailo" <jaba***@texeme.com> wrote in message
news:43F0C0E2.6040302@texeme.com...
>
> First of all forget about SOAP -- SOAP is an encapsulation method that
> makes all datatypes available.  It is a messaging protocol basically. The
> fact that it uses XML has nothing to do with what you're asking, which is
> "how do I retrieve the results of a web method whose return type is
> XmlDocument".
>
> Here is the method I use:
>
> XmlDocument dom = new XmlDocument();
>
> //this is a web method that returns a list of clients as an XmlDocument
> XmlNode lcx = lc.ClientList();
>
>
> //this turns the XmlDocument from my webservice into
> //something I can use locally
> dom.AppendChild(dom.ImportNode(
> lcx
> ,true));
>
>
>
>
> Bryan Dickerson wrote:
>> Maybe I didn't phrase the question correctly.  If my web service is
>> called via SOAP and an XML document is sent in the SOAP message body,
>> what object would I instantiate and what property would I need to get
>> that XML string so that I could do something with it?
Author
13 Feb 2006 6:18 PM
John Bailo
1. All web services are called using SOAP -- which uses XML.  I really
wouldn't focus on that.  It's background.

2. java and .NET encapsulate and consume services in the same way.   A
c# client can consume a java web service, and vice versa.

3. I think that they are confusing "web service" with "web consumer" or
"client".   I am presuming that the GIS provides web services, and that
you will call their web methods with a web client that you write, and
that one of those web methods will return a datatype of XmlDocument.

4. If so, you can use the method below.

To me, it sounds like your real job is to verify the scenario I outlined
in (3).   I mean, is this GIS being offered via the web?  Or is it set
up by someone in house?




Bryan Dickerson wrote:
Show quoteHide quote
> Ok, here's the full scope of the problem: I am trying to work with a 3rd
> party product called GIS that is essentially a java-based EDI product and
> the documentation and 'technical assistants' (term used loosely) say that
> 'it will use SOAP to call my (.Net) web service and it will pass an XML
> Document to it in the SOAP Body and that XML document is what my web service
> is supposed to work with.'  Does that make any sense?  I'm not sure that it
> does to me, but it seems the best way that I can understand it.
>
>
> "John Bailo" <jaba***@texeme.com> wrote in message
> news:43F0C0E2.6040302@texeme.com...
>
>>First of all forget about SOAP -- SOAP is an encapsulation method that
>>makes all datatypes available.  It is a messaging protocol basically. The
>>fact that it uses XML has nothing to do with what you're asking, which is
>>"how do I retrieve the results of a web method whose return type is
>>XmlDocument".
>>
>>Here is the method I use:
>>
>>XmlDocument dom = new XmlDocument();
>>
>>//this is a web method that returns a list of clients as an XmlDocument
>>XmlNode lcx = lc.ClientList();
>>
>>
>>//this turns the XmlDocument from my webservice into
>>//something I can use locally
>>dom.AppendChild(dom.ImportNode(
>>lcx
>>,true));
>>
>>
>>
>>
>>Bryan Dickerson wrote:
>>
>>>Maybe I didn't phrase the question correctly.  If my web service is
>>>called via SOAP and an XML document is sent in the SOAP message body,
>>>what object would I instantiate and what property would I need to get
>>>that XML string so that I could do something with it?
>
>
>
Author
13 Feb 2006 7:31 PM
Bryan Dickerson
3.  My scenario is the reverse of what you describe.  GIS is Gentran
Integration Suite by Sterling Commerce.  It is a java-based server from
which I am trying to call my .Net web service, i.e., GIS is the consumer.
Actually, I am able to call my web service from scripts in GIS, but (I'm the
programmer on both ends, which pits me against myself--is there a higher
meaning to this?!) from within my .Net web service, I am not able to figure
out where the XML document, that is supposedly within the SOAP Body, per the
Technical Assistants from Sterling Commerce, is.  If I could figure that
out, I would be home free. I am able to get some response from my web
service program, just not the one that I want.

BTW, thanx for your patience!


Show quoteHide quote
"John Bailo" <jaba***@texeme.com> wrote in message
news:43F0CD68.30104@texeme.com...
>
> 1. All web services are called using SOAP -- which uses XML.  I really
> wouldn't focus on that.  It's background.
>
> 2. java and .NET encapsulate and consume services in the same way.   A c#
> client can consume a java web service, and vice versa.
>
> 3. I think that they are confusing "web service" with "web consumer" or
> "client".   I am presuming that the GIS provides web services, and that
> you will call their web methods with a web client that you write, and that
> one of those web methods will return a datatype of XmlDocument.
>
> 4. If so, you can use the method below.
>
> To me, it sounds like your real job is to verify the scenario I outlined
> in (3).   I mean, is this GIS being offered via the web?  Or is it set up
> by someone in house?
>
>
>
>
> Bryan Dickerson wrote:
>> Ok, here's the full scope of the problem: I am trying to work with a 3rd
>> party product called GIS that is essentially a java-based EDI product and
>> the documentation and 'technical assistants' (term used loosely) say that
>> 'it will use SOAP to call my (.Net) web service and it will pass an XML
>> Document to it in the SOAP Body and that XML document is what my web
>> service is supposed to work with.'  Does that make any sense?  I'm not
>> sure that it does to me, but it seems the best way that I can understand
>> it.
>>
>>
>> "John Bailo" <jaba***@texeme.com> wrote in message
>> news:43F0C0E2.6040302@texeme.com...
>>
>>>First of all forget about SOAP -- SOAP is an encapsulation method that
>>>makes all datatypes available.  It is a messaging protocol basically. The
>>>fact that it uses XML has nothing to do with what you're asking, which is
>>>"how do I retrieve the results of a web method whose return type is
>>>XmlDocument".
>>>
>>>Here is the method I use:
>>>
>>>XmlDocument dom = new XmlDocument();
>>>
>>>//this is a web method that returns a list of clients as an XmlDocument
>>>XmlNode lcx = lc.ClientList();
>>>
>>>
>>>//this turns the XmlDocument from my webservice into
>>>//something I can use locally
>>>dom.AppendChild(dom.ImportNode(
>>>lcx
>>>,true));
>>>
>>>
>>>
>>>
>>>Bryan Dickerson wrote:
>>>
>>>>Maybe I didn't phrase the question correctly.  If my web service is
>>>>called via SOAP and an XML document is sent in the SOAP message body,
>>>>what object would I instantiate and what property would I need to get
>>>>that XML string so that I could do something with it?
>>
>>
Author
13 Feb 2006 7:43 PM
John Bailo
So, the GIS consumes your web service which sends it an XmlDocument?

That is, your web method is something like:


[WebMethod]
public XmlDocument myMethod(int i)
{


    XmlDocument xd;

    [...]

    return xd;

}

And you are not able to retrieve xd in the GIS script?



Bryan Dickerson wrote:
Show quoteHide quote
> 3.  My scenario is the reverse of what you describe.  GIS is Gentran
> Integration Suite by Sterling Commerce.  It is a java-based server from
> which I am trying to call my .Net web service, i.e., GIS is the consumer.
> Actually, I am able to call my web service from scripts in GIS, but (I'm the
> programmer on both ends, which pits me against myself--is there a higher
> meaning to this?!) from within my .Net web service, I am not able to figure
> out where the XML document, that is supposedly within the SOAP Body, per the
> Technical Assistants from Sterling Commerce, is.  If I could figure that
> out, I would be home free. I am able to get some response from my web
> service program, just not the one that I want.
>
> BTW, thanx for your patience!
>
>
> "John Bailo" <jaba***@texeme.com> wrote in message
> news:43F0CD68.30104@texeme.com...
>
>>1. All web services are called using SOAP -- which uses XML.  I really
>>wouldn't focus on that.  It's background.
>>
>>2. java and .NET encapsulate and consume services in the same way.   A c#
>>client can consume a java web service, and vice versa.
>>
>>3. I think that they are confusing "web service" with "web consumer" or
>>"client".   I am presuming that the GIS provides web services, and that
>>you will call their web methods with a web client that you write, and that
>>one of those web methods will return a datatype of XmlDocument.
>>
>>4. If so, you can use the method below.
>>
>>To me, it sounds like your real job is to verify the scenario I outlined
>>in (3).   I mean, is this GIS being offered via the web?  Or is it set up
>>by someone in house?
>>
>>
>>
>>
>>Bryan Dickerson wrote:
>>
>>>Ok, here's the full scope of the problem: I am trying to work with a 3rd
>>>party product called GIS that is essentially a java-based EDI product and
>>>the documentation and 'technical assistants' (term used loosely) say that
>>>'it will use SOAP to call my (.Net) web service and it will pass an XML
>>>Document to it in the SOAP Body and that XML document is what my web
>>>service is supposed to work with.'  Does that make any sense?  I'm not
>>>sure that it does to me, but it seems the best way that I can understand
>>>it.
>>>
>>>
>>>"John Bailo" <jaba***@texeme.com> wrote in message
>>>news:43F0C0E2.6040302@texeme.com...
>>>
>>>
>>>>First of all forget about SOAP -- SOAP is an encapsulation method that
>>>>makes all datatypes available.  It is a messaging protocol basically. The
>>>>fact that it uses XML has nothing to do with what you're asking, which is
>>>>"how do I retrieve the results of a web method whose return type is
>>>>XmlDocument".
>>>>
>>>>Here is the method I use:
>>>>
>>>>XmlDocument dom = new XmlDocument();
>>>>
>>>>//this is a web method that returns a list of clients as an XmlDocument
>>>>XmlNode lcx = lc.ClientList();
>>>>
>>>>
>>>>//this turns the XmlDocument from my webservice into
>>>>//something I can use locally
>>>>dom.AppendChild(dom.ImportNode(
>>>>lcx
>>>>,true));
>>>>
>>>>
>>>>
>>>>
>>>>Bryan Dickerson wrote:
>>>>
>>>>
>>>>>Maybe I didn't phrase the question correctly.  If my web service is
>>>>>called via SOAP and an XML document is sent in the SOAP message body,
>>>>>what object would I instantiate and what property would I need to get
>>>>>that XML string so that I could do something with it?
>>>
>>>
>
Author
13 Feb 2006 8:00 PM
Bryan Dickerson
Close, I'm not able to see the XMLDocument that is passed.  Where should I
be looking?  The Sterling Commerce folks say that I should be looking in the
SOAP Body, but I don't understand how that translates to an object that I
should instantiate.

Show quoteHide quote
"John Bailo" <jaba***@texeme.com> wrote in message
news:43F0E145.3090300@texeme.com...
>
> So, the GIS consumes your web service which sends it an XmlDocument?
>
> That is, your web method is something like:
>
>
> [WebMethod]
> public XmlDocument myMethod(int i)
> {
>
>
> XmlDocument xd;
>
> [...]
>
> return xd;
>
> }
>
> And you are not able to retrieve xd in the GIS script?
>
>
>
> Bryan Dickerson wrote:
>> 3.  My scenario is the reverse of what you describe.  GIS is Gentran
>> Integration Suite by Sterling Commerce.  It is a java-based server from
>> which I am trying to call my .Net web service, i.e., GIS is the consumer.
>> Actually, I am able to call my web service from scripts in GIS, but (I'm
>> the programmer on both ends, which pits me against myself--is there a
>> higher meaning to this?!) from within my .Net web service, I am not able
>> to figure out where the XML document, that is supposedly within the SOAP
>> Body, per the Technical Assistants from Sterling Commerce, is.  If I
>> could figure that out, I would be home free. I am able to get some
>> response from my web service program, just not the one that I want.
>>
>> BTW, thanx for your patience!
>>
>>
>> "John Bailo" <jaba***@texeme.com> wrote in message
>> news:43F0CD68.30104@texeme.com...
>>
>>>1. All web services are called using SOAP -- which uses XML.  I really
>>>wouldn't focus on that.  It's background.
>>>
>>>2. java and .NET encapsulate and consume services in the same way.   A c#
>>>client can consume a java web service, and vice versa.
>>>
>>>3. I think that they are confusing "web service" with "web consumer" or
>>>"client".   I am presuming that the GIS provides web services, and that
>>>you will call their web methods with a web client that you write, and
>>>that one of those web methods will return a datatype of XmlDocument.
>>>
>>>4. If so, you can use the method below.
>>>
>>>To me, it sounds like your real job is to verify the scenario I outlined
>>>in (3).   I mean, is this GIS being offered via the web?  Or is it set up
>>>by someone in house?
>>>
>>>
>>>
>>>
>>>Bryan Dickerson wrote:
>>>
>>>>Ok, here's the full scope of the problem: I am trying to work with a 3rd
>>>>party product called GIS that is essentially a java-based EDI product
>>>>and the documentation and 'technical assistants' (term used loosely) say
>>>>that 'it will use SOAP to call my (.Net) web service and it will pass an
>>>>XML Document to it in the SOAP Body and that XML document is what my web
>>>>service is supposed to work with.'  Does that make any sense?  I'm not
>>>>sure that it does to me, but it seems the best way that I can understand
>>>>it.
>>>>
>>>>
>>>>"John Bailo" <jaba***@texeme.com> wrote in message
>>>>news:43F0C0E2.6040302@texeme.com...
>>>>
>>>>
>>>>>First of all forget about SOAP -- SOAP is an encapsulation method that
>>>>>makes all datatypes available.  It is a messaging protocol basically.
>>>>>The fact that it uses XML has nothing to do with what you're asking,
>>>>>which is "how do I retrieve the results of a web method whose return
>>>>>type is XmlDocument".
>>>>>
>>>>>Here is the method I use:
>>>>>
>>>>>XmlDocument dom = new XmlDocument();
>>>>>
>>>>>//this is a web method that returns a list of clients as an XmlDocument
>>>>>XmlNode lcx = lc.ClientList();
>>>>>
>>>>>
>>>>>//this turns the XmlDocument from my webservice into
>>>>>//something I can use locally
>>>>>dom.AppendChild(dom.ImportNode(
>>>>>lcx
>>>>>,true));
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>Bryan Dickerson wrote:
>>>>>
>>>>>
>>>>>>Maybe I didn't phrase the question correctly.  If my web service is
>>>>>>called via SOAP and an XML document is sent in the SOAP message body,
>>>>>>what object would I instantiate and what property would I need to get
>>>>>>that XML string so that I could do something with it?
>>>>
>>>>
>>
Author
13 Feb 2006 8:06 PM
Bryan Dickerson
Clarification: I'm not able to see the XML Document that is passed to my web
service from GIS.

Show quoteHide quote
"Bryan Dickerson" <txprp***@netscape.net> wrote in message
news:%23trEjgNMGHA.3196@TK2MSFTNGP09.phx.gbl...
> Close, I'm not able to see the XMLDocument that is passed.  Where should I
> be looking?  The Sterling Commerce folks say that I should be looking in
> the SOAP Body, but I don't understand how that translates to an object
> that I should instantiate.
>
> "John Bailo" <jaba***@texeme.com> wrote in message
> news:43F0E145.3090300@texeme.com...
>>
>> So, the GIS consumes your web service which sends it an XmlDocument?
>>
>> That is, your web method is something like:
>>
>>
>> [WebMethod]
>> public XmlDocument myMethod(int i)
>> {
>>
>>
>> XmlDocument xd;
>>
>> [...]
>>
>> return xd;
>>
>> }
>>
>> And you are not able to retrieve xd in the GIS script?
>>
>>
>>
>> Bryan Dickerson wrote:
>>> 3.  My scenario is the reverse of what you describe.  GIS is Gentran
>>> Integration Suite by Sterling Commerce.  It is a java-based server from
>>> which I am trying to call my .Net web service, i.e., GIS is the
>>> consumer. Actually, I am able to call my web service from scripts in
>>> GIS, but (I'm the programmer on both ends, which pits me against
>>> myself--is there a higher meaning to this?!) from within my .Net web
>>> service, I am not able to figure out where the XML document, that is
>>> supposedly within the SOAP Body, per the Technical Assistants from
>>> Sterling Commerce, is.  If I could figure that out, I would be home
>>> free. I am able to get some response from my web service program, just
>>> not the one that I want.
>>>
>>> BTW, thanx for your patience!
>>>
>>>
>>> "John Bailo" <jaba***@texeme.com> wrote in message
>>> news:43F0CD68.30104@texeme.com...
>>>
>>>>1. All web services are called using SOAP -- which uses XML.  I really
>>>>wouldn't focus on that.  It's background.
>>>>
>>>>2. java and .NET encapsulate and consume services in the same way.   A
>>>>c# client can consume a java web service, and vice versa.
>>>>
>>>>3. I think that they are confusing "web service" with "web consumer" or
>>>>"client".   I am presuming that the GIS provides web services, and that
>>>>you will call their web methods with a web client that you write, and
>>>>that one of those web methods will return a datatype of XmlDocument.
>>>>
>>>>4. If so, you can use the method below.
>>>>
>>>>To me, it sounds like your real job is to verify the scenario I outlined
>>>>in (3).   I mean, is this GIS being offered via the web?  Or is it set
>>>>up by someone in house?
>>>>
>>>>
>>>>
>>>>
>>>>Bryan Dickerson wrote:
>>>>
>>>>>Ok, here's the full scope of the problem: I am trying to work with a
>>>>>3rd party product called GIS that is essentially a java-based EDI
>>>>>product and the documentation and 'technical assistants' (term used
>>>>>loosely) say that 'it will use SOAP to call my (.Net) web service and
>>>>>it will pass an XML Document to it in the SOAP Body and that XML
>>>>>document is what my web service is supposed to work with.'  Does that
>>>>>make any sense?  I'm not sure that it does to me, but it seems the best
>>>>>way that I can understand it.
>>>>>
>>>>>
>>>>>"John Bailo" <jaba***@texeme.com> wrote in message
>>>>>news:43F0C0E2.6040302@texeme.com...
>>>>>
>>>>>
>>>>>>First of all forget about SOAP -- SOAP is an encapsulation method that
>>>>>>makes all datatypes available.  It is a messaging protocol basically.
>>>>>>The fact that it uses XML has nothing to do with what you're asking,
>>>>>>which is "how do I retrieve the results of a web method whose return
>>>>>>type is XmlDocument".
>>>>>>
>>>>>>Here is the method I use:
>>>>>>
>>>>>>XmlDocument dom = new XmlDocument();
>>>>>>
>>>>>>//this is a web method that returns a list of clients as an
>>>>>>XmlDocument
>>>>>>XmlNode lcx = lc.ClientList();
>>>>>>
>>>>>>
>>>>>>//this turns the XmlDocument from my webservice into
>>>>>>//something I can use locally
>>>>>>dom.AppendChild(dom.ImportNode(
>>>>>>lcx
>>>>>>,true));
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>Bryan Dickerson wrote:
>>>>>>
>>>>>>
>>>>>>>Maybe I didn't phrase the question correctly.  If my web service is
>>>>>>>called via SOAP and an XML document is sent in the SOAP message body,
>>>>>>>what object would I instantiate and what property would I need to get
>>>>>>>that XML string so that I could do something with it?
>>>>>
>>>>>
>>>
>
>
Author
13 Feb 2006 8:07 PM
John Bailo
What does the script code look like on the GIS that you use to call the
..NET web service?

Basically, I would expect that you create an object that represents the
web service, and your web method should return a variable of type
XmlDocument to the GIS script.

FYI, you know, that you can put your web service into debug mode, and
set breakpoints, so that when the GIS calls it, you can make sure its
being called.

Bryan Dickerson wrote:
Show quoteHide quote
> Close, I'm not able to see the XMLDocument that is passed.  Where should I
> be looking?  The Sterling Commerce folks say that I should be looking in the
> SOAP Body, but I don't understand how that translates to an object that I
> should instantiate.
>
> "John Bailo" <jaba***@texeme.com> wrote in message
> news:43F0E145.3090300@texeme.com...
>
>>So, the GIS consumes your web service which sends it an XmlDocument?
>>
>>That is, your web method is something like:
>>
>>
>>[WebMethod]
>>public XmlDocument myMethod(int i)
>>{
>>
>>
>>XmlDocument xd;
>>
>>[...]
>>
>>return xd;
>>
>>}
>>
>>And you are not able to retrieve xd in the GIS script?
>>
>>
>>
>>Bryan Dickerson wrote:
>>
>>>3.  My scenario is the reverse of what you describe.  GIS is Gentran
>>>Integration Suite by Sterling Commerce.  It is a java-based server from
>>>which I am trying to call my .Net web service, i.e., GIS is the consumer.
>>>Actually, I am able to call my web service from scripts in GIS, but (I'm
>>>the programmer on both ends, which pits me against myself--is there a
>>>higher meaning to this?!) from within my .Net web service, I am not able
>>>to figure out where the XML document, that is supposedly within the SOAP
>>>Body, per the Technical Assistants from Sterling Commerce, is.  If I
>>>could figure that out, I would be home free. I am able to get some
>>>response from my web service program, just not the one that I want.
>>>
>>>BTW, thanx for your patience!
>>>
>>>
>>>"John Bailo" <jaba***@texeme.com> wrote in message
>>>news:43F0CD68.30104@texeme.com...
>>>
>>>
>>>>1. All web services are called using SOAP -- which uses XML.  I really
>>>>wouldn't focus on that.  It's background.
>>>>
>>>>2. java and .NET encapsulate and consume services in the same way.   A c#
>>>>client can consume a java web service, and vice versa.
>>>>
>>>>3. I think that they are confusing "web service" with "web consumer" or
>>>>"client".   I am presuming that the GIS provides web services, and that
>>>>you will call their web methods with a web client that you write, and
>>>>that one of those web methods will return a datatype of XmlDocument.
>>>>
>>>>4. If so, you can use the method below.
>>>>
>>>>To me, it sounds like your real job is to verify the scenario I outlined
>>>>in (3).   I mean, is this GIS being offered via the web?  Or is it set up
>>>>by someone in house?
>>>>
>>>>
>>>>
>>>>
>>>>Bryan Dickerson wrote:
>>>>
>>>>
>>>>>Ok, here's the full scope of the problem: I am trying to work with a 3rd
>>>>>party product called GIS that is essentially a java-based EDI product
>>>>>and the documentation and 'technical assistants' (term used loosely) say
>>>>>that 'it will use SOAP to call my (.Net) web service and it will pass an
>>>>>XML Document to it in the SOAP Body and that XML document is what my web
>>>>>service is supposed to work with.'  Does that make any sense?  I'm not
>>>>>sure that it does to me, but it seems the best way that I can understand
>>>>>it.
>>>>>
>>>>>
>>>>>"John Bailo" <jaba***@texeme.com> wrote in message
>>>>>news:43F0C0E2.6040302@texeme.com...
>>>>>
>>>>>
>>>>>
>>>>>>First of all forget about SOAP -- SOAP is an encapsulation method that
>>>>>>makes all datatypes available.  It is a messaging protocol basically.
>>>>>>The fact that it uses XML has nothing to do with what you're asking,
>>>>>>which is "how do I retrieve the results of a web method whose return
>>>>>>type is XmlDocument".
>>>>>>
>>>>>>Here is the method I use:
>>>>>>
>>>>>>XmlDocument dom = new XmlDocument();
>>>>>>
>>>>>>//this is a web method that returns a list of clients as an XmlDocument
>>>>>>XmlNode lcx = lc.ClientList();
>>>>>>
>>>>>>
>>>>>>//this turns the XmlDocument from my webservice into
>>>>>>//something I can use locally
>>>>>>dom.AppendChild(dom.ImportNode(
>>>>>>lcx
>>>>>>,true));
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>Bryan Dickerson wrote:
>>>>>>
>>>>>>
>>>>>>
>>>>>>>Maybe I didn't phrase the question correctly.  If my web service is
>>>>>>>called via SOAP and an XML document is sent in the SOAP message body,
>>>>>>>what object would I instantiate and what property would I need to get
>>>>>>>that XML string so that I could do something with it?
>>>>>
>>>>>
>
>
Author
13 Feb 2006 8:16 PM
Bryan Dickerson
I wish it were that easy.  The script code is an XML-based language that
looks nothing like VB or C#.  Plus the GIS Server is actually running on
another box, so I have to build my WS and deploy it to the GIS server box,
which is running on Win 2K3, then set a test in motion from the GIS menus to
see what response I get from my WS.

Show quoteHide quote
"John Bailo" <jaba***@texeme.com> wrote in message
news:43F0E71A.9000206@texeme.com...
>
> What does the script code look like on the GIS that you use to call the
> .NET web service?
>
> Basically, I would expect that you create an object that represents the
> web service, and your web method should return a variable of type
> XmlDocument to the GIS script.
>
> FYI, you know, that you can put your web service into debug mode, and set
> breakpoints, so that when the GIS calls it, you can make sure its being
> called.
>
> Bryan Dickerson wrote:
>> Close, I'm not able to see the XMLDocument that is passed.  Where should
>> I be looking?  The Sterling Commerce folks say that I should be looking
>> in the SOAP Body, but I don't understand how that translates to an object
>> that I should instantiate.
>>
>> "John Bailo" <jaba***@texeme.com> wrote in message
>> news:43F0E145.3090300@texeme.com...
>>
>>>So, the GIS consumes your web service which sends it an XmlDocument?
>>>
>>>That is, your web method is something like:
>>>
>>>
>>>[WebMethod]
>>>public XmlDocument myMethod(int i)
>>>{
>>>
>>>
>>>XmlDocument xd;
>>>
>>>[...]
>>>
>>>return xd;
>>>
>>>}
>>>
>>>And you are not able to retrieve xd in the GIS script?
>>>
>>>
>>>
>>>Bryan Dickerson wrote:
>>>
>>>>3.  My scenario is the reverse of what you describe.  GIS is Gentran
>>>>Integration Suite by Sterling Commerce.  It is a java-based server from
>>>>which I am trying to call my .Net web service, i.e., GIS is the
>>>>consumer. Actually, I am able to call my web service from scripts in
>>>>GIS, but (I'm the programmer on both ends, which pits me against
>>>>myself--is there a higher meaning to this?!) from within my .Net web
>>>>service, I am not able to figure out where the XML document, that is
>>>>supposedly within the SOAP Body, per the Technical Assistants from
>>>>Sterling Commerce, is.  If I could figure that out, I would be home
>>>>free. I am able to get some response from my web service program, just
>>>>not the one that I want.
>>>>
>>>>BTW, thanx for your patience!
>>>>
>>>>
>>>>"John Bailo" <jaba***@texeme.com> wrote in message
>>>>news:43F0CD68.30104@texeme.com...
>>>>
>>>>
>>>>>1. All web services are called using SOAP -- which uses XML.  I really
>>>>>wouldn't focus on that.  It's background.
>>>>>
>>>>>2. java and .NET encapsulate and consume services in the same way.   A
>>>>>c# client can consume a java web service, and vice versa.
>>>>>
>>>>>3. I think that they are confusing "web service" with "web consumer" or
>>>>>"client".   I am presuming that the GIS provides web services, and that
>>>>>you will call their web methods with a web client that you write, and
>>>>>that one of those web methods will return a datatype of XmlDocument.
>>>>>
>>>>>4. If so, you can use the method below.
>>>>>
>>>>>To me, it sounds like your real job is to verify the scenario I
>>>>>outlined in (3).   I mean, is this GIS being offered via the web?  Or
>>>>>is it set up by someone in house?
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>Bryan Dickerson wrote:
>>>>>
>>>>>
>>>>>>Ok, here's the full scope of the problem: I am trying to work with a
>>>>>>3rd party product called GIS that is essentially a java-based EDI
>>>>>>product and the documentation and 'technical assistants' (term used
>>>>>>loosely) say that 'it will use SOAP to call my (.Net) web service and
>>>>>>it will pass an XML Document to it in the SOAP Body and that XML
>>>>>>document is what my web service is supposed to work with.'  Does that
>>>>>>make any sense?  I'm not sure that it does to me, but it seems the
>>>>>>best way that I can understand it.
>>>>>>
>>>>>>
>>>>>>"John Bailo" <jaba***@texeme.com> wrote in message
>>>>>>news:43F0C0E2.6040302@texeme.com...
>>>>>>
>>>>>>
>>>>>>
>>>>>>>First of all forget about SOAP -- SOAP is an encapsulation method
>>>>>>>that makes all datatypes available.  It is a messaging protocol
>>>>>>>basically. The fact that it uses XML has nothing to do with what
>>>>>>>you're asking, which is "how do I retrieve the results of a web
>>>>>>>method whose return type is XmlDocument".
>>>>>>>
>>>>>>>Here is the method I use:
>>>>>>>
>>>>>>>XmlDocument dom = new XmlDocument();
>>>>>>>
>>>>>>>//this is a web method that returns a list of clients as an
>>>>>>>XmlDocument
>>>>>>>XmlNode lcx = lc.ClientList();
>>>>>>>
>>>>>>>
>>>>>>>//this turns the XmlDocument from my webservice into
>>>>>>>//something I can use locally
>>>>>>>dom.AppendChild(dom.ImportNode(
>>>>>>>lcx
>>>>>>>,true));
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>Bryan Dickerson wrote:
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>Maybe I didn't phrase the question correctly.  If my web service is
>>>>>>>>called via SOAP and an XML document is sent in the SOAP message
>>>>>>>>body, what object would I instantiate and what property would I need
>>>>>>>>to get that XML string so that I could do something with it?
>>>>>>
>>>>>>
>>
Author
13 Feb 2006 8:31 PM
John Bailo
Yes, but even still, there has to be a way of retrieving a variable from
a web method right?

I mean, if you wrote a web method that returned an integer:

int myMethod()
{

    return 1;

}

How would you get the value of "1" in the script language?

Also, are you saying that you can't reach your development machine
across the network from the GIS?   Is there no way to say

URL="http://mymachine.mycompany.com/Webservice1.asmx" ?



Bryan Dickerson wrote:
Show quoteHide quote
> I wish it were that easy.  The script code is an XML-based language that
> looks nothing like VB or C#.  Plus the GIS Server is actually running on
> another box, so I have to build my WS and deploy it to the GIS server box,
> which is running on Win 2K3, then set a test in motion from the GIS menus to
> see what response I get from my WS.
>
> "John Bailo" <jaba***@texeme.com> wrote in message
> news:43F0E71A.9000206@texeme.com...
>
>>What does the script code look like on the GIS that you use to call the
>>.NET web service?
>>
>>Basically, I would expect that you create an object that represents the
>>web service, and your web method should return a variable of type
>>XmlDocument to the GIS script.
>>
>>FYI, you know, that you can put your web service into debug mode, and set
>>breakpoints, so that when the GIS calls it, you can make sure its being
>>called.
>>
>>Bryan Dickerson wrote:
>>
>>>Close, I'm not able to see the XMLDocument that is passed.  Where should
>>>I be looking?  The Sterling Commerce folks say that I should be looking
>>>in the SOAP Body, but I don't understand how that translates to an object
>>>that I should instantiate.
>>>
>>>"John Bailo" <jaba***@texeme.com> wrote in message
>>>news:43F0E145.3090300@texeme.com...
>>>
>>>
>>>>So, the GIS consumes your web service which sends it an XmlDocument?
>>>>
>>>>That is, your web method is something like:
>>>>
>>>>
>>>>[WebMethod]
>>>>public XmlDocument myMethod(int i)
>>>>{
>>>>
>>>>
>>>>XmlDocument xd;
>>>>
>>>>[...]
>>>>
>>>>return xd;
>>>>
>>>>}
>>>>
>>>>And you are not able to retrieve xd in the GIS script?
>>>>
>>>>
>>>>
>>>>Bryan Dickerson wrote:
>>>>
>>>>
>>>>>3.  My scenario is the reverse of what you describe.  GIS is Gentran
>>>>>Integration Suite by Sterling Commerce.  It is a java-based server from
>>>>>which I am trying to call my .Net web service, i.e., GIS is the
>>>>>consumer. Actually, I am able to call my web service from scripts in
>>>>>GIS, but (I'm the programmer on both ends, which pits me against
>>>>>myself--is there a higher meaning to this?!) from within my .Net web
>>>>>service, I am not able to figure out where the XML document, that is
>>>>>supposedly within the SOAP Body, per the Technical Assistants from
>>>>>Sterling Commerce, is.  If I could figure that out, I would be home
>>>>>free. I am able to get some response from my web service program, just
>>>>>not the one that I want.
>>>>>
>>>>>BTW, thanx for your patience!
>>>>>
>>>>>
>>>>>"John Bailo" <jaba***@texeme.com> wrote in message
>>>>>news:43F0CD68.30104@texeme.com...
>>>>>
>>>>>
>>>>>
>>>>>>1. All web services are called using SOAP -- which uses XML.  I really
>>>>>>wouldn't focus on that.  It's background.
>>>>>>
>>>>>>2. java and .NET encapsulate and consume services in the same way.   A
>>>>>>c# client can consume a java web service, and vice versa.
>>>>>>
>>>>>>3. I think that they are confusing "web service" with "web consumer" or
>>>>>>"client".   I am presuming that the GIS provides web services, and that
>>>>>>you will call their web methods with a web client that you write, and
>>>>>>that one of those web methods will return a datatype of XmlDocument.
>>>>>>
>>>>>>4. If so, you can use the method below.
>>>>>>
>>>>>>To me, it sounds like your real job is to verify the scenario I
>>>>>>outlined in (3).   I mean, is this GIS being offered via the web?  Or
>>>>>>is it set up by someone in house?
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>Bryan Dickerson wrote:
>>>>>>
>>>>>>
>>>>>>
>>>>>>>Ok, here's the full scope of the problem: I am trying to work with a
>>>>>>>3rd party product called GIS that is essentially a java-based EDI
>>>>>>>product and the documentation and 'technical assistants' (term used
>>>>>>>loosely) say that 'it will use SOAP to call my (.Net) web service and
>>>>>>>it will pass an XML Document to it in the SOAP Body and that XML
>>>>>>>document is what my web service is supposed to work with.'  Does that
>>>>>>>make any sense?  I'm not sure that it does to me, but it seems the
>>>>>>>best way that I can understand it.
>>>>>>>
>>>>>>>
>>>>>>>"John Bailo" <jaba***@texeme.com> wrote in message
>>>>>>>news:43F0C0E2.6040302@texeme.com...
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>First of all forget about SOAP -- SOAP is an encapsulation method
>>>>>>>>that makes all datatypes available.  It is a messaging protocol
>>>>>>>>basically. The fact that it uses XML has nothing to do with what
>>>>>>>>you're asking, which is "how do I retrieve the results of a web
>>>>>>>>method whose return type is XmlDocument".
>>>>>>>>
>>>>>>>>Here is the method I use:
>>>>>>>>
>>>>>>>>XmlDocument dom = new XmlDocument();
>>>>>>>>
>>>>>>>>//this is a web method that returns a list of clients as an
>>>>>>>>XmlDocument
>>>>>>>>XmlNode lcx = lc.ClientList();
>>>>>>>>
>>>>>>>>
>>>>>>>>//this turns the XmlDocument from my webservice into
>>>>>>>>//something I can use locally
>>>>>>>>dom.AppendChild(dom.ImportNode(
>>>>>>>>lcx
>>>>>>>>,true));
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>Bryan Dickerson wrote:
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>Maybe I didn't phrase the question correctly.  If my web service is
>>>>>>>>>called via SOAP and an XML document is sent in the SOAP message
>>>>>>>>>body, what object would I instantiate and what property would I need
>>>>>>>>>to get that XML string so that I could do something with it?
>>>>>>>
>>>>>>>
>
Author
13 Feb 2006 8:50 PM
Bryan Dickerson
I'm not worried about GIS receiving my web services' output; I need to find
GIS' input to my web service program.  And yes, I can view my web service as
it's deployed on the server box (http://servername/Service1.asmx).  The GIS
script sets a few internal variables
(SOAPRequestURL=http://localhost/Service1.asmx,
SOAP_Action=http://namespace/webservices/WebMethod,
SOAPEnvNSURI=http://schemas.xmlsoap.org/soap/envelope) then just 'calls' the
web service specified.

Show quoteHide quote
"John Bailo" <jaba***@texeme.com> wrote in message
news:43F0EC91.7040501@texeme.com...
>
> Yes, but even still, there has to be a way of retrieving a variable from a
> web method right?
>
> I mean, if you wrote a web method that returned an integer:
>
> int myMethod()
> {
>
> return 1;
>
> }
>
> How would you get the value of "1" in the script language?
>
> Also, are you saying that you can't reach your development machine across
> the network from the GIS?   Is there no way to say
>
> URL="http://mymachine.mycompany.com/Webservice1.asmx" ?
>
>
>
> Bryan Dickerson wrote:
>> I wish it were that easy.  The script code is an XML-based language that
>> looks nothing like VB or C#.  Plus the GIS Server is actually running on
>> another box, so I have to build my WS and deploy it to the GIS server
>> box, which is running on Win 2K3, then set a test in motion from the GIS
>> menus to see what response I get from my WS.
>>
>> "John Bailo" <jaba***@texeme.com> wrote in message
>> news:43F0E71A.9000206@texeme.com...
>>
>>>What does the script code look like on the GIS that you use to call the
>>>.NET web service?
>>>
>>>Basically, I would expect that you create an object that represents the
>>>web service, and your web method should return a variable of type
>>>XmlDocument to the GIS script.
>>>
>>>FYI, you know, that you can put your web service into debug mode, and set
>>>breakpoints, so that when the GIS calls it, you can make sure its being
>>>called.
>>>
>>>Bryan Dickerson wrote:
>>>
>>>>Close, I'm not able to see the XMLDocument that is passed.  Where should
>>>>I be looking?  The Sterling Commerce folks say that I should be looking
>>>>in the SOAP Body, but I don't understand how that translates to an
>>>>object that I should instantiate.
>>>>
>>>>"John Bailo" <jaba***@texeme.com> wrote in message
>>>>news:43F0E145.3090300@texeme.com...
>>>>
>>>>
>>>>>So, the GIS consumes your web service which sends it an XmlDocument?
>>>>>
>>>>>That is, your web method is something like:
>>>>>
>>>>>
>>>>>[WebMethod]
>>>>>public XmlDocument myMethod(int i)
>>>>>{
>>>>>
>>>>>
>>>>>XmlDocument xd;
>>>>>
>>>>>[...]
>>>>>
>>>>>return xd;
>>>>>
>>>>>}
>>>>>
>>>>>And you are not able to retrieve xd in the GIS script?
>>>>>
>>>>>
>>>>>
>>>>>Bryan Dickerson wrote:
>>>>>
>>>>>
>>>>>>3.  My scenario is the reverse of what you describe.  GIS is Gentran
>>>>>>Integration Suite by Sterling Commerce.  It is a java-based server
>>>>>>from which I am trying to call my .Net web service, i.e., GIS is the
>>>>>>consumer. Actually, I am able to call my web service from scripts in
>>>>>>GIS, but (I'm the programmer on both ends, which pits me against
>>>>>>myself--is there a higher meaning to this?!) from within my .Net web
>>>>>>service, I am not able to figure out where the XML document, that is
>>>>>>supposedly within the SOAP Body, per the Technical Assistants from
>>>>>>Sterling Commerce, is.  If I could figure that out, I would be home
>>>>>>free. I am able to get some response from my web service program, just
>>>>>>not the one that I want.
>>>>>>
>>>>>>BTW, thanx for your patience!
>>>>>>
>>>>>>
>>>>>>"John Bailo" <jaba***@texeme.com> wrote in message
>>>>>>news:43F0CD68.30104@texeme.com...
>>>>>>
>>>>>>
>>>>>>
>>>>>>>1. All web services are called using SOAP -- which uses XML.  I
>>>>>>>really wouldn't focus on that.  It's background.
>>>>>>>
>>>>>>>2. java and .NET encapsulate and consume services in the same way.
>>>>>>>A c# client can consume a java web service, and vice versa.
>>>>>>>
>>>>>>>3. I think that they are confusing "web service" with "web consumer"
>>>>>>>or "client".   I am presuming that the GIS provides web services, and
>>>>>>>that you will call their web methods with a web client that you
>>>>>>>write, and that one of those web methods will return a datatype of
>>>>>>>XmlDocument.
>>>>>>>
>>>>>>>4. If so, you can use the method below.
>>>>>>>
>>>>>>>To me, it sounds like your real job is to verify the scenario I
>>>>>>>outlined in (3).   I mean, is this GIS being offered via the web?  Or
>>>>>>>is it set up by someone in house?
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>Bryan Dickerson wrote:
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>Ok, here's the full scope of the problem: I am trying to work with a
>>>>>>>>3rd party product called GIS that is essentially a java-based EDI
>>>>>>>>product and the documentation and 'technical assistants' (term used
>>>>>>>>loosely) say that 'it will use SOAP to call my (.Net) web service
>>>>>>>>and it will pass an XML Document to it in the SOAP Body and that XML
>>>>>>>>document is what my web service is supposed to work with.'  Does
>>>>>>>>that make any sense?  I'm not sure that it does to me, but it seems
>>>>>>>>the best way that I can understand it.
>>>>>>>>
>>>>>>>>
>>>>>>>>"John Bailo" <jaba***@texeme.com> wrote in message
>>>>>>>>news:43F0C0E2.6040302@texeme.com...
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>First of all forget about SOAP -- SOAP is an encapsulation method
>>>>>>>>>that makes all datatypes available.  It is a messaging protocol
>>>>>>>>>basically. The fact that it uses XML has nothing to do with what
>>>>>>>>>you're asking, which is "how do I retrieve the results of a web
>>>>>>>>>method whose return type is XmlDocument".
>>>>>>>>>
>>>>>>>>>Here is the method I use:
>>>>>>>>>
>>>>>>>>>XmlDocument dom = new XmlDocument();
>>>>>>>>>
>>>>>>>>>//this is a web method that returns a list of clients as an
>>>>>>>>>XmlDocument
>>>>>>>>>XmlNode lcx = lc.ClientList();
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>//this turns the XmlDocument from my webservice into
>>>>>>>>>//something I can use locally
>>>>>>>>>dom.AppendChild(dom.ImportNode(
>>>>>>>>>lcx
>>>>>>>>>,true));
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>Bryan Dickerson wrote:
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>Maybe I didn't phrase the question correctly.  If my web service
>>>>>>>>>>is called via SOAP and an XML document is sent in the SOAP message
>>>>>>>>>>body, what object would I instantiate and what property would I
>>>>>>>>>>need to get that XML string so that I could do something with it?
>>>>>>>>
>>>>>>>>
>>
Author
13 Feb 2006 10:25 PM
John Bailo
Ok, now I understand why you ask about SOAP.

Your server (GIS) is using a script that is actually putting together a
raw SOAP message direct to the web service.

If you run your web method in VS.NET (run the service, click on the
method) you will see how to call the service with SOAP and what the
response of the web service will be.

So, I wrote a very quick and dirty web service that takes an int as
input and adds that to a string.

[WebMethod]
public string HelloWorld(int i)
{
return "Hello World " + i.ToString();
}

Here is how VS.NET says I should call that service:

POST /test2/Service1.asmx HTTP/1.1
Host: localhost
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "http://tempuri.org/HelloWorld"

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
   <soap:Body>
     <HelloWorld xmlns="http://tempuri.org/">
       <i>int</i>
     </HelloWorld>
   </soap:Body>
</soap:Envelope>

So, what you need to do is to find out if there is a [SOAPBODY] in your
  GIS scripting language and code up the soap request message from VS.NET


Bryan Dickerson wrote:
Show quoteHide quote
> I'm not worried about GIS receiving my web services' output; I need to find
> GIS' input to my web service program.  And yes, I can view my web service as
> it's deployed on the server box (http://servername/Service1.asmx).  The GIS
> script sets a few internal variables
> (SOAPRequestURL=http://localhost/Service1.asmx,
> SOAP_Action=http://namespace/webservices/WebMethod,
> SOAPEnvNSURI=http://schemas.xmlsoap.org/soap/envelope) then just 'calls' the
> web service specified.
>
> "John Bailo" <jaba***@texeme.com> wrote in message
> news:43F0EC91.7040501@texeme.com...
>
>>Yes, but even still, there has to be a way of retrieving a variable from a
>>web method right?
>>
>>I mean, if you wrote a web method that returned an integer:
>>
>>int myMethod()
>>{
>>
>>return 1;
>>
>>}
>>
>>How would you get the value of "1" in the script language?
>>
>>Also, are you saying that you can't reach your development machine across
>>the network from the GIS?   Is there no way to say
>>
>>URL="http://mymachine.mycompany.com/Webservice1.asmx" ?
>>
>>
>>
>>Bryan Dickerson wrote:
>>
>>>I wish it were that easy.  The script code is an XML-based language that
>>>looks nothing like VB or C#.  Plus the GIS Server is actually running on
>>>another box, so I have to build my WS and deploy it to the GIS server
>>>box, which is running on Win 2K3, then set a test in motion from the GIS
>>>menus to see what response I get from my WS.
>>>
>>>"John Bailo" <jaba***@texeme.com> wrote in message
>>>news:43F0E71A.9000206@texeme.com...
>>>
>>>
>>>>What does the script code look like on the GIS that you use to call the
>>>>.NET web service?
>>>>
>>>>Basically, I would expect that you create an object that represents the
>>>>web service, and your web method should return a variable of type
>>>>XmlDocument to the GIS script.
>>>>
>>>>FYI, you know, that you can put your web service into debug mode, and set
>>>>breakpoints, so that when the GIS calls it, you can make sure its being
>>>>called.
>>>>
>>>>Bryan Dickerson wrote:
>>>>
>>>>
>>>>>Close, I'm not able to see the XMLDocument that is passed.  Where should
>>>>>I be looking?  The Sterling Commerce folks say that I should be looking
>>>>>in the SOAP Body, but I don't understand how that translates to an
>>>>>object that I should instantiate.
>>>>>
>>>>>"John Bailo" <jaba***@texeme.com> wrote in message
>>>>>news:43F0E145.3090300@texeme.com...
>>>>>
>>>>>
>>>>>
>>>>>>So, the GIS consumes your web service which sends it an XmlDocument?
>>>>>>
>>>>>>That is, your web method is something like:
>>>>>>
>>>>>>
>>>>>>[WebMethod]
>>>>>>public XmlDocument myMethod(int i)
>>>>>>{
>>>>>>
>>>>>>
>>>>>>XmlDocument xd;
>>>>>>
>>>>>>[...]
>>>>>>
>>>>>>return xd;
>>>>>>
>>>>>>}
>>>>>>
>>>>>>And you are not able to retrieve xd in the GIS script?
>>>>>>
>>>>>>
>>>>>>
>>>>>>Bryan Dickerson wrote:
>>>>>>
>>>>>>
>>>>>>
>>>>>>>3.  My scenario is the reverse of what you describe.  GIS is Gentran
>>>>>>>Integration Suite by Sterling Commerce.  It is a java-based server
>>>>>>
>>>>>>>from which I am trying to call my .Net web service, i.e., GIS is the
>>>>>>
>>>>>>>consumer. Actually, I am able to call my web service from scripts in
>>>>>>>GIS, but (I'm the programmer on both ends, which pits me against
>>>>>>>myself--is there a higher meaning to this?!) from within my .Net web
>>>>>>>service, I am not able to figure out where the XML document, that is
>>>>>>>supposedly within the SOAP Body, per the Technical Assistants from
>>>>>>>Sterling Commerce, is.  If I could figure that out, I would be home
>>>>>>>free. I am able to get some response from my web service program, just
>>>>>>>not the one that I want.
>>>>>>>
>>>>>>>BTW, thanx for your patience!
>>>>>>>
>>>>>>>
>>>>>>>"John Bailo" <jaba***@texeme.com> wrote in message
>>>>>>>news:43F0CD68.30104@texeme.com...
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>1. All web services are called using SOAP -- which uses XML.  I
>>>>>>>>really wouldn't focus on that.  It's background.
>>>>>>>>
>>>>>>>>2. java and .NET encapsulate and consume services in the same way.
>>>>>>>>A c# client can consume a java web service, and vice versa.
>>>>>>>>
>>>>>>>>3. I think that they are confusing "web service" with "web consumer"
>>>>>>>>or "client".   I am presuming that the GIS provides web services, and
>>>>>>>>that you will call their web methods with a web client that you
>>>>>>>>write, and that one of those web methods will return a datatype of
>>>>>>>>XmlDocument.
>>>>>>>>
>>>>>>>>4. If so, you can use the method below.
>>>>>>>>
>>>>>>>>To me, it sounds like your real job is to verify the scenario I
>>>>>>>>outlined in (3).   I mean, is this GIS being offered via the web?  Or
>>>>>>>>is it set up by someone in house?
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>Bryan Dickerson wrote:
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>Ok, here's the full scope of the problem: I am trying to work with a
>>>>>>>>>3rd party product called GIS that is essentially a java-based EDI
>>>>>>>>>product and the documentation and 'technical assistants' (term used
>>>>>>>>>loosely) say that 'it will use SOAP to call my (.Net) web service
>>>>>>>>>and it will pass an XML Document to it in the SOAP Body and that XML
>>>>>>>>>document is what my web service is supposed to work with.'  Does
>>>>>>>>>that make any sense?  I'm not sure that it does to me, but it seems
>>>>>>>>>the best way that I can understand it.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>"John Bailo" <jaba***@texeme.com> wrote in message
>>>>>>>>>news:43F0C0E2.6040302@texeme.com...
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>First of all forget about SOAP -- SOAP is an encapsulation method
>>>>>>>>>>that makes all datatypes available.  It is a messaging protocol
>>>>>>>>>>basically. The fact that it uses XML has nothing to do with what
>>>>>>>>>>you're asking, which is "how do I retrieve the results of a web
>>>>>>>>>>method whose return type is XmlDocument".
>>>>>>>>>>
>>>>>>>>>>Here is the method I use:
>>>>>>>>>>
>>>>>>>>>>XmlDocument dom = new XmlDocument();
>>>>>>>>>>
>>>>>>>>>>//this is a web method that returns a list of clients as an
>>>>>>>>>>XmlDocument
>>>>>>>>>>XmlNode lcx = lc.ClientList();
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>//this turns the XmlDocument from my webservice into
>>>>>>>>>>//something I can use locally
>>>>>>>>>>dom.AppendChild(dom.ImportNode(
>>>>>>>>>>lcx
>>>>>>>>>>,true));
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>Bryan Dickerson wrote:
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>Maybe I didn't phrase the question correctly.  If my web service
>>>>>>>>>>>is called via SOAP and an XML document is sent in the SOAP message
>>>>>>>>>>>body, what object would I instantiate and what property would I
>>>>>>>>>>>need to get that XML string so that I could do something with it?
>>>>>>>>>
>>>>>>>>>
>
>
Author
14 Feb 2006 6:08 PM
Bryan Dickerson
I know that there is a SOAP Body in the GIS.  This is what it looks like:
--------------------------------
<SOAP-ENV:Envelope
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"><SOAP-ENV:Body><PurchaseOrder><OrderHeader><BuyerOrderNumber>TestPo1</BuyerOrderNumber>...
--------------------------------
I'm trying to get to the "<PurchaseOrder><OrderHeader>..." part.

My boss just emailed me and said that I need to modify my Web service to be
this...
-------------------------------
   <WebMethod(),
SoapDocumentMethod(Action:="http://www.source.com/webservices/CreateSourceOrder",
_
     Use:=Description.SoapBindingUse.Literal,
ParameterStyle:=SoapParameterStyle.Bare)> _
   Public Function
CreateSourceOrder(<XmlElement([Namespace]:="http://www.source.com/webservices",
IsNullable:=True)> _
                                     ByVal PurchaseOrder As String) As
String
or ...
   <WebMethod(),
SoapDocumentMethod(Action:="http://www.source.com/webservices/CreateSourceOrder",
_
     Use:=Description.SoapBindingUse.Literal,
ParameterStyle:=SoapParameterStyle.Bare)> _
   Public Function
CreateSourceOrder(<XmlElement([Namespace]:="http://www.source.com/webservices",
IsNullable:=True)> _
                                     ByVal PurchaseOrder As Xml.XmlNode) As
String
-------------------------------
Neither worked. For right now, I have code that tests to see if the string
or XmlNode has anything in it and both came back saying they were empty or
null. Does this help clarify anything?


Show quoteHide quote
"John Bailo" <jaba***@texeme.com> wrote in message
news:43F10754.8060609@texeme.com...
>
> Ok, now I understand why you ask about SOAP.
>
> Your server (GIS) is using a script that is actually putting together a
> raw SOAP message direct to the web service.
>
> If you run your web method in VS.NET (run the service, click on the
> method) you will see how to call the service with SOAP and what the
> response of the web service will be.
>
> So, I wrote a very quick and dirty web service that takes an int as input
> and adds that to a string.
>
> [WebMethod]
> public string HelloWorld(int i)
> {
> return "Hello World " + i.ToString();
> }
>
> Here is how VS.NET says I should call that service:
>
> POST /test2/Service1.asmx HTTP/1.1
> Host: localhost
> Content-Type: text/xml; charset=utf-8
> Content-Length: length
> SOAPAction: "http://tempuri.org/HelloWorld"
>
> <?xml version="1.0" encoding="utf-8"?>
> <soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> xmlns:xsd="http://www.w3.org/2001/XMLSchema"
> xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
>   <soap:Body>
>     <HelloWorld xmlns="http://tempuri.org/">
>       <i>int</i>
>     </HelloWorld>
>   </soap:Body>
> </soap:Envelope>
>
> So, what you need to do is to find out if there is a [SOAPBODY] in your
> GIS scripting language and code up the soap request message from VS.NET
>
>
> Bryan Dickerson wrote:
>> I'm not worried about GIS receiving my web services' output; I need to
>> find GIS' input to my web service program.  And yes, I can view my web
>> service as it's deployed on the server box
>> (http://servername/Service1.asmx).  The GIS script sets a few internal
>> variables (SOAPRequestURL=http://localhost/Service1.asmx,
>> SOAP_Action=http://namespace/webservices/WebMethod,
>> SOAPEnvNSURI=http://schemas.xmlsoap.org/soap/envelope) then just 'calls'
>> the web service specified.
>>
>> "John Bailo" <jaba***@texeme.com> wrote in message
>> news:43F0EC91.7040501@texeme.com...
>>
>>>Yes, but even still, there has to be a way of retrieving a variable from
>>>a web method right?
>>>
>>>I mean, if you wrote a web method that returned an integer:
>>>
>>>int myMethod()
>>>{
>>>
>>>return 1;
>>>
>>>}
>>>
>>>How would you get the value of "1" in the script language?
>>>
>>>Also, are you saying that you can't reach your development machine across
>>>the network from the GIS?   Is there no way to say
>>>
>>>URL="http://mymachine.mycompany.com/Webservice1.asmx" ?
>>>
>>>
>>>
>>>Bryan Dickerson wrote:
>>>
>>>>I wish it were that easy.  The script code is an XML-based language that
>>>>looks nothing like VB or C#.  Plus the GIS Server is actually running on
>>>>another box, so I have to build my WS and deploy it to the GIS server
>>>>box, which is running on Win 2K3, then set a test in motion from the GIS
>>>>menus to see what response I get from my WS.
>>>>
>>>>"John Bailo" <jaba***@texeme.com> wrote in message
>>>>news:43F0E71A.9000206@texeme.com...
>>>>
>>>>
>>>>>What does the script code look like on the GIS that you use to call the
>>>>>.NET web service?
>>>>>
>>>>>Basically, I would expect that you create an object that represents the
>>>>>web service, and your web method should return a variable of type
>>>>>XmlDocument to the GIS script.
>>>>>
>>>>>FYI, you know, that you can put your web service into debug mode, and
>>>>>set breakpoints, so that when the GIS calls it, you can make sure its
>>>>>being called.
>>>>>
>>>>>Bryan Dickerson wrote:
>>>>>
>>>>>
>>>>>>Close, I'm not able to see the XMLDocument that is passed.  Where
>>>>>>should I be looking?  The Sterling Commerce folks say that I should be
>>>>>>looking in the SOAP Body, but I don't understand how that translates
>>>>>>to an object that I should instantiate.
>>>>>>
>>>>>>"John Bailo" <jaba***@texeme.com> wrote in message
>>>>>>news:43F0E145.3090300@texeme.com...
>>>>>>
>>>>>>
>>>>>>
>>>>>>>So, the GIS consumes your web service which sends it an XmlDocument?
>>>>>>>
>>>>>>>That is, your web method is something like:
>>>>>>>
>>>>>>>
>>>>>>>[WebMethod]
>>>>>>>public XmlDocument myMethod(int i)
>>>>>>>{
>>>>>>>
>>>>>>>
>>>>>>>XmlDocument xd;
>>>>>>>
>>>>>>>[...]
>>>>>>>
>>>>>>>return xd;
>>>>>>>
>>>>>>>}
>>>>>>>
>>>>>>>And you are not able to retrieve xd in the GIS script?
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>Bryan Dickerson wrote:
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>3.  My scenario is the reverse of what you describe.  GIS is Gentran
>>>>>>>>Integration Suite by Sterling Commerce.  It is a java-based server
>>>>>>>
>>>>>>>>from which I am trying to call my .Net web service, i.e., GIS is the
>>>>>>>
>>>>>>>>consumer. Actually, I am able to call my web service from scripts in
>>>>>>>>GIS, but (I'm the programmer on both ends, which pits me against
>>>>>>>>myself--is there a higher meaning to this?!) from within my .Net web
>>>>>>>>service, I am not able to figure out where the XML document, that is
>>>>>>>>supposedly within the SOAP Body, per the Technical Assistants from
>>>>>>>>Sterling Commerce, is.  If I could figure that out, I would be home
>>>>>>>>free. I am able to get some response from my web service program,
>>>>>>>>just not the one that I want.
>>>>>>>>
>>>>>>>>BTW, thanx for your patience!
>>>>>>>>
>>>>>>>>
>>>>>>>>"John Bailo" <jaba***@texeme.com> wrote in message
>>>>>>>>news:43F0CD68.30104@texeme.com...
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>1. All web services are called using SOAP -- which uses XML.  I
>>>>>>>>>really wouldn't focus on that.  It's background.
>>>>>>>>>
>>>>>>>>>2. java and .NET encapsulate and consume services in the same way.
>>>>>>>>>A c# client can consume a java web service, and vice versa.
>>>>>>>>>
>>>>>>>>>3. I think that they are confusing "web service" with "web
>>>>>>>>>consumer" or "client".   I am presuming that the GIS provides web
>>>>>>>>>services, and that you will call their web methods with a web
>>>>>>>>>client that you write, and that one of those web methods will
>>>>>>>>>return a datatype of XmlDocument.
>>>>>>>>>
>>>>>>>>>4. If so, you can use the method below.
>>>>>>>>>
>>>>>>>>>To me, it sounds like your real job is to verify the scenario I
>>>>>>>>>outlined in (3).   I mean, is this GIS being offered via the web?
>>>>>>>>>Or is it set up by someone in house?
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>Bryan Dickerson wrote:
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>Ok, here's the full scope of the problem: I am trying to work with
>>>>>>>>>>a 3rd party product called GIS that is essentially a java-based
>>>>>>>>>>EDI product and the documentation and 'technical assistants' (term
>>>>>>>>>>used loosely) say that 'it will use SOAP to call my (.Net) web
>>>>>>>>>>service and it will pass an XML Document to it in the SOAP Body
>>>>>>>>>>and that XML document is what my web service is supposed to work
>>>>>>>>>>with.'  Does that make any sense?  I'm not sure that it does to
>>>>>>>>>>me, but it seems the best way that I can understand it.
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>"John Bailo" <jaba***@texeme.com> wrote in message
>>>>>>>>>>news:43F0C0E2.6040302@texeme.com...
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>First of all forget about SOAP -- SOAP is an encapsulation method
>>>>>>>>>>>that makes all datatypes available.  It is a messaging protocol
>>>>>>>>>>>basically. The fact that it uses XML has nothing to do with what
>>>>>>>>>>>you're asking, which is "how do I retrieve the results of a web
>>>>>>>>>>>method whose return type is XmlDocument".
>>>>>>>>>>>
>>>>>>>>>>>Here is the method I use:
>>>>>>>>>>>
>>>>>>>>>>>XmlDocument dom = new XmlDocument();
>>>>>>>>>>>
>>>>>>>>>>>//this is a web method that returns a list of clients as an
>>>>>>>>>>>XmlDocument
>>>>>>>>>>>XmlNode lcx = lc.ClientList();
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>//this turns the XmlDocument from my webservice into
>>>>>>>>>>>//something I can use locally
>>>>>>>>>>>dom.AppendChild(dom.ImportNode(
>>>>>>>>>>>lcx
>>>>>>>>>>>,true));
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>Bryan Dickerson wrote:
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>Maybe I didn't phrase the question correctly.  If my web service
>>>>>>>>>>>>is called via SOAP and an XML document is sent in the SOAP
>>>>>>>>>>>>message body, what object would I instantiate and what property
>>>>>>>>>>>>would I need to get that XML string so that I could do something
>>>>>>>>>>>>with it?
>>>>>>>>>>
>>>>>>>>>>
>>
Author
14 Feb 2006 6:21 PM
John Bailo
Look at my example:

   <soap:Body>
      <HelloWorld xmlns="http://tempuri.org/">
        <i>SOME INTEGER</i>
      </HelloWorld>
    </soap:Body>


HelloWorld is the web method.
"i" is the input parameter

In your case I don't see a web method mentioned.   You are just sending
the input parameter "PurchaseOrder".

I would think you would need to say

<SOAP-ENV:Body><MYMETHOD xmlns="http://someuri.com">
<PurchaseOrder><OrderHeader>
<BuyerOrderNumber>TestPo1</BuyerOrderNumber>...


Bryan Dickerson wrote:
Show quoteHide quote
> I know that there is a SOAP Body in the GIS.  This is what it looks like:
> --------------------------------
> <SOAP-ENV:Envelope
> xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"><SOAP-ENV:Body><PurchaseOrder><OrderHeader><BuyerOrderNumber>TestPo1</BuyerOrderNumber>...
> --------------------------------
> I'm trying to get to the "<PurchaseOrder><OrderHeader>..." part.
>
> My boss just emailed me and said that I need to modify my Web service to be
> this...
> -------------------------------
>    <WebMethod(),
> SoapDocumentMethod(Action:="http://www.source.com/webservices/CreateSourceOrder",
> _
>      Use:=Description.SoapBindingUse.Literal,
> ParameterStyle:=SoapParameterStyle.Bare)> _
>    Public Function
> CreateSourceOrder(<XmlElement([Namespace]:="http://www.source.com/webservices",
> IsNullable:=True)> _
>                                      ByVal PurchaseOrder As String) As
> String
> or ...
>    <WebMethod(),
> SoapDocumentMethod(Action:="http://www.source.com/webservices/CreateSourceOrder",
> _
>      Use:=Description.SoapBindingUse.Literal,
> ParameterStyle:=SoapParameterStyle.Bare)> _
>    Public Function
> CreateSourceOrder(<XmlElement([Namespace]:="http://www.source.com/webservices",
> IsNullable:=True)> _
>                                      ByVal PurchaseOrder As Xml.XmlNode) As
> String
> -------------------------------
> Neither worked. For right now, I have code that tests to see if the string
> or XmlNode has anything in it and both came back saying they were empty or
> null. Does this help clarify anything?
>
>
> "John Bailo" <jaba***@texeme.com> wrote in message
> news:43F10754.8060609@texeme.com...
>
>>Ok, now I understand why you ask about SOAP.
>>
>>Your server (GIS) is using a script that is actually putting together a
>>raw SOAP message direct to the web service.
>>
>>If you run your web method in VS.NET (run the service, click on the
>>method) you will see how to call the service with SOAP and what the
>>response of the web service will be.
>>
>>So, I wrote a very quick and dirty web service that takes an int as input
>>and adds that to a string.
>>
>>[WebMethod]
>>public string HelloWorld(int i)
>>{
>>return "Hello World " + i.ToString();
>>}
>>
>>Here is how VS.NET says I should call that service:
>>
>>POST /test2/Service1.asmx HTTP/1.1
>>Host: localhost
>>Content-Type: text/xml; charset=utf-8
>>Content-Length: length
>>SOAPAction: "http://tempuri.org/HelloWorld"
>>
>><?xml version="1.0" encoding="utf-8"?>
>><soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>>xmlns:xsd="http://www.w3.org/2001/XMLSchema"
>>xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
>>  <soap:Body>
>>    <HelloWorld xmlns="http://tempuri.org/">
>>      <i>int</i>
>>    </HelloWorld>
>>  </soap:Body>
>></soap:Envelope>
>>
>>So, what you need to do is to find out if there is a [SOAPBODY] in your
>>GIS scripting language and code up the soap request message from VS.NET
>>
>>
>>Bryan Dickerson wrote:
>>
>>>I'm not worried about GIS receiving my web services' output; I need to
>>>find GIS' input to my web service program.  And yes, I can view my web
>>>service as it's deployed on the server box
>>>(http://servername/Service1.asmx).  The GIS script sets a few internal
>>>variables (SOAPRequestURL=http://localhost/Service1.asmx,
>>>SOAP_Action=http://namespace/webservices/WebMethod,
>>>SOAPEnvNSURI=http://schemas.xmlsoap.org/soap/envelope) then just 'calls'
>>>the web service specified.
>>>
>>>"John Bailo" <jaba***@texeme.com> wrote in message
>>>news:43F0EC91.7040501@texeme.com...
>>>
>>>
>>>>Yes, but even still, there has to be a way of retrieving a variable from
>>>>a web method right?
>>>>
>>>>I mean, if you wrote a web method that returned an integer:
>>>>
>>>>int myMethod()
>>>>{
>>>>
>>>>return 1;
>>>>
>>>>}
>>>>
>>>>How would you get the value of "1" in the script language?
>>>>
>>>>Also, are you saying that you can't reach your development machine across
>>>>the network from the GIS?   Is there no way to say
>>>>
>>>>URL="http://mymachine.mycompany.com/Webservice1.asmx" ?
>>>>
>>>>
>>>>
>>>>Bryan Dickerson wrote:
>>>>
>>>>
>>>>>I wish it were that easy.  The script code is an XML-based language that
>>>>>looks nothing like VB or C#.  Plus the GIS Server is actually running on
>>>>>another box, so I have to build my WS and deploy it to the GIS server
>>>>>box, which is running on Win 2K3, then set a test in motion from the GIS
>>>>>menus to see what response I get from my WS.
>>>>>
>>>>>"John Bailo" <jaba***@texeme.com> wrote in message
>>>>>news:43F0E71A.9000206@texeme.com...
>>>>>
>>>>>
>>>>>
>>>>>>What does the script code look like on the GIS that you use to call the
>>>>>>.NET web service?
>>>>>>
>>>>>>Basically, I would expect that you create an object that represents the
>>>>>>web service, and your web method should return a variable of type
>>>>>>XmlDocument to the GIS script.
>>>>>>
>>>>>>FYI, you know, that you can put your web service into debug mode, and
>>>>>>set breakpoints, so that when the GIS calls it, you can make sure its
>>>>>>being called.
>>>>>>
>>>>>>Bryan Dickerson wrote:
>>>>>>
>>>>>>
>>>>>>
>>>>>>>Close, I'm not able to see the XMLDocument that is passed.  Where
>>>>>>>should I be looking?  The Sterling Commerce folks say that I should be
>>>>>>>looking in the SOAP Body, but I don't understand how that translates
>>>>>>>to an object that I should instantiate.
>>>>>>>
>>>>>>>"John Bailo" <jaba***@texeme.com> wrote in message
>>>>>>>news:43F0E145.3090300@texeme.com...
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>So, the GIS consumes your web service which sends it an XmlDocument?
>>>>>>>>
>>>>>>>>That is, your web method is something like:
>>>>>>>>
>>>>>>>>
>>>>>>>>[WebMethod]
>>>>>>>>public XmlDocument myMethod(int i)
>>>>>>>>{
>>>>>>>>
>>>>>>>>
>>>>>>>>XmlDocument xd;
>>>>>>>>
>>>>>>>>[...]
>>>>>>>>
>>>>>>>>return xd;
>>>>>>>>
>>>>>>>>}
>>>>>>>>
>>>>>>>>And you are not able to retrieve xd in the GIS script?
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>Bryan Dickerson wrote:
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>3.  My scenario is the reverse of what you describe.  GIS is Gentran
>>>>>>>>>Integration Suite by Sterling Commerce.  It is a java-based server
>>>>>>>>
>>>>>>>>>from which I am trying to call my .Net web service, i.e., GIS is the
>>>>>>>>
>>>>>>>>
>>>>>>>>>consumer. Actually, I am able to call my web service from scripts in
>>>>>>>>>GIS, but (I'm the programmer on both ends, which pits me against
>>>>>>>>>myself--is there a higher meaning to this?!) from within my .Net web
>>>>>>>>>service, I am not able to figure out where the XML document, that is
>>>>>>>>>supposedly within the SOAP Body, per the Technical Assistants from
>>>>>>>>>Sterling Commerce, is.  If I could figure that out, I would be home
>>>>>>>>>free. I am able to get some response from my web service program,
>>>>>>>>>just not the one that I want.
>>>>>>>>>
>>>>>>>>>BTW, thanx for your patience!
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>"John Bailo" <jaba***@texeme.com> wrote in message
>>>>>>>>>news:43F0CD68.30104@texeme.com...
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>1. All web services are called using SOAP -- which uses XML.  I
>>>>>>>>>>really wouldn't focus on that.  It's background.
>>>>>>>>>>
>>>>>>>>>>2. java and .NET encapsulate and consume services in the same way.
>>>>>>>>>>A c# client can consume a java web service, and vice versa.
>>>>>>>>>>
>>>>>>>>>>3. I think that they are confusing "web service" with "web
>>>>>>>>>>consumer" or "client".   I am presuming that the GIS provides web
>>>>>>>>>>services, and that you will call their web methods with a web
>>>>>>>>>>client that you write, and that one of those web methods will
>>>>>>>>>>return a datatype of XmlDocument.
>>>>>>>>>>
>>>>>>>>>>4. If so, you can use the method below.
>>>>>>>>>>
>>>>>>>>>>To me, it sounds like your real job is to verify the scenario I
>>>>>>>>>>outlined in (3).   I mean, is this GIS being offered via the web?
>>>>>>>>>>Or is it set up by someone in house?
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>Bryan Dickerson wrote:
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>Ok, here's the full scope of the problem: I am trying to work with
>>>>>>>>>>>a 3rd party product called GIS that is essentially a java-based
>>>>>>>>>>>EDI product and the documentation and 'technical assistants' (term
>>>>>>>>>>>used loosely) say that 'it will use SOAP to call my (.Net) web
>>>>>>>>>>>service and it will pass an XML Document to it in the SOAP Body
>>>>>>>>>>>and that XML document is what my web service is supposed to work
>>>>>>>>>>>with.'  Does that make any sense?  I'm not sure that it does to
>>>>>>>>>>>me, but it seems the best way that I can understand it.
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>"John Bailo" <jaba***@texeme.com> wrote in message
>>>>>>>>>>>news:43F0C0E2.6040302@texeme.com...
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>First of all forget about SOAP -- SOAP is an encapsulation method
>>>>>>>>>>>>that makes all datatypes available.  It is a messaging protocol
>>>>>>>>>>>>basically. The fact that it uses XML has nothing to do with what
>>>>>>>>>>>>you're asking, which is "how do I retrieve the results of a web
>>>>>>>>>>>>method whose return type is XmlDocument".
>>>>>>>>>>>>
>>>>>>>>>>>>Here is the method I use:
>>>>>>>>>>>>
>>>>>>>>>>>>XmlDocument dom = new XmlDocument();
>>>>>>>>>>>>
>>>>>>>>>>>>//this is a web method that returns a list of clients as an
>>>>>>>>>>>>XmlDocument
>>>>>>>>>>>>XmlNode lcx = lc.ClientList();
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>//this turns the XmlDocument from my webservice into
>>>>>>>>>>>>//something I can use locally
>>>>>>>>>>>>dom.AppendChild(dom.ImportNode(
>>>>>>>>>>>>lcx
>>>>>>>>>>>>,true));
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>Bryan Dickerson wrote:
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>Maybe I didn't phrase the question correctly.  If my web service
>>>>>>>>>>>>>is called via SOAP and an XML document is sent in the SOAP
>>>>>>>>>>>>>message body, what object would I instantiate and what property
>>>>>>>>>>>>>would I need to get that XML string so that I could do something
>>>>>>>>>>>>>with it?
>>>>>>>>>>>
>>>>>>>>>>>
>
Author
15 Feb 2006 5:50 AM
Nick Malik [Microsoft]
Show quote Hide quote
"John Bailo" <jaba***@texeme.com> wrote in message
news:43F21FB3.20807@texeme.com...
> Look at my example:
>
>   <soap:Body>
>      <HelloWorld xmlns="http://tempuri.org/">
>        <i>SOME INTEGER</i>
>      </HelloWorld>
>    </soap:Body>
>
>
> HelloWorld is the web method.
> "i" is the input parameter
>
> In your case I don't see a web method mentioned.   You are just sending
> the input parameter "PurchaseOrder".

Hi John,

In a messaging system, the web method IS the data.  It is perfectly
rational, therefore, for the web method to be "PurchaseOrder" as an
assertion of fact, as opposed to a command.  Perhaps that is what the OP is
looking at?

--- Nick
Author
15 Feb 2006 6:26 AM
John Bailo
Nick Malik [Microsoft] wrote:

> In a messaging system, the web method IS the data.  It is perfectly
> rational, therefore, for the web method to be "PurchaseOrder" as an
> assertion of fact, as opposed to a command.  Perhaps that is what the OP is
> looking at?

I am agreeing with that -- but in this case PurchaseOrder is not the web
method, as you can see in the code he posted, it's an input parameter.
The value of that input parameter is a string of xml beginning with
<OrderHeader>.   His web method is CreateSourceOrder.

So he needs to write his soap body (I think) as:


<SOAP-ENV:Body><CreateSourceOrder xmlns="http://someuri.com">
<PurchaseOrder><OrderHeader>
<BuyerOrderNumber>TestPo1</BuyerOrderNumber>...
Author
15 Feb 2006 3:19 PM
Bryan Dickerson
Even though I'm the programmer for both the GIS software that is producing
the SOAP Message and the .Net web service that is consuming the SOAP
message, I can't make the XML start with <CreateSourceOrder
xmlns:="http://someuri.com"> (it's a long story, trust me).  Besides, from
my perspective, the .Net program is MUCH more flexible.

Back to the point at hand, my boss recommended that I include
"ParameterStyle:=SoapParameterStyle.Bare" in the <WebMethod ...> block to
anticipate the XML starting with <PurchaseOrder> instead of
<CreateSourceOrder ...>


Show quoteHide quote
"John Bailo" <jaba***@texeme.com> wrote in message
news:43F2C98E.9050508@texeme.com...
> Nick Malik [Microsoft] wrote:
>
>> In a messaging system, the web method IS the data.  It is perfectly
>> rational, therefore, for the web method to be "PurchaseOrder" as an
>> assertion of fact, as opposed to a command.  Perhaps that is what the OP
>> is looking at?
>
> I am agreeing with that -- but in this case PurchaseOrder is not the web
> method, as you can see in the code he posted, it's an input parameter. The
> value of that input parameter is a string of xml beginning with
> <OrderHeader>.   His web method is CreateSourceOrder.
>
> So he needs to write his soap body (I think) as:
>
>
> <SOAP-ENV:Body><CreateSourceOrder xmlns="http://someuri.com">
> <PurchaseOrder><OrderHeader>
> <BuyerOrderNumber>TestPo1</BuyerOrderNumber>...
>
>
Author
16 Feb 2006 3:07 PM
Nick Malik [Microsoft]
Show quote Hide quote
"Bryan Dickerson" <txprp***@netscape.net> wrote in message
news:%23QK5sMkMGHA.2668@tk2msftngp13.phx.gbl...
> Even though I'm the programmer for both the GIS software that is producing
> the SOAP Message and the .Net web service that is consuming the SOAP
> message, I can't make the XML start with <CreateSourceOrder
> xmlns:="http://someuri.com"> (it's a long story, trust me).  Besides, from
> my perspective, the .Net program is MUCH more flexible.
>
> Back to the point at hand, my boss recommended that I include
> "ParameterStyle:=SoapParameterStyle.Bare" in the <WebMethod ...> block to
> anticipate the XML starting with <PurchaseOrder> instead of
> <CreateSourceOrder ...>
>
>

Hello Bryan,

Does your GIS software have any sample code of .Net web services that they
have created?  Are you really the first person in your situation?  You may
want to also contact other members of the dev community for that package to
see if other folks have solved this problem.  I'm thinking you may benefit
from experience in that tool as well.

..Net web services can be very simple to develop, but they may not be the
most obvious way to do what you are doing.  You may want to consider using
the SOAP library with the WSE extensions instead of VS-generated .Net Web
Services to create your service.  It's not as "automatic" but you get a good
bit more 'direct coding'.  Sample code exists on various sites and blogs.

I hope that helps.  Good luck.


--
--- Nick Malik [Microsoft]
    MCSD, CFPS, Certified Scrummaster
    http://blogs.msdn.com/nickmalik

Disclaimer: Opinions expressed in this forum are my own, and not
representative of my employer.
   I do not answer questions on behalf of my employer.  I'm just a
programmer helping programmers.
--
Author
16 Feb 2006 4:13 PM
Bryan Dickerson
As you might expect, the sales reps for Sterling Commerce said, "Oh, yea,
..Net web services will integrate very easily with GIS"  and the technical
support reps are giving us the response equivalent of a
"deer-in-the-headlights"--as if they had never heard of Microsoft's .Net
framework before.  They even have user forums on the customer support
portion of their website and I have had 1 pseudo-intelligent response when I
posted this question.  It turns out, though, that of all the built-in
scripts that come with the product, this guy was using one that was
'retired'--pretty encouraging--NOT!.  When I keep asking if anyone in their
technical support departments is .Net-savvy, they just deflect the question
with "well if we're talking about SOAP and Web Services, we don't need to
know the .Net Framework."  Well, technically that is correct, but from
practical experience, I'm finding out that it ISN'T as "Simple" [pun
intended] as was purported.

So that means that you guys and this NG are my best 'support'.

Show quoteHide quote
"Nick Malik [Microsoft]" <nickmalik@hotmail.nospam.com> wrote in message
news:z56dnVbI7IHGCWnenZ2dnUVZ_vudnZ2d@comcast.com...
> "Bryan Dickerson" <txprp***@netscape.net> wrote in message
> news:%23QK5sMkMGHA.2668@tk2msftngp13.phx.gbl...
>> Even though I'm the programmer for both the GIS software that is
>> producing the SOAP Message and the .Net web service that is consuming the
>> SOAP message, I can't make the XML start with <CreateSourceOrder
>> xmlns:="http://someuri.com"> (it's a long story, trust me).  Besides,
>> from my perspective, the .Net program is MUCH more flexible.
>>
>> Back to the point at hand, my boss recommended that I include
>> "ParameterStyle:=SoapParameterStyle.Bare" in the <WebMethod ...> block to
>> anticipate the XML starting with <PurchaseOrder> instead of
>> <CreateSourceOrder ...>
>>
>>
>
> Hello Bryan,
>
> Does your GIS software have any sample code of .Net web services that they
> have created?  Are you really the first person in your situation?  You may
> want to also contact other members of the dev community for that package
> to see if other folks have solved this problem.  I'm thinking you may
> benefit from experience in that tool as well.
>
> .Net web services can be very simple to develop, but they may not be the
> most obvious way to do what you are doing.  You may want to consider using
> the SOAP library with the WSE extensions instead of VS-generated .Net Web
> Services to create your service.  It's not as "automatic" but you get a
> good bit more 'direct coding'.  Sample code exists on various sites and
> blogs.
>
> I hope that helps.  Good luck.
>
>
> --
> --- Nick Malik [Microsoft]
>    MCSD, CFPS, Certified Scrummaster
>    http://blogs.msdn.com/nickmalik
>
> Disclaimer: Opinions expressed in this forum are my own, and not
> representative of my employer.
>   I do not answer questions on behalf of my employer.  I'm just a
> programmer helping programmers.
> --
>
>
Author
16 Feb 2006 4:50 PM
John Bailo
Well, you might take an approach of not mentioning .NET  A web service
SOAP message is a standard protocol.   Maybe they are a java shop and
would understand that better.   If worse comes to worse, you could
always download Eclipse/Tomcat and put together a simple java based web
service to test with...

Either way, they should tell you how to compose a standard SOAP message
using their scripting language.

BTW -- I saw your comment about not putting the method name in the
SOAP-Body, and I really thing that's not possible.  The method name is
contained w/in the SOAP-Body -- otherwise, how does the web service know
which method to use for the parameters?

If it were me, I'd try that....


Bryan Dickerson wrote:
Show quoteHide quote
> As you might expect, the sales reps for Sterling Commerce said, "Oh, yea,
> .Net web services will integrate very easily with GIS"  and the technical
> support reps are giving us the response equivalent of a
> "deer-in-the-headlights"--as if they had never heard of Microsoft's .Net
> framework before.  They even have user forums on the customer support
> portion of their website and I have had 1 pseudo-intelligent response when I
> posted this question.  It turns out, though, that of all the built-in
> scripts that come with the product, this guy was using one that was
> 'retired'--pretty encouraging--NOT!.  When I keep asking if anyone in their
> technical support departments is .Net-savvy, they just deflect the question
> with "well if we're talking about SOAP and Web Services, we don't need to
> know the .Net Framework."  Well, technically that is correct, but from
> practical experience, I'm finding out that it ISN'T as "Simple" [pun
> intended] as was purported.
>
> So that means that you guys and this NG are my best 'support'.
>
> "Nick Malik [Microsoft]" <nickmalik@hotmail.nospam.com> wrote in message
> news:z56dnVbI7IHGCWnenZ2dnUVZ_vudnZ2d@comcast.com...
>
>>"Bryan Dickerson" <txprp***@netscape.net> wrote in message
>>news:%23QK5sMkMGHA.2668@tk2msftngp13.phx.gbl...
>>
>>>Even though I'm the programmer for both the GIS software that is
>>>producing the SOAP Message and the .Net web service that is consuming the
>>>SOAP message, I can't make the XML start with <CreateSourceOrder
>>>xmlns:="http://someuri.com"> (it's a long story, trust me).  Besides,
>>>from my perspective, the .Net program is MUCH more flexible.
>>>
>>>Back to the point at hand, my boss recommended that I include
>>>"ParameterStyle:=SoapParameterStyle.Bare" in the <WebMethod ...> block to
>>>anticipate the XML starting with <PurchaseOrder> instead of
>>><CreateSourceOrder ...>
>>>
>>>
>>Hello Bryan,
>>
>>Does your GIS software have any sample code of .Net web services that they
>>have created?  Are you really the first person in your situation?  You may
>>want to also contact other members of the dev community for that package
>>to see if other folks have solved this problem.  I'm thinking you may
>>benefit from experience in that tool as well.
>>
>>.Net web services can be very simple to develop, but they may not be the
>>most obvious way to do what you are doing.  You may want to consider using
>>the SOAP library with the WSE extensions instead of VS-generated .Net Web
>>Services to create your service.  It's not as "automatic" but you get a
>>good bit more 'direct coding'.  Sample code exists on various sites and
>>blogs.
>>
>>I hope that helps.  Good luck.
>>
>>
>>--
>>--- Nick Malik [Microsoft]
>>   MCSD, CFPS, Certified Scrummaster
>>   http://blogs.msdn.com/nickmalik
>>
>>Disclaimer: Opinions expressed in this forum are my own, and not
>>representative of my employer.
>>  I do not answer questions on behalf of my employer.  I'm just a
>>programmer helping programmers.
>>--
>>
>>
>
>
>
Author
17 Feb 2006 6:50 AM
Nick Malik [Microsoft]
"Bryan Dickerson" <txprp***@netscape.net> wrote in message
news:%23scDtPxMGHA.2628@TK2MSFTNGP15.phx.gbl...
>
> So that means that you guys and this NG are my best 'support'.
>

I have another idea.

Can you write a .Net app that you can share that will make the exact call
that your GIS software does?  If so, you can post it and I (and/or others)
can try to help by writing the service side to catch the call.

--- Nick Malik [Microsoft]
    MCSD, CFPS, Certified Scrummaster
    http://blogs.msdn.com/nickmalik

Disclaimer: Opinions expressed in this forum are my own, and not
representative of my employer.
   I do not answer questions on behalf of my employer.  I'm just a
programmer helping programmers.
--
Author
17 Feb 2006 7:04 PM
Bryan Dickerson
I don't know if I could do that, since I'm still learning the intricacies of
SOAP.  I've written clients to test my web service, and the marketing from
Microsoft would suggest that it 'behind the scenes', the CLR is using SOAP
or some variation.  So it's possible that I've already done so and not known
it!

Show quoteHide quote
"Nick Malik [Microsoft]" <nickmalik@hotmail.nospam.com> wrote in message
news:0a2dnfZk8pb57GjenZ2dnUVZ_sOdnZ2d@comcast.com...
> "Bryan Dickerson" <txprp***@netscape.net> wrote in message
> news:%23scDtPxMGHA.2628@TK2MSFTNGP15.phx.gbl...
>>
>> So that means that you guys and this NG are my best 'support'.
>>
>
> I have another idea.
>
> Can you write a .Net app that you can share that will make the exact call
> that your GIS software does?  If so, you can post it and I (and/or others)
> can try to help by writing the service side to catch the call.
>
> --- Nick Malik [Microsoft]
>    MCSD, CFPS, Certified Scrummaster
>    http://blogs.msdn.com/nickmalik
>
> Disclaimer: Opinions expressed in this forum are my own, and not
> representative of my employer.
>   I do not answer questions on behalf of my employer.  I'm just a
> programmer helping programmers.
> --
>
>
Author
18 Feb 2006 6:42 AM
Nick Malik [Microsoft]
Show quote Hide quote
> "Nick Malik [Microsoft]" <nickmalik@hotmail.nospam.com> wrote in message
> news:0a2dnfZk8pb57GjenZ2dnUVZ_sOdnZ2d@comcast.com...
>> "Bryan Dickerson" <txprp***@netscape.net> wrote in message
>> news:%23scDtPxMGHA.2628@TK2MSFTNGP15.phx.gbl...
>>>
>>> So that means that you guys and this NG are my best 'support'.
>>>
>>
>> I have another idea.
>>
>> Can you write a .Net app that you can share that will make the exact call
>> that your GIS software does?  If so, you can post it and I (and/or
>> others) can try to help by writing the service side to catch the call.
>>


"Bryan Dickerson" <txprp***@netscape.net> wrote in message
news:OAeSNU$MGHA.1288@TK2MSFTNGP09.phx.gbl...
>I don't know if I could do that, since I'm still learning the intricacies
>of SOAP.  I've written clients to test my web service, and the marketing
>from Microsoft would suggest that it 'behind the scenes', the CLR is using
>SOAP or some variation.  So it's possible that I've already done so and not
>known it!
>

The problem is this: it is very difficult for me to help you to solve your
problem if I don't have a small but functional app that performs the call.
Note that the Microsoft apps you've been writing, by definition, deliver a
different call (since they work while the call from the GIS app does not).

--
--- Nick Malik [Microsoft]
    MCSD, CFPS, Certified Scrummaster
    http://blogs.msdn.com/nickmalik

Disclaimer: Opinions expressed in this forum are my own, and not
representative of my employer.
   I do not answer questions on behalf of my employer.  I'm just a
programmer helping programmers.
--
Author
20 Feb 2006 4:51 PM
Bryan Dickerson
Please understand that appreciate your (and everyone else's) advice VERY
MUCH and it has been very helpful.  The problem, ultimately, is me--I'm
learning .NET, SOAP & this )(*##@$%^$ GIS product all at the same time (I
have a good mind to sharpen my resume, but I'm daunted by the fact that I
have only been using VB.Net for a few months and most of the jobs that would
interest me would want a lot of .Net experience).  I have successfully
written clients to consume my web service, but I didn't think they would be
very helpful as this @#$!@#$%#$%! GIS program calls the web service very
differently.  Ultimately, I think that will be good as it will give me a
more 'generic' picture of how web services are called, but right now in the
middle of the forest, it's just very frustrating.  Enough pity party.

On the practical side, there is some good news: I am finally getting some
output in GIS from my web service--as I said in an earlier post, right now,
I'm just having the web service echo back to GIS the XML that was passed to
it.  I did some 'tweaking' to the test XML file that I have been using to
add the web method as the first tag, like so:

<Webmethodname xmlns="somenamespace.com">
    <PurchaseOrder>
        <OrderHeader>
        </OrderHeader>
        <OrderBody>
        </OrderBody>
    </PurchaseOrder>
</Webmethodname>

I know that this will mean that I will have to re-program the GIS scripts,
which I DO NOT want to do, but at this point, I'm just trying to get
something to work. The bad news is that it's only reading a portion of the
XML.  As I indicated above, the PurchaseOrder node has 2 child nodes, but my
web service is only getting the OrderHeader child node.  Does this ring any
bells or raise any flags.

Show quoteHide quote
>
> The problem is this: it is very difficult for me to help you to solve your
> problem if I don't have a small but functional app that performs the call.
> Note that the Microsoft apps you've been writing, by definition, deliver a
> different call (since they work while the call from the GIS app does not).
>
> --
> --- Nick Malik [Microsoft]
>    MCSD, CFPS, Certified Scrummaster
>    http://blogs.msdn.com/nickmalik
>
Author
20 Feb 2006 9:07 PM
Bryan Dickerson
Has anyone used this on a Webmethod definition?

SoapDocumentMethod(ParameterStyle:=SoapParameterStyle.Bare)

What does this specify?  I've read the help files on it, but the lingo used
doesn't make sense to me.


Show quoteHide quote
"Bryan Dickerson" <txprp***@netscape.net> wrote in message
news:O9POx3jNGHA.3556@TK2MSFTNGP10.phx.gbl...
> Please understand that appreciate your (and everyone else's) advice VERY
> MUCH and it has been very helpful.  The problem, ultimately, is me--I'm
> learning .NET, SOAP & this )(*##@$%^$ GIS product all at the same time (I
> have a good mind to sharpen my resume, but I'm daunted by the fact that I
> have only been using VB.Net for a few months and most of the jobs that
> would interest me would want a lot of .Net experience).  I have
> successfully written clients to consume my web service, but I didn't think
> they would be very helpful as this @#$!@#$%#$%! GIS program calls the web
> service very differently.  Ultimately, I think that will be good as it
> will give me a more 'generic' picture of how web services are called, but
> right now in the middle of the forest, it's just very frustrating.  Enough
> pity party.
>
> On the practical side, there is some good news: I am finally getting some
> output in GIS from my web service--as I said in an earlier post, right
> now, I'm just having the web service echo back to GIS the XML that was
> passed to it.  I did some 'tweaking' to the test XML file that I have been
> using to add the web method as the first tag, like so:
>
> <Webmethodname xmlns="somenamespace.com">
>    <PurchaseOrder>
>        <OrderHeader>
>        </OrderHeader>
>        <OrderBody>
>        </OrderBody>
>    </PurchaseOrder>
> </Webmethodname>
>
> I know that this will mean that I will have to re-program the GIS scripts,
> which I DO NOT want to do, but at this point, I'm just trying to get
> something to work. The bad news is that it's only reading a portion of the
> XML.  As I indicated above, the PurchaseOrder node has 2 child nodes, but
> my web service is only getting the OrderHeader child node.  Does this ring
> any bells or raise any flags.
>
>>
>> The problem is this: it is very difficult for me to help you to solve
>> your problem if I don't have a small but functional app that performs the
>> call.
>> Note that the Microsoft apps you've been writing, by definition, deliver
>> a different call (since they work while the call from the GIS app does
>> not).
>>
>> --
>> --- Nick Malik [Microsoft]
>>    MCSD, CFPS, Certified Scrummaster
>>    http://blogs.msdn.com/nickmalik
>>
>
>
Author
13 Feb 2006 6:49 PM
Bryan Dickerson
I'm a VB guy, but I think I can decipher most of this.  What kind of object
is "lc"?

Show quoteHide quote
"John Bailo" <jaba***@texeme.com> wrote in message
news:43F0C0E2.6040302@texeme.com...
>
> First of all forget about SOAP -- SOAP is an encapsulation method that
> makes all datatypes available.  It is a messaging protocol basically. The
> fact that it uses XML has nothing to do with what you're asking, which is
> "how do I retrieve the results of a web method whose return type is
> XmlDocument".
>
> Here is the method I use:
>
> XmlDocument dom = new XmlDocument();
>
> //this is a web method that returns a list of clients as an XmlDocument
> XmlNode lcx = lc.ClientList();
>
>
> //this turns the XmlDocument from my webservice into
> //something I can use locally
> dom.AppendChild(dom.ImportNode(
> lcx
> ,true));
>
>
>
>
> Bryan Dickerson wrote:
>> Maybe I didn't phrase the question correctly.  If my web service is
>> called via SOAP and an XML document is sent in the SOAP message body,
>> what object would I instantiate and what property would I need to get
>> that XML string so that I could do something with it?
Author
13 Feb 2006 6:52 PM
John Bailo
Sorry, that's my web service object (just the standard created when you
create a web service proxy).   It's my own variable.

ClientList() is a method on my web service which returns a list of
clients as an XmlDocument.

I am just assuming that your GIS web service is doing a similar thing.


Bryan Dickerson wrote:
Show quoteHide quote
> I'm a VB guy, but I think I can decipher most of this.  What kind of object
> is "lc"?
>
> "John Bailo" <jaba***@texeme.com> wrote in message
> news:43F0C0E2.6040302@texeme.com...
>
>>First of all forget about SOAP -- SOAP is an encapsulation method that
>>makes all datatypes available.  It is a messaging protocol basically. The
>>fact that it uses XML has nothing to do with what you're asking, which is
>>"how do I retrieve the results of a web method whose return type is
>>XmlDocument".
>>
>>Here is the method I use:
>>
>>XmlDocument dom = new XmlDocument();
>>
>>//this is a web method that returns a list of clients as an XmlDocument
>>XmlNode lcx = lc.ClientList();
>>
>>
>>//this turns the XmlDocument from my webservice into
>>//something I can use locally
>>dom.AppendChild(dom.ImportNode(
>>lcx
>>,true));
>>
>>
>>
>>
>>Bryan Dickerson wrote:
>>
>>>Maybe I didn't phrase the question correctly.  If my web service is
>>>called via SOAP and an XML document is sent in the SOAP message body,
>>>what object would I instantiate and what property would I need to get
>>>that XML string so that I could do something with it?
>
>
>