forked from Coded/SIPRP
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
93 lines
2.4 KiB
93 lines
2.4 KiB
/*
|
|
* To change this template, choose Tools | Templates
|
|
* and open the template in the editor.
|
|
*/
|
|
package viewhandler;
|
|
|
|
import java.io.IOException;
|
|
import java.util.Locale;
|
|
import java.util.Map;
|
|
import javax.faces.FacesException;
|
|
import javax.faces.application.ViewHandler;
|
|
import javax.faces.component.UIViewRoot;
|
|
import javax.faces.context.FacesContext;
|
|
|
|
/**
|
|
*
|
|
* @author lluis
|
|
*/
|
|
public class CustomViewHandler extends ViewHandler
|
|
{
|
|
|
|
protected ViewHandler baseViewHandler;
|
|
|
|
public CustomViewHandler( ViewHandler viewHandler )
|
|
{
|
|
super();
|
|
this.baseViewHandler = viewHandler;
|
|
}
|
|
|
|
@Override
|
|
public Locale calculateLocale( FacesContext facesContext )
|
|
{
|
|
return baseViewHandler.calculateLocale( facesContext );
|
|
}
|
|
|
|
@Override
|
|
public String calculateRenderKitId( FacesContext facesContext )
|
|
{
|
|
return baseViewHandler.calculateRenderKitId( facesContext );
|
|
}
|
|
|
|
@Override
|
|
public UIViewRoot createView( FacesContext facesContext, String arg1 )
|
|
{
|
|
setPostback( facesContext, false );
|
|
return baseViewHandler.createView( facesContext, arg1 );
|
|
}
|
|
|
|
@Override
|
|
public String getActionURL( FacesContext facesContext, String arg1 )
|
|
{
|
|
return baseViewHandler.getActionURL( facesContext, arg1 );
|
|
}
|
|
|
|
@Override
|
|
public String getResourceURL( FacesContext facesContext, String arg1 )
|
|
{
|
|
return baseViewHandler.getResourceURL( facesContext, arg1 );
|
|
}
|
|
|
|
@Override
|
|
public void renderView( FacesContext facesContext, UIViewRoot arg1 ) throws IOException, FacesException
|
|
{
|
|
baseViewHandler.renderView( facesContext, arg1 );
|
|
|
|
}
|
|
|
|
@Override
|
|
public UIViewRoot restoreView( FacesContext facesContext, String arg1 )
|
|
{
|
|
setPostback( facesContext, true );
|
|
return baseViewHandler.restoreView( facesContext, arg1 );
|
|
}
|
|
|
|
@Override
|
|
public void writeState( FacesContext facesContext ) throws IOException
|
|
{
|
|
baseViewHandler.writeState( facesContext );
|
|
}
|
|
|
|
public Map getRequestScope( FacesContext facesContext )
|
|
{
|
|
//return (Map)facesContext.getApplication().createValueBinding(?#{requestScope}?).getValue(facesContext);
|
|
//return (Map)facesContext.getApplication().
|
|
return ( Map ) facesContext.getApplication().getExpressionFactory().createValueExpression( facesContext.getELContext(), "#{requestScope}", Map.class ).getValue( facesContext.getELContext() );
|
|
}
|
|
|
|
public void setPostback( FacesContext facesContext, boolean value )
|
|
{
|
|
getRequestScope( facesContext ).put( "ispostback", new Boolean( value ) );
|
|
}
|
|
}
|