我很难将图像显示到<p:dataTable>中。我遵循BalusC的指示这里,但当我尝试使用context.getCurrentPhaseId()时,如下所示,
FacesContext context = FacesContext.getCurrentInstance();
if (context.getCurrentPhaseId() == PhaseId.RENDER_RESPONSE) {
return new DefaultStreamedContent();
}然后,Eclipse在context.getCurrentPhaseId()上显示了以下编译错误
方法getCurrentPhaseId()未为FacesContext类型定义
这是如何造成的,我如何解决呢?我使用JSF 2和PrimeFaces2.2-快照。
发布于 2013-11-27 16:45:31
方法getCurrentPhaseId()未为FacesContext类型定义
该方法是JSF2.0中的介绍。因此,这个编译错误表明您实际上使用的是JSF1.x,或者至少是针对JSF1.x而不是JSF2.x编译的。由于PrimeFaces 3.x与JSF1.x不兼容,这反过来表明您的项目在构建路径中错误地引用了JSF1.x库,因此实际上是针对JSF1.x编译的。
检查项目的Build属性,并去掉那个JSF1.x库。实际上,您永远不应该需要在项目的构建路径属性中摆弄。仅仅正确设置部署程序集和/或目标运行时,和/或将必要的JAR放到/WEB-INF/lib文件夹中,对于库管理来说,这确实应该是您所需要做的一切。
https://stackoverflow.com/questions/20226002
复制相似问题