[ 
https://issues.apache.org/jira/browse/AXIS2-3239?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Amila Chinthaka Suriarachchi resolved AXIS2-3239.
-------------------------------------------------

    Resolution: Fixed

already fixed

> Custom fault handling issue in code-first approach
> --------------------------------------------------
>
>                 Key: AXIS2-3239
>                 URL: https://issues.apache.org/jira/browse/AXIS2-3239
>             Project: Axis2
>          Issue Type: Bug
>    Affects Versions: 1.3
>         Environment: winxp, jdk15, 
>            Reporter: Charitha Kankanamge
>            Assignee: Deepal Jayasinghe
>            Priority: Critical
>         Attachments: AxisFaultservice.aar, Faultclient.java, 
> userTest-test-client.jar
>
>
> This issue has been identified and discussed by Jay Zawar in the following 
> mailing threads. 
> http://marc.info/?l=axis-user&m=119132155713767&w=2
> http://marc.info/?l=axis-user&m=119131613622185&w=2
> There seems to be an issue with custom fault handling when code-first 
> approach is used. Axis2 Faulthandling sample works fine since it is used 
> contract-first method.  
> Steps to reproduce:
> ===============
> 1. Write the service implementation class which returns a customexception
> public class AService {
> public long Add(int a, int b, int exceptionThrown) throws CustomException {
>               
>               if (exceptionThrown != 0) {
>                       System.out.println("CustomException to b 
> instantiated");        
>                       
>                       CustomException e = new CustomException();
>                       e.setCustomMsg("bar");
>                       throw e;
>               }
>               
>               
>               return a+b;}
> }
> 2. Write CustomeException class 
> public class CustomException extends java.lang.Exception implements 
> Serializable{
>       private static final long serialVersionUID = 1542353156105984960L;
>       private String customMsg = "This is my error";
>       public String getCustomMsg() {return customMsg;}
>       public void setCustomMsg(String customMsg) {this.customMsg= "custom : " 
> +customMsg;}
> }
> 3. Bundle the service archive correctly and deploy it.
> 4. Generate ADB client code
> 5. Write a client 
> public class Faultclient {
>       
>       public static void main(String[] args) {
>               try {
>                       UserTestStub stub;
>                       stub = new 
> UserTestStub("http://localhost:9764/services/userTest";);
>                       UserTestStub.Add req = new UserTestStub.Add();
>                       req.setA(4);
>                       req.setB(5);
>                       req.setExceptionThrown(2);
>                       UserTestStub.AddResponse res;
>                       res = stub.Add(req);
>                       System.out.println(res.get_return());
>               } catch (AxisFault e1) {
>                       e1.printStackTrace();
>                       e1.getCause();
>               } catch (CustomExceptionException0 e) {
>                       System.out.println("Error!!!!");
>               } catch (RemoteException e) {
>                       e.printStackTrace();
>               }
>       }
> 6. I'm always getting 'org.apache.axis2.AxisFault: Exception occurred while 
> trying to invoke service method Add' error at the client side, though I 
> expected customexception specified in the service.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to