2013-08-31 39 views
0

我已經試驗了Derkoe's code,它將JAX-WS服務與Tapestry集成在一起。 Tapestry是一個web和DI(即依賴注入)框架。將JAX-WS與Tapestry集成在一起

該代碼很好,但I couldn't fully use all JAX-WS features

Tapestry的IoC爲我的Web服務創建了一個代理,因此不支持JAX-WS註釋。 和JAX-WS上下文監聽器,當然不會遵守Tapestry的配置來處理我的服務,所以它不會執行任何DI。

所以我可以運行我的掛毯服務,而JAX-WS的全力支持,只有Web方法將被調用,

或者

我可以使用JAX-WS的全力支持,但沒有一個DI的支持。

那麼如何將JAX-WS與Tapestry的IoC集成?這主要是一個JAX-WS問題。

  • 如何擴展\修改,JAX-WS如何創建服務?

據我所知,我應該更換this class (InstanceResolver)。但是如何?我找不到明確的答案

我不能使用任何其他框架。只有JAX-WS和Tapestry。

回答

1

發現它:)

在Derkoe的ServiceInvoker類。方法start爲空。只需把它放在裏面:

ResourceInjector.STANDALONE.inject(wsc, service); 

我從com.sun.xml.ws.server.SingletonResolver<T>這個類裏借了它。

相關問題