You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by "Mark B. Indictor" <mb...@fiddler.com> on 2002/02/27 18:24:09 UTC
REPOST: Please HELP!: URL Mapping Problems in servlet
OK -- I'm having a related problem:
I can hit my servlet with the following httpd.conf and web.xml file setup
with these two URLs:
http://hostname:8080/s2/sb/
And
http://hostname/SiteBlocks/sb/
>From within the servlet, I am trying to reconstruct the URL. I am using the
following code:
...
private String buildURL( HttpServletRequest req ) {
// Build a new absolute URL
StringBuffer url = new StringBuffer();
url.append( req.getScheme() ); // http
url.append( "://" ); // http://
url.append( req.getServerName() ); // http://hostname
url.append( ":" ); // http://hostname:
url.append( req.getServerPort() ); // http://hostname:80
url.append( req.getServletPath() ); //
http://hostname:80/SiteBlocks/sb
return url.toString();
}
...
Unfortunately, the URL this produces is either:
http://hostname:8080/sb or http://hostname/sb,
and not
http://hostname:8080/s2/sb or http://hostname/SiteBlocks/sb
as expected.
Am I doing something wrong? If so, how can I get the desired result?
Thanks for any assistance!
Here's an excerpt from my httpd.conf file:
...
<IfModule od_webapp.c>
WebAppConnection warpconnection warp localhost:8008
WebAppDeploy examples warpConnection /examples/
WebAppDeploy SiteBlocks warpConnection /SiteBlocks/
</IfModule>
...
Here's my entire web.xml file:
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE web-app
PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
<servlet>
<servlet-name>
SiteBlocks
</servlet-name>
<servlet-class>
S2Server
</servlet-class>
<init-param>
<param-name>resource</param-name>
<param-value>/usr/local/jakarta-tomcat-4.0.2/webapps/SiteBlocks/WEB-INF/Site
BlocksServer.properties</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>
SiteBlocks
</servlet-name>
<url-pattern>
/sb
</url-pattern>
</servlet-mapping>
</web-app>
- Mark
======================================================
Mark Indictor -- V.P. Engineering
mbi@site2.com
<http://www.site2.com>
Phone:(310)451-3472 FAX:(240)220-6341
http://keyserver.pgp.com/pks/lookup?op=get&search=0x8959F966
======================================================
-----Original Message-----
From: Dave Ferguson [mailto:dferguson@touchnet.com]
Sent: Tuesday, February 26, 2002 12:11 PM
To: Tomcat Users List
Subject: Re: servlet-mapping problem
This is basic stuff. It should work. What URL are you using to invoke the
servlet? With no mapping the URL would be http://server/servlet/warservlet.
If your mapping is
<url-pattern>/blah</url-pattern>
then the URL would be http://server/blah. Restart Tomcat to be sure your
changes take effect.
- df