Я работаю с gwtai , чтобы интегрировать Java-апплет в мой проект gwt. Базовое взаимодействие между моим основным приложением и апплетом (например, вызов простых методов, возвращающих int или логические значения) работает.
Но главная причина, по которой мне нужно интегрировать этот апплет, заключается в том, что он нужен мне для подключения к другому серверу, получения ответа и передачи его в мое gwt-приложение.
Итак, в апплете есть один основной метод:
public String SendAndReceive(String host, int sendPort, int receivePort, String query)
, который подключается к серверу, получает ответ и возвращает этот ответ в виде строки.
Когда я сейчас пытаюсь вызвать этот метод следующим образом:
applet.SendAndReceive("0.0.0.0", 9099, 2000, "show streams;");
Я постоянно сталкиваюсь со следующей ошибкой (полное сообщение об ошибке в конце):
com.google.gwt.core.client.JavaScriptException: (String): Error calling method on NPObject! [plugin exception: java.security.AccessControlException: access denied (java.util.PropertyPermission * read,write)]
Я не смог найти решение (для gwtai это довольно необычная тема), что я обнаружил (и что исключение, допустим, одно), что есть проблема безопасности - возможно, потому что я подключаюсь к другому серверу , Я также читал кое-что о политике единого источника в браузере, что бы указывало в том же направлении ... до сих пор я никогда не работал с Java-апплетами.
Так что, если у кого-то есть решение или подсказка, я был бы очень благодарен. Если больше кода полезно, я могу дать.
Спасибо
Andy
полное сообщение об ошибке:
21: 03: 49.864 [ОШИБКА] [follovizergwt] Невозможно загрузить класс точки входа модуля follovizer.gwt.client.FolloVizerGWT (подробности см. В связанном исключении)
com.google.gwt.core.client.JavaScriptException: (String): Ошибка вызова метода для NPObject! [исключение плагина: java.security.AccessControlException: доступ запрещен (java.util.PropertyPermission * чтение, запись)].
на com.google.gwt.dev.shell.BrowserChannelServer.invokeJavascript (BrowserChannelServer.java:195)
на com.google.gwt.dev.shell.ModuleSpaceOOPHM.doInvoke (ModuleSpaceOOPHM.java:120)
на com.google.gwt.dev.shell.ModuleSpace.invokeNative (ModuleSpace.java:507)
на com.google.gwt.dev.shell.ModuleSpace.invokeNativeObject (ModuleSpace.java:264)
на com.google.gwt.dev.shell.JavaScriptHost.invokeNativeObject (JavaScriptHost.java:91)
at follovizer.gwt.client.AnduINAppletImpl.SendAndReceive (AnduINAppletImpl.java)
at follovizer.gwt.client.FolloVizerGWT.createLayout (FolloVizerGWT.java:92)
at follovizer.gwt.client.FolloVizerGWT.onModuleLoad (FolloVizerGWT.java:40)
at sun.reflect.NativeMethodAccessorImpl.invoke0 (собственный метод)
at sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:25)
в java.lang.reflect.Method.invoke (Method.java:597)
на com.google.gwt.dev.shell.ModuleSpace.onLoad (ModuleSpace.java:369)
на com.google.gwt.dev.shell.OophmSessionHandler.loadModule (OophmSessionHandler.java:185)
на com.google.gwt.dev.shell.BrowserChannelServer.processConnection (BrowserChannelServer.java:380)
на com.google.gwt.dev.shell.BrowserChannelServer.run (BrowserChannelServer.java:222)
at java.lang.Thread.run (Thread.java:619)