Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> HTTPS и сертификаты, проблема the trustAnchors  
V
    Опции темы
Borisff2003
Дата 27.3.2007, 20:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 198
Регистрация: 26.2.2004
Где: г. Уфа

Репутация: нет
Всего: 1



Вылазит ошибка 
Код

ERROR  27.03.2007 19:41:43  ProviderSotel:399  java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty

javax.net.ssl.trustStore
javax.net.ssl.trustStorePassword 
вроде установил из программы

не могу понять чего он хочет в параметре trustAnchors

Код

private String getDataFromServer(String params)
    {
        StringBuffer resultPlainXML = new StringBuffer();
        try
        {
            HttpURLConnection con = null;
            StringBuffer urlString = new StringBuffer();
            StringBuffer loginAndPassword = new StringBuffer();
            StringBuffer authorizationValue = new StringBuffer();
            StringBuffer proxyAuthorizationValue = new StringBuffer();
            BASE64Encoder base64Encode = new sun.misc.BASE64Encoder();
            String proxyAuth = configMap.get(PARAM_PROXY_AUTHORIZATION);
            boolean proxyAuthorization = Boolean.valueOf(proxyAuth)
                    .booleanValue();

            urlString.append(configMap.get(PARAM_HOST));
            urlString.append(configMap.get(PARAM_URI));
            urlString.append(CHAR_QUESTION);
            urlString.append(params);

            URL url = new URL(urlString.toString()); // $NON-NLS-1$

            if (log.isDebugEnabled())
            {
                log.debug(url.toString());
            }

            con = (HttpURLConnection) url.openConnection();
            con.setRequestMethod(HTTP_METHOD_GET);
            con.setRequestProperty(REQUEST_PROPERTY_CONTENT_TYPE,
                    CONTENT_TYPE_APPLICATION_X_WWW_FORM_URLENCODED);

            loginAndPassword.append(configMap.get(PARAM_LOGIN));
            loginAndPassword.append(CHAR_COLON);
            loginAndPassword.append(configMap.get(PARAM_PASSWORD));

            authorizationValue.append(AUTHORIZATION_BASIC);
            authorizationValue.append(CHAR_SPACE);
            authorizationValue.append(base64Encode.encode(loginAndPassword
                    .toString().getBytes()));

            con.setRequestProperty(REQUEST_PROPERTY_AUTHORIZATION,
                    authorizationValue.toString());

                    
            if (proxyAuthorization)
            {
                loginAndPassword = new StringBuffer();
                loginAndPassword.append(configMap.get(PARAM_PROXY_LOGIN));
                loginAndPassword.append(CHAR_COLON);
                loginAndPassword.append(configMap.get(PARAM_PROXY_PASSWORD));

                proxyAuthorizationValue.append(AUTHORIZATION_BASIC);
                proxyAuthorizationValue.append(CHAR_SPACE);
                proxyAuthorizationValue.append(base64Encode
                        .encode(loginAndPassword.toString().getBytes()));

                con.setRequestProperty(REQUEST_PROPERTY_PROXY_AUTHORIZATION,
                        proxyAuthorizationValue.toString());
            }

            con.setDoOutput(false);
            con.setDoInput(true);

            if (con.getResponseCode() == HttpURLConnection.HTTP_OK)
            {
                int b = 0;
                byte[] in = new byte[1024];
                BufferedInputStream bis = new BufferedInputStream(con
                        .getInputStream());
                while ((b = bis.read(in, 0, 1024)) != -1)
                {
                    resultPlainXML.append(new String(in, 0, b, configMap
                            .get(PARAM_ENCODING_URL)));
                }
                bis.close();
            }
            con.disconnect();
        } catch (Exception ex)
        {
            log.error(ex.getLocalizedMessage());
        }

        if (log.isDebugEnabled())
        {
            log.debug("resultPlainXML = " + resultPlainXML.toString());
        }

        return resultPlainXML.toString();
    }


--------------------
Лень, двигатель прогресса
PM MAIL WWW ICQ   Вверх
Borisff2003
Дата 28.3.2007, 10:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 198
Регистрация: 26.2.2004
Где: г. Уфа

Репутация: нет
Всего: 1



ответ нашел на форуме, вопрос закрыт
Код

            SSLContext sc = null;    
            TrustManager[] trustAllCerts = new TrustManager[] {
                        new X509TrustManager() {
                          public java.security.cert.X509Certificate[] getAcceptedIssuers(){
                            return null;
                           }
                          public void checkClientTrusted(java.security.cert.X509Certificate[] certs, String authType) {}
                          public void checkServerTrusted(java.security.cert.X509Certificate[] certs, String authType) {}
                  }
              };
              try {
                  sc = SSLContext.getInstance("SSL");
                  sc.init(null, trustAllCerts, new java.security.SecureRandom());
              }
              catch (Exception e) {}
            
            
            con.setSSLSocketFactory(sc.getSocketFactory());

--------------------
Лень, двигатель прогресса
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java: Работа с сетью | Следующая тема »


 




[ Время генерации скрипта: 0.0763 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.