月度归档: 2009 年 4 月

Tomcat中request.getContextPath()值引发的问题

今天是生日,一大早上社区就发现了一个问题,是一个网友报的错误(http://bbs.laoer.com/main-read-15-ff808081205a54e001205d2565901041.html),我一看还真是,连接地址有错误,成了http://post.bbscs?action=re&bid=15&parentID=……,前面的服务器地址没有了,程序没有修改过,为什么会出现这样的问题呢,我看了一下代码,在BBSCSUtil.java里有个getActionMappingURL(String action, HttpServletRequest request)方法,其中要取request.getContextPath(),当应用根路径下运行的时候,request.getContextPath()的值为“/”,所以getActionMappingURL方法返回的值前面多了一个“/”,在Tomcat5.5中对于//uri的连接解析似乎不正确,而在用Resin时候却没有问题,看来在request.getContextPath()的问题上还是要多注意。