BTW I wan unable to do a copy command (CTRL + C) on the SOAP monitor how did you do that :)
 
Bhanu Pabreja
-----Original Message-----
From: Bhanu Pabreja [mailto:[EMAIL PROTECTED]
Sent: Tuesday, July 15, 2003 1:39 PM
To: [EMAIL PROTECTED]
Subject: RE: Message Style Service and Exception Handling

what do you mean my server is configured to override and handle the exception. I mean if the response is with flow and no exception is thrown then the SOAP response is perfectly norman but it is only on the event of an exception that the SOAPMonitor shows the status as ACTIVE and nothing shows up on the response text area.
 
Well could you access the SOAPBody on the client end ...?? If you see this response in your monitor there seems to be no problem to access the SOAPBody and then eventually the SOAPFault element but then I dont see anything in SOAPMonitor and eventually my SOAPBody also does not show up on the client.
 
Can you post your client also and which version of axis are you using ...
 
If you want I can send you the screen shot of my SOAPMonitor but this is really buggy ... and I am stuck and writing my own exception and sending it as a Document object.
 
Thanx for the input ...
 
dumdum420
 
-----Original Message----[Bhanu Pabreja]  -
From: remko de knikker [mailto:[EMAIL PROTECTED]
Sent: Tuesday, July 15, 2003 12:16 PM
To: [EMAIL PROTECTED]
Subject: Re: Message Style Service and Exception Handling

I don't seem to have a problem with it.

here's my example which creates a SOAPResponse on the SOAPMonitor. Could it be that your server is configured to override and handle the exception, I remember that I once had that issue, although I am no expert on this.

import javax.xml.soap.SOAPBody;
import javax.xml.soap.SOAPFault;

public Document method2(Document request) throws Exception{
try {
ohno
} catch (Exception e1) {
            logGetUMLS.info(e1.getMessage());
            String errormsg = e1.getMessage();
            logGetUMLS.info( "Error: " + errormsg);
            sb1 = MessageContext.getCurrentContext().getResponseMessage().getSOAPPart().getEnvelope().getBody();
            SOAPFault fault = sb1.addFault();
            fault.setFaultString("Exception: " + errormsg);
            fault.setFaultCode("Server");
            throw e1;         
        }
return doc;
}

HTTP/1.1 500 Internal Server Error?
Content-Type: text/xml; charset=utf-8?
Date: Tue, 15 Jul 2003 16:10:48 GMT?
Server: Apache Coyote HTTP/1.1 Connector [1.0]?
Connection: close?
?
<?xml version="1.0" encoding="UTF-8"?>
   <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
      <soapenv:Body> 
         <soapenv:Fault>  
            <faultcode>soapenv:Server.userException</faultcode>  
            <faultstring>java.lang.Exception: Test Exception</faultstring>  
            <detail/> 
         </soapenv:Fault>
      </soapenv:Body>
   </soapenv:Envelope>



Bhanu Pabreja wrote:
Posted:
http://nagoya.apache.org/bugzilla/long_list.cgi?buglist=21578

Bhanu

-----Original Message-----
From: Davanum Srinivas [mailto:[EMAIL PROTECTED]]
Sent: Monday, July 14, 2003 12:23 PM
To: Bhanu Pabreja; [EMAIL PROTECTED]
Subject: RE: Message Style Service and Exception Handling


Please open a bug report - http://ws.apache.org/axis/bugs.html

-- dims

--- Bhanu Pabreja <[EMAIL PROTECTED]> wrote:
  
Thanx for the input but this also does not work. Infact no SOAPResponse is
generated on the SOAPMonitor. Looks like in case of message style service
there are no capabilities to generate SOAPFault which is actually a MUST
element by w3c in case of a  exception.

These are my observations but if someone has a working example which is
MessageStyle based and which propgates exception back to the client using
the SOAPFault or AxisFault it will really help me since I am stuck with
    
this
  
grave issue.

Thanx in advance.

dumdum420

-----Original Message-----
From: Davanum Srinivas [mailto:[EMAIL PROTECTED]]
Sent: Monday, July 14, 2003 7:42 AM
To: [EMAIL PROTECTED]
Subject: Re: Message Style Service and Exception Handling


Try this...

   AxisFault af = AxisFault.makeFault(ex);
   // Do whatever you want with AxisFault
   ....
   throw af;

-- dims

--- Bhanu Pabreja <[EMAIL PROTECTED]> wrote:
    
Hello Everyone,

I have a MessageStyle service  which has the following signatures:

	Document sendData(Document doc) throws RemoteException{}

Everything works fine till I get an exception:

I wrote a method like this where I access the SOAPBody on the server
      
side
  
and set the faultString and errorCode and return it to the client.

public static RemoteException setSOAPFaultElement(Exception ex) throws
RemoteException{
		try{
		javax.xml.soap.SOAPBody   sb1 =  null;
		sb1 =

      
MessageContext.getCurrentContext().getResponseMessage().getSOAPPart().getEnv
  
elope().getBody();
		System.out.println(sb1.getClass());
            javax.xml.soap.SOAPFault fault = sb1.addFault();
            fault.setFaultString("Exception " + ex.toString());
            System.out.println(fault.getFaultString());
            fault.setFaultCode("Server");
            System.out.println("Exception is being set in the fault
      
body");
    
            return new RemoteException(ex.toString());
		}catch(SOAPException e){
            throw new RemoteException(ex.toString());
		}
	}


But on the client side when I get an exception and in the Exception
      
block
  
I
    
try to access the exception from the SOAPBody object I get a
NullPointerExcption and the SOAPBody is empty.

Then probing further I turned on the SOAPMonitor and discovered that the
there was no response message in cases where there is exception.

Thus what I cannnot figure out it is how are exception handled in
      
context
  
of
    
MessageStyle webservices.

Any pointers will really help.

Bhanu Pabreja.


      
=====
Davanum Srinivas - http://webservices.apache.org/~dims/

__________________________________
Do you Yahoo!?
SBC Yahoo! DSL - Now only $29.95 per month!
http://sbc.yahoo.com


    


=====
Davanum Srinivas - http://webservices.apache.org/~dims/

__________________________________
Do you Yahoo!?
SBC Yahoo! DSL - Now only $29.95 per month!
http://sbc.yahoo.com




  

Reply via email to