Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Re: Problem in establishing Domino User Connector

317 views
Skip to first unread message

Dennis Lai

unread,
Mar 9, 2006, 5:56:48 PM3/9/06
to
Hi Eddie

I still can't make connection to names.nsf using DominoUserConnector. Do
you think what's wrong there?

Thanks
Dennis


"Dennis" <ccdla...@yahoo.com.hk> wrote in message
news:dugrea$o034$1...@news.boulder.ibm.com...
>I am fresh in using DominoUserConnector in TDI 6.0. By following the TDI
>6.0 reference guide, I included the d:\domino\lotus in PATH variable in
>ibmditk.bat and ibmisrv.bat files. Also, I removed the ncso.jar from
>TDI\jars directory. Then I try to test the connection by clicking "Connect
>to the data source" button in the "Input Map" tab of the connector GUI. It
>shows "Loading connector..." forever. Is my TDI configuration wrong?
>Attached is my TDI configuration and the xml file.
>
> Thanks
> Dennis
>
>
>
>
>


abol...@us.ibm.com

unread,
Mar 10, 2006, 2:47:25 PM3/10/06
to

Hi Dennis,

I might be able to help. Could you provide more information about your environment?

What platform is your TDI / Domino Server install on (I'm assuming Windows since you mentioned .bat files)?
What Domino Server version are you trying to connect to (e.g. Domino Server v6.5.4 FP1)?

Since I don't know much about your setup, I'm going to take a swing at the basic requirements:

Is TDI installed and running from the same machine where the Domino Server is installed?
Did you add the pathname of Notes.jar to the myclasspath variable in both the ibmdisrv.bat and ibmditk.bat (e.g. C:\Lotus\Domino\Notes.jar)? If you did, consider this alternative.


Problem Domino Users connector section in the IDI v6 reference guide mention to Add the pathname of Notes.jar to the myclasspath variable in both the ibmdisrv.bat and ibmditk.bat files. This library is provided by Lotus and can be found in the folder where the Domino Server is installed (for example, C:\Lotus\Domino).  

Solution An alternative way to provide the PATH to Notes.jar would be to add it to Windows Environment Variables. Here how to do it.

1. Right click on My computer icon
2. Select the system properties tab (this will open the system properties window)
3. Select Advanced
4. Click on the Environment Variables button
5. Select new under system variables
6. In the Edit System variable window
7. Variable name set to classpath
8. Variable value c:\Program Files\Lotus\Domino\jvm\lib\ext\Notes.Jar


To authenticate the local server connection, the Domino Server requires the user's ShortName and Internet password. Make sure that's the case in your Connector's params.

In order for TDI to access the Domino  Server, you have to enable it through Domino Administrator -> Configuration -> Current Server Document -> Security -> Java/COM Restrictions. The user account you have configured TDI to use must also belong to a group listed under Run restricted Java/Javascript/COM and Run unrestricted Java/Javascript/COM.

Not sure if you're a Domino person, but from my experience, it helps to coordinate your efforts with the Domino Administrator.

Good luck and let me know how it goes!

Dennis

unread,
Mar 13, 2006, 6:06:26 AM3/13/06
to
Thanks for your reply.  I am using TDI 6.0 on Windows 2003 platform.  It was installed in the server where Lotus Domino Server 6.5.4.  The Domino Server was installed in D:\Lotus\Domino.   Therefore the Notes.jar is located at d:\Lotus\Domino.  Based on your suggestion and my repeated testing, I have the 4 testinig summary:
 
TDI Configuration:
An AL has one DominoUserConnector in iterator mode
 
Username: hubadmin    (In Notes Administrator interface, one of the short name is hubadmin.  His internet address is also huba...@xxx.yyy.zzz)
password: Internet password
Name and Address Book Database: names.nsf
Use full-text search: untick
Full-text filter: Fill nothing
Formula filter: Fill nothing
Detailed log: untick
 
Notes Configuration:
Add the hubadmin to Run Java/Javascript/COM and Run unrestricted Java/Javascript/COM
 
Method 1:
1.  In both ibmdisrv.bat and ibmditk.bat, I place "D:\Lotus\Domino" in PATH variable.  This variable is already existed in the file.  Therefore, the line became
set PATH="D:\Lotus\Domino";"C:\.....",......
2.  As I cannot find the myclasspath in both files, I just add a new line
set myclasspath="D:\Lotus\Domino"
below the "set PATH" line.
3.  Rename "C:\program files\ibm\ibmdirectoryintegrator\jars\ncso.jar to ncso.jar.bak
4. Open the TDI and run corresponding AL, an error resulted:
Error in: LoadConnectors: java.lang.NoClassDefFoundError: lotus/domino/NotesException
java.lang.NoClassDefFoundError: lotus/domino/NotesException
 at java.lang.Class.forName1(Native Method)
 at java.lang.Class.forName(Class.java:180)
 at com.ibm.di.function.SystemFunctions.loadConnector(Unknown Source)
 at com.ibm.di.server.AssemblyLineComponent.loadConfig(Unknown Source)
 at com.ibm.di.server.AssemblyLineComponent.<init>(Unknown Source)
 at com.ibm.di.server.AssemblyLine.loadConnector(Unknown Source)
 at com.ibm.di.server.AssemblyLine.loadConnectors(Unknown Source)
 at com.ibm.di.server.AssemblyLine.msLoadConn(Unknown Source)
 at com.ibm.di.server.AssemblyLine.executeMainStep(Unknown Source)
 at com.ibm.di.server.AssemblyLine.executeMainLoop(Unknown Source)
 at com.ibm.di.server.AssemblyLine.executeMainLoop(Unknown Source)
 at com.ibm.di.server.AssemblyLine.executeAL(Unknown Source)
 at com.ibm.di.server.AssemblyLine.run(Unknown Source)
 
5.  Exit the TDI application
 
Method 2:
1.  Clear the additional configuration setting which were used in method 1.
2.  ncso.jar.bak remains unchanged.
3.  Add CLASSPATH environment variable to the MS Server and its value is D:\Domino\Lotus
4.  Open TDI and run corresponding AL, an eror resulted:
18:38:33  Error in: LoadConnectors: java.lang.NoClassDefFoundError: lotus/domino/NotesException
java.lang.NoClassDefFoundError: lotus/domino/NotesException
 at java.lang.Class.forName1(Native Method)
 at java.lang.Class.forName(Class.java:180)
 at com.ibm.di.function.SystemFunctions.loadConnector(Unknown Source)
 at com.ibm.di.server.AssemblyLineComponent.loadConfig(Unknown Source)
 at com.ibm.di.server.AssemblyLineComponent.<init>(Unknown Source)
 at com.ibm.di.server.AssemblyLine.loadConnector(Unknown Source)
 at com.ibm.di.server.AssemblyLine.loadConnectors(Unknown Source)
 at com.ibm.di.server.AssemblyLine.msLoadConn(Unknown Source)
 at com.ibm.di.server.AssemblyLine.executeMainStep(Unknown Source)
 at com.ibm.di.server.AssemblyLine.executeMainLoop(Unknown Source)
 at com.ibm.di.server.AssemblyLine.executeMainLoop(Unknown Source)
 at com.ibm.di.server.AssemblyLine.executeAL(Unknown Source)
 at com.ibm.di.server.AssemblyLine.run(Unknown Source)
5. Exit TDI.
 
Method 3:
Simiar in method 2, but rename ncso.jar.bak back to ncso.jar
java.lang.Exception: Fatal error: java.lang.NoClassDefFoundError: lotus/domino/util/Platform
 at com.ibm.di.connector.dominoUsers.DominoUsersConnector.executeCommand(Unknown Source)
 at com.ibm.di.connector.dominoUsers.DominoUsersConnector.initialize(Unknown Source)
 at com.ibm.di.server.AssemblyLineComponent.initialize(Unknown Source)
 at com.ibm.di.server.AssemblyLine.initConnectors(Unknown Source)
 at com.ibm.di.server.AssemblyLine.msInitConn(Unknown Source)
 at com.ibm.di.server.AssemblyLine.executeMainStep(Unknown Source)
 at com.ibm.di.server.AssemblyLine.executeMainLoop(Unknown Source)
 at com.ibm.di.server.AssemblyLine.executeMainLoop(Unknown Source)
 at com.ibm.di.server.AssemblyLine.executeAL(Unknown Source)
 at com.ibm.di.server.AssemblyLine.run(Unknown Source)
18:41:00  Error in: InitConnectors: java.lang.Exception: Fatal error: java.lang.NoClassDefFoundError: lotus/domino/util/Platform
java.lang.Exception: Fatal error: java.lang.NoClassDefFoundError: lotus/domino/util/Platform
 at com.ibm.di.connector.dominoUsers.DominoUsersConnector.executeCommand(Unknown Source)
 at com.ibm.di.connector.dominoUsers.DominoUsersConnector.initialize(Unknown Source)
 at com.ibm.di.server.AssemblyLineComponent.initialize(Unknown Source)
 at com.ibm.di.server.AssemblyLine.initConnectors(Unknown Source)
 at com.ibm.di.server.AssemblyLine.msInitConn(Unknown Source)
 at com.ibm.di.server.AssemblyLine.executeMainStep(Unknown Source)
 at com.ibm.di.server.AssemblyLine.executeMainLoop(Unknown Source)
 at com.ibm.di.server.AssemblyLine.executeMainLoop(Unknown Source)
 at com.ibm.di.server.AssemblyLine.executeAL(Unknown Source)
 at com.ibm.di.server.AssemblyLine.run(Unknown Source)
Method 4:
1.  Copy Notes.jar to c:\program files\ibm\ibmdirectoryintegrator\jars
2.  Remove the environment variable.
java.lang.Exception: Fatal error: java.lang.UnsatisfiedLinkError: Can't find library nlsxbe  (nlsxbe.dll) in sun.boot.library.path or java.library.path
sun.boot.library.path=C:\Program Files\IBM\IBMDirectoryIntegrator\_jvm\jre\bin
java.library.path=C:\Program Files\IBM\IBMDirectoryIntegrator\_jvm\jre\bin;.;C:\WINDOWS\system32;C:\WINDOWS;C:\Program Files\IBM\IBMDirectoryIntegrator\_jvm\jre\bin;C:\Program Files\IBM\IBMDirectoryIntegrator\libs
 at com.ibm.di.connector.dominoUsers.DominoUsersConnector.executeCommand(Unknown Source)
 at com.ibm.di.connector.dominoUsers.DominoUsersConnector.initialize(Unknown Source)
 at com.ibm.di.server.AssemblyLineComponent.initialize(Unknown Source)
 at com.ibm.di.server.AssemblyLine.initConnectors(Unknown Source)
 at com.ibm.di.server.AssemblyLine.msInitConn(Unknown Source)
 at com.ibm.di.server.AssemblyLine.executeMainStep(Unknown Source)
 at com.ibm.di.server.AssemblyLine.executeMainLoop(Unknown Source)
 at com.ibm.di.server.AssemblyLine.executeMainLoop(Unknown Source)
 at com.ibm.di.server.AssemblyLine.executeAL(Unknown Source)
 at com.ibm.di.server.AssemblyLine.run(Unknown Source)
19:03:11  Error in: InitConnectors: java.lang.Exception: Fatal error: java.lang.UnsatisfiedLinkError: Can't find library nlsxbe  (nlsxbe.dll) in sun.boot.library.path or java.library.path
sun.boot.library.path=C:\Program Files\IBM\IBMDirectoryIntegrator\_jvm\jre\bin
java.library.path=C:\Program Files\IBM\IBMDirectoryIntegrator\_jvm\jre\bin;.;C:\WINDOWS\system32;C:\WINDOWS;C:\Program Files\IBM\IBMDirectoryIntegrator\_jvm\jre\bin;C:\Program Files\IBM\IBMDirectoryIntegrator\libs
java.lang.Exception: Fatal error: java.lang.UnsatisfiedLinkError: Can't find library nlsxbe  (nlsxbe.dll) in sun.boot.library.path or java.library.path
sun.boot.library.path=C:\Program Files\IBM\IBMDirectoryIntegrator\_jvm\jre\bin
java.library.path=C:\Program Files\IBM\IBMDirectoryIntegrator\_jvm\jre\bin;.;C:\WINDOWS\system32;C:\WINDOWS;C:\Program Files\IBM\IBMDirectoryIntegrator\_jvm\jre\bin;C:\Program Files\IBM\IBMDirectoryIntegrator\libs
 at com.ibm.di.connector.dominoUsers.DominoUsersConnector.executeCommand(Unknown Source)
 at com.ibm.di.connector.dominoUsers.DominoUsersConnector.initialize(Unknown Source)
 at com.ibm.di.server.AssemblyLineComponent.initialize(Unknown Source)
 at com.ibm.di.server.AssemblyLine.initConnectors(Unknown Source)
 at com.ibm.di.server.AssemblyLine.msInitConn(Unknown Source)
 at com.ibm.di.server.AssemblyLine.executeMainStep(Unknown Source)
 at com.ibm.di.server.AssemblyLine.executeMainLoop(Unknown Source)
 at com.ibm.di.server.AssemblyLine.executeMainLoop(Unknown Source)
 at com.ibm.di.server.AssemblyLine.executeAL(Unknown Source)
19:03:11  [DominoConnector] Error while terminating: java.lang.Exception: Connector Notes Thread not alive. Cannot perform.
 at com.ibm.di.server.AssemblyLine.run(Unknown Source)
 
So do you have what my problem is?!
 
 

abol...@us.ibm.com

unread,
Mar 13, 2006, 1:29:56 PM3/13/06
to

The error segment below looks like it has to do with the ncso.jar file. Not sure if the version matters or has something to do with it.

Error in: LoadConnectors: java.lang.NoClassDefFoundError: lotus/domino/NotesException
java.lang.NoClassDefFoundError: lotus/domino/NotesException


Another thing. When you edited your ibmdisrv.bat file, did you add the classpath as follows (to the bottom of ibmdisrv.bat):

"C:\Program Files\IBM\IBMDirectoryIntegrator\_jvm\jre\bin\java" -classpath "D:\Lotus\Domino\Notes.jar" "-Dlog4j.configuration=file:log4j.properties" -jar "C:\Program Files\IBM\IBMDirectoryIntegrator\IDILoader.jar" com.ibm.di.server.RS %*

Try that, then start the TDI Server with your AL:

ibmdisrv -c"NAME_OF_AL_FILE.xml" -r"NAME_OF_AL"

Dennis

unread,
Mar 13, 2006, 10:26:46 PM3/13/06
to
After including the -classpath to the executable line, the following error results as if I placed the Notes.jar to C:\program files\ibm\ibmdirectoryintegrator\jars
ava.lang.Exception: Fatal error: java.lang.UnsatisfiedLinkError: Can't find library nlsxbe  (nlsxbe.dll) in sun.boot.library.path or java.library.path
sun.boot.library.path=C:\Program Files\IBM\IBMDirectoryIntegrator\_jvm\jre\bin
java.library.path=C:\Program Files\IBM\IBMDirectoryIntegrator\_jvm\jre\bin;.;C:\WINDOWS\system32;C:\WINDOWS;C:\Program Files\IBM\IBMDirectoryIntegrator\_jvm\jre\bin;C:\Program Files\IBM\IBMDirectoryIntegrator\libs
 at com.ibm.di.connector.dominoUsers.DominoUsersConnector.executeCommand(Unknown Source)
 at com.ibm.di.connector.dominoUsers.DominoUsersConnector.initialize(Unknown Source)
 at com.ibm.di.server.AssemblyLineComponent.initialize(Unknown Source)
 at com.ibm.di.server.AssemblyLine.initConnectors(Unknown Source)
 at com.ibm.di.server.AssemblyLine.msInitConn(Unknown Source)
 at com.ibm.di.server.AssemblyLine.executeMainStep(Unknown Source)
 at com.ibm.di.server.AssemblyLine.executeMainLoop(Unknown Source)
 at com.ibm.di.server.AssemblyLine.executeMainLoop(Unknown Source)
 at com.ibm.di.server.AssemblyLine.executeAL(Unknown Source)
 at com.ibm.di.server.AssemblyLine.run(Unknown Source)
11:22:25  Error in: InitConnectors: java.lang.Exception: Fatal error: java.lang.UnsatisfiedLinkError: Can't find library nlsxbe  (nlsxbe.dll) in sun.boot.library.path or java.library.path

sun.boot.library.path=C:\Program Files\IBM\IBMDirectoryIntegrator\_jvm\jre\bin
java.library.path=C:\Program Files\IBM\IBMDirectoryIntegrator\_jvm\jre\bin;.;C:\WINDOWS\system32;C:\WINDOWS;C:\Program Files\IBM\IBMDirectoryIntegrator\_jvm\jre\bin;C:\Program Files\IBM\IBMDirectoryIntegrator\libs
java.lang.Exception: Fatal error: java.lang.UnsatisfiedLinkError: Can't find library nlsxbe  (nlsxbe.dll) in sun.boot.library.path or java.library.path
sun.boot.library.path=C:\Program Files\IBM\IBMDirectoryIntegrator\_jvm\jre\bin
java.library.path=C:\Program Files\IBM\IBMDirectoryIntegrator\_jvm\jre\bin;.;C:\WINDOWS\system32;C:\WINDOWS;C:\Program Files\IBM\IBMDirectoryIntegrator\_jvm\jre\bin;C:\Program Files\IBM\IBMDirectoryIntegrator\libs
 at com.ibm.di.connector.dominoUsers.DominoUsersConnector.executeCommand(Unknown Source)
 at com.ibm.di.connector.dominoUsers.DominoUsersConnector.initialize(Unknown Source)
 at com.ibm.di.server.AssemblyLineComponent.initialize(Unknown Source)
 at com.ibm.di.server.AssemblyLine.initConnectors(Unknown Source)
 at com.ibm.di.server.AssemblyLine.msInitConn(Unknown Source)
 at com.ibm.di.server.AssemblyLine.executeMainStep(Unknown Source)
 at com.ibm.di.server.AssemblyLine.executeMainLoop(Unknown Source)
 at com.ibm.di.server.AssemblyLine.executeMainLoop(Unknown Source)
 at com.ibm.di.server.AssemblyLine.executeAL(Unknown Source)
 at com.ibm.di.server.AssemblyLine.run(Unknown Source)

abol...@us.ibm.com

unread,
Mar 14, 2006, 12:58:10 AM3/14/06
to

At this point I'm running out of suggestions and can only recommend you seek official TDI L2 Support. I don't have a test/dev environment to duplicate your setup, but they should. As far as I know, Notes.jar references nnotes.dll which in turn references several other Domino dll's. As long as you have the D:\Lotus\Domino directory in your system classpath, then it should resolve all the dependent dll's. Aside from any syntax errors or typos, I can't think of any other technical reasons why this doesn't work for you.

Time permitting, I will research further and see what I can find. Good luck.

abol...@us.ibm.com

unread,
Mar 14, 2006, 2:15:05 AM3/14/06
to

A few more things...

Please make sure you have TDI 6.0 Fixpack 2 installed on your machine. Also, there is an example of the DominoUsersConnector in C:\Program Files\IBM\IBMDirectoryIntegrator\examples\DominoUsersConnector.

I've tried using the DominoUsersConnector only once in a test/dev environment, but could never get it to work in LocalServer mode. At that time, the Domino Server version wasn't supported by TDI 6.0. But for that very reason, I used the Lotus Notes Connector instead in IIOP (SSL) mode and have successfully implemented that in a Production AIX environment. Works well.

Try using the Lotus Notes Connector instead (but make sure you follow the Reference Guide to the letter). If that doesn't work, then definitely contact TDI Support.

Again, good luck.

Jason Williams

unread,
Mar 15, 2006, 1:25:27 PM3/15/06
to
Here's a few comments I can add.
This morning I went through and setup the TDI 6.0 FP2 (DominoUser
Connector) against a Domino 7 system.

Here were my steps:
1. Rename the ncso.jar to nsco.jar.bak in the <TDI>/jars directory
2. Append C:\Program Files\Lotus\Domino; to the PATH variable in the
ibmditk and ibmdisrv.
NOTE: I had previously been running the DominoChangeDetection
Connector on this TDI installation and when I attempted to run the
DominoUser connector this morning I received this error:

java.lang.Exception: NotesException: User <userName> is not a server

I corrected this error by making sure the "C:\Program
Files\Lotus\Domino" path was appended before any reference of a "Lotus
Notes Client" path. The "Notes Client" path isn't required for the
Domino User Connector.

3. In TDI 6.0, there is no classpath variable in the ibmditk or ibmdisrv
files. Make a copy of the C:\Program
Files\Lotus\Domino\jvm\lib\ext\Notes.jar file and place it in the
C:\Program Files\IBM\IBMDirectoryIntegrator\jars directory.

4. For the username in the connector, you will need to use the value
given in the person's "User name" field in the Domino Admin GUI. If
their shortname is listed in that field, it should work also. Either
way, you should get an "Invalid user name/password"

5. The quote " " symbols should be removed from the PATH variable in the
ibmditk and ibmdisrv. Only do this if you have applied Fixpack2. You
can find further instruction about this in the README for Fixpack2.

IBM - IBM Tivoli Directory integrator Ver 6.0 Fixpack
2(6.0.0-TIV-ITDI-FP0002)
http://www-1.ibm.com/support/docview.wss?rs=697&context=SSCQGF&q1=fixpack&uid=swg24010523&loc=en_US&cs=utf-8&lang=en

6. I made sure the user id was registered in the Domino Server under the
Security settings given earlier in your posting.

Good luck.

Dennis

unread,
Mar 17, 2006, 6:32:47 AM3/17/06
to
Thanks very much for the detailed steps. The problem is solved!!.


"Jason Williams" <jdwi...@us.ibm> wrote in message
news:dv9m6m$4lo6g$1...@news.boulder.ibm.com...

0 new messages