use of org.apache.cxf.greeter_control.PingMeFault in project cxf by apache.
the class FaultHandlingInterceptor method handleMessage.
public synchronized void handleMessage(Message message) throws Fault {
FaultMode mode = MessageUtils.getFaultMode(message);
if (null != mode) {
Throwable cause = message.getContent(Exception.class).getCause();
if (FaultMode.CHECKED_APPLICATION_FAULT == mode) {
PingMeFault original = (PingMeFault) cause;
FaultDetail detail = new FaultDetail();
detail.setMajor((short) 20);
detail.setMinor((short) 10);
PingMeFault replaced = new PingMeFault(original.getMessage(), detail);
message.setContent(Exception.class, new Fault(replaced));
} else {
RuntimeException original = (RuntimeException) cause;
RuntimeException replaced = new RuntimeException(original.getMessage().toUpperCase());
message.setContent(Exception.class, new Fault(replaced));
}
}
}
use of org.apache.cxf.greeter_control.PingMeFault in project camel by apache.
the class JaxWsWebFaultAnnotationToFaultTest method testInvokingServiceFromCXFClient.
@Test
public void testInvokingServiceFromCXFClient() throws Exception {
JaxWsProxyFactoryBean proxyFactory = new JaxWsProxyFactoryBean();
ClientFactoryBean clientBean = proxyFactory.getClientFactoryBean();
clientBean.setAddress(ROUTER_ADDRESS);
clientBean.setServiceClass(Greeter.class);
Greeter client = (Greeter) proxyFactory.create();
try {
client.pingMe();
fail("Expect to get an exception here");
} catch (PingMeFault expected) {
assertEquals(MESSAGE, expected.getMessage());
} catch (Throwable t) {
t.printStackTrace();
fail("The CXF client did not manage to map the client exception " + t.getClass().getName() + " to a " + PingMeFault.class.getName() + ": " + t.getMessage());
}
}
use of org.apache.cxf.greeter_control.PingMeFault in project cxf by apache.
the class GreeterImpl11 method pingMe.
public void pingMe() throws PingMeFault {
FaultDetail faultDetail = new FaultDetail();
faultDetail.setMajor((short) 2);
faultDetail.setMinor((short) 1);
LOG.info("Executing operation pingMe, throwing PingMeFault exception");
// System.out.println("Executing operation pingMe, throwing PingMeFault exception\n");
throw new PingMeFault("PingMeFault raised by server", faultDetail);
}
use of org.apache.cxf.greeter_control.PingMeFault in project cxf by apache.
the class Soap11ClientServerTest method testPingMeFault.
@Test
public void testPingMeFault() throws Exception {
Greeter greeter = getGreeter();
try {
greeter.pingMe();
fail("Should throw Exception!");
} catch (PingMeFault ex) {
FaultDetail detail = ex.getFaultInfo();
assertEquals((short) 2, detail.getMajor());
assertEquals((short) 1, detail.getMinor());
assertEquals("PingMeFault raised by server", ex.getMessage());
StackTraceElement[] element = ex.getStackTrace();
assertEquals("org.apache.cxf.systest.soapfault.details.GreeterImpl11", element[0].getClassName());
}
}
use of org.apache.cxf.greeter_control.PingMeFault in project cxf by apache.
the class AddressingInlinePolicyTest method testUsingAddressing.
@Test
public void testUsingAddressing() throws Exception {
SpringBusFactory bf = new SpringBusFactory();
bus = bf.createBus("org/apache/cxf/systest/ws/policy/addr-inline-policy-old.xml");
BusFactory.setDefaultBus(bus);
BasicGreeterService gs = new BasicGreeterService();
final Greeter greeter = gs.getGreeterPort();
updateAddressPort(greeter, PORT);
LOG.fine("Created greeter client.");
ConnectionHelper.setKeepAliveConnection(greeter, true);
testInterceptors(bus);
// oneway
greeter.greetMeOneWay("CXF");
// two-way
assertEquals("CXF", greeter.greetMe("cxf"));
try {
greeter.pingMe();
} catch (PingMeFault ex) {
fail("First invocation should have succeeded.");
}
try {
greeter.pingMe();
fail("Expected PingMeFault not thrown.");
} catch (PingMeFault ex) {
assertEquals(2, ex.getFaultInfo().getMajor());
assertEquals(1, ex.getFaultInfo().getMinor());
}
((Closeable) greeter).close();
}
Aggregations