Lotsia PLM: Форум по семейству систем PLM/PDM/TDM/ERP/Workflow

Для специалистов по внедрению систем, профессиональных администраторов и пользователей.
Текущее время: 11 дек 2017, 20:02

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 9 ] 
Автор Сообщение
 Заголовок сообщения: Работа с Лоцией через Java
СообщениеДобавлено: 28 авг 2014, 16:41 
Не в сети
Новый участник

Зарегистрирован: 28 авг 2014, 15:50
Сообщения: 1
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Добрый день.

У нас есть Windows-сервер с поднятой Лоцией PDM и с Tomcat.
В Java-сервлетах, обрабатывающих запросы извне, мы хотим подключаться к Лоции и выполнять некоторые действия, вызывая ее API.
Однако у нас возникает ошибка на этапе подключения - вызове метода Connect.
Для общения с COM-проектами мы используем java-библиотеку jacob.

Код выглядит так:

Код:
ActiveXComponent lotsiaApp = new ActiveXComponent("LotsiaPDM.Application");
Dispatch lotsiaDispatch = lotsiaApp.getObject();
Dispatch connect = Dispatch.get(lotsiaDispatch, "ConnectAttrib").toDispatch();

Dispatch.put(connect, "DBType", "ORACLE");
Dispatch.put(connect, "Driver", "ORA");
Dispatch.put(connect, "Server", "<адрес>");
Dispatch.put(connect, "DataBase", "<имя БД>");
Dispatch.put(connect, "User", "<логин>");
Dispatch.put(connect, "Password", "<пароль>");

Dispatch.call(lotsiaDispatch, "Connect");



В результате последняя строка выдает ошибку:

Код:
Exception caught while calling connect on lotsiaDispatch: com.jacob.com.ComFailException: Invoke of: Connect
Source:
Description: Unspecified Error



При этом параметры доступа правильные, аналогичный VB-скрипт на том же сервере выполняется на ура:

Код:
Option Explicit

Test

Sub Test
  Dim oPDM

  set oPDM = CreateObject("LotsiaPDM.Application")
  if not oPDM.IsConnected then
    oPDM.ConnectAttrib.DBType = "ORACLE"
    oPDM.ConnectAttrib.Driver = "ORA"
    oPDM.ConnectAttrib.Server = "<адрес>"
    oPDM.ConnectAttrib.User = "<логин>"
    oPDM.ConnectAttrib.Password = "<пароль>"
    oPDM.Connect()
  end if
  MsgBox oPDM.ConnectAttrib.Server
end sub


Может ли кто-нибудь поделиться соображениями, что может быть не так?


Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Работа с Лоцией через Java
СообщениеДобавлено: 24 сен 2014, 14:04 
Не в сети
Активный участник

Зарегистрирован: 22 фев 2005, 12:33
Сообщения: 74
Благодарил (а): 1 раз.
Поблагодарили: 3 раз.
Так вроде бы эта библиотека сторонняя для Java. Может быть, дело в ней?

_________________
Loco


Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Работа с Лоцией через Java
СообщениеДобавлено: 03 окт 2014, 16:03 
Не в сети
Новый участник

Зарегистрирован: 03 окт 2014, 09:23
Сообщения: 3
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Другие библиотеки тоже не работают.


Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Работа с Лоцией через Java
СообщениеДобавлено: 03 окт 2014, 16:31 
Не в сети
Активный участник

Зарегистрирован: 22 фев 2005, 12:33
Сообщения: 74
Благодарил (а): 1 раз.
Поблагодарили: 3 раз.
А что техподдержка говорит?

_________________
Loco


Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Работа с Лоцией через Java
СообщениеДобавлено: 03 окт 2014, 17:03 
Не в сети
Новый участник

Зарегистрирован: 03 окт 2014, 09:23
Сообщения: 3
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Loco писал(а):
А что техподдержка говорит?


Они не знают, как работать с API из Java.

[Пожалуйста, не публикуйте в форуме недостоверную информацию. На первый раз это предупреждение. - Moderator_Team]


Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Работа с Лоцией через Java
СообщениеДобавлено: 03 окт 2014, 17:27 
Не в сети
Активный участник

Зарегистрирован: 22 фев 2005, 12:33
Сообщения: 74
Благодарил (а): 1 раз.
Поблагодарили: 3 раз.
goreev писал(а):
Они не знают, как работать с API из Java.

Да ну? :mrgreen: Спасибо, Вы сделали мой день! :lol:

_________________
Loco


Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Работа с Лоцией через Java
СообщениеДобавлено: 03 окт 2014, 21:54 
Не в сети
Активный участник
Аватара пользователя

Зарегистрирован: 27 июл 2006, 22:17
Сообщения: 796
Откуда: Москва
Благодарил (а): 11 раз.
Поблагодарили: 12 раз.
Сорри, что не в кассу, но работают же все как-то... В презентациях с конференций пользователей регулярно упоминается работа через API. А сюда далеко не все заходят, надо вам как-то более адресно искать помощи.

_________________
"Лучше меньше, да лучше" (C)


Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Работа с Лоцией через Java
СообщениеДобавлено: 06 окт 2014, 14:39 
Не в сети
Активный участник

Зарегистрирован: 22 фев 2005, 12:33
Сообщения: 74
Благодарил (а): 1 раз.
Поблагодарили: 3 раз.
Старик Крупский, да понятно, что работают. Сейчас на Java даже школьники пишут. :)
Поэтому меня и порадовали слова коллеги goreev'а, что "не умеют". (Скорее всего (и судя по реакции модератора ;) ) , техподдержка ему просто ответила что-нибудь в духе того, что по продуктам третьих фирм они не консультируют.)

По теме, давайте рассуждать логически:

1. если VB-скрип выполняется нормально, то проблема не в работе API, а либо в Java-коде, либо в настройках работы с COM-объектами на уровне операционки;

2. по словам коллеги goreev'а, проблема остается и при использовании других библиотек;

3. значит, копать нужно в настройках для работы с COM.

И еще, похожая ошибка встречается, когда код пытаются исполнить не от имени того юзера, который залогинен.

Как вариант, смотрим сюда.

Как-то так.

_________________
Loco


Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Работа с Лоцией через Java
СообщениеДобавлено: 06 окт 2014, 14:47 
Не в сети
Активный участник
Аватара пользователя

Зарегистрирован: 27 июл 2006, 22:17
Сообщения: 796
Откуда: Москва
Благодарил (а): 11 раз.
Поблагодарили: 12 раз.
Loco писал(а):
Сейчас на Java даже школьники пишут. :)


Я бы в школьники пошел, пусть меня научат :)

_________________
"Лучше меньше, да лучше" (C)


Вернуться к началу
 Профиль  
Ответить с цитатой  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 9 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB