I have tomcat5-5.0.30-5jpp_6fc on FC4 as updated. My client has sent me a war package, foo.war, to install & document. I can deploy it via tomcat's manager.
One problem I hit is that the web.xml file contains a macro, used several places, e.g:
-------------------------------------------------- <param-value>${catalina.home}/webapps/foo</param-value> --------------------------------------------------
It apears it is not being expanded, so that the log fle complains like so:
-------------------------------------------------- ERROR: License Manager Error: ${catalina.home}/webapps/FOO/WEB-INF/lib/foo.jar (No such file or directory) ERROR: License Manager Error: ${catalina.home}/webapps/FOO/WEB-INF/lib/foo.jar (No such file or directory) --------------------------------------------------
When I globally search and replace the correct expansion of the macro into web.xml, I get other problems but not that one, leading me to think that the problem is lack of macro expansion.
I don't see anything in the tomcat docs that suggests that macro expansion can be turned on or off.
Charles Curley wrote:
I have tomcat5-5.0.30-5jpp_6fc on FC4 as updated. My client has sent me a war package, foo.war, to install & document. I can deploy it via tomcat's manager.
One problem I hit is that the web.xml file contains a macro, used several places, e.g:
<param-value>${catalina.home}/webapps/foo</param-value>
[snip]
I don't see anything in the tomcat docs that suggests that macro expansion can be turned on or off.
Does Tomcat have macro expansion? That looks like an Ant macro to me...
Cheers, Gary
On Wed, Oct 19, 2005 at 09:49:38AM +0100, Gary Benson wrote:
Charles Curley wrote:
I have tomcat5-5.0.30-5jpp_6fc on FC4 as updated. My client has sent me a war package, foo.war, to install & document. I can deploy it via tomcat's manager.
One problem I hit is that the web.xml file contains a macro, used several places, e.g:
<param-value>${catalina.home}/webapps/foo</param-value>
[snip]
I don't see anything in the tomcat docs that suggests that macro expansion can be turned on or off.
Does Tomcat have macro expansion? That looks like an Ant macro to me...
Yes, it does look like an Ant macro. Maybe they share the same macro expansion code.
I installed a Sun JVM and Tomcat from Apache's web site on another machine, and have had no problems with this. I moved the Tomcat tree to another location, and it continued to work.
Charles Curley writes:
On Wed, Oct 19, 2005 at 09:49:38AM +0100, Gary Benson wrote:
Charles Curley wrote:
I have tomcat5-5.0.30-5jpp_6fc on FC4 as updated. My client has sent me a war package, foo.war, to install & document. I can deploy it via tomcat's manager.
One problem I hit is that the web.xml file contains a macro, used several places, e.g:
<param-value>${catalina.home}/webapps/foo</param-value>
[snip]
I don't see anything in the tomcat docs that suggests that macro expansion can be turned on or off.
Does Tomcat have macro expansion? That looks like an Ant macro to me...
Yes, it does look like an Ant macro. Maybe they share the same macro expansion code.
I installed a Sun JVM and Tomcat from Apache's web site on another machine, and have had no problems with this. I moved the Tomcat tree to another location, and it continued to work.
Where is the macro ${catalina.home} defined? How does this macro propagate to the context in which Tomcat reads web.xml?
Is there any way to prepare a test case for this stuff?
Andrew.
Charles Curley wrote:
On Wed, Oct 19, 2005 at 09:49:38AM +0100, Gary Benson wrote:
Charles Curley wrote:
I have tomcat5-5.0.30-5jpp_6fc on FC4 as updated. My client has sent me a war package, foo.war, to install & document. I can deploy it via tomcat's manager.
One problem I hit is that the web.xml file contains a macro, used several places, e.g:
<param-value>${catalina.home}/webapps/foo</param-value>
[snip]
I don't see anything in the tomcat docs that suggests that macro expansion can be turned on or off.
Does Tomcat have macro expansion? That looks like an Ant macro to me...
Yes, it does look like an Ant macro. Maybe they share the same macro expansion code.
Or maybe the macro was supposed to be expanded when foo.war was built, by the Ant that built it, however...
I installed a Sun JVM and Tomcat from Apache's web site on another machine, and have had no problems with this. I moved the Tomcat tree to another location, and it continued to work.
...if this is the case then I guess it _is_ supposed to be expanded by Tomcat. It seems fishy though, as any webapp that did such a thing would automatically become container-specific. Is it actually part of the Servlet specification or is it a Tomcat-specific feature do you know?
Cheers, Gary
On Thu, Oct 20, 2005 at 10:49:45AM +0100, Gary Benson wrote:
Charles Curley wrote:
On Wed, Oct 19, 2005 at 09:49:38AM +0100, Gary Benson wrote:
Charles Curley wrote:
I have tomcat5-5.0.30-5jpp_6fc on FC4 as updated. My client has sent me a war package, foo.war, to install & document. I can deploy it via tomcat's manager.
One problem I hit is that the web.xml file contains a macro, used several places, e.g:
<param-value>${catalina.home}/webapps/foo</param-value>
[snip]
I don't see anything in the tomcat docs that suggests that macro expansion can be turned on or off.
Does Tomcat have macro expansion? That looks like an Ant macro to me...
Yes, it does look like an Ant macro. Maybe they share the same macro expansion code.
Or maybe the macro was supposed to be expanded when foo.war was built, by the Ant that built it, however...
I doubt that. The build box might have a different ${catalina.home}, or no Tomcat at all.
I installed a Sun JVM and Tomcat from Apache's web site on another machine, and have had no problems with this. I moved the Tomcat tree to another location, and it continued to work.
...if this is the case then I guess it _is_ supposed to be expanded by Tomcat. It seems fishy though, as any webapp that did such a thing would automatically become container-specific. Is it actually part of the Servlet specification or is it a Tomcat-specific feature do you know?
I searched the spec on "macro", and "$" and found nothing that indicated that it was required by the spec. However,
SRV.1.5 Relationship to Java 2 Platform, Enterprise Edition
The Java Servlet API v.2.4 is a required API of the Java 2 Platform, Enterprise Edition, v.1.41. Servlet containers and servlets deployed into them must meet additional requirements, described in the J2EE specification, for executing in a J2EE environment.
(Java(tm) Servlet Specification Version 2.4P)
I have not checked the J2EE spec.
I can ask my client, but they're in a product release crunch, so I shouldn't right now.
Cheers, Gary
-- fedora-devel-java-list mailing list fedora-devel-java-list@redhat.com https://www.redhat.com/mailman/listinfo/fedora-devel-java-list
java-devel@lists.fedoraproject.org