From: J Englert on
Hi all,

I'm trying to create some code which consumes a web service through
the use of UTL_DBWS, but I keep getting this error:

ORA-29532: Java call terminated by uncaught Java exception:
javax.xml.rpc.soap.SOAPFaultException: ARERR [9331] No operation named
Envelope exists in web service AST_CDROMDrive.

Apaprently what is happening is that utl_dbws.invoke is interpreting
the input xml file such that it thinks the SOAP envelope is a
procedure in the web service. I am attempting to set the
SOAPACTION_URI property through use of the utl_dbws.set_property so
that the correct web service procedure is executed. Problem is, I
can't seem to figure out just what I should set the SOAP Action URI
to. This is my call to set property:

sys.UTL_DBWS.SET_PROPERTY(
l_call,
'SOAPACTION_URI',
?WHAT GOES HERE?);

and this is the operation I am trying to execute as defined in the
WSDL:

- <wsdl:portType name="AST_CDROMDrivePortType">
....
- <wsdl:operation name="OpGetList">
<wsdl:input message="s0:OpGetListSoapIn" />
<wsdl:output message="s0:OpGetListSoapOut" />
</wsdl:operation>

Finally, here is the xml document I am passing to the web service as
input (I need to use a document-literal web service rather than RPC):

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:s0="urn:HPD_Help_Desk">
<soap:Header>
<s0:AuthenticationInfo>
<s0:userName>*USERNAME*</s0:userName>
<s0:password>*PASSWORD*</s0:password>
<s0:authentication>arsystem</s0:authentication>
</s0:AuthenticationInfo>
</soap:Header>
<soap:Body>
<s0:OpGetList>
<s0:Qualification/>
<s0:startRecord/>
<s0:maxLimit/>
</s0:OpGetList>
</soap:Body>
</soap:Envelope>

I have verified that this xml file works with the web service using
third-party software, so I know that is not the problem. What am I
missing? How can I make Oracle realize that the SOAP envelope isn't
part of the web service? Or am I completely off-base in my evaluation
of the problem?

Thanks,
Jason