Форум программистов, компьютерный форум, киберфорум
HCL Notes: Программирование
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.68/180: Рейтинг темы: голосов - 180, средняя оценка - 4.68
dmyk
1

как получить доступ к Lotus базе из Java

09.10.2006, 14:57. Просмотров 33262. Ответов 15
Метки нет (Все метки)

привет. использую стандартный код из хелпа:


Код
import lotus.domino.*;
public class platform implements Runnable
{
Database db;
public static void main(String argv[])
{
Thread nt = new Thread((Runnable)t);
nt.start();
}
public void run()
{
try
{
Session s = NotesFactory.createSession(host, user, pwd);
db = s.getDatabase("myserv1/mydom","test\\calendar.nsf")         ;

.....

}
catch (Exception e)
{
e.printStackTrace();
}
}
}
все это тестируется на IBM RAD 6.0.1 + Apache Tomcat 4.1
и в консоли появляется :

Код
java.lang.UnsatisfiedLinkError: no nlsxbe in java.library.path
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1517)
at java.lang.Runtime.loadLibrary0(Runtime.java:788)
at java.lang.System.loadLibrary(System.java:834)
at lotus.domino.NotesThread.load(Unknown Source)
at lotus.domino.NotesThread.checkLoaded(Unknown Source)
at lotus.domino.NotesThread.initThread(Unknown Source)
at lotus.domino.NotesThread.run(Unknown Source)
пути прописаны в notes.ini
JavaUserClasses=D:\Program Files\lotus\notes\data\domino\java\NCSO.jarr;D:\Program Files\lotus\notes\jvm\lib\ext\Notes.jar
незнаю куда дальше копать, подскажите, пожалуйста.
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.10.2006, 14:57
Ответы с готовыми решениями:

Доступ к java-классам Lotus из JS на клиенте
Приветствую. Вопрос: Возможно ли в клиенте Notes (7.x) из JS получить доступ к java классам...

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

Доступ Java-программы к данным в Lotus текущего пользователя
Есть Такая задача: Есть на клиенте Lotus Notes clent он конектикся к серверу... На клиенте же...

Как получить доступ к базе данных своего аккаунта twitter?
потерял пароль, как получить доступ к базе данных своего аккаунта twitter?

15
0 / 0 / 0
Регистрация: 14.07.2006
Сообщений: 210
09.10.2006, 15:06 2
<!--QuoteBegin-dmik+10:10:2006, 12:44 -->
<span class="vbquote">(dmik @ 10:10:2006, 12:44 )</span><!--QuoteEBegin-->пути прописаны в notes.ini
JavaUserClasses=D:\Program Files\lotus\notes\data\domino\java\NCSO.jarr;D:\Program Files\lotus\notes\jvm\lib\ext\Notes.jar
незнаю куда дальше копать, подскажите, пожалуйста.
[snapback]45198" rel="nofollow" target="_blank[/snapback]?[/quote]
Корбу поднял?Переменные среды прописал?

Темболее не рекомендуется использовать оба jara сразу
0
dmyk
09.10.2006, 15:28 3
корбу включил в file/preferences/user preferences / additional options.
что надо прописать в переменные среды?

по поводу 2-х jar-ов разберусь потом. хоть бы так заработало. (если 2 jar-а будут мешать др.др., думаю, будет другой exception)
0 / 0 / 0
Регистрация: 14.07.2006
Сообщений: 210
09.10.2006, 16:08 4
<!--QuoteBegin-dmik+10:10:2006, 13:15 -->
<span class="vbquote">(dmik @ 10:10:2006, 13:15 )</span><!--QuoteEBegin-->корбу включил в file/preferences/user preferences / additional options.
что надо прописать в переменные среды?
[snapback]45204" rel="nofollow" target="_blank[/snapback]?[/quote]
Вобщето корбу надо запустить как сервис на серваке в Notes.ini прописатьServerTasks = ... DIIOP
0
dmyk
09.10.2006, 16:19 5
так, новичек я в лотусе...
значит установил себе Lotus Notes, Minder,DominoDesigner.
Lotus notes конектиться к серваку по адресу aaaaa/bbbbb/com (не указано чтото вроде http:\\ ... так надо?)
но есть и локальные базы. их тоже можно смотреть. или сервак ставится вместе с notes и мне надо в моем notes.ini чтото прописать? (что?)


ура!! прописал в path путь к лотусу... exeption изменился на :

Код
java.lang.NoClassDefFoundError: lotus/domino/local/NotesReferenceQueue
at lotus.domino.NotesThread.checkLoaded(Unknown Source)
at lotus.domino.NotesThread.initThread(Unknown Source)
at lotus.domino.NotesThread.run(Unknown Source)
0 / 0 / 0
Регистрация: 14.07.2006
Сообщений: 210
09.10.2006, 17:58 6
тебе надо в notes.ini сервака прописать DIIOP перегрузить сервак. в коде в переменную host передать host сервака к примеру myhost.host.com user имя юзера и pwd notes пароль
0
dmyk
10.10.2006, 15:09 7
не работает никак :ph34r:
тот же java.lang.NoClassDefFoundError вылетает.
даже не доходит до NotesFactory.createSession(.....)
тоесть во время:

platform1 t = new platform1();
t.start();

вываливается гдето этот exception
0 / 0 / 0
Регистрация: 14.07.2006
Сообщений: 210
11.10.2006, 15:29 8
<!--QuoteBegin-dmik+11:10:2006, 12:56 -->
<span class="vbquote">(dmik @ 11:10:2006, 12:56 )</span><!--QuoteEBegin-->не работает никак
тот же java.lang.NoClassDefFoundError вылетает.
даже не доходит до NotesFactory.createSession(.....)
тоесть во время:

platform1 t = new platform1();
t.start();

вываливается гдето этот exception
[snapback]45261" rel="nofollow" target="_blank[/snapback]?[/quote]
Ну да , ты наследуешь Runnable и при этом неправельно его вызываешь.
попробуй так

Код
import lotus.domino.*;
public class Test extends NotesThread{
static int i;
public static void main(String[]argv){
Test thd = new Test();
thd.start();
}
public void runNotes(){
try
{
Session session=NotesFactory.createSession(host,user,pwd);
}

catch(Exception e){ e.printStackTrace();}
}

}
0
dmyk
11.10.2006, 16:05 9
пробовал разные примеры.
сейчас этот:


Код
import lotus.domino.*;
public class platform1 extends NotesThread{
public static void main(String argv[]){
platform1 t = new platform1();
t.start();
}
public void runNotes(){
try{
Session s = NotesFactory.createSession();
}
catch (Exception e){
e.printStackTrace();
}
}
}
и exception:


Код
java platform1
Exception in thread "main" java.lang.NoClassDefFoundError: lotus/domino/NotesThread
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$100(Unknown Source)
......
тут у меня мысль что notesThread "не видит" сервер.
все устанавливал по мануалу в лотусе.
diiop в notes.ini включен.
может я неправильно установил лотус сервер?
у меня был установлен IBM Lotus Notes, Designer, Admin Clients 7.0.1 for Windows Englysh на d:\program files\
потом я установил Lotus Domino server 7.0.1 на c:\program files\
появился ярлык запуска сервера. запускается консольное приложение и в той же папке есть тоже nlnotes.exe но он не видит ни 1 базы.

как вобще, устанавливать и запускать все это чудо надо? как взаимодействует java приложение с лотус-сервером. (тоесть как работает корба)
мне кажется проблема в этом
0 / 0 / 0
Регистрация: 14.07.2006
Сообщений: 210
12.10.2006, 11:01 10
<!--QuoteBegin-dmik+12:10:2006, 13:52 -->
<span class="vbquote">(dmik @ 12:10:2006, 13:52 )</span><!--QuoteEBegin-->как вобще, устанавливать и запускать все это чудо надо? как взаимодействует java приложение с лотус-сервером. (тоесть как работает корба)
мне кажется проблема в этом
[snapback]45373" rel="nofollow" target="_blank[/snapback]?[/quote]

Не важно где у тебя стоит сервак и где клиент главное чтоб насторйки были правильными.Проблема не в корбе. Проверь правильно ли прописаны пути, подключен jar. Посмотри на консль сервака че он пишет . Кста в чем компилишь код?
0
dmyk
12.10.2006, 15:46 11
урааа! все заработало! createsession() работает. правда осталось host, user, password прописать.
проблемма была в том, что класс notesThread используется когда создается обычный сеанс, а класс Thread - когда сеанс CORBA. и юзать надо только NCSO.jar (для корбы) в classpath.
еще поставил юзеров в Run Restricted Java/ javascript в свойствах сервера на вкладке sequrity.
0 / 0 / 0
Регистрация: 19.10.2005
Сообщений: 603
12.10.2006, 16:10 12
Аналогичная совершенно проблема - необходимо получить сессюи лотусовую из вне.
Что сделал:
в notes.ini сервера прописал
JavaUserClasses=D:\DominoLNData\domino\java\NCSO.jar;
ServerTasks= ... DIIOP
Получаю


IWAV0055I Java Bean RunAgent started with the main method
Exception in thread "Thread-1" java.lang.UnsatisfiedLinkError: no nlsxbe in java.library.path
at java.lang.ClassLoader.loadLibrary(Unknown Source)
at java.lang.Runtime.loadLibrary0(Unknown Source)
at java.lang.System.loadLibrary(Unknown Source)
at lotus.domino.NotesThread.load(Unknown Source)
at lotus.domino.NotesThread.checkLoaded(Unknown Source)
at lotus.domino.NotesThread.initThread(Unknown Source)
at lotus.domino.NotesThread.run(Unknown Source)
Хотелось бы знать, что это за кобра и как её "поднимать", подключать к лотусу.... Зачем в настройках пользователя что-то указывать? Вобщем хотелось бы разобраться и решить проблему.... и нет ли более простого способа подключения к Domino? Посл вопрос - почему сервер указывается в виде "myhost.host.com"?
0
dmyk
12.10.2006, 16:40 13
у меня щас вылетает :

Код
NotesException: Could not get IOR from Domino Server: java.net.ConnectException: Connection refused: connect
at lotus.domino.NotesFactory.requestIOR(Unknown Source)
at lotus.domino.NotesFactory.getIOR(Unknown Source)
at lotus.domino.NotesFactory.createSessionUP(Unknown Source)
at lotus.domino.NotesFactory.createSession(Unknown Source)
at by.iba.midlet_test.lotus_db.platform1.run(platform1.java:33)
понятно изза чего, но как решить? (конекчусь к удаленному лотусу, не локальный) может запущеный локальный lotus notes выключить? (те же логин/пароль)


to fedotxxl:
юзай класс Thread вместо notesThread.
в настройках пользователя указывать - затем чтоб лотус знал, кому можно дать доступ. имхо.
сервер указывается в виде myhost/host/com в createsession(....)
более простой способ: в книге написано ...это просто :() "lotus notes & domino development" (Debbie Lind)
jymm
30.06.2009, 11:18 14
народ имеется такой пример.

Код
import lotus.domino.*;
import lotus.domino.NotesFactory;
import lotus.domino.Session;
public class ExampleAgent1 extends NotesThread{
public static void main(String[] args) {
try {

NotesThread.sinitThread();
new ExampleAgent1().NotesMain();

} catch (Exception e) {
e.printStackTrace();
} finally {
NotesThread.stermThread();
}
}
public void NotesMain() {
try {
String host = "192.168.0.3";
Session s = NotesFactory.createSession(host,"Иванов Иван Иванович","пароль");
} catch (Exception e) {
e.printStackTrace();
}
}

}
в результте выдает

Код
NotesException: Could not open Notes session
at lotus.domino.cso.Session.initSession(Unknown Source)
at lotus.domino.cso.Session.<init>(Unknown Source)
at lotus.domino.cso.Session.createSession(Unknown Source)
at lotus.domino.NotesFactory.createSessionUP(Unknown Source)
at lotus.domino.NotesFactory.createSession(Unknown Source)
at ibm.ExampleAgent1.NotesMain(ExampleAgent1.java:27)
at ibm.ExampleAgent1.main(ExampleAgent1.java:12)
Caused by: org.omg.CORBA.COMM_FAILURE: java.net.ConnectException: Connection refused: connect Host: 127.0.0.1 Port: 63148 vmcid: 0x0 minor code: 1 completed: No
DIIOP на сервере работает.
Tyo
30.06.2009, 12:25 15
Вот здесь теже проблемы парень решает
http://lekkimworld.com/2006/06/26/java_in_...ase_part_5.html
jymm
30.06.2009, 14:44 16
Проблема оказалась в самом сервере. видать домино глюконуло, но после перезагрузки компа все стало норм
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
30.06.2009, 14:44

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Как получить доступ к почте MS Outlook из java
Как получить доступ к почте MS Outlook из java

Как получить доступ к жесткому диску из Live Usb мини-дистрибутива на базе BusyBox
Имеется самодельный, собранный из исходников загрузочный образ с initramfs на базе BusyBox. Кроме...

Не получается получить доступ к базе данных
Изменил пароль к учётной записи root согласно инструкциям: mysql&gt; UPDATE user SET...

Не могу получить доступ к MS SQL базе на реальном сервере
Проблема следующего плана - создал пустую базу. Скриптом создал таблицу и добавил данные. ...

Как получить пользователя на Lotus Script?
ПРошу прощения за такой вопрос по синтаксису, но не скажите ли, как получить текущего пользователя?...

Как получить доступ к ftp, http и ssh по VPN через роутер, если есть доступ к samba?
Есть системник с Ubuntu Server 12.04. Он находится за роутером. На системнике стоит PPTP VPN. На...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.