2009-02-27 83 views
1

我已經創建了一個jar文件來加載本地庫(使用System.loadlibrary())並將其配置爲WebSphere(v6.1)中的共享庫。服務器與啓用Java 2運行(這是法律...)Websphere共享庫和Java 2安全性

當我嘗試訪問庫時,我可以看到正在從我的jar文件加載正確的類,但嘗試加載本機庫給了我下面的安全異常: -

 

Permission: 

     loadLibrary.gbif : Access denied (java.lang.RuntimePermission loadLibrary.gbif) 


Code: 

    com.dave.nativelibrary.NativeLibraryLoader in {file:/hosting/apps/D03-dave-dev/lib/NativeLibraryLoader.jar} 



Stack Trace: 

java.security.AccessControlException: Access denied (java.lang.RuntimePermission loadLibrary.gbif) 
    at java.security.AccessController.checkPermission(AccessController.java:104) 
    at java.lang.SecurityManager.checkPermission(SecurityManager.java:547) 
    at com.ibm.ws.security.core.SecurityManager.checkPermission(SecurityManager.java:189) 
    at java.lang.SecurityManager.checkLink(SecurityManager.java:833) 
    at java.lang.ClassLoader.loadLibraryWithClassLoader(ClassLoader.java:917) 
    at java.lang.System.loadLibrary(System.java:453) 
    at com.dave.nativelibrary.NativeLibraryLoader.(NativeLibraryLoader.java:21) 

---剪斷---

我真的不知道我在做什麼 - 所以我有一對夫婦嘗試放以下是我的was.policy文件

permission java.lang.RuntimePermission「loadLibrary.gbif」;

我在應用程序和jar部分都嘗試了這個,但它沒有任何好處。

任何人都可以闡明我需要在這裏做什麼?

感謝

戴夫

回答

0

取而代之的包裝罐LIB內的原生庫。您是否嘗試將本機代碼定義爲websphere內的共享本機庫?