Configurando acesso à internet via proxy em aplicações Java
Hoje tive um problema no meu trabalho onde um client, que roda via prompt de comando (Prompt do DOS), não conseguia acessar o servidor hospedado na internet, isso porque a empresa onde trabalho utiliza proxy.
Depois de algumas tentativas acabei achando duas soluções para resolver o problema de acesso: a primeira foi passar como parâmetros Java as configurações do proxy.
$ java -Dhttp.proxyHost=serv -Dhttp.proxyPort=porta -Dhttp.proxyUser=usu -Dhttp.proxyPassword=senha ClasseJava
-Dhttp.proxyHost = IP ou nome do servidor proxy
-Dhttp.proxyPort = Porta do proxy
-Dhttp.proxyUser = Usuário
-Dhttp.proxyPassword = Senha
Desta forma a classe ClasseJava terá acesso à internet através do proxy.
A outra forma foi inserir as configurações na própria classe:
public static void main(String[] args){
...
System.getProperties().put("proxySet", "true");
System.getProperties().put("http.proxyHost", "serv");
System.getProperties().put("http.proxyPort", "porta");
System.getProperties().put("http.proxyUser", "usuario");
System.getProperties().put("http.proxyPassword", "senha");
...
}
proxySet = Define se passará ou não por um servidor proxy
http.proxyHost = IP ou nome do servidor proxy
http.proxyPortt = Porta do proxy
http.proxyUse = Usuário
http.proxyPassword = Senha
Usando um destes recursos você poderá configurar sua aplicação para acessar à internet através de um proxy.
Espero ter ajudado. Até +!
maio 24th, 2010 - 14:34
Olá, Edson. Obrigado pelo comentário!
É possível sim, desde que a porta para conexão com o MySQL esteja liberada pelo proxy. Geralmente os admins. de rede só liberam as portas HTTP (80 e 8080), como a porta o MySQL é a 3306 (na instalação padrão), talvez você tenha que pedir acesso à esta porta também.
[]‘s
maio 24th, 2010 - 14:26
Muito boa esta dica, estou procurando algo para acessar o MySQL externamente ‘a um proxy, ou seja, a minha aplicação opera via Desktop, e a base de dados está online (MySQL)… Desta forma é possível acessar normalmente? (Não tenho como testar atualmente, mas o que vc me diz, é possível desta forma?)