Прошло много лет с тех пор, как я работал на Java (это мое оправдание).
Я пытаюсь запустить Java Swing UI как апплет (ранее это делалось через веб-запуск).
Я изменил файл jnlp, чтобы отразить изменения, которые, как я знаю, необходимы для апплета (например, использование applet-desc вместо application-desc).
Внутри тега <resources>
в файле jnlp мы устанавливаем системные свойства следующим образом:
<property name="java.security.auth.login.config" value="$$context/app/auth.conf"/>
В методе init основного класса мы пытаемся прочитать некоторые из этих системных свойств и всегда получаем «null» в качестве значения.
У кого-нибудь есть идеи, почему системные свойства не "залипают"?
Возможно, странная странность: у меня установлена Java, чтобы открыть консоль, когда что-то запускается. Когда я загружаю страницу с помощью этого апплета, окна консоли открываются ДВАЖДЫ, оба окна показывают детали загрузки jnlp, но только одно окно продолжается с полной загрузкой приложения.
UPDATE:
Вот файл jnlp:
<?xml version="1.0" encoding="UTF-8"?>
<jnlp spec="1.0+" >
<information>
<title>app</title>
<offline-allowed/>
</information>
<security>
<all-permissions/>
</security>
<resources>
<j2se version="1.6+" java-vm-args="-Xms128m -Xmx1024m -Xss1m"/>
<property name="java.naming.factory.initial" value="org.jboss.naming.HttpNamingContextFactory"/>
<property name="java.naming.factory.url.pkgs" value="org.jboss.naming:org.jnp.interfaces"/>
<property name="java.naming.provider.url" value="$$context/invoker/JNDIFactory"/>
<property name="java.security.policy" value="$$context/app/server.policy"/>
<property name="java.security.auth.login.config" value="$$context/app/auth.conf"/>
<property name="login.context" value="client-login"/>
<property name="jndi.port" value="1099"/>
<property name="service.impl" value="Remote"/>
<property name="polling" value="true"/>
<jar href="cglib-2.1.3.jar"/>
<jar href="com.jdas.apps.binmgmt.gui.jar" main="true"/>
<jar href="commons-beanutils.jar"/>
<jar href="commons-collections-2.1.1.jar"/>
<jar href="commons-javaflow.jar"/>
<jar href="commons-lang.jar"/>
<jar href="commons-logging.jar"/>
<jar href="ecs-1.4.1.jar"/>
<jar href="hibernate3.jar"/>
<jar href="itext-1.01.jar"/>
<jar href="jade-5.2.3_AGRIS_PATCH.jar"/>
<jar href="jbossall-client.jar"/>
<jar href="jboss-j2ee.jar"/>
<jar href="jcalendar-1.1.4-agris.jar"/>
<jar href="jhall-3.1.3.jar"/>
<jar href="looks-all-1.1.jar"/>
<jar href="odmg-3.0.jar"/>
<jar href="pvjdbc2.jar"/>
<jar href="swing-layout-1.0.jar"/>
<extension name="additional" href="unsigned.jnlp"/>
</resources>
<applet-desc main-class="com.jdas.apps.binmgmt.gui.main.BinManagementApp" name="binMgmt" width="1024" height="768" >
</applet-desc>
</jnlp>