我有一個遺留應用程序,我試圖移植到Java EE。目前這個應用程序調用URL.setURLStreamHandlerFactory()來註冊一些自定義的URL協議處理程序。這次調用在Glassfish v 2.1和3下失敗,因爲glassfish已經註冊了一家工廠。glassfish中的新URLStreamHandlers
我使用java.protocol.handler.pkgs系統屬性試過了,但是,這並不適合我,由於類加載器問題開展工作。處理程序類都是應用程序的一部分,我不想嘗試提取它們並將容器放入容器的類路徑中。
我有OSGi包的氣息 - 顯然我可以寫會應對新的協議束。我並不熱衷於使這個Web應用程序成爲一個osgi包(一次一個步驟!首先是EE,如果需要的話,然後是osgi)。
是否有可能彈出一個包JAR在我的WEB-INF/lib目錄,並將它Glassfish的負荷捆綁?該軟件包需要從Web應用程序(WEB-INF/lib或WEB-INF/classes中的另一個jar)導入包。我願意將這個應用程序打包爲EAR,如果這個應用程序可以工作的話,我不能在不知道更多的情況下對整個應用程序進行整合。