Keep in mind that a UDDI registry is a Web service -- you communicate with it using SOAP, and the interface is defined using WSDL.

Per the SOAP specification, the following values are valid for the SOAPAction http header:

SOAPAction:
SOAPAction: ""
SOAPAction: "find_service"

BUT -- the specific value that a Web service expects to find in the SOAPAction header is specified in the service's WSDL document -- in the <soap:operation> definition for each operation in the service, e.g.,

<soap:operation soapAction="find_binding" style="document"/>

According to the UDDI V2 specification, the SOAPAction header should contain a value that indicates the requested method. So it should contain something like:

SOAPAction: "find_service"
SOAPAction: "get_bindingDetail"

I tried to find the WSDL document for the IBM UBR service instance, but couldn't find it. Therefore I suggest that you follow the UDDI V2 standard. The standard WSDL for the UDDI V2 Inquiry API is located here:
http://www.uddi.org/wsdl/inquire_v2.wsdl


Anne


At 02:40 PM 3/30/2004, you wrote:
Actually my question was whether an empty SOAPAction
http header need to be explicitly specified as ""?

I am ignorant of this "WSDL <binding> definition
 for IBM's registry". Is there a standard way to
retrieve this wsdl. I thought the registry itself is
used to detect various WSDL information etc. and there
will not be a separate wsdl file for the UDDI rgisitry
web service itself.
Appreciate your explanations on this,
dw

--- Anne Thomas Manes <[EMAIL PROTECTED]> wrote:
> You need to look at the WSDL <binding> definition
> for IBM's registry to
> determine what SOAPAction it's expecting.
>
> According to the standard WSDL descriptions that are
> part of the UDDI V2
> standard, the SOAPAction is supposed to include a
> string that indicates the
> operation, e.g. "find_service". But individual
> implementations may override
> the SOAPAction parameter requirements.
>
> Anne
>
> At 12:47 PM 3/26/2004, you wrote:
> >What should be the value of the SOAPAction header
> >attribute when sending a UDDI request.
> >
> >I found that the registry
> >http://www-3.ibm.com/services/uddi/inquiryapi will
> not
> >work when i set an empty string for this header.
> The
> >value need to be explict "" inorder for this to
> work.
> >Other registries that i am connecting to are fine
> with
> >the empty string. Why this difference? What is the
> >standard?
> >
> >e.g. in my Http client api,
> >(1) setHeader("SOAPAction", ""); will not work only
> >for the ibm registry
> >(2) setHeader("SOAPAction", "\"\""); works
> >
> >If he above explanation is not clear let me show
> you
> >the tcp monitor trace:
> >(1) If the headers are going like this, it will not
> >work
> >POST /services/uddi/inquiryapi HTTP/1.1
> >content-type: text/xml; charset=utf-8
> >soapaction:
> >User-Agent: Jakarta Commons-HttpClient/2.0rc1
> >Host: www-3.ibm.com
> >Content-Length: 268
> >
> >(2) But the below one works
> >POST /services/uddi/inquiryapi HTTP/1.1
> >content-type: text/xml; charset=utf-8
> >soapaction: ""
> >User-Agent: Jakarta Commons-HttpClient/2.0rc1
> >Host: www-3.ibm.com
> >Content-Length: 268
> >
> >Thanks in Advance,
> >dw
> >
> >
> >__________________________________
> >Do you Yahoo!?
> >Yahoo! Finance Tax Center - File online. File on
> time.
> >http://taxes.yahoo.com/filing.html
>
> ~~~~~~~~~~~~~~~~~~
> Anne Thomas Manes
> VP & Research Director
> Burton Group
>


__________________________________ Do you Yahoo!? Yahoo! Finance Tax Center - File online. File on time. http://taxes.yahoo.com/filing.html

~~~~~~~~~~~~~~~~~~
Anne Thomas Manes
VP & Research Director
Burton Group




Reply via email to