|
next
|
Subject: Cannot use JAR file for function, etc. Author: Brian Runck Date: 22 Aug 2002 11:18 AM
|
I've run into 2 problems. First one is, when trying to use a Java function registered in the mapper, I keep getting an error that it can't find a class. This class is in the JAR file which I have repeatedly tried to define in the CLASSPATH everywhere I can think of (the 2 in my environment (System and User variables), and the 2 in SS (External JVM and Java Virtual Machine)). It's also included in the Java Compiler classpath, which does seem to work because you can compile the class file from within SS.
I use the JDK 1.4 SE. I run NT 4 SP6 and the latest version of SS (build 96). I have noticed that the Java runtime itself seems to ignore the environment classpaths, for JAR files anyway. I can't run a sample program using this JAR file unless I define it using the -cp option on the command line, whether or not it's defined in the default classpath(s). I don't know why that is either but it may be related.
Second problem is that once the class is to be registered, the "Java Class Browser" doesn't seem to work very well. It has a file tree view that only has CLASSPATH as a root and only expands to ".", which is always forced to be the "bin" folder for Stylus Studio. Doesn't seem to matter where the project and other files reside. So I have to put my function class files in the bin directory for them to be registered. I'd rather not have to do that and I don't believe it's supposed to work that way from what the doc says.
I'm including a zip file with all the files; project, JAR file, XSL/XML/schema files, etc. I've also included the stderr.txt file which has the error information when I try to run the scenario. There's only one scenario, available to be run when the "PAISconversion.xsl" file is open. It has a post-processing command as well but I don't think it gets that far. I'll include the classpaths from the 2 places in SS options:
Java Virtual Machine:
${classpath};"C:\Program Files\Stylus Studio\bin\xalan.jar";"C:\Program
Files\Stylus Studio\bin\xml-apis.jar";"C:\Program Files\Stylus
Studio\bin\xerces.jar";"D:\OMetadata\regexp
test\jakarta-oro-2.0.6.jar";.;
External JVM:
${classpath};"C:\Program Files\Stylus Studio\bin\xalan.jar";"C:\Program
Files\Stylus Studio\bin\xml-apis.jar";"C:\Program Files\Stylus
Studio\bin\xerces.jar";"D:\OMetadata\regexp
test\jakarta-oro-2.0.6.jar";.;
Note the extra "." was added at the end in a desperate attempt to get the Java class browser to recognize directories other than "bin." That doesn't help and is obvious when using the browser.
The function that is used in the project is the one that uses the ORO regexp package. The other function in the class is not demonstrated here, but uses the Java 1.4 regexp classes and that seems to avoid problem #1, since its imported classes are part of the Java defaults.
I hope these can be looked at and resolved as it causes quite a burden for us. Thank you.
functionprobs.zip
|
|
|