【发布时间】:2010-08-13 15:49:01
【问题描述】:
我以编程方式使用 spring WebServiceTemplate 作为 Web 服务客户端,即没有实例化 spring 容器。我正在使用 Jaxb2Marshaller 进行编组/解组。在我的应用程序中,我创建了一个 SaajSoapMessageFactory 实例和一个 Jaxb2Marshaller 实例。我还创建了 WebServiceTemplate 的单个实例,并分配了之前创建的 SaajSoapMessageFactory 和 Jaxb2Marshaller 实例。
我创建的 WebServiceTemplate 以多线程方式使用,即多个线程可以同时调用 marshalSendAndReceive。我的问题是 - 我的配置线程安全吗?我担心 Jaxb2Marshaller。 javadoc 说 Jaxb2Marshallers 不一定是线程安全的。如何在不重新初始化 Jaxb 上下文的情况下以线程安全的方式使用 Jaxb2Marshaller?
顺便说一句:查看 spring reference 中的示例 spring-ws 配置让我相信 Jaxb2Marshaller 是线程安全的,但 Javadoc 似乎与此相矛盾。
【问题讨论】:
标签: java spring jaxb spring-ws jaxb2