0

I had an issue where I was getting the following error in the Problems view when attempting to save/compile a Java script library in a DB held on a server. I'm using DDE 8.5.3 (Note, I've changed the app and the lib names):

Project 'app_name.nsf.java-lib-name.javalib' is missing required library: 'C:\lotus\notes8\jvm\lib\axis\axis.jar'

It's worth noting that I'm using the Eclipse based Java editor, this issue doesn't happen if I use the traditional editor.

My script library had a number of JAR files associated, however none of them were included via the path which appeared to be causing the issue. Also it couldn't have been some deeply concealed dependency thing as all of the included JARs are custom built and none of them user or require Axis.

I also did a test creating a fresh library without pulling any external JARs in and the same error occurred.

It turns out the problem was being caused by the use of "JavaUserClassesExt" in my local notes.ini. I've recently been using a LN client app which depends on Axis and part of the install process includes dropping the relevant Axis files into a custom directory within jvm/lib/ext and then updating the ini to include those files using "JavaUserClassesExt" when launching the JVM.

I guess the issue has only shown up now because I've recently had to change the location of my LN install from the path indicated above (lotus\notes8) to something slightly different (lotus\notes853). I copied my ini across from the original install location which is why it still references the old path. Once I removed the references to the wrong path, the error cleared up.

So I can kind of understand what is happening, the JVM is attempting to load all required files on the classpath but is running into an issue because the files being requested via "JavaUserClassesExt" can no longer be found.

What I don't understand is why it's throwing this error when I'm attempting to edit a script library in a completely different database which has nothing to do with the Axis framework. I'd expect a compile error if trying to import anything to do with Axis based on it being on my local classpath, but to throw this error when the library has nothing to do with Axis seems confusing and incorrect to me.

As I mentioned, this only happens when using the Eclipse based Java editor so I presume this is a bug with that version of the editor.

Has anyone come across anything similar? Would this be classed as expected behaviour or can anyone confirm if this is a bug?

I realise this is a pretty edge case issue but would be interested in any insight.

Cheers, Lee

lee_mcmullen
  • 2,801
  • 32
  • 39
  • The obvious question is do you have C:\lotus\notes8\jvm\lib\axis\axis.jar' libs? 'jvm\lib\axis' is not part of a Notes install, so someone must have added them. Also there are security restrictions to take into account if they aren't in the jvm\lib\ext folder. – Simon O'Doherty Nov 19 '12 at 14:18
  • Simon - as I mentioned in the question the files were put there and my ini update by a LN client app I used recently. However the question was why would a completely unrelated java agent in a completely separate database start throwing compilation errors if some files listed in a particular ini setting aren't available. Especially only when editing in the Eclipse based editor. – lee_mcmullen Nov 20 '12 at 14:44
  • What put the files there? You should probably talk to the developer who did. By default the lib\axis folder is not going to have rights to run code in the client. It would require changing the java.policy file, and the best person to do that is the person who wrote the application. – Simon O'Doherty Nov 20 '12 at 17:59
  • Simon, thanks for your comments. However I think you're missing the point of the question. Regardless of how the axis files got there and how the ini got updated, the fact that there is an error occurring in an unrelated database based on an ini setting seems like a bug during with the Eclipse version of the Java editor. Can you/anyone else confirm this or if not, explain how/why the issue is occurring. – lee_mcmullen Nov 22 '12 at 15:25
  • Also on another note, FYI, the code in the lib\axis folder runs just fine without any policy update. – lee_mcmullen Nov 22 '12 at 15:27

0 Answers0