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

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

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

    隨筆-95  評論-31  文章-10  trackbacks-0
    osgi本來就是基于插件的模塊化開發(fā),如果要放在web容器下運行,它提供了一個ServletBrige.class類(名字記不太清了),比如在web.xml配置Servlet的name以及實現(xiàn)類為這個ServletBrige類,還有一些初始化的參數(shù),這些參數(shù)名稱是固定的,可以反編譯這個ServletBrige類查看,那么web容器啟動的時候,就能加載osgi,但是為什么要這樣做?為什么不直接建立個web項目直接在web容器運行豈不是好?
    如果按照這種方式,那么要獲取web容器替我們初始化好的東西比如JNDI、數(shù)據(jù)源、JMS連接工廠等等就會有問題,因為osgi的類加載器是每個工程有自己的類加載器(osgi玩的不深,查了些資料貌似是這樣說),如果要獲取web容器配置的東西,那么要使用如下方式:
    Thread current = Thread.currentThread();
            ClassLoader old 
    = current.getContextClassLoader(); //獲得當前線程的類加載器
            try{
            current.setContextClassLoader(ServletBrige.
    class.getClassLoader());//將類加載器換成web.xml里面的servletBrige類(這個類名記不清楚~),這樣就可以獲取web容器初始化好的內容
            InitialContext context = new InitialContext(); //這一步new InitialContext()的時候才不會報異常,才能獲取web容器的內容
            context.lookup("jms/datasource);
            }
    catch(Exception e){
                
            }
    finally{
                current.setContextClassLoader(old); 
    //操作結束后,將類加載器換回來
            }
    但是采用上面這一步獲取數(shù)據(jù)源是沒有問題的,但是采用上面的方式獲取jms連接工廠就會報錯,具體錯誤信息是無法強制類型轉換,最后搞了好久,反編譯看過了,最后類型一模一樣仍然無法強制類型轉換,(websphere6.1里面的jms以及隊列配置沒有任何問題)。
    所以后來,不用這種方式,采用直接給new InitialContext(Props);的方式獲取,代碼如下:
    Properties props = new Properties();
            props.put(Context.INITIAL_CONTEXT_FACTORY, 
    "xxxxx");//名字記不清楚了,這兩個是was工廠寫死的,明天看下代碼補上
            props.put(Context.PROVIDER_URL, "iiop://localhost:2809");//這里面的url也基本上寫死的,里面的2809端口號是was的應用程序服務器 > server1 > 端口里面的BOOTSTRAP_ADDRESS值
        
            InitialContext context 
    = new InitialContext(props);
    //        接著就可以獲取jms的jndi了
    用這種方式需要was的包,具體如下(家里安裝的是was7):
    IBM\WebSphere\AppServer\runtimes\com.ibm.ws.admin.client_7.0.0.jar
    IBM\WebSphere\AppServer\runtimes\com.ibm.ws.webservices.thinclient_7.0.0.jar
    \IBM\WebSphere\AppServer\plugins\com.ibm.ws.runtime.jar
    還有幾個類 明天補上











    posted on 2012-07-25 00:51 朔望魔刃 閱讀(464) 評論(0)  編輯  收藏

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


    網站導航:
     
    主站蜘蛛池模板: 亚洲av无码国产综合专区| 亚洲成AV人影片在线观看| 国产一卡二卡四卡免费| 亚洲爆乳少妇无码激情| 亚洲日本乱码在线观看| 青青青国产在线观看免费网站| 亚洲精华国产精华精华液| 亚洲美女又黄又爽在线观看| 日本免费xxxx| 国产成人精品免费大全| 亚洲va在线va天堂成人| 亚洲欧洲美洲无码精品VA| 国产h视频在线观看网站免费| 黄色免费网站在线看| 久久精品亚洲中文字幕无码麻豆 | aa毛片免费全部播放完整| 4444亚洲国产成人精品| 免费人成在线观看视频播放| 99久久免费观看| 成年网在线观看免费观看网址 | 久久亚洲精品无码gv| 一级毛片在播放免费| 国产乱码免费卡1卡二卡3卡| 一级毛片a免费播放王色| 中中文字幕亚洲无线码| 亚洲av无码精品网站| 免费a级毛片无码av| 黄在线观看www免费看| 日本高清免费观看| 人妻无码中文字幕免费视频蜜桃 | 亚洲高清有码中文字| 亚洲AV无码乱码国产麻豆穿越 | 一个人看的www视频免费在线观看| 亚洲jizzjizz在线播放久| 亚洲电影中文字幕| 国产亚洲av片在线观看18女人| 久久久久久国产精品免费免费| 三年片在线观看免费大全电影| 中文字幕免费观看视频| 免费人成网站永久| 欧洲亚洲综合一区二区三区|