• Курсы Академии Кодебай, стартующие в мае - июне, от команды The Codeby

    1. Цифровая криминалистика и реагирование на инциденты
    2. ОС Linux (DFIR) Старт: 16 мая
    3. Анализ фишинговых атак Старт: 16 мая Устройства для тестирования на проникновение Старт: 16 мая

    Скидки до 10%

    Полный список ближайших курсов ...

Подключить Java Web-Service Consumer через LS2J

  • Автор темы nvyush
  • Дата начала
N

nvyush

Здравия всем!

Столкнулся с такой проблемой — есть web-service consumer на java, есть его класс-"обёртка" на java, есть тестовый агент на java, который вызывает функции обёртки с выводом в консоль — всё работает как положено. Пытаюсь вызвать функции "обёртки" через ls2j — получаю
<div class="sp-wrap"><div class="sp-head-wrap"><div class="sp-head folded clickable">исключение</div></div><div class="sp-body"><div class="sp-content">lotus.domino.axis.ConfigurationException:
lotus.domino.axis.ConfigurationException: No engine configuration file - aborting!
lotus.domino.axis.ConfigurationException: No engine configuration file - aborting!
at lotus.domino.axis.configuration.FileProvider.configureEngine(Unknown Source)
at lotus.domino.axis.AxisEngine.init(Unknown Source)
at lotus.domino.axis.AxisEngine.<init>(Unknown Source)
at lotus.domino.axis.client.Service.getAxisClient(Unknown Source)
at lotus.domino.axis.client.Service.<init>(Unknown Source)
at localhost.lotus.LWSLocator.<init>(Unknown Source)
at jLWSRapper.LWSRapper.test(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.jav
a:37)
at java.lang.reflect.Method.invoke(Method.java:611)
at lotus.domino.JavaConnectInvoker.invoke(Unknown Source)
at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.jav
a:37)
at java.lang.reflect.Method.invoke(Method.java:611)
at lotus.domino.JavaConnectLoader.invoke(Unknown Source)
В гугле вразумительного ответа не нашёл. в качестве причины ошибки указывается отсутствие в библиотеке итема $FILE с файлом %%webserviceresource%%.jar. Но из java-агента всё нормально работает и вышеуказанный итем в веб-сервисе присутствует.
Кто в курсе, можно ли подключиться к веб-сервису через бридж ls2j, и если можно, то как?
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 941
609
BIT
217
я так понимаю - либа лежит в базе?...
если да - попробовать выложить в ФС
 
N

nvyush

я так понимаю - либа лежит в базе?...
если да - попробовать выложить в ФС
Да, и web service consumer и либа с "обёрткой" лежат в базе.
Попробовал вынести наружу, получил ту же самую ошибку.
Попробую "выкусить" этот самый %%webserviceresource%%.jar куда-нибудь в ресурсы.
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 941
609
BIT
217
в бридже задействуется "другой" класслоадер...
отсюда и морока КМК
может принудительно загружать необходимые ресурсы (руками) без "автоматизма"
 
N

nvyush

Обнаружил интересную вещь — среди итемов web service consumer на LS также присутствует $File с %%webserviceresource%%.jar!
Попробовал создать лс-"обёртку" на его основе — та же ошибка. Похоже, придётся переписать всё на ЛС.
 

VladSh

начинающий
Lotus Team
11.12.2009
1 786
157
BIT
81
Зарепортите как баг, чтобы уже в 8.5.next уже исправили.
 
N

nvyush

"Выгрыз" %%webserviceresource%%.jar из web service consumer'а, собрал проект (среда — NetBeans), теперь другая
<div class="sp-wrap"><div class="sp-head-wrap"><div class="sp-head folded clickable">ошибка:</div></div><div class="sp-body"><div class="sp-content">Exception in thread "main" java.lang.UnsatisfiedLinkError: lotus.domino.axis.transport.http.NotesSocket.openConnection()V
at lotus.domino.axis.transport.http.NotesSocket.openConnection(Native Method)
at lotus.domino.axis.transport.http.NotesSocket.<init>(Unknown Source)
at lotus.domino.axis.transport.http.HTTPSender.getSocket(Unknown Source)
at lotus.domino.axis.transport.http.HTTPSender.invoke(Unknown Source)
at lotus.domino.axis.strategies.InvocationStrategy.visit(Unknown Source)
at lotus.domino.axis.SimpleChain.doVisiting(Unknown Source)
at lotus.domino.axis.SimpleChain.invoke(Unknown Source)
at lotus.domino.axis.client.AxisClient.invoke(Unknown Source)
at lotus.domino.axis.client.Call.invokeEngine(Unknown Source)
at lotus.domino.axis.client.Call.invoke(Unknown Source)
at lotus.domino.axis.client.Call.invoke(Unknown Source)
at lotus.domino.axis.client.Call.invoke(Unknown Source)
at lotus.domino.axis.client.Call.invoke(Unknown Source)
at lotus.domino.websvc.client.Call.invoke(Unknown Source)
at localhost.lotus.LWSSoapBindingStub.test(LWSSoapBindingStub.java:11)
at localhost.lotus.LWSRapper.test(LWSRapper.java:105)
at JavaAgent.main(JavaAgent.java:61)Похоже, это не вылечить
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 941
609
BIT
217
может авторизоваться не получается?
 

kolka

Green Team
16.02.2013
32
7
BIT
0
Это баг и править его они не собираются:

 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!