You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jetspeed-dev@portals.apache.org by "Setera, Craig" <Cr...@Kingland.com> on 2001/12/07 20:11:46 UTC

Forward versus redirect

I'm using a cut of code from a couple of weeks ago.  I'm wondering if there
are some places where a redirect to the portal page would be better than
doing a forward.

For instance, if I:
- Customize my portal
- Save/apply
- Follow a link on my portal that changes the current browser page (rather
than targetting another window)
- Hit the back button

I get an error about the page being no longer cached from IE.  If I elect to
refresh the page and allow it to resubmit my parameters (from the save), I
will blow up with the attached "Horrible exception" (see below)

This is one of the reasons that many times we do a "sendRedirect" in our web
applications rather than a forward.  It avoids these problems.  It does
require more request/reply pairs, but I believe it is better in some cases.

Any thoughts?
Craig

Craig Setera
Sun Certified Java Programmer/Developer/Web Component Developer
Senior Software Architect, Kingland Systems Corporation

Horrible Exception: java.lang.reflect.InvocationTargetException:
java.lang.NullPointerException at
org.apache.jetspeed.modules.actions.controllers.MultiColumnControllerAction.
doSave(MultiColumnControllerAction.java:350) at
java.lang.reflect.Method.invoke(Native Method) at
org.apache.turbine.util.velocity.VelocityActionEvent.executeEvents(VelocityA
ctionEvent.java:166) at
org.apache.jetspeed.modules.actions.controllers.VelocityControllerAction.per
form(VelocityControllerAction.java:110) at
org.apache.turbine.modules.ActionLoader.exec(ActionLoader.java:122) at
org.apache.turbine.modules.pages.DefaultPage.doBuild(DefaultPage.java:143)
at org.apache.turbine.modules.Page.build(Page.java:90) at
org.apache.turbine.modules.PageLoader.exec(PageLoader.java:123) at
org.apache.turbine.Turbine.doGet(Turbine.java:565) at
org.apache.turbine.Turbine.doPost(Turbine.java:655) at
javax.servlet.http.HttpServlet.service(HttpServlet.java:760) at
javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application
FilterChain.java:247) at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
ain.java:193) at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.ja
va:243) at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:5
66) at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943) at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.ja
va:201) at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:5
66) at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943) at
org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2344)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164
) at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:5
66) at
org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.
java:170) at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:5
64) at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:170
) at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:5
64) at
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:462) at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:5
64) at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943) at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java
:163) at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:5
66) at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943) at
org.apache.catalina.connector.http.HttpProcessor.process(HttpProcessor.java:
1011) at
org.apache.catalina.connector.http.HttpProcessor.run(HttpProcessor.java:1106
) at java.lang.Thread.run(Thread.java:484) 

--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>