Gibt es eine Möglichkeit, die JVM zu zwingen, eine bestimmte Quell-IP-Adresse zu verwenden, wenn die standardmäßige, integrierte java.xml.SOAPConnectionFactory verwendet wird? Es scheint, dass der Standard am Ende HttpSOAPConnection-Objekte (sun private API) erstellt, die dann HttpURLConnection unter der Haube verwendet. Ich kann anscheinend keine Systemeigenschaft finden, mit der HttpURLConnection eine bestimmte Quell-IP verwenden kann. Es gibt eine ähnliche Stackoverflow-Frage aber ich hoffe, jemand anderes hat mehr Informationen oder einen Trick, den ich anwenden kann.
Antwort
Zu viele Anzeigen?Der Http-Client von Apache Commons (http://hc.apache.org/httpcomponents-client-ga/) unterstützt dies:
" ConnRoutePNames.LOCAL_ADDRESS='http.route.local-address' : definiert eine lokale Adresse als die von allen Standard-Routenplanern verwendet wird. Auf Rechnern mit mehreren Netzwerkschnittstellen kann dieser Parameter verwendet werden, um die Netzwerkschnittstelle auszuwählen, von der die Verbindung ausgeht. Dieser Parameter erwartet einen Wert vom Typ java.net.InetAddress. Wenn dieser Parameter nicht gesetzt ist, wird automatisch eine lokale Standardadresse verwendet. ."