0
在OSGi的世界裏,你可以一個Servlet
使用擴展OSGi的HttpService的
HttpService.registerServlet(String alias, Servlet servlet, Dictionary initParams, HttpContext context);
因此,對於具有SymbolicName
foo.bar
捆綁註冊,我所能做的
HttpService.registerServlet("/foo", new FooServlet(), null, null);
我要擴展這個registerServlet方法來確保alias
從軟件包的SymbolicName
開始,即「/foo.bar」。我需要這樣做,以在基於它們的SymbolicName
的包之間提供URL名稱空間隔離,以便它們不會意外地將servlet註冊爲相同的別名。
除了修改HttpService
的實現之外,實現此目的的最佳方法是什麼?是否有任何服務擴展掛鉤可以添加我的驗證邏輯?我可以以某種方式擴展HttpService
並覆蓋registerServlet
方法並隱藏現有的方法嗎?
我在橋接模式下使用Apache Felix。