p:graphicImage在从5.3迁移到6.0 Primefaces后没有给出任何方法错误

p:graphicImage在从5.3迁移到6.0 Primefaces后没有给出任何方法错误,primefaces,Primefaces,我在Weblogic11g、JSF2.0和Servlet2.5上使用Primefaces 6.0 我的应用程序能够使用Primefaces 5.3渲染动态jpeg图像。一旦我迁移到6.0,我的动态p:graphicImages就不会给出与el相关的任何方法错误 PrimeExceptionHandler logException getValueReference(Ljavax/el/ELContext;)Ljavax/el/ValueReference; java.lang.NoSuchMet

我在Weblogic11g、JSF2.0和Servlet2.5上使用Primefaces 6.0

我的应用程序能够使用Primefaces 5.3渲染动态jpeg图像。一旦我迁移到6.0,我的动态p:graphicImages就不会给出与el相关的任何方法错误

PrimeExceptionHandler logException
getValueReference(Ljavax/el/ELContext;)Ljavax/el/ValueReference; java.lang.NoSuchMethodError: getValueReference(Ljavax/el/ELContext;)Ljavax/el/ValueReference; 在 org.primefaces.el.ValueExpressionAnalyzer.toValueReference(ValueExpressionAnalyzer.java:91) 在 org.primefaces.el.ValueExpressionAnalyzer.getExpression(ValueExpressionAnalyzer.java:44) 在 org.primefaces.util.DynamicResourceBuilder.build(DynamicResourceBuilder.java:58) 在 org.primefaces.component.graphicimage.GraphicImageRenderer.getImageSrc(GraphicImageRenderer.java:75) 在 org.primefaces.component.graphicimage.GraphicImageRenderer.encodeEnd(GraphicImageRenderer.java:41) 在 javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:884) 位于javax.faces.component.UIComponent.encodeAll(UIComponent.java:1681) 位于javax.faces.render.Renderer.encodechildrener(Renderer.java:168) javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:854) 在 org.primefaces.renderkit.CoreRenderer.renderChild(CoreRenderer.java:85) 在 org.primefaces.renderkit.CoreRenderer.renderChildren(CoreRenderer.java:72) e

xhtml代码如下

<p:graphicImage value="#{filebean.image}" />  

根据所讨论的方法(
ValueExpression.getValueReference()
)仅在EL 2.2之后存在

因为您使用的是Servlet2.5,所以很可能使用的是EL2.1(有关更多信息,请参阅)。因此,EL 2.2方法出现
NoSuchMethodError

因此,您唯一的选择似乎是要么继续使用PrimeFaces 5.3,要么升级到EL2.2/Servlet 3.0,要么不再使用
p:graphicImage

除此之外,您还可以向PrimeFaces开发人员报告这个问题,因为根据他们的用户指南,他们似乎支持Servlet 2.5,这可能被认为是一个bug。

根据所讨论的方法(
ValueExpression.getValueReference()
)只存在于EL 2.2之后

因为您使用的是Servlet2.5,所以很可能使用的是EL2.1(有关更多信息,请参阅)。因此,EL 2.2方法出现
NoSuchMethodError

因此,您唯一的选择似乎是要么继续使用PrimeFaces 5.3,要么升级到EL2.2/Servlet 3.0,要么不再使用
p:graphicImage


除此之外,您还可以向PrimeFaces开发人员报告这个问题,因为根据他们的用户指南,他们似乎支持Servlet 2.5,这可能被认为是一个bug。

您查看了releasenotes/迁移指南了吗?是的,我查看了,但是除了更改primefaces jar文件之外,没有发现任何与我相关的内容。有什么线索可以帮助我吗?你检查了releasenotes/迁移指南吗?是的,我检查了,但是除了更改primefaces jar文件之外,没有发现任何与我相关的内容。有什么线索可以帮助我吗?谢谢。我会向Primefaces报告。Primefaces接受了这一增强请求,谢谢。我会向Primefaces报告。Primefaces接受了这一增强请求
<p:graphicImage value="#{filebean.image}" />