Calling Java Agent from Script Library

I have a Java agent which performs a LDAP search to return certain attributes for users based on their login in name

On the webQuerySave of a document, the LS agent runs through, then calls a function in a script library which passes the LDAP filter and Attributes required to a tmpDocument, and then the function calls the Java Agent using the temporary document to record the results of the search. When the Java agent is called however, the following is reported to the log file:

05/26/2004 15:35:55 HTTP JVM: java.lang.NullPointerException

05/26/2004 15:35:55 HTTP JVM: java/lang/Throwable.()V+4 (Throwable.java:73)

05/26/2004 15:35:55 HTTP JVM: java/lang/Exception.()V+1 (Exception.java:24)

05/26/2004 15:35:55 HTTP JVM: java/lang/RuntimeException.()V+1 (RuntimeException.java:28)

05/26/2004 15:35:55 HTTP JVM: java/lang/NullPointerException.()V+1 (NullPointerException.java:34)

05/26/2004 15:35:55 HTTP JVM: JavaAgent.NotesMain()V+0 (JavaAgent.java:43)

05/26/2004 15:35:55 HTTP JVM: lotus/domino/AgentBase.runNotes()V+61 (:??)

05/26/2004 15:35:55 HTTP JVM: lotus/domino/NotesThread.run()V+30 (NotesThread.java:208)

I have a dummy document in the database, and when I use the @Command([ToolsRunMacro];“ldapSearch”) under a button in this form, the agent runs as expected.

Both the agents have permission to run restricted operations, the agent signer and server have permissions to run restricted/unrestricted agent yet the version called from the script library never runs

Anyone have any ideas

Subject: RE: Calling Java Agent from Script Library

Perhaps you could look at the referenced code lines and figure out what statement it’s erroring on?

Offhand I suspect DocumentContext issues – How do you pass the temporary document to the agent?

Rather than running an agent from an agent, why don’t you use LS2J and call the relevant class method(s) directly? That’s more efficient.