【发布时间】:2013-02-28 15:58:59
【问题描述】:
我正在使用带有 primefaces 的 JSF,并希望显示来自 java 代码的图像。
我已经看过http://www.primefaces.org/showcase/ui/dynamicImage.jsf上的教程
但我不清楚如何正确获取图像文件的路径:
代码:
豆子:
@ManagedBean
public class ABean {
private StreamedContent bStatus;
public ABean() {
try {
Boolean connected = false;
if (connected == true) {
bStatus = new DefaultStreamedContent(new FileInputStream(new File("/images/greendot.png")), "image/jpeg");
} else {
bStatus = new DefaultStreamedContent(new FileInputStream(new File("/images/reddot.png")), "image/jpeg");
}
} catch(Exception e) {
e.printStackTrace();
}
}
public StreamedContent getBStatus() {
return bStatus;
}
public void setBStatus(StreamedContent bStatus) {
this.bStatus = bStatus;
}
}
xhtml:
<p:graphicImage value="#{ABean.bStatus}" />
返回:
java.io.FileNotFoundException: \images\reddot.png
我希望在以代码形式显示图像时将图像存储在何处以及如何操作的最佳做法。
【问题讨论】:
-
您的图片实际位于何处?
-
我的图片位于 WebContent/images/ - 但我也愿意使用新结构来存储我的图片以供 java 代码使用。
标签: java jsf primefaces