sidler 02/05/07 03:23:33
Modified: view/src/java/org/apache/velocity/tools/view/servlet
VelocityViewServlet.java
Log:
Modified VelocityViewServlet.handleRequest() method so that it now
can handle being called from RequestDispatcher.include()
(Thanks to Jeff Schnitzer for the patch)
Revision Changes Path
1.5 +12 -2
jakarta-velocity-tools/view/src/java/org/apache/velocity/tools/view/servlet/VelocityViewServlet.java
Index: VelocityViewServlet.java
===================================================================
RCS file:
/home/cvs/jakarta-velocity-tools/view/src/java/org/apache/velocity/tools/view/servlet/VelocityViewServlet.java,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- VelocityViewServlet.java 4 Apr 2002 13:05:56 -0000 1.4
+++ VelocityViewServlet.java 7 May 2002 10:23:33 -0000 1.5
@@ -116,7 +116,7 @@
* @author <a href="mailto:[EMAIL PROTECTED]">Gabe Sidler</a>
* @author <a href="mailto:[EMAIL PROTECTED]">Geir Magnusson Jr.</a>
*
- * @version $Id: VelocityViewServlet.java,v 1.4 2002/04/04 13:05:56 sidler Exp $
+ * @version $Id: VelocityViewServlet.java,v 1.5 2002/05/07 10:23:33 sidler Exp $
*/
public class VelocityViewServlet extends VelocityServlet
@@ -269,7 +269,17 @@
Context ctx )
throws Exception
{
- return getTemplate(request.getServletPath() );
+ // If we get here from RequestDispatcher.include(), getServletPath()
+ // will return the original (wrong) URI requested. The following special
+ // attribute holds the correct path. See section 8.3 of the Servlet
+ // 2.3 specification.
+ String path =
(String)request.getAttribute("javax.servlet.include.servlet_path");
+ if (path == null)
+ {
+ path = request.getServletPath();
+ }
+
+ return getTemplate(path);
}
--
To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>