我正在使用以下代码并尝试裁剪一个从bean获取其值的图像:
<p:panelGrid columns="2">
<p:row>
<p:column>
<p:imageCropper id="imageCropperId" value="#{imageCropperBean.croppedImage}"
image="#{imageCropperBean.newImageName}">
</p:imageCropper>
</p:column>
<p:column>Bild innerhalb des Rahmens positionieren</p:column>
<p:column>
<p:graphicImage id="localCroppedImage" value="#{imageCropperBean.newImageName}" />
</p:column>
</p:row>
<p:row>
<p:column colspan="3">
<p:commandButton value="Crop" actionListener="#{imageCropperBean.crop}"
update=":growl imageCropperId localCroppedImage" />
</p:column>
</p:row>
</p:panelGrid>
我总是收到错误: {0}:发生转换错误。在咆哮中,由于:
value="#{imageCropperBean.croppedImage}"
声明中的转换器属性说:
用于定义转换器的el表达式或文字文本 零件。当它是EL表达式时,它被解析为转换器 实例。如果它是静态文本,则必须引用转换器ID。
但EL表达式是在String处计算的。我该怎么办?如果我将普通的String指向现有图像,它就可以工作。
答案 0 :(得分:0)
我已设法修复此错误。
对于具有相同问题的那些,基本上会在
时发生image="#{imageCropperBean.newImageName}"
评估的值被评估为null,同时尝试跳过裁剪(我无法使用required =“true”,因此我使用了render =“someCondition”)