users@jax-rpc.java.net

Re: Can interfaces thrown exceptions? (Other than RemoteException ?)

From: Hrishikesh Bhagwat <Hrishikesh.Bhagwat_at_XORIANT.COM>
Date: Thu, 11 Apr 2002 09:34:50 +0530

Hi Mike,

Refer the following lines from JAX-RPC 0.8 spec (Section 5.2.1)

"A service specific exception declared in a remote method signature must be
a checked
exception. It must extend java.lang.Exception either directly or indirectly
but must
not be a RuntimeException."


IllegalArgumentException extends from a RuntimeException. Thats your problem

Hrishikesh


-----Original Message-----
From: YAWN,MICHAEL (HP-Cupertino,ex1) [mailto:mike_yawn_at_HP.COM]
Sent: Wednesday, April 10, 2002 10:39 PM
To: JAXRPC-INTEREST_at_JAVA.SUN.COM
Subject: Can interfaces thrown exceptions? (Other than RemoteException?)


I thought that JAX-RPC interfaces could throw exceptions other than
RemoteException, and that these exceptions would be mapped to SOAP
Faults. But if I add a 'throws IllegalArgumentException' to my interface,
xrpcc balks saying that the exception isn't supported.

Section 14.3.6 shows some mappings between SOAP faults and
Java exceptions. Are these the only legal exceptions that an RPC
service can throw? If I want to indicate an illegal argument was
passed, how to I create a RemoteException that is mapped onto
the rpc:BadArguments SOAP fault, since RemoteException also
maps onto rpc:ProcedureNotPresent? (Or should I even care
how it gets mapped -- will the client see any difference between
the two?)

Mike