I do have a reason for upgrading - I'm not just a masochist ;) - I need the character encoding features of the servlet 2.4 spec. Thanks for the explanation of that error on the struts taglibs. Makes sense. It was the same error as I was getting from the old jstl 1.0.4 taglibs, which also makes sense.

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]



Reply via email to