cuốn sách gpt4 ai đã làm

RichFaces rich:tree nodeSelectListener không được lắng nghe

In lại Tác giả: Vũ trụ không gian Thời gian cập nhật: 2023-11-04 08:55:46 27 4
mua khóa gpt4 Nike

我有一个 giàu có:cây Thành phần, sử dụng như sau:

                    
reRender="selectedLog" var="item" nodeFace="#{item.type}"
nodeSelectListener="#{MyBacking.processLogSelection}"
style="width: 50px;">

icon="/img/logListFolderIconClosed.png"
iconLeaf="/img/logListFolderIconOpen.png">



icon="/img/logFileIcon.png">



Phương thức MyBacking processLogSelection() của tôi là:

    public void processLogSelection(sự kiện NodeSelectedEvent) {
logger.info("Đang xử lýLogSelection");
Cây HtmlTree = (HtmlTree) event.getComponent();
nodeTitle = (Chuỗi) tree.getRowData();
đã chọnNodeChildren.clear();
TreeNode currentNode = tree.getModelTreeNode(tree.getRowKey());
if (currentNode.isLeaf()){
đã chọnNodeChildren.add((String)currentNode.getData());
} khác {
Iterator<>> it = currentNode.getChildren();
while (it != null && it.hasNext()) {
Map.Entry entry = it.next();
đã chọnNodeChildren.add(entry.getValue().getData().toString());
logger.info("nút đã chọn: " + entry.getValue().getData().toString());
}
}
}

Nhưng khi trang hiển thị cây (điều này vẫn ổn), việc nhấp vào nút sẽ đánh dấu nó, nhưng không có lệnh gọi trình ghi nhật ký đậu nào ghi lại bất cứ điều gì - phương thức này không được gọi. Bất kỳ trợ giúp nào trả lời lý do tại sao điều này xảy ra sẽ được đánh giá cao. đánh dấu

biên tậpĐã thêm các thẻ được đề xuất/các phương thức đậu được đơn giản hóa - dường như vẫn không nhận được phản hồi từ đậu khi có liên quan đến nhật ký:

            



var="item" nodeFace="#{item.type}" reRender="selectedLog"
nodeSelectListener="#{MyBacking.processLogSelection}"
ajaxSubmitSelection="true" style="width: 50px;">

icon="/img/logListFolderIconClosed.png"
iconLeaf="/img/logListFolderIconOpen.png">



icon="/img/logFileIcon.png">








value="Nội dung nhật ký: #{MyBacking.nodeTitle}" id="selectedLog" />



Hãy chú ý đến phần kết phong phú:tab, vì cây này được hiển thị trong tab từ tệp jsp đi kèm. Phương pháp hỗ trợ đậu của tôi bây giờ cũng là:

    public void processLogSelection(sự kiện NodeSelectedEvent) {
logger.info("Đang xử lýLogSelection");
}

Chỉnh sửa thêmThật buồn cười, tôi nghĩ mình sẽ quay lại chế độ làm việc cơ bản. tôi đến từTrang demo RichFacesLấy mã. Tôi đã sửa đổi Faces-config.xml để bao gồm Bean SimpleTreeData. Tôi đang đọc (đơn giản-cây-data.properties), vì vậy tôi đã sử dụng Trình đọc tệp để thay thế. Bản dựng hoạt động tốt và tôi nhận được một trang jsf index.jsp đã sửa đổi để liệt kê ví dụ về cây đơn giản trên trang demo ngoại trừ việc nhấp vào mục danh sách không thay đổi mục đã chọn nútTiêu đề Báo cáo đến địa điểm được chỉ định (vấn đề tương tự).

Tôi có thể cho rằng đây là vấn đề tương tự được báo cáo ở trên, hoặc đó là SimpleTreeData.java trong đậu tảiCây Phương pháp đã thay đổi. Trong số các thay đổi, tôi đã xóa các dòng sau và thay đổi mã không liên quan nếu cần:

        FacesContext FacesContext = FacesContext.getCurrentInstance();
Bên ngoàiContext bên ngoàiContext = FacesContext.getExternalContext();
Dữ liệu luồng đầu vàoStream = externalContext.getResourceAsStream(DATA_PATH);

Như đã đề cập trước đó, tôi đã sử dụng Trình đọc tệp Nhưng có ai nghĩ vấn đề này có thể liên quan đến việc tôi xóa 3 dòng này không? Như đã đề cập ở trên, tôi quá trìnhNhật kýLựa chọn Phương pháp không được sử dụng get CurrentInstance, nhưng tôi không chắc mình có cần sử dụng không ajaxSubmitSelection="true" Được liệt kê trong JSF.

Bối rối.

câu trả lời hay nhất

tôi đã cố gắngmẫu facelets nàyVà cái nàymẫu đậu hỗ trợ javavà gọi phương thức này. Tôi tưởng bạn đã sử dụng Seam nhưng có lẽ tôi đã nhầm :) Có một số mẹo từ lâu:diễn đàn đường may . Bạn đang sử dụng phiên bản Richfaces nào và trình duyệt nào? Nếu bạn cũng sử dụng Seam, vui lòng cho tôi biết phiên bản của nó.

Về java - RichFaces: cây nodeSelectListener không được lắng nghe, chúng tôi đã tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/2328078/

27 4 0
không gian vũ trụ
Hồ sơ

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá taxi Didi miễn phí
Phiếu giảm giá taxi Didi
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress