【发布时间】:2012-03-19 21:43:50
【问题描述】:
我在 GlassFish 服务器 3.1.2 上正确部署 Web 应用程序包(OSGi-fied WAR)时遇到了一些严重问题
当我将我的 WAR 部署为一个 Web 应用程序时,一切正常,我可以在浏览器中打开我的应用程序。
但除此之外,我还希望它在 OSGi 环境中运行。当我将 WAR 部署为 OSGi 包时(在 asadmin deploy 命令中使用选项 --type=osgi),该包已正确安装到 OSGi 容器中,但这次 GlassFish 无法将其识别为 Web 应用程序 - 我得到 404尝试在浏览器中打开我的应用时出错 (The requested resource () is not available.)。
我找到了this solution,但在我的情况下它不起作用。
这是我的捆绑包的清单:
Manifest-Version: 1.0
Webapp-Context: /ares-gui
Bundle-ClassPath: WEB-INF/classes
Bundle-Version: 0.0.0.unspecified
Tool: Bnd-1.50.0
Bnd-LastModified: 1332182568717
Bundle-Name: ares-gui
Bundle-ManifestVersion: 2
Created-By: 1.6.0_26 (Sun Microsystems Inc.)
Import-Package: javax.servlet;version="[3.0,4)",javax.servlet.http;ver
sion="[3.0,4)"
Bundle-SymbolicName: ares-gui
Web-ContextPath: /ares-gui
应用程序本身是一个简单的 servlet,带有来自 Servlet API 3.0 的 WebServlet 注释。
我还尝试了在网上找到的其他示例 WAB(例如 this 之一),我遇到了同样的问题。
【问题讨论】:
标签: jakarta-ee glassfish osgi war