blob: 0803b5e6b737a4b4503cd5e851adf088bc0b50f7 [file] [log] [blame]
Sample: Exception Handling using WSDL Faults
==============================================
Introduction
============
This sample demonstrates how exceptions can be handled using WSDL faults, in other words, how to specify a WSDL fault in order to allow your service to communicate exception pathways to your clients.
Running of this sample assumes that you are running this within the extracted release folder.
Pre-Requisites
==============
Apache Ant 1.6.2 or later
Building The Service
=====================
* Type ant generate.service or just ant from Axis2_HOME/samples/faulthandling.
* Then go to Axis2_HOME/bin directory and run either axis2server.bat or axis2server.sh depending on your platform.
If you go to http://localhost:8080/axis2/ you should see BankService is deployed.
Running The Client
==================
Invoke the client/src/example/BankClient.java class. You may use the command scripts to do so. You need to supply 3 parameters to the command- url, account and amount.
* ant run.client -Durl=http://localhost:8080/axis2/services/BankService -Daccount=13 -Damt=400
Throws AccountNotExistFaultMessageException. You will see "Account#13 does not exist" 
* ant run.client -Durl=http://localhost:8080/axis2/services/BankService -Daccount=88 -Damt=1200
Throws InsufficientFundsFaultMessageException. You will see "Account#88 has balance of 1000. It cannot support withdrawal of 1200" 
* ant run.client -Durl=http://localhost:8080/axis2/services/BankService -Daccount=88 -Damt=400
Succeeds with a balance of 600. You will see "Balance = 600" 
When you call ant run.client with parameters, before running client/src/example/BankClient.java class, it does the following as well:
* Generate the stubs (for the client) from the WSDL
* Compile the client classes
* Create a Jar of the client classes and copy it to build/client/BankService-test-client.jar
Advanced Guide
==============
For more details kindly see doc/FaultHandlingSampleGuide.html
Help
====
Please contact axis-user list (axis-user@ws.apache.org) if you have any trouble running the sample.