Pregunta

Tengo una pregunta con respecto a la presentación de contenidos formulario con p:commandbutton que tiende a trabajar en el camino ajax.

Si tengo un código como el siguiente:

<f:verbatim  rendered="#{myBean.constructor}"></f:verbatim >
 <h:form prependId="false">
          ....            
            .....
<p:commandButton   value="#{msg.Add_Parameter_Set}" update="addParameterSetPnl,msgs"  action="#{myBean.initNewParametersSet}"/>
  </h:form>

Al enviar el formulario con el botón de comando, el método de getContructor f: Verbatim ser llamado (puedo actualizar diferentes partes de la forma)? ¿Cómo puedo evitar que sea llamado?

I pensó que la presentación de una forma, solamente hace que el contenido de la forma / el contenido que se ha especificado por el parámetro update ..

¿Fue útil?

Solución

No debe dañar. Si estás haciendo cosas caras allí, entonces usted debe mover a que el método constructor, @PostConstruct o acción del grano en cuestión, o introducir la carga diferida o fase olfateando.

// In Constructor..
public Bean() {
    constructed = getItSomehow();
}

// ..or @PostConstruct..
@PostConstruct
public void init() {
    constructed = getItSomehow();
}

// ..or action method..
public String submit() {
    constructed = getItSomehow();
    return "outcome";
}

// ..or lazy loading..
public boolean getConstructed() {
    if (constructed == null) constructed = getItSomehow();
    return constructed;
}

// ..or phase sniffing (this one updates during render response only).
public boolean getConstructed() {
    if (FacesContext.getCurrentInstance().getRenderResponse()) constructed = getItSomehow();
    return constructed;
}

Ver también

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top