我必须维护一个Java EE 5 Web应用程序。 此应用程序的一部分是通过Web服务(使用WSDL合同)交换消息。 wsdl用于通过Eclipse wsdl2Java生成Java类(我认为它使用Axis)
现在我必须实现一个修改,我们通过Web Service调用的服务器必须能够以异步方式响应。 事实上,服务器不会立即响应SOAP消息响应,但过了一段时间,调用客户端公开的Web服务(我们的Web应用程序) 将第一次调用的SOAP Message响应作为第二次Web服务调用的字段(参数)传递 然后,客户端将SOAP响应(或XML)保存在文件中。
有没有办法使用此XML或SOAP消息文件填充已生成的Java类?我的意思是一种模拟服务器直接响应的方法(提供Axis绑定存根)
我也尝试使用JAXB(将XML绑定到JAVA),但由于SOAP消息响应很复杂,因此当我调用JAXBContext时收到错误:
CodPrestazione does not have a no-arg default constructor
因为这个类是由wsdl2Java生成的枚举类。
有没有办法在没有注释或修改java类的情况下绕过这个错误(这个类是生成的,所以每次重新生成都会被迫修改这个类)?