2012-06-14 31 views
0

我正在使用PrintServiceLookup來搜索使用小程序安裝在客戶端計算機上的默認打印服務。這段代碼在我的機器上工作正常,並且applet正確加載並返回默認打印服務名稱,但是當我的機器從另一個客戶端訪問時,小程序在一臺機器上返回BLANK,在另一臺機器上返回NullPointerException,因爲PrintSerivceLookup在該機器上返回NULL。PrintServiceLookup返回NULL

此外,當在這些機器上,我嘗試使用Main方法調用運行小程序,它完美地工作。

請建議。

這是我寫的代碼:

HTML: 
APPLET code="CheckClientDefaultPrinterAddress.class" width=350 height=125 name="printerApp" 

SCRIPT: 
var defaultPrinterIp = document.printerApp.getDefaultPrinterIP(); 
alert(defaultPrinterIp); 

JAVA CODE: 
PrintService service = PrintServiceLookup.lookupDefaultPrintService(); 
if(service != null) { 
    defaultPrinter = service.getName(); 
} 

回報defaultPrinter;

回答

1

我解決它通過添加以下行java.policy文件:

permission java.security.AllPermission; 

但還是老樣子沒能找出其所需的精確權限。給所有權限對applet不安全。