노드 선택을 기반으로 ajax 호출을 통해 Center/Main Content를로드하는 탐색기로 primefaces Tree Componemt를 사용하고 있습니다. 코드는 내가 이클립스를 통해 실행하면 잘 작동하지만 난 구글 앱 엔진에 배포 후 같은 시도 할 때 nodeSelect 이벤트의 청취자는 전혀에서 appenginePrimefaces ajax listner가 Tree 구성 요소의 select 이벤트에 호출되지 않습니다.
menu.xhtml
<h:form id="adminForm" styleClass="formStyle">
<p:growl id="adminMessage" showDetail="true" />
<p:tree value="#{adminMenuBean.root}" var="node"
selectionMode="single" >
<p:ajax event="select" listener="#{adminMenuBean.onNodeSelect}"
process="@this" update=":main" dynamic="true"/>
<p:treeNode id="adminTreeNode">
<h:outputText value="#{node}" id="lblNode" />
</p:treeNode>
</p:tree>
</h:form>
에 호출되지 않습니다
AdminMenuBean.java
@ManagedBean(name = "adminMenuBean")
@SessionScoped
public class AdminMenuBean implements Serializable {
private static final long serialVersionUID = 1L;
private static final Logger log = Logger.getLogger(AdminMenuBean.class
.getName());
private String name;
private String caddress;
private Date dob;
private Long mobileno;
private double uniqueno = 0;
private String navigationUrl = "UserRequest";
private TreeNode root;
public TreeNode getRoot() {
return root;
}
public AdminMenuBean() {
root = new DefaultTreeNode("root", null);
TreeNode admin = new DefaultTreeNode("Admin", root);
TreeNode UserRequest = new DefaultTreeNode("User Request", admin);
TreeNode ManageUser = new DefaultTreeNode("Manage User", admin);
TreeNode DocumentManagement = new DefaultTreeNode(
"Document Management", root);
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getCaddress() {
return caddress;
}
public void setCaddress(String caddress) {
this.caddress = caddress;
}
public Date getDob() {
return dob;
}
public void setDob(Date dob) {
this.dob = dob;
}
public Long getMobileno() {
return mobileno;
}
public void setMobileno(Long mobileno) {
this.mobileno = mobileno;
}
public double getUniqueno() {
uniqueno = uniqueno + Math.random();
return uniqueno;
}
public void setUniqueno(double uniqueno) {
this.uniqueno = uniqueno;
}
public String getNavigationUrl() {
return navigationUrl;
}
public void setNavigationUrl(String navigationUrl) {
this.navigationUrl = navigationUrl;
}
public void onNodeSelect(NodeSelectEvent event) {
log.info("node select"+ navigationUrl);
if (event.getTreeNode().getParent().toString() != "root"
|| event.getTreeNode().getData().toString() == "Document Management") {
String url = event.getTreeNode().getData().toString();
try {
url = url.replaceAll(" ", "");
System.out.println("url-->" + url);
this.setNavigationUrl(url);
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
내 프로젝트 Dependenci (Bean을 관리) ES
- Primefaces 3.4
- JDK 1.6
- JSF 2.0
- 하는 App Engine SDK 버전 1.7.4 나는 3.5로 업그레이드 나무 와 primefaces의 버전 3.4에서 문제가 있었다
즉시 = "참"을 삭제하십시오. 이 btw를 사용하는 이유는 무엇입니까? – Tankhenk
예. 불량품을 제거하고 다시 시도하십시오. – Holla
나는 그것을 제거했지만 시도가 아직 진행되지 않았다 – Holla