我與JSF2.2,Bootsfaces 0.9.1,工作Primefaces 6.0,JEE7並結合與MySQL 5.7數據庫的Hibernate 5.2。
我有什麼:
我有其中有一組圖像的模型。該集合包含我自定義Image類的實例,該類爲標題,描述和文件名保存圖像的值。
圖像存儲在文件系統,我得到了用於存儲模型的MySQL數據庫。我試圖在我的web應用程序的視圖上顯示圖像,一切正常。我還從bootsfaces中顯示了一些帶有b:carousel標籤的圖像,everthing像我期望的那樣工作。
我試圖這樣做:
下一步我想是用來顯示一組圖像的不同尺寸。以下代碼是我試圖認識到這一點:
<b:carousel id="carousel" style="width: 800px; height: 400px;">
<ui:repeat value="#{modelDetailBean.modelImages}" var="img">
<b:carouselItem>
<b:image value="#{modelDetailBean.getImage(img)}"/>
</b:carouselItem>
</ui:repeat>
</b:carousel>
我認識到沒有圖像顯示在我的傳送帶上。然後,我至少添加了1個固定裝置,以查看它是否正常工作,並確認該組中的所有圖像都存在於旋轉木馬中,但旋轉木馬沒有正確記錄它們。
我的主要問題:
是否可以使用UI:repeat標籤填充旋轉木馬?
如果可能的話:我該怎麼做?我在這裏做錯了什麼?
如果不是:我有哪些替代方法必須通過JSF實現並且沒有大量的JavaScript等?
很好的解釋,那沒有的伎倆!不幸的是我遇到了另一個問題。我會開一個關於它的新問題。 – mweber
更重要的是,在'b:carousel'和'b:courouselItems'之間放置'ui:repeat'會修改項目的HTML ID。我沒有檢查客戶端小部件是否支持修改的id,但許多小部件不支持。更糟糕的是,JSF樹看起來與BootsFaces期望的不同。它看到一個'ui:repeat'。這個組件被無聲地忽略。 'b:carouselItem'是'ui:repeat'的孩子 - 或者'b:carousel'的孫子。我們沒有教BootsFaces關心孫子。另外,'ui:repeat'的孩子在渲染階段渲染 - 到BootsFaces遲到。 –
@Xtreme Biker:也許你會想要重新解釋你答案的第一句話。其餘的答案是正確的。 'b:carousel'需要靜態內容,因此解決方案是如何修改JSF樹 - 這就是JSTL標籤所做的。 –