2012-03-19 91 views
0

我在正確部署Web應用程序捆綁GlassFish服務器上(OSGi的田間WAR)的一些嚴重的問題3.1.2無法部署Web應用程序捆綁在GlassFish

當我部署我的戰爭只是一個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之一),我也遇到了同樣的問題。

回答

0

解決GlassFish中3.1.2這個問題是org.osgi.framework.startlevel.beginning選項glassfish3/glassfish/config/osgi.properties配置文件設置爲3。我還設置glassfish.osgi.start.level.final 4,因爲我認爲它應該具有比第一選擇更大的價值,雖然我不當然,如果這是必要的。

相關問題