path = fwd.getPath();
if ( _queryString != null ) path += _queryString.toString();
if ( fwd instanceof PageFlowActionForward )
{
PageFlowActionForward fc = ( PageFlowActionForward ) fwd;
_isNestedReturn = fc.isNestedReturn();
_outputFormBeanType = fc.getReturnFormType();
_redirectSpecifiedOnAnnotation = fc.hasExplicitRedirectValue();
_restoreQueryString = fc.isRestoreQueryString();
_externalRedirect = fc.isExternalRedirect();
_relativeTo = fc.getRelativeTo();
Class returnFormClass = null;
if ( _outputFormBeanType != null )
{
try
{
ReloadableClassHandler rch = Handlers.get(_servletContext).getReloadableClassHandler();
returnFormClass = rch.loadClass( _outputFormBeanType );
}
catch ( ClassNotFoundException e )
{
// This should never happen -- the JPF compiler ensures that it's a valid class.
assert false : e;
}
}
if ( fc.isReturnToPage() || fc.isReturnToAction() )
{
String fwdPath = fc.getPath();
if ( fwdPath.equals( RETURN_TO_PREVIOUS_PAGE_STR ) )
{
_returnToType = RETURN_TO_PREVIOUS_PAGE;
}
else if ( fwdPath.equals( RETURN_TO_CURRENT_PAGE_STR ) )
{
_returnToType = RETURN_TO_CURRENT_PAGE;
}
else if ( fwdPath.equals( RETURN_TO_PAGE_LEGACY_STR ) )
{
_returnToType = RETURN_TO_PAGE; // legacy
}
else if ( fwdPath.equals( RETURN_TO_PREVIOUS_ACTION_STR ) )
{
_returnToType = RETURN_TO_PREVIOUS_ACTION;
}
else if ( fwdPath.equals( RETURN_TO_ACTION_LEGACY_STR ) )
{
_returnToType = RETURN_TO_ACTION; // legacy
}
else
{
assert false : "invalid return-to type for forward " + fc.getName() + ": " + fwdPath;
_returnToType = RETURN_TO_CURRENT_PAGE;
}
}
String retFormMember = fc.getReturnFormMember();
if ( retFormMember != null )
{
try
{