[jsf] Quando usare f: viewAction / preRenderView contro PostConstruct?



Answers

Hai bisogno di inizializzare le proprietà del bean gestito? -> Quindi, usa @ PostConstruct Altrimenti, hai bisogno di lavorare con i parametri passati da un'altra vista? -> Quindi, utilizzare " preRenderView "

Question

Quando si dovrebbe utilizzare l'evento f:viewAction o preRenderView per inizializzare i dati per una pagina rispetto all'utilizzo dell'annotazione @PostConstruct ? La logica è l'utilizzo dell'uno o dell'altro in base al tipo di scope del backing bean, ad esempio se il backing bean è @RequestScoped , quindi si sceglierebbe di usare f:viewAction o preRenderView su @PostConstruct per inizializzare il backing bean prima del rendering il punto di vista è irrilevante in quanto i due comporterebbero lo stesso effetto?

f: viewAction o preRenderView

<f:metadata>
  <f:viewAction action="#{myBean.initialize}" />
</f:metadata>
<f:metadata>
  <f:event type="preRenderView" listener="#{myBean.initialize}"/>
</f:metadata>

o

@PostConstruct

public class MyBean
{
    @PostConstruct
    public void initialize()
    {

    }
}



Related