隨筆-16  評論-54  文章-0  trackbacks-0

          grant {
              permission java.lang.RuntimePermission  
          "loadLibrary.*";
              permission java.lang.RuntimePermission  
          "queuePrintJob";
              permission java.lang.RuntimePermission  
          "setContextClassLoader";
              permission java.lang.RuntimePermission  
          "getProtectionDomain";
              permission java.lang.reflect.ReflectPermission 
          "suppressAccessChecks";
              };

          grant {
              permission java.util.PropertyPermission   
          "*" ,  " read,write " ;

          };  

               最近一個項目需要用到SUN ONE APPSERVER8.1,本人在WINDOWS SERVER 2003中安裝,碰到一些問題,不過比較幸運的是都解決了,下面大概描述一下個人碰到的問題,期望能給別人帶來幫助

             一、DNS服務器問題
              安裝SUN ONE APPSERVER8.1必須要在服務器上安裝,而且必須要將該服務器設置為DNS服務器。關于WINDOWS SERVER 2003
              如何設置DNS服務器,網上很多資料,可以查閱

             二、文件系統權限訪問問題
           也許SUN ONE APPSERVER8.1服務器在文件訪問方面控制比較嚴格,如果按照默認安裝上去的系統。對于一些文件夾、文件讀取是會有一些控制的。比如說,當將應用部署上去,然后訪問應用,會拋出SecurityException。這是因為需要編譯jsp頁面,生成class文件,由于沒有寫權限,所以會出錯。解決的方法是為SUN ONE APPSERVER增加文件訪問權限。修改方法如下:
           找到安裝路徑,下面以本人的安裝路徑為例子:
           c\sunjes\ApplicationServer\domains\domain1\config
           該目錄下面有一個文件叫server.policy,打開該頁面,可以看到里面是一些關于文件訪問權限的例子

              
          //  Core server classes get all permissions by default

          grant codeBase  " file:${com.sun.aas.installRoot}/lib/- "  {
              permission java.security.AllPermission;
          };
              
              下面為文件路徑增加訪問權限,個人把整個c盤設置為可讀可寫,如下

              grant codeBase 
          " file:c:/- "
           {
              permission java.security.AllPermission;
          };

          grant {
              permission java.io.FilePermission 
          " c:/- " " read,write,execute,delete "
          ;

          }; 


           編輯完畢,保存,重啟服務器,OK,該問題解決。 :)

            三、其他幾個權限問題:
                   編輯以上問題后,重新自動,可能還會發現以下幾個異常,比如 permission java.util.PropertyPermission   "*" ,  " read,write " ;
                因此,分別加上如下幾個權限設置即可
             



            四、ORACLE10.2.0.1驅動問題
           本人部署的應用是spring+hb架構,里面用到blog/clob大字段處理,因此驅動程序用最新的驅動程序10g,版本為10.2.0.1。在部署到SUN ONE APPSERVER8.1時,也拋出類訪問異常,異常信息是:oracle.sql is sealed。沒辦法,上網搜索了一下,發現有很多人也遇過這個情況。主要是oracle10g.jar里面的Meta-inf定義,增加了sealed屬性。打開該文件MANIFEST.MF,內容如下:
           

              Manifest - Version:  1.0
          Specification
          - Title:    Oracle JDBC driver classes  for  use with JDK14
          Created
          - By:  1.4
          .2_08 (Sun Microsystems Inc.)
          sealed:
          true

          Implementation
          - Title:   ojdbc14.jar
          Specification
          -
          Vendor:   Oracle Corporation
          Specification
          - Version:  Oracle JDBC Driver version  -   " 10.2.0.1.0 "

          Implementation
          - Version: Oracle JDBC Driver version  -   " 10.2.0.1.0 "
          Implementation
          - Vendor:  Oracle Corporation
          Implementation
          - Time:    Wed Jun  22   18 : 55 : 48   2005

           關于sealed屬性網上也有
           很多資料介紹,有興趣的網友可以參閱一下。網上同行的解決方法是下載10g,低點的版本。本人的解決方法是修改一下里面的MANIFEST.MF文件,把sealed:true去掉即可。


           四、包版本不兼容。
           解決完以上幾個問題后,重新啟動,本以為萬事大吉,很不幸運的是,再次拋出異常:
           ClassNotFoundException: org.hibernate.hql.ast.HqlToken。同樣,上網搜索了一下,發現是hibernate的antlr.jar和SUN ONE APPSERVER的antlr.jar存在沖突。hibernate3.0版本用
           的antlr.jar包版本是2.7.5,比SUN ONE APPSERVER的高。以前在weblogic部署應用時,也出現過類似的問題。由于這些服務器會優先裝載自己的類,因此會出現一些問題。解決方法是把hibernate下較高版本的antlr.jar放在classpath的前面。在SUN ONE APPSERVER
           下最快捷的方式就是將antlr-2.7.5H3.jar拷貝到ApplicationServer\lib目錄下面即可

           解決完以上幾個問題后,再次重啟,訪問,OK,一切正常!好有成就感 :)

          posted on 2006-11-29 14:42 jspark 閱讀(1698) 評論(1)  編輯  收藏

          評論:
          # re: 安裝SUN ONE APPSERVER8.1以及部署應用所碰到的問題 2007-08-09 16:16 | 逍遙游
          Sun自己的應用服務器,兼容性都比不上Tomcat好!  回復  更多評論
            

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


          網站導航:
           
          主站蜘蛛池模板: 镶黄旗| 青川县| 台东县| 同江市| 颍上县| 南昌县| 瑞昌市| 灵山县| 柯坪县| 库车县| 黄龙县| 读书| 澎湖县| 宁陕县| 新闻| 崇州市| 青田县| 额尔古纳市| 双峰县| 德惠市| 滦南县| 沙河市| 哈巴河县| 镇安县| 乐陵市| 长阳| 南丰县| 和田市| 泗阳县| 台中县| 石台县| 河池市| 页游| 丹江口市| 陕西省| 泽州县| 莱芜市| 登封市| 礼泉县| 浪卡子县| 渭南市|