GUJ Discussões   :   últimos tópicos   |   categorias   |   GUJ Respostas

Proxy TomCat


#1

O acesso à http e https é filtrado por um proxy, aonde eu trabalho, de modo que se quero navegar na web pelo browser, eu tenho que adicionar no browser o proxy; se quero baixar algum conteudo pelo maven, eu tenho que adicionar no setting.xml do maven o proxy; se quero usar a svn, tenho que colocar um proxy na svn.

Tenho uma aplicação no TomCat que precisa realizar uma chamada http e eu não tenho ideia de como adicionar o proxy no TomCat. Por gentileza, alguém me pode me ajudar a configurar o TomCat?


#2

Se você tem uma aplicação no tomcat, que faz a chamada a um ws que não está na sua rede por exemplo.
A configuração do proxy, vai na hora que vc monta um client http pra consumir o serviço.
Agora colocar proxy no tomcat ? quem vai fazer a chamada http é sua aplicação.


#3

Não tenho conhecimento suficiente para precisar a razão pela qual minha chamada falhava, mas, segui as orientações de alguns sites:

TOMCAT_HOME\conf\catalina.properties

http.proxyHost=proxyHosy
http.proxyPort=port
http.proxyUser=userName
http.proxyPassword=password

TOMCAT_HOME\bin\catalina.bat

JAVA_OPTS="-Dhttp.proxyHost=proxyHost -Dhttp.proxyPort=port -Dhttp.proxyUser=proxyUser -Dhttp.proxyPassword=password"

Na aplicação

System.getProperties().put("http.proxyHost", "100.68.1.80");
	System.getProperties().put("http.proxyPort", "443");
	System.getProperties().put("http.proxyUser", "brtre149");
	System.getProperties().put("http.proxyPassword", "Software0");

	Authenticator.setDefault(new Authenticator()
	{
		@Override
		protected PasswordAuthentication getPasswordAuthentication()
		{
			if (getRequestorType() == RequestorType.PROXY)
			{
				final String prot = getRequestingProtocol().toLowerCase();
				final String host = System.getProperty(prot + ".proxyHost", "");
				final String port = System.getProperty(prot + ".proxyPort", "80");
				final String user = System.getProperty(prot + ".proxyUser", "");
				final String password = System.getProperty(prot + ".proxyPassword", "");
				if (getRequestingHost().equalsIgnoreCase(host))
				{
					if (Integer.parseInt(port) == getRequestingPort())
					{
						return new PasswordAuthentication(user, password.toCharArray());
					}
				}
			}
			return null;
		}
	});

#4

Ta mas, qual o erro ?
Existem jeito bem mais elegantes de se fazer isso como esse.
https://jersey.java.net/apidocs/2.5.1/jersey/org/glassfish/jersey/client/ClientProperties.html#PROXY_URI


#5

O erro que aparece no Log do TomCat é:

INFO | jvm 1 | main | 2016/05/20 11:08:51.549 | ERROR [hybrisHTTP23] [NomeDaClasse] Payment error in internal reference null and psp reference Falha ao acessar o WSDL em [endereço https do wsdl] Ele falhou com:
INFO | jvm 1 | main | 2016/05/20 11:08:51.549 | Connection timed out: connect. with communication problem.


#6

ué, isso é soap ? pela soapui funcoina ?


#7

Bom dia!
Sabe se consigo baixar uma versão Hybris não paga?