Ich habe eine java webstart Applikation erstellt, die RMI verwendet.
Server:
UnicastRemoteObject.exportObject(timer);
Registry registry = LocateRegistry.createRegistry(1099);
registry.rebind("TimeServer", timer);```
Client:
``` Registry registry = LocateRegistry.getRegistry("<server-ip>", 1099);
server = (ServerGetTimeInt) registry.lookup("TimeServer");```
Der Client wird über webstart herunter geladen und konnektiert sich mit dem Server. Wenn eine direkte Internetverbindung vorhanden ist, funktioniert es problemlos. Wenn die Client-Internetverbindung über ein Http-Proxy (mit Benutzeranmeldung) erfolgt, kann sich der Client mit dem Server nicht konnektieren. Es wird der Fehler:
java.rmi.ConnectException: Connection refused to host: <server-ip>
java.net.ConnectException: Connection timed out
zurück gegeben.
Wenn der Client hinter dem Http-Proxy nicht über Webstart sondern als lokale Applikation gestartet wird, also:
```java -classpath . -Djava.security.policy=./allaccess.policy -jar client.jar```
funktioniert es auch [IMG]http://www.java-forum.org/images/smilies/wink.gif[/IMG]
Könnte mir jemand bitte helfen?
Was habe ich denn übersehen?
Ohne Proxy läuft Webstart problemlos. Hinter dem Proxy klappt ein Client-Login nur wenn das Programm als lokale Applikation gestartet wurde, jedoch nicht über Webstart. Habe ich in der jnlp-Datei etwas vergessen? Oder andere Einstellungen übersehen?
Hier ist die jnlp-Datei:
[XML]<?xml version="1.0" encoding="utf-8"?>
<!-- JNLP File -->
<jnlp spec="1.0+" codebase="https://<server-ip>/myAppl" href="myAppl.jnlp">
<information>
<title>MyAppl</title>
<vendor>Test</vendor>
<homepage href="https://<server-ip>/myAppl"/>
<description>Test</description>
<description kind="short">Test</description>
<shortcut online="true">
<desktop/>
<menu submenu="Test"/>
</shortcut>
<icon href="pict/test.gif"/>
<icon kind="splash" href="pict/test.jpg"/>
<offline-allowed/>
</information>
<security>
<all-permissions/>
</security>
<resources>
<j2se version="1.6+" href="http://java.sun.com/products/autodl/j2se" java-vm-args="-Djava.security.policy=H:\\allaccess.policy"/>
<jar href="client.jar"/>
</resources>
<application-desc main-class="test.client.MyAppl"/>
</jnlp>[/XML]
Danke für die Hilfe!
Frank