Возможно ли, чтобы поставщик специальной аутентификации Cognos использовал JAXWS? - PullRequest
0 голосов
/ 21 марта 2011

Я работаю над созданием CAM (пользовательский модуль аутентификации / провайдер) для Cognos 10.

Различная зашифрованная информация передается поставщику из строки запроса. Затем процесс проверки подлинности пространства имен предназначен для взаимодействия с веб-службой, чтобы проверить, не была ли подделана зашифрованная информация, и убедиться, что «сеанс» пользователя в приложении проверки подлинности не истек.

Приложение для аутентификации использует .NET и предоставляет веб-сервис для использования с SOAP-запросами (я полагаю, 1.1 и 1.2). Я указал wsimport на wsdl и сгенерировал набор классов, который работает при создании стандартного консольного приложения Java и передаче значений отладки.

Когда я добавляю этот код в свой класс Namespace и пытаюсь выполнить запрос к веб-службе, я получаю эту ошибку от Cognos:

com.sun.xml.internal.ws.spi.ProviderImpl (ошибка инициализации)

Я думал, что Cognos 10 использует JDK 1.6. Я разрабатываю свой код CAM в 1.6 (64-битный JDK). У меня должен быть запущен 64-битный Cognos, но я не знаю, использует ли он 32-битный JDK. Может ли возможное несоответствие в 32-битном и 64-битном быть причиной?

Любая подсказка, почему сгенерированные классы из wsimport (JAXWS) не будут работать в Cognos? Это можно обойти?

1 Ответ

0 голосов
/ 10 июня 2011

Я отмечу это как ответ, но я поставлю оговорку, что я не проверял это.

После попытки заставить сторонние библиотеки работать с моим CAP / CAM, я понял, что причина в том, что JAXWS работает неправильно, потому что Cognos не включил это в свой дистрибутив Java.

Я получил ошибку, аналогичную приведенной выше, при попытке использовать реализацию JDBC от Microsoft для связи с сервером SQL для поиска в пространстве имен. Это заставляет меня верить, что такая же ситуация существует с JAXWS.

Я искал файл jar, который должен содержать классы, которые должны быть там. Я не увидел ни одного jar-файла, который был бы назван так же, как у меня для 1.6. Если это действительно не поддерживается в Cognos, я думаю, что включение файла jar для JAXWS в папку WEB-INF / lib позволит осуществлять связь с веб-сервисом с использованием JAXWS.

...