Оказалось, что мне не хватало нескольких зависимостей JSF: jsf-api.jar
а также jsf-impl.jar
. Анкет Впоследствии это потребовалось те, которые были предоставлены моим контейнером (WebSphere), которые были неправильной версией, следовательно, он не работает. После применения этих банок зависимости и правильной версии все было хорошо!
Невозможно создать компонент шва, область страницы не активна; SELECTBOOLEANCHECKBOX
Вопрос
Шв 2.2.2, JSF 1.2. Это звучит так просто: dataTable
Где в каждой строке есть флажок, который я хочу наблюдать, когда вызывается какая -то кнопка. У меня есть контроллер:
@Name("MyController")
@Scope(ScopeType.PAGE)
public class MyController {
private List<MyItem> myItems;
public MyItem[] getItemsList(boolean excluded) {
return myItems;
}
у меня есть MyItem
тип:
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 ...
}
Это мой 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>
При нажатии на флажок MyItem.setSelected
не выполняется. Я получаю немного прикольного регистрации: (подготовлен для краткости)
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>
Ваша помощь очень ценится!
Решение
Другие советы
JBoss может также выбросить эту ошибку, если не может найти seam.properties
В вашем приложении src/conf
каталог. Файл может быть пустым, но он должен быть там, чтобы область была активной.
Не связан с StackOverflow