Java File IO Permission Error

Обсуждение вопросов, связанных с системой проведения турниров ejudge.
Post Reply
hukal
Posts:5
Joined:20 May 2012, 21:02
Java File IO Permission Error

Post by hukal » 20 May 2012, 21:12

Доброго всем времен суток.
Я новичок в работе с ejudge.

Возникла проблема - чтение/запись из файлов при использовании Java.

В serve.cfg строчку добавил
start_env = "EJUDGE_JAVA_POLICY=fileio.policy"

Code: Select all

[tester]
name = Linux-java
arch = "java"
abstract
no_core_dump
kill_signal = TERM
memory_limit_type = "java"
secure_exec_type = "java"
start_cmd = "runjava"
start_env = "LANG=C"
start_env = "EJUDGE_PREFIX_DIR"
start_env = "EJUDGE_JAVA_POLICY=fileio.policy"
check_dir = "/home/contest/ejudge/testing_dir"
Версия ejudge 2.3.21
Версия Java 1.6.0_23
ОС Ubuntu 11 x64
ejudge сконфигурирован без использования виртуального диска.
Ядро не патчил.
На C++ (проверил на всякий случай) таких проблем нет.

Параметр добавлял "ручками" редактируя файл (т.к. в веб интерфейсе этой возможности не нашел).
После этого пробовал:
1. Reload Config Files
2. Reset the Contest

Код решения выглядит так:

Code: Select all

import java.io.FileReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.io.StreamTokenizer;
import java.util.Arrays;

public class Main {
	public static void main(String[] args) throws IOException{
		StreamTokenizer in = new StreamTokenizer(new FileReader("input.txt"));
	}
}
Отчет об ошибке:

Code: Select all

Exception in thread "main" java.security.AccessControlException: access denied (java.io.FilePermission input.txt read)
	at java.security.AccessControlContext.checkPermission(AccessControlContext.java:393)
	at java.security.AccessController.checkPermission(AccessController.java:553)
	at java.lang.SecurityManager.checkPermission(SecurityManager.java:549)
	at java.lang.SecurityManager.checkRead(SecurityManager.java:888)
	at java.io.FileInputStream.<init>(FileInputStream.java:130)
	at java.io.FileInputStream.<init>(FileInputStream.java:96)
	at java.io.FileReader.<init>(FileReader.java:58)
	at Main.main(Main.java:10)
В чем может быть проблема?

cher
Posts:1153
Joined:13 March 2004, 17:00
Contact:

Re: Java File IO Permission Error

Post by cher » 21 May 2012, 09:20

В качестве временной меры скопируйте файл fileio.policy в файл default.policy.

hukal
Posts:5
Joined:20 May 2012, 21:02

Re: Java File IO Permission Error

Post by hukal » 21 May 2012, 09:56

cher wrote:В качестве временной меры скопируйте файл fileio.policy в файл default.policy.
Спасибо, при замене - заработало.

Post Reply