在jsf2.0和primefaces中裁剪后的图像上传

时间:2011-11-15 19:56:57

标签: jsf jsf-2 primefaces

我想在剪裁后上传图片。我是这样做的:首先上传图片并在页面内显示。但问题是,当我裁剪图像并单击提交按钮时,不会调用相应的图像裁剪器bean。我不知道我哪里错了。

xhtml代码:

<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:p="http://primefaces.prime.com.tr/ui">
<h:head>
<script src="jquery-1.4.2.js"></script>
<script src="jquery.Jcrop.js"></script>
<script src="jquery.min.js"></script>
<script src="jquery.Jcrop.min.js"></script>

</h:head>
<h:body>
<h:form  >
<p:panel header="FILE UPLOAD WITH CROPPER" style="width:900px; margin: 0 auto; margin-top:0px">

<p:fileUpload fileUploadListener="#{photoUploadAction.handleImageUpload}"  
        mode="advanced"   
        update="getImageId,messages"  auto="true" 

        allowTypes="/(\.|\/)(gif|jpe?g|png)$/"/>  

<p:growl id="messages" showDetail="true"/>  

<p:growl id="uploadMessages" showSummary="true" showDetail="true"/>

<p:outputPanel id="getImageId">

<h:panelGrid columns="2">

 <p:imageCropper id="cropperId" value="#{imageCrop.croppedImage}"
              image="images/#{photoUploadVO.imageName}"/>
  <p:graphicImage value="cropImages/#{imageCrop.imageName}" cache="false"/>
 </h:panelGrid>

   <p:commandLink value="Crop" update="getImageId" action="#{imageCrop.crop}" type="submit" />
</p:outputPanel>
</p:panel>
</h:form>
</h:body>
</html>

1 个答案:

答案 0 :(得分:0)

我正确理解你的问题,根据我的理解,我认为你可能没有在managedBean中为imageCropperBean创建faces.config。或者只是在cropperBean类@managedBean

之前声明一个注释
相关问题