我正在利用 spring 对我的 bean 对象进行所有编组/解组(通过 jaxb2Marshaller/WebServiceTemplate)。出于调试目的,我希望能够吐出请求/响应 XML。有谁知道这是否可能?谢谢。
问问题
1920 次
1 回答
1
备选方案 A:使用 TCP 监视器
TCP/IP 监视器可以很好地完成这项工作!
如果您使用的是 Eclipse,那么 TCP/IP 监视器视图是一个很好的解决方案。
使用 TCP 监视器,您将客户端的请求发送到监视器,监视器打印请求并将其转发到服务器。响应从服务器发送回监视器。打印到监视器的显示器后,监视器将请求发送回客户端。
备选方案 B:使用拦截器
要吐出所有带有错误的消息,您应该使用 Spring WS 的验证支持。
配置在客户端启用验证:
<bean id="webServiceTemplate" class=
"org.springframework.ws.client.core.WebServiceTemplate">
<property name="marshaller" ref="marshaller" />
<property name="unmarshaller" ref="marshaller" />
<property name="defaultUri"
value="http://localhost:8081/ws-demo/account-balance-service" />
<property name="interceptors">
<list>
<ref bean="payloadValidatingInterceptor" />
</list>
</property>
</bean>
<bean id="payloadValidatingInterceptor"
class="org.springframework.ws.client.support
.interceptor.PayloadValidatingInterceptor">
<property name="schema"
value="file:WebContent/WEB-INF/schemas/account-balance-service.xsd" />
<property name="validateRequest" value="true" />
<property name="validateResponse" value="true" />
</bean>
于 2010-06-30T18:09:44.263 回答