Es stellte sich heraus, dass mir ein paar JSF -Abhängigkeiten fehlten: jsf-api.jar
und jsf-impl.jar
. Anschließend nahm es die von meinem Container (WebSphere) zur Verfügung gestellten, die von der falschen Version stammten und daher nicht funktioniert. Sobald diese Abhängigkeitsgläser und die richtige Version angewendet wurden, war alles gut!
Seitumfang ist nicht aktiv. SelectBooleCheckbox
Frage
Naht 2.2.2, JSF 1.2. Es klingt so einfach: a dataTable
Wo jede Zeile ein Kontrollkästchen hat, das ich beobachten möchte, wenn eine Schaltfläche aufgerufen wird. Ich habe einen Controller:
@Name("MyController")
@Scope(ScopeType.PAGE)
public class MyController {
private List<MyItem> myItems;
public MyItem[] getItemsList(boolean excluded) {
return myItems;
}
ich habe MyItem
Typ:
public class MyItem {
private boolean selected = false;
public boolean isSelected() {
return selected;
}
public void setSelected(boolean selected) {
System.out.println("setting to " + selected);
this.selected = selected;
}
... other things ...
}
Dies ist mein xhtml:
<a:form id="formExcludedList">
<rich:dataTable id="excludeList"
value="#{MyController.getItemsList(true)}" var="o">
<rich:column>
<h:selectBooleanCheckbox id="selectComponent"
value="#{o.selected}" />
</rich:column>
Beim Klicken auf das Kontrollkästchen MyItem.setSelected
wird nicht ausgeführt. Ich bekomme aber etwas funky Protokollierung: (für Kürze gepflegt)
DEBUG createHotDeployment - Using Java hot deploy
DEBUG beginRequest - >>> Begin JSF request for <my page>
DEBUG begin - beginning transaction prior to phase: RESTORE_VIEW(1)
DEBUG begin - beginning JTA transaction
WARN getInstance - Cannot create Seam component, scope is not active: MyController(PAGE)
WARN getInstance - Cannot create Seam component, scope is not active: MyController(PAGE)
WARN getInstance - Cannot create Seam component, scope is not active: MyController(PAGE)
WARN getInstance - Cannot create Seam component, scope is not active: MyController(PAGE)
DEBUG restoreAndLockConversation - No stored conversation
DEBUG commitOrRollback - committing transaction after phase: INVOKE_APPLICATION(5)
DEBUG commit - committing JTA transaction
DEBUG begin - beginning transaction prior to phase: RENDER_RESPONSE(6)
DEBUG begin - beginning JTA transaction
DEBUG commitOrRollback - committing transaction after phase: RENDER_RESPONSE(6)
DEBUG commit - committing JTA transaction
DEBUG endRequest - Discarding conversation state: 7
DEBUG endRequest - After render response, destroying contexts
DEBUG flushAndDestroyContexts - ... et cetera
DEBUG destroy - destroying: ...
DEBUG destroy - destroying: ... et cetera
DEBUG endRequest - <<< End JSF request for <my page>
Ihre Hilfe ist sehr geschätzt!
Lösung
Andere Tipps
JBoss kann diesen Fehler auch werfen, wenn er nicht finden kann seam.properties
in der Ihrer Bewerbung src/conf
Verzeichnis. Die Datei kann leer sein, muss aber da sein, damit der Bereich aktiv ist.
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow