You are viewing a plain text version of this content. The canonical link for it is here.
Posted to soap-user@ws.apache.org by Cory Isaacson <ci...@capita2.com> on 2000/09/01 01:15:26 UTC

Re: Need details on setting up server for SOAP using own HTTP code (without Apache/IIS/etc.)

Derek,

There are some sketchy answers on-line at the SOAP site. The specifics
depend on the Application Server you are using, but the instructions for
TomCat are fairly complete. I have made it work with WebSphere, so other
servers will work as well.

The basic requirements are:

1) A Java-Servlet capable Application Server needs to be configured, along
with a Web server which routes servlet calls to the Application Server;
2) Download the SOAP 2.0 version;
3) Set up the org.soap.server.http.RPCRouterServlet so that it can be called
from your Application Server. I a gave mine a logical name of "rpcrouter".
You can test it through a Brower by putting the path required by your app
server, the 'rpcrouter' and you should get an error message that the
RPCRouterServlet cannot handle 'GET' messages, only 'POST' calls. This is a
good basic test of the installation so far.
4) Then you can look under the soap\webapps\soap directory, and open the
index.html. This is the SOAP admin tool which allows you to register
Provider classes (which do the work on the server side). See the AddressBook
readme file and DeploymentDescriptor.xml file for the data required for each
example. I found the stockquote example the easiest to run, eventhough the
quote server doesn't usually work, but you can see if you can make a SOAP
call correctly. The AddressBook works as well, but be sure when you input
the "x:address" and "x:phone" localpart parameters into the admin screen
that you leave the "x:" off (i.e., it should just be "address").

Hope that helps.

Cory
----- Original Message -----
From: "Derek Brown" <db...@emeta.com>
To: <so...@xml.apache.org>
Sent: Thursday, August 31, 2000 3:41 PM
Subject: Need details on setting up server for SOAP using own HTTP code
(without Apache/IIS/etc.)


> I'm investigating using SOAP to allow two standalone applications
> (independent of Apache/IIS/etc.) to make requests of each other
> (so they'd function as both client and server).
>
> I've read a lot of docs online and looked through numerous
> example code (address book, calculate area/geometry, etc.), but
> am having trouble understanding how to set the app up as a
> server.  The bulk of the documentation seems oriented towards
> using JSP/servlets/etc., but even then I still haven't seen
> exactly what needs to be done to get the server-side set up.
>
> Looking at rpcrouter.jsp, it looks like it would receive the
> request from a web server and hand it off to whatever class had
> been registered to handle it (and then send back the reply).  I
> assume the majority of this code can be inserted into any code I
> write to serve the HTTP server function itself.
>
> So my questions are:
>
> o what does one need to do to SOAP-enable one's own HTTP server?
> That is, after the easy part of implementing the HTTP protocol,
> what needs to be done to get the incoming SOAP request handled?
>
> o are the server-side classes that actually read, hand off to the
> target class, and create SOAP replies a part of the
> org.apache.soap.* packages?
>
> o how does one register the target class (that implements the
> method) with the registry?
>
> o is the client-side as simple as GetAddress makes it look?
>
> Thanks for any answers,
> Derek
>


Re: Need details on setting up server for SOAP using own HTTP code (without Apache/IIS/etc.)

Posted by Cory Isaacson <ci...@capita2.com>.
Derek,

That's the only solution I know of, but as you can see there isn't that much
to RPCRouterServlet as most of the code is embedded in other objects.

Cory
----- Original Message -----
From: "Derek Brown" <db...@emeta.com>
To: <so...@xml.apache.org>
Sent: Friday, September 01, 2000 1:24 PM
Subject: Re: Need details on setting up server for SOAP using own HTTP code
(without Apache/IIS/etc.)


> Thanks for the input.  What I was wondering, though, is how I
> could take the headers and body of an incoming HTTP request
> (coming from the SOAP client), which I'd receive from a socket
> directly, and process it in the manner that
> RPCRouterServlet/rpcrouter.jsp do.
>
> The primary issue is that they both make use of information
> provided with the request by the servlet/JSP frameworks, which
> would not be present in my case.  So the question boils down to
> this- is there a generic class that's been published that routes
> an incoming SOAP HTTP request given only the raw headers and
> body.  The obvious solution is just hacking
> RPCRouterServlet/rpcrouter.jsp to remove the servlet/JSP
> dependencies, but I would think that this would have come up
> before and there'd be a generic solution already done.
>
> Thanks,
> Derek
>
> On Thu, 31 Aug 2000, Cory Isaacson wrote:
>
> > Derek,
> >
> > There are some sketchy answers on-line at the SOAP site. The specifics
> > depend on the Application Server you are using, but the instructions for
> > TomCat are fairly complete. I have made it work with WebSphere, so other
> > servers will work as well.
> >
> > The basic requirements are:
> >
> > 1) A Java-Servlet capable Application Server needs to be configured,
along
> > with a Web server which routes servlet calls to the Application Server;
> > 2) Download the SOAP 2.0 version;
> > 3) Set up the org.soap.server.http.RPCRouterServlet so that it can be
called
> > from your Application Server. I a gave mine a logical name of
"rpcrouter".
> > You can test it through a Brower by putting the path required by your
app
> > server, the 'rpcrouter' and you should get an error message that the
> > RPCRouterServlet cannot handle 'GET' messages, only 'POST' calls. This
is a
> > good basic test of the installation so far.
> > 4) Then you can look under the soap\webapps\soap directory, and open the
> > index.html. This is the SOAP admin tool which allows you to register
> > Provider classes (which do the work on the server side). See the
AddressBook
> > readme file and DeploymentDescriptor.xml file for the data required for
each
> > example. I found the stockquote example the easiest to run, eventhough
the
> > quote server doesn't usually work, but you can see if you can make a
SOAP
> > call correctly. The AddressBook works as well, but be sure when you
input
> > the "x:address" and "x:phone" localpart parameters into the admin screen
> > that you leave the "x:" off (i.e., it should just be "address").
> >
> > Hope that helps.
> >
> > Cory
> > ----- Original Message -----
> > From: "Derek Brown" <db...@emeta.com>
> > To: <so...@xml.apache.org>
> > Sent: Thursday, August 31, 2000 3:41 PM
> > Subject: Need details on setting up server for SOAP using own HTTP code
> > (without Apache/IIS/etc.)
> >
> >
> > > I'm investigating using SOAP to allow two standalone applications
> > > (independent of Apache/IIS/etc.) to make requests of each other
> > > (so they'd function as both client and server).
> > >
> > > I've read a lot of docs online and looked through numerous
> > > example code (address book, calculate area/geometry, etc.), but
> > > am having trouble understanding how to set the app up as a
> > > server.  The bulk of the documentation seems oriented towards
> > > using JSP/servlets/etc., but even then I still haven't seen
> > > exactly what needs to be done to get the server-side set up.
> > >
> > > Looking at rpcrouter.jsp, it looks like it would receive the
> > > request from a web server and hand it off to whatever class had
> > > been registered to handle it (and then send back the reply).  I
> > > assume the majority of this code can be inserted into any code I
> > > write to serve the HTTP server function itself.
> > >
> > > So my questions are:
> > >
> > > o what does one need to do to SOAP-enable one's own HTTP server?
> > > That is, after the easy part of implementing the HTTP protocol,
> > > what needs to be done to get the incoming SOAP request handled?
> > >
> > > o are the server-side classes that actually read, hand off to the
> > > target class, and create SOAP replies a part of the
> > > org.apache.soap.* packages?
> > >
> > > o how does one register the target class (that implements the
> > > method) with the registry?
> > >
> > > o is the client-side as simple as GetAddress makes it look?
> > >
> > > Thanks for any answers,
> > > Derek
> > >
> >
> >
>


Re: Need details on setting up server for SOAP using own HTTP code (without Apache/IIS/etc.)

Posted by Cory Isaacson <ci...@capita2.com>.
Derek,

That's the only solution I know of, but as you can see there isn't that much
to RPCRouterServlet as most of the code is embedded in other objects.

Cory
----- Original Message -----
From: "Derek Brown" <db...@emeta.com>
To: <so...@xml.apache.org>
Sent: Friday, September 01, 2000 1:24 PM
Subject: Re: Need details on setting up server for SOAP using own HTTP code
(without Apache/IIS/etc.)


> Thanks for the input.  What I was wondering, though, is how I
> could take the headers and body of an incoming HTTP request
> (coming from the SOAP client), which I'd receive from a socket
> directly, and process it in the manner that
> RPCRouterServlet/rpcrouter.jsp do.
>
> The primary issue is that they both make use of information
> provided with the request by the servlet/JSP frameworks, which
> would not be present in my case.  So the question boils down to
> this- is there a generic class that's been published that routes
> an incoming SOAP HTTP request given only the raw headers and
> body.  The obvious solution is just hacking
> RPCRouterServlet/rpcrouter.jsp to remove the servlet/JSP
> dependencies, but I would think that this would have come up
> before and there'd be a generic solution already done.
>
> Thanks,
> Derek
>
> On Thu, 31 Aug 2000, Cory Isaacson wrote:
>
> > Derek,
> >
> > There are some sketchy answers on-line at the SOAP site. The specifics
> > depend on the Application Server you are using, but the instructions for
> > TomCat are fairly complete. I have made it work with WebSphere, so other
> > servers will work as well.
> >
> > The basic requirements are:
> >
> > 1) A Java-Servlet capable Application Server needs to be configured,
along
> > with a Web server which routes servlet calls to the Application Server;
> > 2) Download the SOAP 2.0 version;
> > 3) Set up the org.soap.server.http.RPCRouterServlet so that it can be
called
> > from your Application Server. I a gave mine a logical name of
"rpcrouter".
> > You can test it through a Brower by putting the path required by your
app
> > server, the 'rpcrouter' and you should get an error message that the
> > RPCRouterServlet cannot handle 'GET' messages, only 'POST' calls. This
is a
> > good basic test of the installation so far.
> > 4) Then you can look under the soap\webapps\soap directory, and open the
> > index.html. This is the SOAP admin tool which allows you to register
> > Provider classes (which do the work on the server side). See the
AddressBook
> > readme file and DeploymentDescriptor.xml file for the data required for
each
> > example. I found the stockquote example the easiest to run, eventhough
the
> > quote server doesn't usually work, but you can see if you can make a
SOAP
> > call correctly. The AddressBook works as well, but be sure when you
input
> > the "x:address" and "x:phone" localpart parameters into the admin screen
> > that you leave the "x:" off (i.e., it should just be "address").
> >
> > Hope that helps.
> >
> > Cory
> > ----- Original Message -----
> > From: "Derek Brown" <db...@emeta.com>
> > To: <so...@xml.apache.org>
> > Sent: Thursday, August 31, 2000 3:41 PM
> > Subject: Need details on setting up server for SOAP using own HTTP code
> > (without Apache/IIS/etc.)
> >
> >
> > > I'm investigating using SOAP to allow two standalone applications
> > > (independent of Apache/IIS/etc.) to make requests of each other
> > > (so they'd function as both client and server).
> > >
> > > I've read a lot of docs online and looked through numerous
> > > example code (address book, calculate area/geometry, etc.), but
> > > am having trouble understanding how to set the app up as a
> > > server.  The bulk of the documentation seems oriented towards
> > > using JSP/servlets/etc., but even then I still haven't seen
> > > exactly what needs to be done to get the server-side set up.
> > >
> > > Looking at rpcrouter.jsp, it looks like it would receive the
> > > request from a web server and hand it off to whatever class had
> > > been registered to handle it (and then send back the reply).  I
> > > assume the majority of this code can be inserted into any code I
> > > write to serve the HTTP server function itself.
> > >
> > > So my questions are:
> > >
> > > o what does one need to do to SOAP-enable one's own HTTP server?
> > > That is, after the easy part of implementing the HTTP protocol,
> > > what needs to be done to get the incoming SOAP request handled?
> > >
> > > o are the server-side classes that actually read, hand off to the
> > > target class, and create SOAP replies a part of the
> > > org.apache.soap.* packages?
> > >
> > > o how does one register the target class (that implements the
> > > method) with the registry?
> > >
> > > o is the client-side as simple as GetAddress makes it look?
> > >
> > > Thanks for any answers,
> > > Derek
> > >
> >
> >
>


Re: Need details on setting up server for SOAP using own HTTP code (without Apache/IIS/etc.)

Posted by Derek Brown <db...@emeta.com>.
Thanks for the input.  What I was wondering, though, is how I
could take the headers and body of an incoming HTTP request
(coming from the SOAP client), which I'd receive from a socket
directly, and process it in the manner that
RPCRouterServlet/rpcrouter.jsp do.

The primary issue is that they both make use of information
provided with the request by the servlet/JSP frameworks, which
would not be present in my case.  So the question boils down to
this- is there a generic class that's been published that routes
an incoming SOAP HTTP request given only the raw headers and
body.  The obvious solution is just hacking
RPCRouterServlet/rpcrouter.jsp to remove the servlet/JSP
dependencies, but I would think that this would have come up
before and there'd be a generic solution already done.

Thanks,
Derek

On Thu, 31 Aug 2000, Cory Isaacson wrote:

> Derek,
> 
> There are some sketchy answers on-line at the SOAP site. The specifics
> depend on the Application Server you are using, but the instructions for
> TomCat are fairly complete. I have made it work with WebSphere, so other
> servers will work as well.
> 
> The basic requirements are:
> 
> 1) A Java-Servlet capable Application Server needs to be configured, along
> with a Web server which routes servlet calls to the Application Server;
> 2) Download the SOAP 2.0 version;
> 3) Set up the org.soap.server.http.RPCRouterServlet so that it can be called
> from your Application Server. I a gave mine a logical name of "rpcrouter".
> You can test it through a Brower by putting the path required by your app
> server, the 'rpcrouter' and you should get an error message that the
> RPCRouterServlet cannot handle 'GET' messages, only 'POST' calls. This is a
> good basic test of the installation so far.
> 4) Then you can look under the soap\webapps\soap directory, and open the
> index.html. This is the SOAP admin tool which allows you to register
> Provider classes (which do the work on the server side). See the AddressBook
> readme file and DeploymentDescriptor.xml file for the data required for each
> example. I found the stockquote example the easiest to run, eventhough the
> quote server doesn't usually work, but you can see if you can make a SOAP
> call correctly. The AddressBook works as well, but be sure when you input
> the "x:address" and "x:phone" localpart parameters into the admin screen
> that you leave the "x:" off (i.e., it should just be "address").
> 
> Hope that helps.
> 
> Cory
> ----- Original Message -----
> From: "Derek Brown" <db...@emeta.com>
> To: <so...@xml.apache.org>
> Sent: Thursday, August 31, 2000 3:41 PM
> Subject: Need details on setting up server for SOAP using own HTTP code
> (without Apache/IIS/etc.)
> 
> 
> > I'm investigating using SOAP to allow two standalone applications
> > (independent of Apache/IIS/etc.) to make requests of each other
> > (so they'd function as both client and server).
> >
> > I've read a lot of docs online and looked through numerous
> > example code (address book, calculate area/geometry, etc.), but
> > am having trouble understanding how to set the app up as a
> > server.  The bulk of the documentation seems oriented towards
> > using JSP/servlets/etc., but even then I still haven't seen
> > exactly what needs to be done to get the server-side set up.
> >
> > Looking at rpcrouter.jsp, it looks like it would receive the
> > request from a web server and hand it off to whatever class had
> > been registered to handle it (and then send back the reply).  I
> > assume the majority of this code can be inserted into any code I
> > write to serve the HTTP server function itself.
> >
> > So my questions are:
> >
> > o what does one need to do to SOAP-enable one's own HTTP server?
> > That is, after the easy part of implementing the HTTP protocol,
> > what needs to be done to get the incoming SOAP request handled?
> >
> > o are the server-side classes that actually read, hand off to the
> > target class, and create SOAP replies a part of the
> > org.apache.soap.* packages?
> >
> > o how does one register the target class (that implements the
> > method) with the registry?
> >
> > o is the client-side as simple as GetAddress makes it look?
> >
> > Thanks for any answers,
> > Derek
> >
> 
> 


Re: Need details on setting up server for SOAP using own HTTP code (without Apache/IIS/etc.)

Posted by Derek Brown <db...@emeta.com>.
Thanks for the input.  What I was wondering, though, is how I
could take the headers and body of an incoming HTTP request
(coming from the SOAP client), which I'd receive from a socket
directly, and process it in the manner that
RPCRouterServlet/rpcrouter.jsp do.

The primary issue is that they both make use of information
provided with the request by the servlet/JSP frameworks, which
would not be present in my case.  So the question boils down to
this- is there a generic class that's been published that routes
an incoming SOAP HTTP request given only the raw headers and
body.  The obvious solution is just hacking
RPCRouterServlet/rpcrouter.jsp to remove the servlet/JSP
dependencies, but I would think that this would have come up
before and there'd be a generic solution already done.

Thanks,
Derek

On Thu, 31 Aug 2000, Cory Isaacson wrote:

> Derek,
> 
> There are some sketchy answers on-line at the SOAP site. The specifics
> depend on the Application Server you are using, but the instructions for
> TomCat are fairly complete. I have made it work with WebSphere, so other
> servers will work as well.
> 
> The basic requirements are:
> 
> 1) A Java-Servlet capable Application Server needs to be configured, along
> with a Web server which routes servlet calls to the Application Server;
> 2) Download the SOAP 2.0 version;
> 3) Set up the org.soap.server.http.RPCRouterServlet so that it can be called
> from your Application Server. I a gave mine a logical name of "rpcrouter".
> You can test it through a Brower by putting the path required by your app
> server, the 'rpcrouter' and you should get an error message that the
> RPCRouterServlet cannot handle 'GET' messages, only 'POST' calls. This is a
> good basic test of the installation so far.
> 4) Then you can look under the soap\webapps\soap directory, and open the
> index.html. This is the SOAP admin tool which allows you to register
> Provider classes (which do the work on the server side). See the AddressBook
> readme file and DeploymentDescriptor.xml file for the data required for each
> example. I found the stockquote example the easiest to run, eventhough the
> quote server doesn't usually work, but you can see if you can make a SOAP
> call correctly. The AddressBook works as well, but be sure when you input
> the "x:address" and "x:phone" localpart parameters into the admin screen
> that you leave the "x:" off (i.e., it should just be "address").
> 
> Hope that helps.
> 
> Cory
> ----- Original Message -----
> From: "Derek Brown" <db...@emeta.com>
> To: <so...@xml.apache.org>
> Sent: Thursday, August 31, 2000 3:41 PM
> Subject: Need details on setting up server for SOAP using own HTTP code
> (without Apache/IIS/etc.)
> 
> 
> > I'm investigating using SOAP to allow two standalone applications
> > (independent of Apache/IIS/etc.) to make requests of each other
> > (so they'd function as both client and server).
> >
> > I've read a lot of docs online and looked through numerous
> > example code (address book, calculate area/geometry, etc.), but
> > am having trouble understanding how to set the app up as a
> > server.  The bulk of the documentation seems oriented towards
> > using JSP/servlets/etc., but even then I still haven't seen
> > exactly what needs to be done to get the server-side set up.
> >
> > Looking at rpcrouter.jsp, it looks like it would receive the
> > request from a web server and hand it off to whatever class had
> > been registered to handle it (and then send back the reply).  I
> > assume the majority of this code can be inserted into any code I
> > write to serve the HTTP server function itself.
> >
> > So my questions are:
> >
> > o what does one need to do to SOAP-enable one's own HTTP server?
> > That is, after the easy part of implementing the HTTP protocol,
> > what needs to be done to get the incoming SOAP request handled?
> >
> > o are the server-side classes that actually read, hand off to the
> > target class, and create SOAP replies a part of the
> > org.apache.soap.* packages?
> >
> > o how does one register the target class (that implements the
> > method) with the registry?
> >
> > o is the client-side as simple as GetAddress makes it look?
> >
> > Thanks for any answers,
> > Derek
> >
> 
>