|
|
|
Java WebStart проблемы с разрешениями
|
|||
|---|---|---|---|
|
#18+
Всем привет! Помогите пожалуйста решить проблему. Описываю ситуацию: 1. есть проект MyProject.jar, проект использует библиотеки lib1.jar lib2.jar эти библиотеки лежат в папке lib рядом с MyProject.jar, так же проект использует плагины которые могу лежать где угодно. Плагин это jar файл который в runtime подгружается к проекту по необходимости. 2. приложение запускается и работает как надо 3. пробую использовать Java Web Start для распространения своего проекта 4. подписал все файлы сертификатом 5. сделал jnlp. в jnlp файле прописаны все библиотеки, плагины не прописаны 6. пробую запустить свой проект через JWS 6.1. приложение запускается 6.2. плагины подгружаются 6.3. НО... если плагин загружен главным приложением которое содержит main class, то плагин работает нормально, если же я загружаю плагин из плагина то при работе с файлами, например, получаю ошибку java.security.AccessControlException: access denied ("java.io.FilePermission" "C:\MyProject\plugin\pluhin1.jar" "read"). Загрузчик классов в главном файле и плагинах одинаковый. ошибка появляется когда я хочу проверить есть ли файл в папке или нет if (!file.exists()) { return 0; } вот кусочек стека at java.security.AccessControlContext.checkPermission(Unknown Source) at java.security.AccessController.checkPermission(Unknown Source) at java.lang.SecurityManager.checkPermission(Unknown Source) at com.sun.javaws.security.JavaWebStartSecurity.checkPermission(Unknown Source) at java.lang.SecurityManager.checkRead(Unknown Source) at java.io.File.exists(Unknown Source) содержимое JNLP <?xml version="1.0" encoding="utf-8"?> <jnlp spec="1.0" xmlns:jfx=" http://javafx.com" href="MyProject.jnlp" codebase=" https://MyHost:8443/MyProject"> <information> <title>MyProject</title> <vendor>OOO "MyProject"</vendor> <description>MyProject</description> <icon href="MyProject.ico" width="128" height="128" kind="shortcut"/> <offline-allowed/> <shortcut> <desktop/> </shortcut> </information> <resources> <property name="user.dir" value="C:\MyProject"/> <j2se version="1.6+" href=" http://java.sun.com/products/autodl/j2se" max-heap-size="512M"/> <jar href="MyProject.jar" size="51307" download="eager" /> <jar href="lib/lib1.jar" size="2844" download="eager" /> <jar href="lib/lib2.jar" size="2756" download="eager" /> </resources> <security> <all-permissions/> </security> <application-desc width="800" height="600" main-class="com.javafx.main.NoJavaFXFallback" name="MyProject" > <param name="requiredFXVersion" value="8.0+"/> </application-desc> <jfx:javafx-desc width="800" height="600" main-class="myproject.MyProject" name="MyProject" /> <update check="always"/> </jnlp> подскажите что нужно сделать чтобы избежать ошибки описанной выше? P.S. код не форматированный потому что менюшка с тегами кода сразу пропадает при появлении. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.01.2017, 16:58 |
|
||
|
Java WebStart проблемы с разрешениями
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.01.2017, 17:25 |
|
||
|
Java WebStart проблемы с разрешениями
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, спасибо за ответ! если я правильно понял эту статью то в ней говориться что надо добавлять строки Permissions и Codebase в манифест у меня эти строки есть вот часть манифеста Manifest-Version: 1.0 Application-Name: MyProject Implementation-Title: MyProject X-COMMENT: Main-Class will be added automatically by build Implementation-Version: 1.0 Permissions: all-permissions Codebase: * JavaFX-Version: 8.0 Class-Path: lib/lib1.jar lib/lib2.jar Created-By: JavaFX Packager Implementation-Vendor: OOO "MyProject" Main-Class: myproject.MyProject может быть я еще что то забыл? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.01.2017, 19:26 |
|
||
|
Java WebStart проблемы с разрешениями
|
|||
|---|---|---|---|
|
#18+
Mandarin, Может JNLP надо подписать тоже? http://docs.oracle.com/javase/7/docs/technotes/guides/jweb/security/signedJNLP.html ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.01.2017, 19:54 |
|
||
|
Java WebStart проблемы с разрешениями
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, JNLP тоже подписан пока он не был подписан даже основное приложение не запускалось меня больше всего смущает какая-то половинчатая ситуация... если раньше не работало, то все не работало главное приложение не запускалось ссылаясь на безопасность, сейчас приложение запускается и плагины запускаются, а за этим стоит куча кода и обращение к файловой системе и к сокетам и к проперятм, но запускаются плагины только если их загружать из главного проекта, если плагин запускать из плагина, ругается на разрешения. если я запустил проект с определенными параметрами значит все его плагины (*.jar) должны исполняться с такими же правами (настройками) если загружаются тем же класслоудером что и главный проект. главный проект загружается JNLPCalssLoader плагины загружаются URLClassLoader с парентом JNLPCalssLoader ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.01.2017, 20:19 |
|
||
|
Java WebStart проблемы с разрешениями
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, Если вы знаете как решить проблему, можем помочь решить ее мне за умеренную плату :) ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.01.2017, 21:16 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=39391574&tid=2123217]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
57ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
51ms |
get tp. blocked users: |
1ms |
| others: | 226ms |
| total: | 376ms |

| 0 / 0 |
