Author: michiel
Date: 2010-04-08 14:17:02 +0200 (Thu, 08 Apr 2010)
New Revision: 41797
Modified:
mmbase/branches/MMBase-1_9/core/src/main/java/org/mmbase/framework/JspRenderer.java
Log:
redirecting from a jsp-block didn't work. Tests in mmbase/test/test/urls proved
that.
Modified:
mmbase/branches/MMBase-1_9/core/src/main/java/org/mmbase/framework/JspRenderer.java
===================================================================
---
mmbase/branches/MMBase-1_9/core/src/main/java/org/mmbase/framework/JspRenderer.java
2010-04-08 11:49:01 UTC (rev 41796)
+++
mmbase/branches/MMBase-1_9/core/src/main/java/org/mmbase/framework/JspRenderer.java
2010-04-08 12:17:02 UTC (rev 41797)
@@ -42,7 +42,8 @@
return path.charAt(0) == '/' ? path : JSP_ROOT +
getBlock().getComponent().getName() + '/' + path;
}
- @Override public Parameter<?>[] getParameters() {
+ @Override
+ public Parameter<?>[] getParameters() {
return new Parameter<?>[] {Parameter.RESPONSE, Parameter.REQUEST};
}
@@ -50,7 +51,8 @@
public int code = 200;
public String mesg = null;
}
- @Override public void render(Parameters blockParameters, Writer w,
RenderHints hints) throws FrameworkException {
+ @Override
+ public void render(Parameters blockParameters, Writer w, RenderHints
hints) throws FrameworkException {
try {
HttpServletResponse response =
blockParameters.get(Parameter.RESPONSE);
HttpServletRequest request =
blockParameters.get(Parameter.REQUEST);
@@ -86,6 +88,14 @@
log.debug("Rendering " + url + " status " + status.code);
}
requestDispatcher.include(request, respw);
+
+ String redirected = respw.getRedirected();
+ if (redirected != null) {
+ log.service("Redirecting to " + redirected);
+ response.sendRedirect(redirected);
+ return;
+ }
+
log.debug("Status " + status.code);
if (status.code == 401) {
DeniedRenderer denied = new DeniedRenderer(getType(),
getBlock());
@@ -108,7 +118,8 @@
return getPath() + (params == null ? "" : "?" + Arrays.asList(params));
}
- @Override public java.net.URI getUri() {
+ @Override
+public java.net.URI getUri() {
try {
return
org.mmbase.util.ResourceLoader.getWebRoot().getResource(getPath()).toURI();
} catch (Exception e) {
_______________________________________________
Cvs mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/cvs