2016-07-14 3 views
0

У меня возникла проблема при использовании клиента Apache Axis 1.4 для доступа к веб-сервису через прокси-сервер.Настройки прокси-сервера AxisProperties Остановка работы в Axis 1.4

В первые вещи работают, но в какой-то момент (не определен интервал) прокси просто перестает работать, и я начала получать: UnknownHostException

Вот код:

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)); 

ли я пропустил важная точка?

ответ

0

Я нашел проблему. Это связано с порядком звонков. Мое приложение вызывает несколько веб-сервисов ... некоторые из них требуют прокси-сервера, а некоторые - нет. После перезапуска сервера, если сначала была вызвана не-прокси-служба, то AxisProperties использовали значения по умолчанию, которые не включают прокси-сервер. Если сначала была вызвана услуга, требующая прокси-сервера, тогда она работала нормально. Поэтому я переместил блок AxisProperties выше UP, чтобы он был выполнен ПЕРЕД вызовом любых вызовов. Я также установил 'http.nonProxyHosts' для включения служб, которые не нуждаются в прокси.

Я знаю, что эта технология стареет, и найти ответы становится все труднее и труднее. Я надеюсь, что это поможет кому-то, кто застрял с 1.4 на данный момент.

Смежные вопросы