powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / WCF, Web Services, Remoting [игнор отключен] [закрыт для гостей] / Oracle BIPublisher - кривой wsdl?
1 сообщений из 1, страница 1 из 1
Oracle BIPublisher - кривой wsdl?
    #37375382
Фотография andrey_anonymous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Приветствую всех.
Волей судеб вляпался я в web service замечательного продукта Oracle BI Publisher.
И столкнулся с проблемой - не получается обработать исключения.
Расследование показало, что паблишер шлет soap fault вот таким сообщением:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
<soapenv:Fault>
<faultcode>soapenv:Server.userException</faultcode>
<faultstring>oracle.apps.xdo.webservice.exception.AccessDeniedException: java.lang.SecurityException: Failed to log into BI Publisher: invalid username or password.</faultstring>
<detail>
  <oracle.apps.xdo.webservice.exception.AccessDeniedException/>
  <ns1:hostname xmlns:ns1="http://xml.apache.org/axis/">some.host</ns1:hostname>
</detail>
</soapenv:Fault>
а в wsdl пишет:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
<wsdl:definitions xmlns:apachesoap="http://xml.apache.org/xml-soap" xmlns:impl="http://xmlns.oracle.com/oxp/service/PublicReportService" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:intf="http://xmlns.oracle.com/oxp/service/PublicReportService" targetNamespace="http://xmlns.oracle.com/oxp/service/PublicReportService">
<!--
WSDL created by Apache Axis version: 1.4 Built on Apr 22, 2006 (06:55:48 PDT)
-->
<wsdl:types>
...
<complexType name="AccessDeniedException">
<sequence/>
</complexType>
<element name="fault" type="impl:AccessDeniedException"/>
...
</wsdl:types>
...
<wsdl:message name="AccessDeniedException">
<wsdl:part name="fault" element="impl:fault"/>
</wsdl:message>
...
<wsdl:operation name="login">
<wsdl:input name="loginRequest" message="impl:loginRequest"/>
<wsdl:output name="loginResponse" message="impl:loginResponse"/>
<wsdl:fault name="AccessDeniedException" message="impl:AccessDeniedException"/>
</wsdl:operation>
...
</wsdl:portType>

<wsdl:binding name="PublicReportServiceSoapBinding" type="impl:PublicReportService">
<wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
...
<wsdl:operation name="login">
<wsdlsoap:operation soapAction=""/>
<wsdl:input name="loginRequest"><wsdlsoap:body use="literal"/></wsdl:input>
<wsdl:output name="loginResponse"><wsdlsoap:body use="literal"/></wsdl:output>
<wsdl:fault name="AccessDeniedException">
<wsdlsoap:fault name="AccessDeniedException" use="literal"/>
</wsdl:fault>
</wsdl:operation>
...
</wsdl:binding>
...

соответственно, заменив в wsdl element fault на element oracle.apps.xdo.webservice.exception.AccessDeniedException я почти приблизился к нужному результату, то есть стал нормально обрабатывать сообщения вида
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
<faultcode>soapenv:Server.userException</faultcode>
<faultstring>oracle.apps.xdo.webservice.exception.AccessDeniedException: java.lang.SecurityException: Failed to log into BI Publisher: invalid username or password.</faultstring>
<detail>
  <pub:oracle.apps.xdo.webservice.exception.AccessDeniedException xmlns:pub="http://xmlns.oracle.com/oxp/service/PublicReportService"/>
  <ns1:hostname xmlns:ns1="http://xml.apache.org/axis/">some.host</ns1:hostname>
</detail>
</soapenv:Fault>
Но добиться обработки оригинального тега
Код: plaintext
1.
  <oracle.apps.xdo.webservice.exception.AccessDeniedException"/>
никак не удается.

наставьте нуба на путь истинный
...
Рейтинг: 0 / 0
1 сообщений из 1, страница 1 из 1
Форумы / WCF, Web Services, Remoting [игнор отключен] [закрыт для гостей] / Oracle BIPublisher - кривой wsdl?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]