簡體   English   中英

Apache CXF/JAX-RS、Felix 和 Jetty

[英]Apache CXF/JAX-RS, Felix and Jetty

我有一組現有的捆綁包,它們一起創建了一個 Web 應用程序(包括一個 Jetty 實例)。 一個新需求是擴展此應用程序以提供 RESTful api(使用 JAX-RS)。

我能夠獨立開發大部分 RESTful API,遠離應用程序的其余部分。 不知不覺中,我使用的 Apache CXF 包包含它自己的 Jetty 實例。 所以,孤立地看,這工作得很好。 當我合並應用程序的兩半時,兩個實例的地址發生沖突。

這一點我肯定知道。

我不知道如何重新配置​​應用程序 (JAX-RS) 的 RESTful API 部分以使用現有的 Jetty 實例。 此頁面建議使用 CXFServlet,但我找不到關於此的太多信息。

任何人都可以闡明或指出我正確的方向嗎?

編輯:我還應該提到,目前,我的端點使用 Java 接口中的 JAX-RS 注釋在端點和映射類之間進行映射。 我更願意保留這種配置方法,而不是 XML 或任何其他方法。

一種不使用 Apache CXF 的選項是使用 Amdatu 的 Web 組件,它也支持 JAX-RS 注釋。 您可以在http://amdatu.org/components/web.html找到更多關於它們的文檔,其中解釋了如何使用單獨的 Jetty 實例設置您的項目。 您可能還想在http://amdatu.org/howto/createwebapp.html觀看處理相同主題的視頻。

如果您真的想使用 Apache CXF,有兩個版本:一個幾乎是獨立的(因此也包括 Jetty)的“一體化”版本和一個由許多獨立包組成的“模塊化”版本。 后者理論上為您提供了與您自己的 Jetty 副本集成的選項,但您需要根據http://cxf.apache.org/docs/index.html上的文檔確定您需要的確切捆綁包集

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM