TestSOAPServicepublic class TestSOAPService extends AJAXRPC
Methods Summary |
---|
public void | testFaultHandlerThrowsJAXRPCException()Tests to see if we handle the scenario of a handler throwing a
runtime exception during the handleFault(...) processing correctly
Expected chain sequence:
H0.handleRequest
H1.handleRequest
H2.handleRequest SOAPFaultException
H2.handleFault
H1.handleFault throws JAXRPCException
SOAPService soapService = new SOAPService();
// SETUP THE LAST HANDLER IN THE REQUEST CHAIN TO THROW SOAPFaultException
handler2Config.put("HANDLE_REQUEST_RETURN_VALUE",
new SOAPFaultException(null, "f", "f", new Detail()));
handler1Config.put("HANDLE_FAULT_RETURN_VALUE", new JAXRPCException());
TestHandlerInfoChainFactory factory = buildInfoChainFactory();
soapService.setOption(Constants.ATTR_HANDLERINFOCHAIN, factory);
soapService.init();
MessageContext msgContext = new TestMessageContext();
try {
soapService.invoke(msgContext);
fail("Expected AxisFault to be thrown");
} catch (AxisFault e) {
AAAHandler handlerZero = factory.getHandlers()[0];
AAAHandler handlerOne = factory.getHandlers()[1];
AAAHandler handlerTwo = factory.getHandlers()[2];
assertHandlerRuntime("handlerZero", handlerZero, 1, 0, 0);
assertHandlerRuntime("handlerOne", handlerOne, 1, 0, 1);
assertHandlerRuntime("handlerTwo", handlerTwo, 1, 0, 1);
}
| public void | testFaultHandlerThrowsRuntimeException()Tests to see if we handle the scenario of a handler throwing a
runtime exception during the handleFault(...) processing correctly
Expected chain sequence:
H0.handleRequest
H1.handleRequest
H2.handleRequest throws SOAPFaultException
H2.handleFault
H1.handleFault throws RuntimeException
SOAPService soapService = new SOAPService();
// SETUP THE LAST HANDLER IN THE REQUEST CHAIN TO THROW SOAPFaultException
handler2Config.put("HANDLE_REQUEST_RETURN_VALUE",
new SOAPFaultException(null, "f", "f", new Detail()));
handler1Config.put("HANDLE_FAULT_RETURN_VALUE", new RuntimeException());
TestHandlerInfoChainFactory factory = buildInfoChainFactory();
soapService.setOption(Constants.ATTR_HANDLERINFOCHAIN, factory);
soapService.init();
MessageContext msgContext = new TestMessageContext();
try {
soapService.invoke(msgContext);
fail("Expected AxisFault to be thrown");
} catch (AxisFault e) {
AAAHandler handlerZero = factory.getHandlers()[0];
AAAHandler handlerOne = factory.getHandlers()[1];
AAAHandler handlerTwo = factory.getHandlers()[2];
assertHandlerRuntime("handlerZero", handlerZero, 1, 0, 0);
assertHandlerRuntime("handlerOne", handlerOne, 1, 0, 1);
assertHandlerRuntime("handlerTwo", handlerTwo, 1, 0, 1);
}
| public void | testHandleFaultReturnsFalse()
SOAPService soapService = new SOAPService();
// SETUP THE LAST HANDLER IN THE REQUEST CHAIN TO THROW SOAPFaultException
handler2Config.put("HANDLE_REQUEST_RETURN_VALUE",
new SOAPFaultException(null, "f", "f", new Detail()));
handler1Config.put("HANDLE_FAULT_RETURN_VALUE", Boolean.FALSE);
TestHandlerInfoChainFactory factory = buildInfoChainFactory();
soapService.setOption(Constants.ATTR_HANDLERINFOCHAIN, factory);
soapService.init();
MessageContext msgContext = new TestMessageContext();
soapService.invoke(msgContext);
AAAHandler handlerZero = factory.getHandlers()[0];
AAAHandler handlerOne = factory.getHandlers()[1];
AAAHandler handlerTwo = factory.getHandlers()[2];
assertHandlerRuntime("handlerZero", handlerZero, 1, 0, 0);
assertHandlerRuntime("handlerOne", handlerOne, 1, 0, 1);
assertHandlerRuntime("handlerTwo", handlerTwo, 1, 0, 1);
| public void | testPositiveCourseFlow()All Handlers in Chain return true for handleRequest and handleResponse
* Expected Chain invocation sequence looks like.....
H0.handleRequest
H1.handleRequest
H2.handleRequest
H2.handleResponse
H1.handleResponse
H0.handleResponse
TestHandlerInfoChainFactory factory = buildInfoChainFactory();
SOAPService soapService = new SOAPService();
soapService.setOption(Constants.ATTR_HANDLERINFOCHAIN, factory);
soapService.init();
soapService.invoke(new TestMessageContext());
AAAHandler handlerZero = factory.getHandlers()[0];
AAAHandler handlerOne = factory.getHandlers()[1];
AAAHandler handlerTwo = factory.getHandlers()[2];
assertHandlerRuntime("handlerZero", handlerZero, 1, 1, 0);
assertHandlerRuntime("handlerOne", handlerOne, 1, 1, 0);
assertHandlerRuntime("handlerTwo", handlerTwo, 1, 1, 0);
| public void | testRequestHandlerReturnsFalse()Tests scenario where one handler returns false on a call
to handleRequest(...).
Expected Chain invocation sequence looks like.....
H0.handleRequest
H1.handleRequest returns false
H1.handleResponse
H0.handleResponse
SOAPService soapService = new SOAPService();
// SETUP THE 2nd HANDLER IN THE REQUEST CHAIN TO RETURN FALSE
handler1Config.put("HANDLE_REQUEST_RETURN_VALUE", Boolean.FALSE);
TestHandlerInfoChainFactory factory = buildInfoChainFactory();
soapService.setOption(Constants.ATTR_HANDLERINFOCHAIN, factory);
soapService.init();
MessageContext msgContext = new TestMessageContext();
soapService.invoke(msgContext);
AAAHandler handlerZero = factory.getHandlers()[0];
AAAHandler handlerOne = factory.getHandlers()[1];
AAAHandler handlerTwo = factory.getHandlers()[2];
assertHandlerRuntime("handlerZero", handlerZero, 1, 1, 0);
assertHandlerRuntime("handlerOne", handlerOne, 1, 1, 0);
assertHandlerRuntime("handlerTwo", handlerTwo, 0, 0, 0);
| public void | testRequestHandlerThrowsJAXRPCException()
SOAPService soapService = new SOAPService();
// SETUP THE 2nd HANDLER IN THE REQUEST CHAIN TO THROW JAXRPCException
handler1Config.put("HANDLE_REQUEST_RETURN_VALUE",
new JAXRPCException());
TestHandlerInfoChainFactory factory = buildInfoChainFactory();
soapService.setOption(Constants.ATTR_HANDLERINFOCHAIN, factory);
soapService.init();
MessageContext msgContext = new TestMessageContext();
try {
soapService.invoke(msgContext);
} catch (AxisFault e) {
AAAHandler handlerZero = factory.getHandlers()[0];
AAAHandler handlerOne = factory.getHandlers()[1];
AAAHandler handlerTwo = factory.getHandlers()[2];
assertHandlerRuntime("handlerZero", handlerZero, 1, 0, 0);
assertHandlerRuntime("handlerOne", handlerOne, 1, 0, 0);
assertHandlerRuntime("handlerTwo", handlerTwo, 0, 0, 0);
}
| public void | testRequestHandlerThrowsRuntimeException()
SOAPService soapService = new SOAPService();
// SETUP THE 2nd HANDLER IN THE REQUEST CHAIN TO THROW JAXRPCException
handler1Config.put("HANDLE_REQUEST_RETURN_VALUE",
new RuntimeException());
TestHandlerInfoChainFactory factory = buildInfoChainFactory();
soapService.setOption(Constants.ATTR_HANDLERINFOCHAIN, factory);
soapService.init();
MessageContext msgContext = new TestMessageContext();
try {
soapService.invoke(msgContext);
} catch (AxisFault e) {
AAAHandler handlerZero = factory.getHandlers()[0];
AAAHandler handlerOne = factory.getHandlers()[1];
AAAHandler handlerTwo = factory.getHandlers()[2];
assertHandlerRuntime("handlerZero", handlerZero, 1, 0, 0);
assertHandlerRuntime("handlerOne", handlerOne, 1, 0, 0);
assertHandlerRuntime("handlerTwo", handlerTwo, 0, 0, 0);
}
| public void | testRequestHandlerThrowsSFE()
SOAPService soapService = new SOAPService();
// SETUP THE 2nd HANDLER IN THE REQUEST CHAIN TO THROW SOAPFaultException
handler1Config.put("HANDLE_REQUEST_RETURN_VALUE",
new SOAPFaultException(null, "f", "f", new Detail()));
TestHandlerInfoChainFactory factory = buildInfoChainFactory();
soapService.setOption(Constants.ATTR_HANDLERINFOCHAIN, factory);
soapService.init();
MessageContext msgContext = new TestMessageContext();
soapService.invoke(msgContext);
AAAHandler handlerZero = factory.getHandlers()[0];
AAAHandler handlerOne = factory.getHandlers()[1];
AAAHandler handlerTwo = factory.getHandlers()[2];
assertHandlerRuntime("handlerZero", handlerZero, 1, 0, 1);
assertHandlerRuntime("handlerOne", handlerOne, 1, 0, 1);
assertHandlerRuntime("handlerTwo", handlerTwo, 0, 0, 0);
| public void | testResponseHandlerReturnsFalse()
SOAPService soapService = new SOAPService();
// SETUP THE 3rd HANDLER IN THE CHAIN TO RETURN FALSE on handleResponse
handler2Config.put("HANDLE_RESPONSE_RETURN_VALUE", Boolean.FALSE);
TestHandlerInfoChainFactory factory = buildInfoChainFactory();
soapService.setOption(Constants.ATTR_HANDLERINFOCHAIN, factory);
soapService.init();
MessageContext msgContext = new TestMessageContext();
soapService.invoke(msgContext);
AAAHandler handlerZero = factory.getHandlers()[0];
AAAHandler handlerOne = factory.getHandlers()[1];
AAAHandler handlerTwo = factory.getHandlers()[2];
assertHandlerRuntime("handlerZero", handlerZero, 1, 0, 0);
assertHandlerRuntime("handlerOne", handlerOne, 1, 0, 0);
assertHandlerRuntime("handlerTwo", handlerTwo, 1, 1, 0);
| public void | testResponseHandlerThrowsJAXRPCException()
SOAPService soapService = new SOAPService();
// SETUP THE 2nd HANDLER IN THE CHAIN TO THROW JAXRPCException on handleResponse
handler1Config.put("HANDLE_RESPONSE_RETURN_VALUE",
new JAXRPCException());
TestHandlerInfoChainFactory factory = buildInfoChainFactory();
soapService.setOption(Constants.ATTR_HANDLERINFOCHAIN, factory);
soapService.init();
MessageContext msgContext = new TestMessageContext();
try {
soapService.invoke(msgContext);
fail("Expected AxisFault to be thrown");
} catch (AxisFault e) {
AAAHandler handlerZero = factory.getHandlers()[0];
AAAHandler handlerOne = factory.getHandlers()[1];
AAAHandler handlerTwo = factory.getHandlers()[2];
assertHandlerRuntime("handlerZero", handlerZero, 1, 0, 0);
assertHandlerRuntime("handlerOne", handlerOne, 1, 1, 0);
assertHandlerRuntime("handlerTwo", handlerTwo, 1, 1, 0);
}
| public void | testResponseHandlerThrowsRuntimeException()
SOAPService soapService = new SOAPService();
// SETUP THE 2nd HANDLER IN THE CHAIN TO THROW RuntimeException on handleResponse
handler1Config.put("HANDLE_RESPONSE_RETURN_VALUE",
new RuntimeException());
TestHandlerInfoChainFactory factory = buildInfoChainFactory();
soapService.setOption(Constants.ATTR_HANDLERINFOCHAIN, factory);
soapService.init();
MessageContext msgContext = new TestMessageContext();
try {
soapService.invoke(msgContext);
fail("Expected AxisFault to be thrown");
} catch (AxisFault e) {
AAAHandler handlerZero = factory.getHandlers()[0];
AAAHandler handlerOne = factory.getHandlers()[1];
AAAHandler handlerTwo = factory.getHandlers()[2];
assertHandlerRuntime("handlerZero", handlerZero, 1, 0, 0);
assertHandlerRuntime("handlerOne", handlerOne, 1, 1, 0);
assertHandlerRuntime("handlerTwo", handlerTwo, 1, 1, 0);
}
| public void | testServiceObjectThrowsAxisFault()Tests scenario where service object throws Axis Fault.
Expected chain sequence:
H0.handleRequest
H1.handleRequest
H2.handleRequest
ServiceObject.invoke() throws AxisFault
H2.handleFault
H1.handleFault
H0.handleFault
Handler serviceHandler = new MockServiceHandler();
SOAPService soapService = new SOAPService(null, null, serviceHandler);
TestHandlerInfoChainFactory factory = buildInfoChainFactory();
soapService.setOption(Constants.ATTR_HANDLERINFOCHAIN, factory);
soapService.init();
MessageContext msgContext = new TestMessageContext();
try {
soapService.invoke(msgContext);
fail("Expected AxisFault to be thrown");
} catch (AxisFault e) {
AAAHandler handlerZero = factory.getHandlers()[0];
AAAHandler handlerOne = factory.getHandlers()[1];
AAAHandler handlerTwo = factory.getHandlers()[2];
assertHandlerRuntime("handlerZero", handlerZero, 1, 0, 1);
assertHandlerRuntime("handlerOne", handlerOne, 1, 0, 1);
assertHandlerRuntime("handlerTwo", handlerTwo, 1, 0, 1);
}
|
|