tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Nikola Milutinovic <>
Subject Re: css and images (stupid question?)
Date Mon, 28 Nov 2005 14:20:03 GMT
Kristian Rink wrote:

>Hash: SHA1
>Hi all;
>playing around with tomcat in order to both learn using the package and
>create a small web site there, I'm currently left with a problem which,
>though probably being small (and not really related to tomcat), keeps
>bugging me:
>I'm trying to do the visual stuff of my jsp using a css style file,
>which is good, so far. Within the css file, I'm using images for
>backgrounds etc like that:
>background: #fff url(/images/bg_header_blau.jpg) no-repeat top left;
>My problem, right now, is where to put the images within the web
>application so they're actually found when displaying the page.
>Initially, I created a folder "images" within my web application and
>referred to the images using url(images/...) with relative path names,
>which didn't work. Also tried to place the images folder inside
>$CATALINA_HOME/webapps and then using absolute image urls (/image/...),
>which also didn't work.
>So, where's the magic? I've always been through some tougher moments
>with css and images while dynamically generating content, but right now
>I feel really helpless about that. Can someone enlighten me?

Well, your basic problem is that relative paths will not work, since 
pages can be in different directories. Absolute path has one problem, 
your application can be deployed under different paths. That problem is 
easy to solve, HttpServletRequest.getContextPath() will give you the 
deployment path. Just paste it on your desired CSS location, like this:


background: #fff url(<%= request.getContextPath() %>/images/bg_header_blau.jpg) no-repeat
top left;

or, if you're using JSP 2.0

background: #fff url(${request.contextPath}/images/bg_header_blau.jpg) no-repeat top left;



To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message