<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

    搜索

    •  

    最新評論

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

    一、準(zhǔn)備工作
    準(zhǔn)備工作分為兩個部分:準(zhǔn)備一個OSGi Application  和  準(zhǔn)備Tomcat-OSGi運(yùn)行環(huán)境

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

    2. 準(zhǔn)備Tomcat-OSGi運(yùn)行環(huán)境
         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節(jié)點(diǎn)添加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 定義了控制臺權(quán)限,如下

    <?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 應(yīng)用程序?qū)С鰹閎undle

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

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

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

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

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

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


    相關(guān)資源

    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

    構(gòu)建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  

    構(gòu)建新版jpetstore-osgi-demo的相關(guān)問題:
    Tomcat-OSGi Demo: JPetStoreOSGi(Spring-osgi 1.2.0)


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

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


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 国产l精品国产亚洲区在线观看| 日韩视频免费一区二区三区| 亚洲线精品一区二区三区| 国产精品亚洲专区一区| 日本不卡免费新一二三区| 亚洲综合av一区二区三区不卡| 青娱乐免费视频在线观看| 亚洲综合色婷婷在线观看| 麻豆国产精品免费视频| 亚洲免费视频播放| 免费H网站在线观看的| 亚洲午夜精品久久久久久app| 毛片免费在线观看网址| 日韩国产精品亚洲а∨天堂免| 国产免费无遮挡精品视频| 一级做a爰黑人又硬又粗免费看51社区国产精品视 | 亚洲AV日韩AV永久无码绿巨人 | 亚洲国产精品成人AV在线| 国产精品jizz在线观看免费| 暖暖免费中文在线日本| 亚洲乱色熟女一区二区三区丝袜| 99视频免费在线观看| 91亚洲国产成人精品下载| 成人爽A毛片免费看| 黄色网址免费在线| 黑人精品videos亚洲人| 免费专区丝袜脚调教视频| 亚洲风情亚Aⅴ在线发布| 亚洲综合亚洲综合网成人| 一级做a爰全过程免费视频| 亚洲国产成AV人天堂无码| 国产无遮挡吃胸膜奶免费看| 中国人免费观看高清在线观看二区| 亚洲成人免费在线| 日韩a在线观看免费观看| 一级成人毛片免费观看| 777亚洲精品乱码久久久久久 | 四虎在线视频免费观看视频| 亚洲日韩亚洲另类激情文学| 亚洲欧洲中文日韩av乱码| 91高清免费国产自产拍2021|