Клиент веб-службы - создание «заголовка wsse: Security» с использованием ключа .p12 в сообщении SOAP - PullRequest
0 голосов
/ 04 ноября 2018

Я хочу создать клиентское приложение, которое будет взаимодействовать с сервером. Я сгенерировал классы веб-сервисов из файла WSDL и написал в коде Intellij, как показано ниже:

public static void main(String[] argv) throws BledyOperacji_Exception{
    ObslugaReceptyWS ws = new ObslugaReceptyWS();
    ObslugaReceptyWSPortType wsPortType = ws.getObslugaReceptyWSHttpSoap11Endpoint();
    OdblokowanieReceptyRequest odblokowanieReceptyRequest = new OdblokowanieReceptyRequest();
    KluczReceptyMT kluczReceptyMT = new KluczReceptyMT();
    kluczReceptyMT.setKluczRecepty("asdf");
    odblokowanieReceptyRequest.setKluczRecepty(kluczReceptyMT);
    OdblokowanieReceptyResponse odblokowanieReceptyResponse = wsPortType.odblokowanieRecepty(odblokowanieReceptyRequest);
}

Все использованные классы относятся к поколению WSDL.

У меня есть два ключа, которые позволяют соединиться с сервером "... tls.p12" и "... wss.p12". Я добавил их в новое хранилище ключей.

Я добавил в «VM option» местоположения и пароли этого хранилища ключей и хранилища доверенных сертификатов (там, где есть сертификаты).

Проблема в том, что после выполнения кода он получает следующий ответ: Отсутствует wsse: заголовок безопасности в запросе

Мой вопрос:

Есть ли способ сгенерировать заголовок безопасности из ключа "... wss.p12" и добавить его в сообщение SOAP?

Если нет, то как правильно добавить заголовок безопасности в мое сообщение SOAP?

Если мой подход к этой проблеме неверен, я прошу несколько советов.

...