0
私は以下のようなdataTableを持っています。ステータスの横にある別の列にステータス(成功/失敗)に基づいてローカルシステムに保存されているイメージを表示する必要があります。私は使ってみましたローカルシステムに格納されているJSF dataTableに画像を表示することはできますか?
<h:graphicImage value="../../images/failure.png" alt="Failure">
しかし、それはイメージを表示していません。そのような画像を追加することは可能ですか? urlで属性値を置き換える
<rich:dataTable value="#{state.Status}" var="dataItem" id="Tbl1" >
<f:facet name="header">
<h:outputText value="Status" />
</f:facet>
<rich:column>
<f:facet name="header">State</f:facet>
<h:outputText value="#{dataItem.State}"/>
</rich:column>
<rich:column>
<f:facet name="header">Status</f:facet>
<h:outputText value="#{dataItem.Status}"/>
</rich:column>
<rich:column>
<f:facet name="header">Image</f:facet>
ImageDisplay
</rich:column>
</rich:dataTable>
「ローカルシステム」とは何ですか?クライアント側?次に、サーバーから提供されるプレーンhtmlで成功できるかどうか試してみてください。おそらく(100%)そうではありません。だから、JSFではこれを行うことはできません。これは、JSFがこの点でhtmlジェネレータにすぎないからです。それがWebサーバー上のファイルシステムからのイメージであれば、Stackoverflowには約25の重複した質問があり、searchengineを介して多くのものが見つかるはずです(そして、この質問もデータ関連ではありません)。 – Kukeltje
JSFはページコンテンツサーバー上に用意されています。つまり、イメージを表示する必要がある場合、サーバーはイメージが格納されている場所を知る必要があります。ローカルシステムはサーバから常にアクセス可能なわけではないので、サーバやDBにイメージを保存する方がよいでしょう。ページ上にイメージを表示するには、1)アプリケーション内のイメージを追加します(たとえば、web/imagesフォルダ内)。 2)相対パス(ローカルシステムにないサーバー上のパス)を使用してイメージを表示します。 –
ありがとう..私はサーバー自体に追加しました。 – Pavithra