Quiero conectarme a un servidor de intranet, la url que necesito para conectarme es:
URLConnection conn = new URL("https://mywebsite").openConnection();Cuando llego al método de conexión, llame a través de:`
conn.connect();Recibo la siguiente excepción:
java.io.IOException: Unable to tunnel through proxy. Proxy rerurns HTTP/1.1 503 Service Unavailable" at sun.net.www.protocol.httpHttpURLConnection.doTunnelingComo puedo solucionar esta excepción, he probado muchas soluciones publicadas en la red, pero sin suerte.
Lo que me ayudó fue desactivar todas las propiedades del proxy en el entorno ( http_proxy etc. env variables; las propiedades de Java como -Dhttp.proxyHost=.. sorprendentemente no tuvieron ningún efecto). Mi URL ( https://mycompany.example.com/service ) fue accesible directamente (porque estaba en la red interna) pero no a través del proxy.
Por lo tanto, verifique dónde vive el servicio y verifique las variables de entorno relacionadas con el proxy.
Tuve un caso similar. Estoy usando el complemento maven jaxws-maven-plugin plugin e intento generar código Java desde un WSDL que se encuentra en otro servidor. El problema era que el complemento captaba la variable de entorno httpproxy , pero no la variable noproxy . Lo resolví agregándolo manualmente como un argumento JVM:
<plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>jaxws-maven-plugin</artifactId> <version>2.4.1</version> <executions> <execution> <id>wsdltoJava</id> <goals> <goal>wsimport</goal> </goals> <configuration> <wsdlUrls> <wsdlUrl>https://someService.yourcompany.net/Service/Service?wsdl</wsdlUrl> </wsdlUrls> <vmArgs> <vmArg>-Dhttp.nonProxyHosts=*.yourcompany.net</vmArg> </vmArgs> <keep>true</keep> <packageName>com.yourcompany.package</packageName> <sourceDestDir>your/target/directory</sourceDestDir> </configuration> </execution> </executions>