So essentially the Struts taglibs need new TLDs for JSP 2.0. It sounds like the code doesn't have to change, is that so? I've got the JSTL 1.1 spec, I'll check it out.
Re: the tomcat start-up exceptions
preRegister with Catalina:type=Logger,path=/blacksail,host=localhost
org.xml.sax.SAXParseException: cvc-complex-type.2.4.a: Invalid content starting with element 'jsp-version'. The content must match
'((("http://java.sun.com/xml/ns/j2ee":description){0-UNBOUNDED},("http://java.sun.com/xml/ns/j2ee":display-name){0-UNBOUNDED},("http://java.sun.com/xml/ns/j2ee":icon){0-UNBOUNDED}),("http://java.sun.com/xml/ns/j2ee":tlib-version),("http://java.sun.com/xml/ns/j2ee":short-name),("http://java.sun.com/xml/ns/j2ee":uri){0-1},("http://java.sun.com/xml/ns/j2ee":validator){0-1},("http://java.sun.com/xml/ns/j2ee":listener){0-UNBOUNDED},("http://java.sun.com/xml/ns/j2ee":tag){0-UNBOUNDED},("http://java.sun.com/xml/ns/j2ee":tag-file){0-UNBOUNDED},("http://java.sun.com/xml/ns/j2ee":function){0-UNBOUNDED},("http://java.sun.com/xml/ns/j2ee":taglib-extension){0-UNBOUNDED})'.
This is some sort of xml parsing problem, I've narrowed it down to the following declaration in tomcat's server.xml:
<Host name="localhost"
debug="0"
appBase="webapps"
unpackWARs="true"
autoDeploy="true"
xmlValidation="true"
xmlNamespaceAware="true">When I remove the xmlValidation & xmlNamespaceAware attributes, the startup exceptions disappear. I put these attributes in as true so that tomcat would catch any errors I make in the server.xml. Obviously I can live without it or even live with the errors, but it's not happy.
And the exceptions only occur on startup if I delete the tld caches.
It seems this is an issue with jakarta-taglibs and tomcat, rather than with my configuration. Is that so?
Thanks Adam
On 10/02/2003 11:59 PM Hans Bergsten wrote:
To make a long story short, if you primarily want to upgrade to TC 5 and have no interest in using the new JSP 2.0 features, continue to use the Servlet 2.3 deployment descriptor (DD) instead of changing it to a 2.4 DD. A JSP 2.0 container (like TC 5) treats an app with a 2.3 DD just as a JSP 1.2 container, so the app should just work as-is if you do this.
If you change to a 2.4 DD, you're telling the JSP container to handle all EL expressions (instead of letting the JSTL (Or custom library, like Struts) tag handlers handle them). For this to work, you need to change all tag libraries to JSP 2.0 versions (where the attributes are marked as accepting "request-time attribute values"). JSTL 1.1 defines new versions of all libraries for this purpose (with new URIs). I'm not sure if there are JSP 2.0 versions of the Struts EL libraries, though.
For more on this, see the JSTL 1.1 spec.
Hans
-- struts 1.1 + tomcat 5.0.12 + java 1.4.2 Linux 2.4.20 RH9
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
