<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆 - 1  文章 - 37  trackbacks - 0
    <2025年7月>
    293012345
    6789101112
    13141516171819
    20212223242526
    272829303112
    3456789

    留言簿(16)

    隨筆分類

    隨筆檔案

    文章分類

    文章檔案

    test

    搜索

    •  

    最新評論

    關于本文
    本文介紹如何將一個OSGi Application部署到Tomcat-OSGi中,你會發現這是一件非常簡單的事情。
    在本文的最后部分有相關資源的下載鏈接和文檔鏈接

    一、準備工作
    準備工作分為兩個部分:準備一個OSGi Application  和  準備Tomcat-OSGi運行環境

    1. 準備一個OSGi Application
    Tomcat-OSGi已經準備了一個應用程序:jpetstore-osgi-demo,它是將spring sample - jpetstore加以修改而成的OSGi應用程序。
    jpetstore-osgi-demo的最新版本是基于spring-framework-2.5.6和spring-osgi-1.2.0的,點擊這里下載Projects

    2. 準備Tomcat-OSGi運行環境
         1.>  下載Tomcat的最新版本  apache-tomcat-6.0.18
         2.>  Tomcat-OSGi:Tomcat-OSGi-all-in-one.rar

    解壓縮Tomcat-OSGi-all-in-one.rar
    將2個jar包拷貝至Tomcat-home/lib 目錄下
    將2個xml文件拷貝至tomcat-home/conf目錄下
    將war包拷貝至Tomcat-home/webapps 目錄下

    server.xml只是在host節點添加2個屬性,如下:

    <Host name="localhost"  appBase="webapps"
                unpackWARs
    ="true" autoDeploy="true"
                xmlValidation
    ="false" xmlNamespaceAware="false" className="org.extwind.tomcat.catalina.core.ExtenseStandardHost" hostConfigClass="org.extwind.tomcat.catalina.startup.ExtenseHostConfig">


    tomcat-users.xml 定義了控制臺權限,如下

    <?xml version='1.0' encoding='utf-8'?>
    <tomcat-users>
      
    <role rolename="manager"/>
      
    <role rolename="tomcat"/>
      
    <role rolename="admin"/>
      
    <role rolename="role1"/>
      
    <user username="tomcat" password="tomcat" roles="tomcat,manager"/>
      
    <user username="both" password="tomcat" roles="tomcat,role1"/>
      
    <user username="role1" password="tomcat" roles="role1"/>
    </tomcat-users>


    二、將OSGi 應用程序導出為bundle

    將下載的projects.rar解壓縮,并在eclipse中作為plug-in導入它們,org.extwind.osgi.demo.jpetstoreosgi.launcher需要作為一個普通project導入,這些projects包含了源代碼,方便你進行調試。
    Tomcat-OSGi已經準備好了這些bundle,點擊這里下載bundles
    通過eclipse的導出功能,將他們導出為bundle jar包,需要注意的是,org.apache.jasper, jetty,javax.servlet.*和org.eclipse.osgi是不需要導出的。(在org.extwind.osgi.demo.jpetstoreosgi.launcher中有一個導出腳本Exporter.xml,可以運行它進行導出)

    三、在Tomcat-OSGi中部署bundle
    在tomcat-home/webapps中新建一個目錄JPetStoreOSGi,在JPetStoreOSGi目錄中新建一個空文件osgi.ini,并將導出的bundles拷貝到該目錄下。
    執行spring-framework-2.5.6/samples/jpetstore/db/hsqldb/server.bat 啟動數據庫

    現在,準備工作已經完成了,在瀏覽器中輸入 http://localhost:8080/console  進入OSGi控制臺,你會發現所有bundle都已經安裝好了,將所有的bundle都啟動了,(建議先啟動org.springframework.osgi.web.extender)。

    現在是時候來看看JPetStoreOSGi部署到Tomcat-OSGi中后的效果了,在瀏覽器中訪問下面這個地址
    http://localhost:8080/JPetStoreOSGi/shop/index.do

    目前osgi.ini中支持properties屬性 osgi.console,啟動osgi控制臺。

    在Tomcat-OSGi alpha2版本中,支持Equinox-JspServlet的注冊,并兼容其URI pattern,也就是說,在eclipse的開發環境中開發出來的應用程序可以直接部署到Tomcat-OSGi中,而無需任何代碼級別的修改。
    有一點點區別就是,在Tomcat-OSGi中已經export了javax.servlet(2.4),javax.servlet.jsp(2.1)和org.apache.jasper,因此在Tomcat-OSGi中這些bundle是不需要加入的。
    勿在app中使用org.apache.jasper,會導致其他應用程序的jsp出現錯誤。


    相關資源

    Extwind的Google Group: http://groups.google.com/group/extwind
    Extwind的Google Project:  http://code.google.com/p/extwind  

    Tomcat-OSGi-alpha-2 all-in-one 下載地址
    http://extwind.googlecode.com/svn/trunk/dist/Tomcat-OSGi/Tomcat-OSGi-all-in-one.rar

    Extwind SVN: http://extwind.googlecode.com/svn/trunk/

    jpetstore-osgi-demo的bundles下載地址
    http://extwind.googlecode.com/svn/trunk/demo/jpetstore-osgi-demo/Bundles.rar
    jpetstore-osgi-demo的projects下載地址
    http://extwind.googlecode.com/svn/trunk/demo/jpetstore-osgi-demo/Projects.rar

    構建jpetstore-osgi-demo的演示過程:
    Developing Equinox/Spring-osgi/Spring Framework Web Application Part 1 - 顯示首頁
    Developing Equinox/Spring-osgi/Spring Framework Web Application Part 2 - 使用Spring-OSGI  
    Developing Equinox/Spring-osgi/Spring Framework Web Application Part 3 - 找到我的Bean  

    構建新版jpetstore-osgi-demo的相關問題:
    Tomcat-OSGi Demo: JPetStoreOSGi(Spring-osgi 1.2.0)


    posted on 2009-04-26 23:39 Phrancol Yang 閱讀(5184) 評論(0)  編輯  收藏

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 国产无人区码卡二卡三卡免费| 免费无码成人AV在线播放不卡| 91热成人精品国产免费| 亚洲国产一二三精品无码| 久久精品国产亚洲沈樵| 亚洲视频手机在线| 亚洲精品天堂在线观看| 青娱乐免费视频在线观看| 亚洲中文字幕久在线| 一二三四影视在线看片免费| 亚洲AV无码久久久久网站蜜桃| 99视频全部免费精品全部四虎| 亚洲黄色一级毛片| 国产免费看JIZZ视频| 亚洲av片在线观看| 永久免费A∨片在线观看| 亚洲精品无码久久千人斩| 十八禁在线观看视频播放免费| 久久夜色精品国产嚕嚕亚洲av| 亚洲国产精品无码久久SM| 蜜桃视频在线观看免费视频网站WWW| 五月天网站亚洲小说| 思思re热免费精品视频66| 色噜噜的亚洲男人的天堂| 亚洲综合色区在线观看| 最新亚洲精品国偷自产在线| 日本大片在线看黄a∨免费| 丁香六月婷婷精品免费观看| 国产精品亚洲一区二区三区在线 | 久久精品国产99精品国产亚洲性色| 久久久久久影院久久久久免费精品国产小说| 成人免费a级毛片| 蜜桃传媒一区二区亚洲AV| 亚洲一区无码精品色| 69影院毛片免费观看视频在线| 国产亚洲玖玖玖在线观看| 久久久久亚洲AV成人网人人网站| 亚洲精品无码专区在线| 无人影院手机版在线观看免费| 男女交性无遮挡免费视频| 日韩一区二区免费视频|