2014-11-22 1 views
3

나는 다음과 같은 문제가 있습니다Java.security.Access.ControlException : ("java.io.FilePermission는" "[오브젝트 파일]" "읽기") 액세스가 거부

내가 애플릿을 통해 수신하는 자바 프로그램을을 2 진 파일.

나는 getParameter(file)로 해당 파일을 수신 java.io.FileInputStream(file)으로 해당 파일을 읽습니다.

내가 웹 서버에서이 파일을 넣고 자바 스크립트

첫째 통해 자바 프로그램을 호출, 나는이 프로그램을 실행 할 때, 메시지 오류가 발생하는이었다 : 나는 keytool를 통해 키를 생성

Java.security.Access.ControlException: access denied("java.io.FilePermission" "[object file]" "read") 

jarsigner와 jar 파일을 체결했다.

Java.security.Access.ControlException: access denied("java.io.FilePermission" "[object file]" "read"). 

따라서, 오류도 서명 후 지속 : 심지어 명령 jarsigner, 내가 다시 Java 프로그램을 실행할 때 오류 메시지가 발생하는 계속 실행을

하지만.

나는 무엇을해야할지 정말로 모른다.

아무도 도와 줄 수 있습니까? 자바 코드 아래

:

당신은 같은 AccessController.doPrivileged에 코드를 포장 할 필요가
public class InJava extends Applet{ 
    String parametro;  
    public void sayHello() { 

     parametro = getParameter("parametro"); 

     java.io.FileInputStream fis = null; 

     try { 
      fis = new java.io.FileInputStream(parametro); 
     } 
     catch (Exception e) { 
      String retorno_exc = e.toString(); 
      return ; 
     } 

    } 

답변

2

: 당신이 이해 애플릿 항아리 (들)이 서명되어 있는지 확인하고,

public class InJava extends Applet{ 

    public void sayHello() { 

    final String parametro = getParameter("parametro"); 

    FileInputStream fis = AccessController.doPrivileged(new PrivilegedAction<FileInputStream>() { 
     public FileInputStream run() { 
     try { 
      retrun new FileInputStream(parametro); 
     } catch (IOException e) { 
      // handle exception 
     } 
     } 
    }); 
    } 

runningappletallotherconsequences.

관련 문제