Hi Wayne,

This is a classpath problem.

You could try adding
c:\Ptolemy\ptII5.0-beta\poi\poi-2.5.1-final-20040804.jar
to your CLASSPATH environment variable.

To do this permanently under Windows XP, Click on "Start" and then
right click on the "My Computer" menu choice and select "properties".

The System Properties Window will come up.
In that window, select Advanced and then Environment Variables

In the Environment Variables window, look for the CLASSPATH variable,
it is probably already in the "System Variables" section.

Select the CLASSPATH variable, and hit edit and then add your
jar file.  Note that you should use semicolons to separate the jar
from the other elements in your CLASSPATH.


Under Cygwin bash, you could add to your classpath temporarily with


    export 
"CLASSPATH=c:/Ptolemy/ptII5.0-beta/poi/poi-2.5.1-final-20040804.jar;${CLASSPATH}"

However, you would need to do this each time you start up a bash
shell.


When you run vergil, if you run it with the -v option it will show you
the classpath:
    
    vergil -v

_Christopher

Christopher Brooks (cxh at eecs berkeley edu) University of California
Programmer/Analyst Chess/Ptolemy/Trust        US Mail: 558 Cory Hall #1770
ph: 510.643.9841 fax:510.642.2739             Berkeley, CA 94720-1770
home: (F-Tu) 707.665.0131 (W-F) 510.655.5480  (office: 400A Cory)



--------

    I am having a problem writing a Ptolemy actor and need some help.
    
    I am writing RangeReader.java, an actor to read a range from an Excel
    spreadsheet.  I based it on FileReader in ptolemy.actor.lib.io.  I am using
    the Apache POI/HSSF from http://jakarta.apache.org/poi/index.html to read
    the file.  The file compiles, but when I use the actor in Vergil, I get a
    NoClassDefFoundError in the line:
    
      POIFSFileSystem fs = new POIFSFileSystem (in);
    
    This line is straight out of the POI/HSSF samples.  The file I am opening
    exists.  I tested with an incorrect filename and got an different exception
    in a previous line.
    
    I think the error means that it found the class at compile time, but not at
    run time.  Is there something I need to do so that Ptolemy will find the PO
   I
    .jar file?
    
    I put RangeReader.java in C:\Ptolemy\ptII5.0-beta\ptolemy\actor\lib\io and 
   I
    put the POI directory in C:\Ptolemy\ptII5.0-beta.  I compile with:
    
      javac -classpath
    c:\Ptolemy\ptII5.0-beta\poi\poi-2.5.1-final-20040804.jar;c:\Ptolemy\ptII5.0
   -
    beta RangeReader.java
    
    I'm a lifelong c/c++ programmer and new to Java.  I suspect this is a simpl
   e
    problem that an experienced Java programmer can solve easily.
    
    The whole stack trace is:
    
    ptolemy.kernel.util.IllegalActionException:   in.range.manager
    Because: org/apache/poi/poifs/filesystem/POIFSFileSystem
        at ptolemy.actor.Manager.execute(Manager.java:383)
        at ptolemy.actor.Manager.run(Manager.java:951)  at
    ptolemy.actor.Manager$2.run(Manager.java:1003) 
    Caused by: java.lang.NoClassDefFoundError:
    org/apache/poi/poifs/filesystem/POIFSFileSystem
        at ptolemy.actor.lib.io.RangeReader.fire(RangeReader.java:123)
        at ptolemy.domains.de.kernel.DEDirector.fire(DEDirector.java:506)
        at ptolemy.actor.CompositeActor.fire(CompositeActor.java:329)
        at ptolemy.actor.Manager.iterate(Manager.java:601)      at
    ptolemy.actor.Manager.execute(Manager.java:319)     ... 2 more 
    Caused by: java.lang.NoClassDefFoundError:
    org/apache/poi/poifs/filesystem/POIFSFileSystem
        at ptolemy.actor.lib.io.RangeReader.fire(RangeReader.java:123)
        at ptolemy.domains.de.kernel.DEDirector.fire(DEDirector.java:506)
        at ptolemy.actor.CompositeActor.fire(CompositeActor.java:329)
        at ptolemy.actor.Manager.iterate(Manager.java:601)      at
    ptolemy.actor.Manager.execute(Manager.java:319)
        at ptolemy.actor.Manager.run(Manager.java:951) 
    
    
    Thanks in advance for any help you can give me.
    
    Wayne Goode, SAIC, Huntsville, AL
    
    ---------------------------------------------------------------------------
   -
    Posted to the ptolemy-hackers mailing list.  Please send administrative
    mail for this list to: [EMAIL PROTECTED]
--------

----------------------------------------------------------------------------
Posted to the ptolemy-hackers mailing list.  Please send administrative
mail for this list to: [EMAIL PROTECTED]

Reply via email to