Axis 1.1 returns axis:Server.userException where it should return
soapenv:Client. Because these fault codes are defined in a separate
namespace, technically, this isn't a bug. But a developer should have the
choice to return the standard soapenv fault codes.

This issue has been fixed in Axis 1.2.

I'm not aware of a schema for http://xml.apache.org/axis/, but perhaps
someone else is...

Anne

-----Original Message-----
From: Leone, Mark (Mission Systems) [mailto:[EMAIL PROTECTED] 
Sent: Saturday, October 16, 2004 2:09 PM
To: [EMAIL PROTECTED]
Subject: Looking for XSD for http://xml.apache.org/axis/

I'm working on a project that is building a web services gateway that
invokes services on several independently-developed data brokers. One of
those brokers is already implemented, using Axis 1.1 with SOAP 1.1 RPC
style, while our gateway is planning on Using WebLogic. The developers of
the Axis service that we'll be invoking provided us some sample SOAP
messages, including a Fault message. This message has the faultcode as

<faultcode
xmlns:ns1="http://xml.apache.org/axis/";>ns1:Server.userException</faultcode>

In order to validate the Fault message when received at my gateway, I need
an XSD for the namespace "http://xml.apache.org/axis/";. I searched all over
the web as well as through all the Axis documentation on my computer, and I
can't find such an XSD. Are consumers of Axis services expected to
reverse-engineer the XSD from the Axis source code?

Looking through the Axis source code (org.apache.axis.AxisFault,
org.apache.axis.Constants), it seems that the QName content of <faultcode>
(in a SOAP 1.1 context) can have the following values for its local part:

Server.generalException
Server.userException
Server.NoService
MustUnderstand
VersionMismatch

Curiously, I don't see the value "Client", which the SOAP spec says the
service must return if the client submits an invalid request.

I also conclude from the source code that the fault detail element will
include:

<detail>
        <!-- the <exceptionName> element is only present if the exception
thrown was a subclass of AxisFault -->
        <exceptionName>exception name here</exceptionName>
        <ns2:stackTrace xmlns:ns2="http://xml.apache.org/axis/";>string dump
of the stack trace
        </stackTrace>
</detail>

Could someone please either

a) Point me to an XSD for namespace "http://xml.apache.org/axis/";

or

b) Confirm that the above values for <faultcode> and <detail> properly
describe what I need to specify in the XSD if I create it myself. Also, does
Axis not use the <faultcode> value "Client"?

-Mark Leone

Reply via email to