Win a copy of The Java Performance Companion this week in the Performance forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

error : failed to load or instantiate TagExtraInfo class

 
Ramesh kangamuthu
Ranch Hand
Posts: 79
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi,
When I execute struts appcn I got the following error after I have put struts tag libraries in WEB-INF/lib directory.The error is as follows

org.apache.jasper.JasperException: Failed to load or instantiate TagExtraInfo class: org.apache.struts.taglib.html.MessagesTei
 
Merrill Higginson
Ranch Hand
Posts: 4864
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
This error generally occurs when there is a mixture of jar files and tld files from different versions of Struts. Make sure that all of these artifacts come from the same Struts download.

Also note that in Struts 1.3, the TLD files are included in the jar files, and should not be included separately. In your JSPs, you should use their namespace, not their physical location to reference them. Example:
 
Const Supper
Greenhorn
Posts: 1
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I had this problem. Resolve: make sure that you added all required .jar-s to project.
List libraries.
* commons-logging
* commons-lang
* commons-collections
* commons-beanutils
* log4j
* itext (optional, for pdf/rtf export)

or see this http://displaytag.sourceforge.net/1.2/install.html
 
Sumanth Singh
Greenhorn
Posts: 10
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi Merill

I have the same problem. I am using struts 1.2 + jdk 1.6 + MyEcilpse for Spring 9 + J boss 5.1.0 G.A. I am unable to understand by what you said by using their name space.

Since is not their name space can you specify how should we specify their name space.

Const,

I have all the jars mentioned by you. Still it does not work.

Thanks,
Sumanth
 
Jeff Hill
Greenhorn
Posts: 11
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi Sumanth,
He was referring to the technique used to resolve the reference to the TLDs.

"By Location" would be where the URI refers to a specific location such as "WEB-INF/lib" where the TLDs can be found; the container then need only verify the TLD exists in that location.

"By namespace" means the the URI refers to an arbitrary string value (in this case "http://struts.apache.org/tags-logic") that the TLD specifies internally; the container then has to search jars in the classpath for TLDs that define the same string as their URI. Note that this does not mean that the tag code or container ever tries to visit "http://struts.apache.org/tags-logic" - it's just used as a unique identifier, and could just as easily have been "HamSandwich" if that's what the tag developer chose.

A benefit of "By Namespace" is that you can move your tag libraries around and not have to go back and change all your taglib directives.

JeffInTampa
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic