|
|
|
Использование WCF сервиса из оракловой Java
|
|||
|---|---|---|---|
|
#18+
Всем добрый день! Научите, плиз, как из оракловой Джавы можно обратиться к сервису WCF. Кое-какие примеры нашел в интернете, но не то пальто. То в import используются библиотеки, которых у нас нет (и ни слова, что это и где это взять), то это явно не к оракловой версии Java относится. Сам Java практически не знаю, на шарпах пишу. Поэтому прошу на глупые вопросы не ругаться ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2016, 12:53:30 |
|
||
|
Использование WCF сервиса из оракловой Java
|
|||
|---|---|---|---|
|
#18+
К сервису по HTTPS из оракла с авторизацией через сертификат научился обращаться на низком уровне через UTL_TCP. Но есть проблема с чтением ответа. Читаю данные в соответствии с UTL_TCP.available до тех пор пока значение этой функции не станет равным 0 (с учетом таймаута). Выявлена следующая закономерность: 1. если суммарный размер заголовка ответа и тела ответа не превышает 1024 байта, то считывается весь ответ полностью. Все хорошо. 2. если суммарный размер заголовка ответа и тела ответа превышает 1024 байта (допустим, это N байт), то считывается TRUNC(n/1024)*1024 байт, все остальное теряется. Это видно и по недочитанным данным, и по несовпадению суммарного объема реально считанных данных с заголовком Content-Length. UTL_TCP.available возвращает 0 на последней границе килобайта данных. Попытки считать что-либо дальше приводят к появлению всяких эксепшенов. Что это? Кто режет данные? При помощи клиента, написанного на C#, коннект, вызов и чтение данных с WCF сервиса проходят без каких-либо нюансов. Т.е. сервис работает нормально. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2016, 01:55:12 |
|
||
|
Использование WCF сервиса из оракловой Java
|
|||
|---|---|---|---|
|
#18+
Вадиман, Есть же куча готовых java классов и даже Pl/sql пакетов под soap. Зачем париться? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2016, 02:33:16 |
|
||
|
Использование WCF сервиса из оракловой Java
|
|||
|---|---|---|---|
|
#18+
Вадиман, Если я правильно понимаю, то c wcf можно просто работать как с soap-сервисом - взять wsdl и наклепать что нужно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2016, 02:34:53 |
|
||
|
Использование WCF сервиса из оракловой Java
|
|||
|---|---|---|---|
|
#18+
Эта куча примеров - для простейшего HTTP. Для HTTPS+авторизация по сертификату не нашел ничего. Был вариант идти правильным путем через UTL_DBWS (кажется), но уже почти доделал на UTL_TCP и все вроде работало. Вот и хотел добить эту тему, которая не требует установки новых компонент ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2016, 02:37:36 |
|
||
|
Использование WCF сервиса из оракловой Java
|
|||
|---|---|---|---|
|
#18+
xtenderВадиман, Если я правильно понимаю, то c wcf можно просто работать как с soap-сервисом - взять wsdl и наклепать что нужно WSDL пригодится, когда создаются прокси-классы. Я пытался через WSIMPORT от JDK 1.6 нагенерировать этих классов, подсунуть в оракл. CREATE OR REPLACE AND COMPILE JAVA SOURCE выполняется без ошибок, а в runtime возникает ошибка "Caused by: java.lang.ClassCastException: com.sun.xml.internal.bind.api.Messages cannot be cast to ResourceBundle ". Бросил эту тему после долгих исследований. UTL_HTTP сам oracle не рекомендует использовать для SOAP (838892.1). У меня так и не получилось подключить сертификат через этот пакет. Сейчас допиливаю с UTL_TCP. Оттрассировал пакеты при передаче через HTTP, имитировал те же заголовки, подсунул сертификат - работает. Проблема с ответом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2016, 02:45:57 |
|
||
|
Использование WCF сервиса из оракловой Java
|
|||
|---|---|---|---|
|
#18+
ВадиманДля HTTPS+авторизация по сертификату не нашел ничего. посмотри сюда https://oracle-base.com/articles/misc/utl_http-and-ssl ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2016, 03:07:33 |
|
||
|
Использование WCF сервиса из оракловой Java
|
|||
|---|---|---|---|
|
#18+
Вадиман, с https из java просто же. Я даже набросал такой примерчик: https://github.com/xtender/xt_http ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2016, 03:19:41 |
|
||
|
Использование WCF сервиса из оракловой Java
|
|||
|---|---|---|---|
|
#18+
ora601ВадиманДля HTTPS+авторизация по сертификату не нашел ничего. посмотри сюда https://oracle-base.com/articles/misc/utl_http-and-ssl Все это было испробовано. Уперся в ошибку проверки валидности сертификата при begin_request. Не считает "он" его почему-то "trusted". А при использовании UTL_TCP - считает. Пакет один и тот же используется - PKS12 (ewallet.p12). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2016, 03:21:00 |
|
||
|
Использование WCF сервиса из оракловой Java
|
|||
|---|---|---|---|
|
#18+
Вадиман, вот еще примерчик с самодельным сертификатом: http://stackoverflow.com/questions/859111/how-do-i-accept-a-self-signed-certificate-with-a-java-httpsurlconnection ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2016, 03:22:07 |
|
||
|
Использование WCF сервиса из оракловой Java
|
|||
|---|---|---|---|
|
#18+
xtenderВадиман, с https из java просто же. Я даже набросал такой примерчик: https://github.com/xtender/xt_http Сейчас попробуем. Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2016, 03:22:11 |
|
||
|
|

start [/forum/topic.php?fid=52&msg=39249655&tid=1888161]: |
0ms |
get settings: |
8ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
56ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
50ms |
get tp. blocked users: |
1ms |
| others: | 227ms |
| total: | 375ms |

| 0 / 0 |
