子在川上曰

            逝者如斯夫不舍晝夜
          隨筆 - 71, 文章 - 0, 評論 - 915, 引用 - 0

          導航

          隨筆分類(72)

          搜索

          •  

          積分與排名

          • 積分 - 592370
          • 排名 - 81

          最新評論

          閱讀排行榜

          RCP中因ClassLoader 而導致找不到類的解決方法

          我的RCP對ClassLoad問題的解決,這是一個讀jndi配置文件的方法。
              private void intJNDI() {
                  ClassLoader cl = Thread.currentThread().getContextClassLoader(); //保存老的ClassLoader
                  Thread.currentThread().setContextClassLoader(this.getClass().getClassLoader()); //設置新的ClassLoader
                  IPath path = new Path("properties/jndi.properties");
                  URL url = AdminConsolePlugin.getDefault().find(path);
                  Properties p = new Properties();
                  try {
                      p.load(url.openStream());
                      String address = System.getProperty("jndi.address");
                      String port = System.getProperty("jndi.port");
                      if (address != null && !address.trim().equals("") && port != null && !port.trim().equals("")) {
                          p.remove("java.naming.provider.url");
                          p.setProperty("java.naming.provider.url", "jnp://" + address.trim() + ":" + port.trim());
                      }
                      AdminConsolePlugin.getDefault().setJNDIInitContext(new InitialContext(p));
                  } catch (Throwable e) {
                      throw new RuntimeException("Failed to connect to domain controller.", e);
                  } finally {
                      Thread.currentThread().setContextClassLoader(cl);//最后恢復成老的ClassLoader
                  }
              }

          posted on 2006-03-07 14:49 陳剛 閱讀(1102) 評論(0)  編輯  收藏 所屬分類: Eclipse

          主站蜘蛛池模板: 澎湖县| 新乡县| 大理市| 太仆寺旗| 马公市| 平和县| 革吉县| 明光市| 宁波市| 邵东县| 马尔康县| 高尔夫| 巩义市| 亳州市| 柘荣县| 枣庄市| 广宁县| 兴国县| 乌兰浩特市| 黄大仙区| 西吉县| 达孜县| 莱芜市| 塘沽区| 株洲县| 高阳县| 疏附县| 峨眉山市| 金沙县| 呼伦贝尔市| 巴林左旗| 普兰县| 苏尼特右旗| 大渡口区| 明溪县| 邵阳市| 蒲江县| 美姑县| 类乌齐县| 承德县| 车险|