Das ist meine Phase ListenerAktion Methode wird nicht in JSF genannt
public class AdminPhaseListener implements PhaseListener {
private static final long serialVersionUID = -1161541721597667238L;
public void afterPhase(PhaseEvent e) {
System.out.println("after Phase " + e.getPhaseId());
}
public void beforePhase(PhaseEvent e) {
System.out.println("before Phase " + e.getPhaseId());
if(e.getPhaseId()== PhaseId.RESTORE_VIEW)
{
}
}
public PhaseId getPhaseId() {
return PhaseId.ANY_PHASE;
}}
Auf Klick auf eine Befehlsschaltfläche in meiner Seite, nenne ich eine Aktion Methode und einige Verarbeitung tun, aber die Aktion-Methode wird nicht aufgerufen , aber im Serverprotokoll konnte ich die Nachrichten sehen, die von meinem PhaseListener für alle Phasen gedruckt wurden.
Wenn meine Sicht nicht geändert wurde, hätte es nach der RESTORE_VIEW Phase richtig aufgehört?
irgendwelche Gedanken?
Sie den Code für Wie ich den Befehlsschaltflächen anzuzeigen:
<table width="100%">
<h:column rendered="#{adminBean.displayResultsSize > 0}">
<tr>
<td colspan="14" height="5" nowrap="nowrap" class="WhiteRow"></td>
</tr>
<tr>
<td colspan="14" height="1" nowrap="nowrap" align="center"
bgcolor="#999999"></td>
</tr>
<h:inputHidden id="removeUserId" value="#{adminBean.removeUserId}"/>
<h:inputHidden id="removeIBD" value="#{adminBean.removeIBD}"/>
<h:inputHidden id="removeAPA" value="#{adminBean.removeAPA}"/>
<tr>
<td colspan="14" height="30" nowrap="nowrap"
class="FilterColumnGrayHeader" align="center">
<input type="button" disabled="disabled" id="button_edit"
value="Edit Details" class="disabledfield"
onclick="populateEditRow();">
</input> <h:commandButton type="submit" class="disabledfield" immediate="true"
id="button_remove" value="Remove" onclick="populateRemoveRow();" action="#{adminBean.remove}">
</h:commandButton>  
</td>
</tr>
<tr bgcolor="#000000">
<td colspan="14" height="1" nowrap="nowrap" align="center"
bgcolor="#999999"></td>
</tr>
<tr>
<td height="10"></td>
</tr>
</h:column>
</table>
@gekrish Das Gleiche gilt für mich in den meisten Fällen. Dies kann schnell passieren, wenn ein View-Parameter in einer Request-Scoped-Variablen wie folgt gespeichert wird: '' Ein optionaler Flash-Scope für 'f: param' wäre großartig. Sonst speichere ich es immer in einer View-Scoped Bean. –
djmj