그래서 샘플 앱을 작동시키는 데 어려움을 겪고 있습니다. 나는 Primefaces 3.3M4-SNAPSHOT, JBOSS 7 웹 프로파일 (CDI 및 JSF Mojarra)을 사용하고 있습니다.
이@Named
@ViewScoped
@URLMapping(id = "viewEditor", pattern = "/editor/e", viewId = "/editor/editor.jsf")
public class ViewEditor implements Serializable {
public void deleteNode() {
selectedNode.getChildren().clear();
selectedNode.getParent().getChildren().remove(selectedNode);
selectedNode.setParent(null);
selectedNode = null;
}
}
내 XHTML은 :
<p:contextMenu for="docs">
<p:menuitem value="View" update="documentPanel"
icon="ui-icon ui-icon-search" oncomplete="documentDialog.show()" />
<p:menuitem value="Delete"
actionListener="#{viewEditor.deleteNode}" update="docs"
icon="ui-icon ui-icon-close" />
</p:contextMenu>
내 응용 프로그램을 실행, 이것이 예외 내가 얻을 :
이javax.el.ELException: /editor/editor.xhtml: The class 'application.ViewEditor$Proxy$_$$_WeldClientProxy' does not have the property 'deleteNode'.
com.sun.faces.facelets.compiler.AttributeInstruction.write(AttributeInstruction.java:94)
com.sun.faces.facelets.compiler.UIInstructions.encodeBegin(UIInstructions.java:82)
com.sun.faces.facelets.compiler.UILeaf.encodeAll(UILeaf.java:183)
javax.faces.render.Renderer.encodeChildren(Renderer.java:168)
사람이 왔는가
나는 내 백업 콩이 내가 한 것과 똑같은 문제에 걸쳐?
여기에 정보가 누락되었습니다. 당신은 아마 당신이 말하는 것 이상을 사용합니다. 이 @ViewScoped의 출처는 어디입니까? Seams 3 얼굴들 prettyfaces annotation을 가지고 있기 때문에 나는 추측한다. 엘이 제안하는 오류는 "getDeleteNode()"를 호출하려고합니다. JSF 페이지에서 "deleteNode"가 발생하지 않았습니까? 전체 정보 또는 github 링크를 보낼 수 있습니까? –
Antoine 안녕하세요. @Viewscoped는 ee6 주석입니다. http://download.oracle.com/javaee/6/api/javax/faces/bean/ViewScoped.html 얼굴이 사용 된 것인지 확실하지 않습니다. jboss 7에 대한 간단한 설명을 제공합니다. 여기에 소개 된 프라임 표면에 설명 된대로 샘플 앱을 만들려고합니다. http://www.primefaces.org/showcase-labs/ui/treeTableContextMenu.jsf –
예 @ViewScoped is in JSF 사양이지만 CDI에는 포함되지 않습니다. 표시하고있는 코드는 일관성이 없으며 viewscope에서이 bean을 필요로하지 않고 요청 작업에서이 bean을 가지고 있기 때문에 작동합니다. 변경되면 ... 작동하지 않습니다. –