Chris Cuilla wrote:

> OK. Calming down from my frustration...
>

This line of questions is more appropriate on the TOMCAT-USER mailing list, since
they are Tomcat-specific.  However, I will comment on them here (cc'd to
TOMCAT-USER) to avoid needless duplication.

>
> I have a web application that I have successfully deployed on Tomcat (up to
> 3.2.1) for several weeks now.
>
> I began to move this over WebLogic 5.1 only to discover that I had to
> (significantly) alter the web.xml deployment descriptor.
>
> First, The DTD...under Tomcat, the examples (and all of my descriptors) refer to
> the following DTD:
>
> <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application
> 2.2//EN" "http://java.sun.com/j2ee/dtds/web-app_2_2.dtd">
>
> However, WebLogic 5.1 usings the following:
>
> <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application
> 1.2//EN" "http://java.sun.com/j2ee/dtds/web-app_2_2.dtd">
>

the "1.2" part of this public identifier is incorrect -- see the Servlet
Specification, version 2.2, page 63.

NOTE:  Struts users <http://jakarta.apache.org/struts> have encountered other
anomalies in WebLogic 5.1 as well, including not respecting the <load-on-startup>
element, and various problems with the web app class loader.

>
> Secondly, WebLogic did not seem to like the fact that I had certain elements in
> certain places, where Tomcat does not appear to have any problem with them.
>

The DTD for a web application deployment descriptor does require that the elements
inside <web-app> be in a particular order.  Tomcat 3.1 and 3.2 do *not* enforce this
order (unless you use tag libraries in a JSP page -- it's a long story :-).  Tomcat
4.0 *does* enforce this, and it sounds like WebLogic does as well.

If your web.xml file has elements out of the required order, then your deployment
descriptor is invalid.

>
> Strangely enough, when I change the web app deploying to Tomcat to the 1.2
> version shown above, it complains it cannot find it (and vice versa with
> WebLogic).
>

Tomcat registers an internal copy of the DTD, under the public identifier described
in the spec.  This means that Tomcat doesn't need to go out on the Internet to grab
a copy when processing a web.xml file.  Changing the public identifier means that
the internal registration no longer matches.

>
> So what gives?
>
> Chris Cuilla
> President
> Cuilla Enterprises, Inc.
>

Craig McClanahan



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, email: [EMAIL PROTECTED]

Reply via email to