Я пытаюсь выполнить модульное тестирование кода сервисного мыла CXF.Код выполняется без каких-либо проблем.Но он возвращает ноль каждый раз, независимо от того, что я устанавливаю в теле в качестве ответа.
public class MyRouteTest extends CamelTestSupport
{
private int port = AvailablePortFinder.getNextAvailable();
@Override
protected RouteBuilder createRouteBuilder() throws Exception {
return new RouteBuilder() {
@Override
public void configure() throws Exception {
JaxbDataFormat jaxb = new JaxbDataFormat();
jaxb.setContextPath("com.example");
from("cxf:http://localhost:"+port+"/test/OpenIssue?serviceClass="+OpenIssue.class.getCanonicalName())
.convertBodyTo(OpenIssueRequest.class)
.setBody(constant("OK"));
}
};
}
@Test
public void testMySoapRoute() {
OpenIssueRequest request = new OpenIssueRequest();
request.setXXX(270);
request.setYYY("A");
request.setZZZ("ABCD");
String out = template.requestBody("cxf:http://localhost:"+port+"/test/OpenIssue?serviceClass="+OpenIssue.class.getCanonicalName(),request,String.class);
assertNotNull(out);
}
}
Этот код должен возвращать «OK» в качестве ответа, но получить ноль