xml-soap-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Daniel P Allen" <dal...@nist.gov>
Subject RE: Routing to Message Service
Date Wed, 26 Jun 2002 13:23:59 GMT
  The point is the Apache MessageRouter uses the first namespace declaration
in the Body to find the service
  and Jim wants it to use SOAPAction instead.  No can do with the stock
MessageRouter.  The code for
  message router is not long and is simple to understand,  A quick hack to
change where it looks is almost
  trivial. A bit more difficult but still relatively simple would be to
check SOAPAction against the deployed
  services database and dispatch if a match is found.  If no match then
proceed with the stock behavior.
  This would eliminate the need for running two different servlets if you
are servicing "standard" Apache
  applications along with the ones Jim's folks are deploying.  BTW - the
ebXML MessageService
  Specification also requires a different lookup mechanism.  They have added
Service and Action
  elements to the header for this purpose but do not preclude use of
SOAPAction..

  Dan










  -----Original Message-----
  From: Martin Gainty [mailto:mgainty@hotmail.com]
  Sent: Tuesday, June 25, 2002 6:25 PM
  To: soap-user@xml.apache.org
  Cc: JMaus@genam.com
  Subject: Re: Routing to Message Service


  Jim:
  Take a look at http://xml.apache.org/soap/docs/guide/rpcclient.html for
step by step building a RPC Client:

  Specifically Step 4

    1.. Set the target URI into the Call object using the
setTargetObjectURI(...)method.
    Pass in the URN that the service used to identify itself in its
deployment descriptor.

    (For Deployment Descriptors) Check out
    http://xml.apache.org/soap/docs/guide/deploy.html
  Standard Java Class Deployment Descriptor
  A deployment descriptor which exposes a service which is implemented via a
standard Java class (including a normal Java Bean) looks like the following:

<isd:service xmlns:isd="http://xml.apache.org/xml-soap/deployment"
             id="urn:service-urn" [type="message"]
[checkMustUnderstands="true|false"]>  <isd:provider type="java"
scope="Request | Session | Application"
methods="exposed-methods">    <isd:java class="implementing-class"
[static="true|false"]/>  </isd:provider>
<isd:faultListener>org.apache.soap.server.DOMFaultListener</isd:faultListene
r>
</isd:service>
  Where service-urn is the URN that you want to give to a service,
exposed-methods is a space separated list of methods which you wish to
expose, and implementing-class is fully qualified class name (i.e.
packagename.classname) that provides the methods which are being exposed

  I didnt see anything about SOAPAction here...
  Anyone else??

  Martin Gainty
  >

  >
  >I have written a Message Services to pass a "TXLife" XML document called
"txlife-processor", deployed it, and have it working. But, the team writing
  >the client would like to use the SOAPAction to specify my
"txlife-processor" messaging service (not xlmns="urn:txlife-processor").
  >Is there a way to configure the SOAP Message Router to use the SOAPAction
(and not require xmlns="urn:txlife-processor" attribute on my XML document)
  >to route the TXLife to my txlife-processor?
  >If SOAPAction is not appropriate, is there an alternative to requiring
xmlns="urn:txlife-processor" attribute on my TXLife element ?
  >
  >Following does not work:
  >...
  >SOAPAction: "urn:txlife-processor"
  >
  >>="http://www.w3.org/2001/XMLSchema">
  >
  >
  >...
  >
  >Following does work:
  >...
  >SOAPAction: ""
  >
  >>="http://www.w3.org/2001/XMLSchema">
  >
  >
  >...
  >
  >Thank you for your assistance.
  >-JimM
  >
  >
  >
  >--
  >To unsubscribe, e-mail:
  >For additional commands, e-mail:


----------------------------------------------------------------------------
--
  Chat with friends online, try MSN Messenger: Click Here
  -- To unsubscribe, e-mail: For additional commands, e-mail:

Mime
View raw message