aspose file tools*
The moose likes Tomcat and the fly likes Paths in Tomcat standalone mode Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of EJB 3 in Action this week in the EJB and other Java EE Technologies forum!
JavaRanch » Java Forums » Products » Tomcat
Bookmark "Paths in Tomcat standalone mode" Watch "Paths in Tomcat standalone mode" New topic
Author

Paths in Tomcat standalone mode

Brusk Baran
Ranch Hand

Joined: Nov 15, 2001
Posts: 132
I have an application under Tomcat. and my problem is that it does handle relative paths very well, but not the paths wrt the root-context.
say I am in root-context/files/f1.jsp
If i refer to /images/img1.gif here It cannot handle this request. Although img1.gif exists inside root-context/images/img1.gif
Regards,
c.
William Brogden
Author and all-around good cowpoke
Rancher

Joined: Mar 22, 2000
Posts: 12675
    
    5
A reference to /images/img.gif is relative to the ROOT directory, not some web application context. Thats not a Tomcat problem.
I think that using "../images/img.gif" might be what you want - the .. says back up one directory from where the jsp lives.
Bill
[ December 25, 2002: Message edited by: William Brogden ]

Java Resources at www.wbrogden.com
Brusk Baran
Ranch Hand

Joined: Nov 15, 2001
Posts: 132
Hi William,
I am aware of the ../ stuff.
I just wanted to know why /images/someImage.gif does not work!! why does it refer to $WEB-APPLN_SERVER/webapps/ROOT/ directory. I see no reason..
Rene Larsen
Ranch Hand

Joined: Oct 12, 2001
Posts: 1179

The first / refere to the root of the Web-Server - e.g. 'http://127.0.0.1/' - in your case '$WEB-APPLN_SERVER/webapps/ROOT/'
Rene


Regards, Rene Larsen
Dropbox Invite
Tim Holloway
Saloon Keeper

Joined: Jun 25, 2001
Posts: 15629
    
  15

The first thing to realize is that although they LOOK the same, a URL is NOT actually a directory path. In many cases, they do map, but not all (as for example the Apache Alias directive). In fact, some webservers secure themselves by NOT assuming that the filesystem tree will map node-for-node and thus requiring explicit URI/directory mappings.
Among the things that can cause confusion is if you map a web app to a complex context using a mechanism such as the Tomcat <context> directive and/or a context definition in an EAR's application.xml file.
For example (from an EAR's application.xml):

Let's say that the directory structure looks like this:

The canonical URL for the image1 file would be something like http://www.myserver.com:8080/wowser/images/image1.png
For a JSP at http://www.myserver.com:8080/wowser/index.jsp, the relative-to-root path for the image1 file would be "/images/image1.png" because the TOMCAT_ROOT/webapp/ directory would be implicit and the wowser/ would be part of the context root. Usually, of course, you'd just have "/" as the context root, so the image1 URL would be http://www.myserver.com:8080/images/image1.png
"../images/image1.png" would also work - in this case you're explicitly mapping relative to the referrer's context location rather than walking down from the context root.


Customer surveys are for companies who didn't pay proper attention to begin with.
 
Consider Paul's rocket mass heater.
 
subject: Paths in Tomcat standalone mode
 
Similar Threads
Migration from websphere 3.5 to 4.0.1
Multilevel context path for ROOT app does not work
context path in the message.properties of struts
Images in applets won't compile!
Getting absolute path of image file