我不明白我在做什么错。我使用jaxb2处理客户端肥皂,并且遵循了本教程https://howtodoinjava.com/spring-boot/spring-soap-client-webservicetemplate/。它使用CommandLineRunner测试应用程序。我将此代码改编为收据肥皂错误。 我在SpringBootApplication类中尝试了以下代码:
@Bean
CommandLineRunner lookup(SOAPConnector soapConnector) {
CreateAccountRequest request = new CreateAccountRequest();
request.setFirstname(test);
request.setEmail("test@test.com");
request.setLastname("test");
request.setPassword("test");
CreateAccountResponse response = null;
try {
response = (CreateAccountResponse) soapConnector.callWebService("http://localhost:8080/anonymous/createAccount", request);
}catch (SoapFaultClientException e){
e.printStackTrace();
System.out.println(e.getFaultStringOrReason());
}
};
它可以正常工作,并且我收到很好的异常消息:
org.springframework.ws.soap.client.SoapFaultClientException: This user already exists !
但是,当我将此代码放入控制器类(没有CommandLineRunner)时,e.getFaultStringOrReason()的结果是不同的。 我得到了:
org.springframework.ws.soap.client.SoapFaultClientException: Validation error
我应该怎么做才能得到类似CommandLineRunner的肥皂详细信息错误?