2016-07-14 3 views
0

Apache Axis 1.4 클라이언트를 사용하여 프록시를 통해 웹 서비스에 액세스 할 때 문제가 있습니다. 첫 번째 것들에서AxisProperties 프록시 설정 축 1.4에서 작동하지 않음

이 작동하지만, 어떤 점에서 (간격을 결정하지 않은) 프록시가 바로 작동이 중지 내가 받기 시작 :

if (proxyHost != null && !proxyHost.isEmpty()) { 
     logger.warn("Using proxy server: " + proxyHost + " port " + proxyPort); 
     AxisProperties.getProperties().put("proxySet", "true"); 
     AxisProperties.setProperty("http.proxyHost", proxyHost); 
     AxisProperties.setProperty("http.proxyPort", proxyPort); 
     if (proxyUser != null && !proxyUser.isEmpty()) { 
      logger.warn("User proxy user: " + proxyUser); 
      AxisProperties.setProperty("http.proxyUser", proxyUser); 
      AxisProperties.setProperty("http.proxyPassword", proxyPassword); 
     } 
    } //then make call 

    Stub binding = (Stub)      new ServiceLocator().getServiceSoap(new URL(myUrl)); 

은 내가 놓친 : UnknownHostException의 여기

코드입니다 중요한 포인트?

답변

0

문제점을 발견했습니다. 그것은 전화의 순서와 관련이있었습니다. 내 애플 리케이션은 여러 웹 서비스를 호출 ... 일부는 프록시가 필요하고 일부는 필요합니다. 비 프록시 서비스가 먼저 호출 된 경우 서버를 다시 시작한 후 AxisProperties는 프록시를 포함하지 않는 기본값을 사용했습니다. 먼저 프록시가 필요한 서비스가 호출 된 경우 제대로 작동합니다. 그래서 모든 호출이 이루어지기 전에 AxisProperties 블록을 UP보다 위로 이동 시켰습니다. 또한 'http.nonProxyHosts'에 프록시가 필요없는 서비스를 포함하도록 설정했습니다.

나는이 기술이 오래되었다는 것을 알고 있으며 대답을 찾기가 점점 더 어려워지고있다. 나는 이것이 당분간 1.4로 붙어있는 누군가를 돕기를 바랍니다.