Я знаю, что уже было довольно много вопросов по этой теме, но я не смог найти один для моей проблемы.
Я просто создаю апплет JAVA, который читает из файла XML, а затем делаетчто с этим делать.Когда я тестирую в Eclipse, он отлично работает со следующим кодом (неделю1 - кнопка!):
week1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
parseXMLFile("../../week1.xml", teams);
updateTable(teams);
}
});
Поскольку файл .java находится в папке src, а xml находится в корне, это"../../week1.xml" делает свое дело.Но когда я экспортирую апплет как JAR и вставляю его в страницу HTML, страница загружается вместе с апплетом, но когда я нажимаю кнопку week1, ничего не происходит (я почти уверен, что это потому, что он не находит файл XML какэто вне архива JAR).Я получаю эту ошибку в консоли Java:
java.security.AccessControlException: access denied ("java.util.PropertyPermission" "user.dir" "read")
at java.security.AccessControlContext.checkPermission(Unknown Source)
at java.security.AccessController.checkPermission(Unknown Source)
at java.lang.SecurityManager.checkPermission(Unknown Source)
at java.lang.SecurityManager.checkPropertyAccess(Unknown Source)
at java.lang.System.getProperty(Unknown Source)
at java.io.Win32FileSystem.getUserPath(Unknown Source)
at java.io.Win32FileSystem.resolve(Unknown Source)
at java.io.File.getAbsolutePath(Unknown Source)
at java.io.File.getAbsoluteFile(Unknown Source)
at java.io.File.toURI(Unknown Source)
at javax.xml.parsers.DocumentBuilder.parse(Unknown Source)
at skullBall.parseXMLFile(skullBall.java:77)
at skullBall.access$0(skullBall.java:70)
at skullBall$1.actionPerformed(skullBall.java:52)
Я хотел бы, чтобы архив .jar и файл xml находились в одном месте, как я могу это сделать, поскольку код внутри JAR должен прочитатьxml, что снаружи?
Большое спасибо