rt.jar?? what is this?

i am running(testing) eclipse with my strust 1.1 but i found this error at the first place.

Exception during startup processing
java.lang.reflect.InvocationTargetException: java.lang.NoClassDefFoundError: org/xml/sax/helpers/DefaultHandler
      at java.lang.ClassLoader.defineClass0(Native Method)
      at java.lang.ClassLoader.defineClass(Unknown Source)
      at java.security.SecureClassLoader.defineClass(Unknown Source)
      at java.net.URLClassLoader.defineClass(Unknown Source)
      at java.net.URLClassLoader.access$100(Unknown Source)
      at java.net.URLClassLoader$1.run(Unknown Source)
      at java.security.AccessController.doPrivileged(Native Method)
      at java.net.URLClassLoader.findClass(Unknown Source)
      at java.lang.ClassLoader.loadClass(Unknown Source)

Then the ClassLoader.class come up from the IDE and telling me the Source Not Found. Then i click the Change Attached Source, then it's asking me to located the rt.jar.

But what is this rt.jar? If i am running eclipse 3.0 with Tomcat 4.1.27, can it be run? This is because most of the sample struts application i downloaded can not be run in this enviornment.

What do you think?
Thank you.
alorsetar2000Asked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

dualsoulCommented:
rt.jar - is the stands for run time :) it's the main library, which contains all classes from SDK.
ClassLoader - is the class, which loads classes from .class files.
in your case, you don't have JAXP package in your classpath (or even installed on system), so try to install it and add to your classpath
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
dualsoulCommented:
you can download Xerces4J to get JAXP classes, for instance
0
alorsetar2000Author Commented:
how to set my classpath to point to my runtime?

in my system, i have already set this:

JAVA_HOME                    C:\jdk1.3.1_07
CLASSPATH                    C:\jt400\jt400.jar
CATALINA_HOME            C:\Program Files\Apache Group\Tomcat 4.1

is that i need to add this in?

CLASSPATH                     C:\jdk1.3.1_07  ??
0
C++ 11 Fundamentals

This course will introduce you to C++ 11 and teach you about syntax fundamentals.

KuldeepchaturvediCommented:
You don't have to set your class path to your run time.. its already done when you specify JAVA_HOME parameter.
As dualsoul said above, you are missing JAXP package ( which is XML parser classes) in your system...  Go to http://xml.apache.org/xerces2-j/index.html and download xrecs to your system and try again..

Hope this helps
0
dualsoulCommented:
if you want Xerces, to be installed standalone, somewhere on your file system, just set:

CLASSPATH=C:\jt400\jt400.jar;path_to_xerces_jar_file

but, i recommend you to download and install JAXP package from java.sun.com
0
alorsetar2000Author Commented:
dualsoul, i have downloaded the files you recomanded into C:\Xerces-J-bin.2.5.0\xerces-2_5_0

and i have set my classpath to point to that folder,
CLASSPATH   =C:\Xerces-J-bin.2.5.0\xerces-2_5_0

but i am still getting the problem.

Anyway, do you think you can provide me the link for this JAXP package location in the java.sun.com?

And this is the same error i am getting when i start my Tomcat appserver in eclipse environment
Exception during startup processing
java.lang.reflect.InvocationTargetException: java.lang.NoClassDefFoundError: org/xml/sax/helpers/DefaultHandler
      at java.lang.ClassLoader.defineClass0(Native Method)
      at java.lang.ClassLoader.defineClass(Unknown Source)
      at java.security.SecureClassLoader.defineClass(Unknown Source)
      at java.net.URLClassLoader.defineClass(Unknown Source)
      at java.net.URLClassLoader.access$100(Unknown Source)
      at java.net.URLClassLoader$1.run(Unknown Source)
      at java.security.AccessController.doPrivileged(Native Method)
      at java.net.URLClassLoader.findClass(Unknown Source)
      at java.lang.ClassLoader.loadClass(Unknown Source)
      at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
      at java.lang.ClassLoader.loadClass(Unknown Source)
      at org.apache.catalina.loader.StandardClassLoader.loadClass(StandardClassLoader.java:941)
      at org.apache.catalina.loader.StandardClassLoader.loadClass(StandardClassLoader.java:857)
      at org.apache.catalina.loader.StandardClassLoader.loadClass(StandardClassLoader.java:941)
      at org.apache.catalina.loader.StandardClassLoader.loadClass(StandardClassLoader.java:857)
      at java.lang.ClassLoader.loadClassInternal(Unknown Source)
      at org.apache.catalina.startup.Catalina.createStartDigester(Catalina.java:280)
      at org.apache.catalina.startup.Catalina.start(Catalina.java:441)
      at org.apache.catalina.startup.Catalina.execute(Catalina.java:400)
      at org.apache.catalina.startup.Catalina.process(Catalina.java:180)
      at java.lang.reflect.Method.invoke(Native Method)
      at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:203)

But when I start my appserver OUTSIDE the eclipse, things are working just fine......
0
dualsoulCommented:
>CLASSPATH   =C:\Xerces-J-bin.2.5.0\xerces-2_5_0
you should point classpath to .jar files, which contain classes you need, not directory
use some zip tool to view contens of .jar files, and find which contains org/xml/sax/helpers/DefaultHandler
or even better, include all .jar from your Xerces:

CLASSPATH   =C:\Xerces-J-bin.2.5.0\xerces-2_5_0\lib\some.jar;C:\Xerces-J-bin.2.5.0\xerces-2_5_0\lib\some2.jar
and so on...

Start search JAXP from here:
http://java.sun.com/xml/jaxp/index.html
0
dualsoulCommented:
>But when I start my appserver OUTSIDE the eclipse, things are working just fine......

hm...may be eclipse ignore system CLASSPATH setting, and use it's own.
Try to search, where to set up CLASSPATH in Eclipse
0
alorsetar2000Author Commented:
OK....
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
JSP

From novice to tech pro — start learning today.