java webstart problem oder alternativ classloader

iTob87

Grünschnabel
hey leute,

ich habe folgendes problem:
ich habe zwei webstart anwendungen A und B. die netzwerkeinstellungen von webstart sind so konfiguriert, dass alles über einen proxy laufen soll. für anwendung A ist diese einstellung vollkommen korrekt. anwendung B soll hingegen nicht über einen proxy sondern direkt die verbdinndung aufbauen. gibt es eine möglichkeit die netzwerkeinstellungen zu ignorieren und eine direkte verbindung aufzubauen (vielleich in der jnlp oder in der java app)?

falls dies einfach nicht möglich sein sollte, müsste ich meine app so schreiben, dass sie libaries zur laufzeit aus einem ordner lesen kann. diese libaries liegen wiederum zentral auf einem fremden server. wenn die libaries auf dem server einen anderes stand haben wie diese, wo lokal vorliegen, dann sollen die lokalen libaries mit denen des servers ersetzt werden (im grunde genau der mechanismus, welchen webstart bietet). Kennt ihr hierfür evtl. schon fertige tools bzw. eine gute möglichkeit, wie ich diese libaries zur laufzeit einbinden kann (evtl. auch ohne reflection)?


greetz, iTob
 
Hallo,

versuch doch mal in deinem jnlp Dokument

über <property name="" value=""/>

Die JVM Properties:
http.proxyHost
http.proxyPort
http.nonProxyHosts

zu setzen.

Gruß Tom
 
hey thomas,

zunächst einmal vielen dank für deine schnelle antwort. du meinst, ich soll

http.proxyHost
http.proxyPort
http.nonProxyHosts

jeweils auf null setzen (also dann so: <property name="http.proxyHost" value="" />), damit ich eine direkt verbindung ohne proxy aufbauen kann?

wenn du das meinst, dann funktioniert das leider nicht.... :(

hast du vielleicht eine andere gute idee, wie ich (vielleicht auch ohne webstart) den gleichen effekt wie bei webstart erreichen kann?


greetz, iTob
 
Hallo,

hast du es schon mit
<property name="http.nonProxyHosts" value="*.foo.com|yourserver|192.168.13.3"/>
probiert?

Ansonsten schau mal hier:
http://www.tutorials.de/forum/java/298135-classpath-mit-classloader-kuenstlich-erweitern.html

... oder so:
Java:
...
    try {
      URL[] additionalClassPathEntries = new URL[entries.size()];

      for (int i = 0; i < entries.size(); i++) {
        additionalClassPathEntries[i] = entries.get(i).toURI().toURL();
      }

      URLClassLoader ucl = new URLClassLoader(additionalClassPathEntries, Thread.currentThread().getContextClassLoader());

      Thread.currentThread().setContextClassLoader(ucl);
    } catch (Exception e) {
      e.printStackTrace();
    }
...

Gruß Tom
 

Neue Beiträge

Zurück