第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

org.primefaces.model.menu.DefaultSubMenu 無法轉(zhuǎn)換為

org.primefaces.model.menu.DefaultSubMenu 無法轉(zhuǎn)換為

滄海一幻覺 2023-03-17 14:12:47
我正在嘗試從 PrimeFaces 3.5 升級到 PrimeFaces 4.0,這行代碼在 3.5 版上很好:private MenuModel modelPrincipal;private Menubar menuBar;menuBar.getChildren().addAll(modelPrincipal.getContents());但是當我升級到 4.0 版時,我必須按如下方式更改它:private org.primefaces.model.menu.DefaultMenuModel modelPrincipal;private Menubar menuBar;menuBar.getChildren().addAll((Collection<? extends UIComponent>) modelPrincipal.getElements());它拋出標題異常,你們知道解決方法嗎?我在遷移文檔中找不到任何內(nèi)容https://github.com/primefaces/primefaces/wiki/Migration-Guide我也試過:menuBar.getElements().addAll(modelPrincipal.getElements());但給我同樣的例外任何幫助表示贊賞
查看完整描述

1 回答

?
慕容3067478

TA貢獻1773條經(jīng)驗 獲得超3個贊

班級在


 menuBar.getChildren().addAll((Collection<? extends UIComponent>) modelPrincipal.getElements());

有點合乎邏輯,因為org.primefaces.model.menu.DefaultMenuItem模型中的元素無論如何都不是 UIComponent(您可以通過跟蹤源代碼直到基類/接口來看到這一點)。即使您沒有明確地轉(zhuǎn)換它,它也會因相同的錯誤而失敗,但會在另一個類的另一行上。


做的


menuBar.getElements().addAll(modelPrincipal.getElements());

出于同樣的原因而失敗。getElements() 如果您檢查了中方法中的代碼menuBar,您會看到


public List getElements() {

    MenuModel model = getModel();

    if (model != null) {

        return model.getElements();

    }

    else {

        return getChildren();

    }

}

您甚至可以調(diào)試它并看到該模型為 null,然后將getChildren()返回 ,實際上以與您第一次嘗試相同的調(diào)用結(jié)束。但...


您還會getModel()在那里看到 ,也許是在暗示在哪里尋找解決方案。menuBar 有一個setModel(...)to,您可以在其中設(shè)置您以編程方式創(chuàng)建的模型。所以解決方案是


menuBar.setModel(modelPrincipal);

如果您以編程方式創(chuàng)建 menuBar。


但大多數(shù)情況下,它是通過以下方式添加到 xhtml 中的


<p:menu model="#{menuBean.model}" />

一些額外的提示:

  • 搜索“primefaces menu model 4.0 3.5”得到的結(jié)果會給你幫助/提示(至少 G00gle 向我展示了)

  • 在 PrimeFaces 7 文檔中鍵入“menumodel”會提示通用菜單組件中的動態(tài)菜單部分,具有完整的示例。https://primefaces.github.io/primefaces/7_0/#/components/menu

  • 擁有一個在 java 代碼或 xhtml 中完成代碼的 IDE,并檢查 api 是否會顯示方法setModelmodel屬性。

但我同意,遷移文檔中的更多解釋會有所幫助,但當時(至少我從 3.5 遷移到 4 時)論壇等中提到了這一點......所以當時它是“實際的”



查看完整回答
反對 回復 2023-03-17
  • 1 回答
  • 0 關(guān)注
  • 91 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號