+1 On Tue, Mar 24, 2009 at 7:42 PM, Maria Kaval <[email protected]> wrote: > We would like to add a new API for Trinidad, as discussed in > https://issues.apache.org/jira/browse/TRINIDAD-1432 > > > > Internal views are viewIds that may be requested by a client and are handled > internal to the web application, without necessarily dispatching to a > resource like a JSP. An internal view handler is implemented by extending > the org.apache.myfaces.trinidad.render.InternalView abstract class. > > Certain controllers keep track of the viewId of the currently displayed view > in a window. When a request is received on the server the controller checks > to see if the requested viewId is different from the last known viewId for > that window. If the viewIds are different then the controller recognizes > this situation as a navigation and releases any state it had for the > previous view. > > The problem is internal views doesn't always result in display of a new view > in window, i.e. in navigation. Instead, they may just request some logic be > executed or that a new window be opened. > > In order to prevent incorrectly triggering the controller's navigation > detection, the controller needs to be able to determine if the current View > Root is an internal view or not. The proposed API is thus: > > RequestContext > { > /** > * Determines whether the current View Root is an internal view > * @param context Faces context > * @return true if the current View Root is an internal view, false > otherwise > */ > public abstract boolean isInternalViewRequest(FacesContext context); > } > > > > Are there objections or other suggestions on how to achieve this, or is the > new API acceptable? > > > > Thanks, Maria > > > > Maria Kaval > Software Development Director > ADF View Run Time > Oracle Corporation > tel: (650) 506 2045 cell: (650) 430 1888 > mailto:[email protected] | web: www.oracle.com > >
-- Matthias Wessendorf blog: http://matthiaswessendorf.wordpress.com/ sessions: http://www.slideshare.net/mwessendorf twitter: http://twitter.com/mwessendorf
