0
我需要編寫一個內置Jetty或Tomcat的服務器,它能夠以編程方式使用Apache CXF將Web服務公開爲POJO,即不需要將其部署爲.war文件。這與CXF可能嗎?作爲Web服務暴露POJO與CXF沒有部署爲WAR文件
謝謝。
我需要編寫一個內置Jetty或Tomcat的服務器,它能夠以編程方式使用Apache CXF將Web服務公開爲POJO,即不需要將其部署爲.war文件。這與CXF可能嗎?作爲Web服務暴露POJO與CXF沒有部署爲WAR文件
謝謝。
Java附帶一個您可以使用的嵌入式服務器。用@WebService
註釋您的POJO就足夠了,您不需要額外的包裝。簡單地創建Web服務的實例和部署使用Endpoint.publish()
:
YourPojo service = new YourPojo(); // the class annotated with @WebService
Endpoint.publish("http://localhost:2000/serviceAddress", service);
嵌入式服務器將是罰款,簡單的場景,只是知道,這將任意負載下的規模。
現在,如果您希望將CXF用於此服務,您只需將CXF庫放入其構建路徑即可。部署機制Endpoint
類保持完全相同。這是解釋這個例子的a tutorial from CXF。 CXF自動似乎用Jetty替換默認服務器。至少這是CXF在啓動時打印到我的控制檯的內容:
Jun 24, 2013 1:36:29 PM org.eclipse.jetty.server.Server doStart
INFO: jetty-8.1.7.v20120910
Jun 24, 2013 1:36:29 PM org.eclipse.jetty.server.AbstractConnector doStart
INFO: Started [email protected]:2000
是使用Jetty還是Tomcat硬性要求或者是任何其他嵌入式服務器好嗎?如果是這樣,你可以簡單地使用Java附帶的服務器。 – joergl
那麼我想Jetty或Tomcat成爲servlet引擎。但我也開放其他選項。基本上需要將POJO作爲一種Web服務公開,只需註釋即可。 – Jeewantha