primefaces Image Cropper获取空指针异常

时间:2014-03-24 15:01:26

标签: jsf primefaces

我正在处理primefaces应用程序。我需要裁剪个人资料图片。一旦用户想要部分图像并且当用户提交它时,它就会获得空指针异常。 getBytes()为空。

这是我的代码Xhtml代码:``

<p:dialog id="cropDlg" appendToBody="false" widgetVar="dlg"
  showEffect="fade" hideEffect="explode" resizable="false"
  modal="true" header="Edit Picture"
  style="background-color:#FFFFFF">
  <h:form id="cropForm" enctype="multipart/form-data">
    <p:panel style="background-color: #FFFFFF" id="cropPanel">
      <p:messages />
      <div>
        <p:imageCropper value="#{profileBean.image}" image="/profile?id=#{profileBean.profile.imageFileName}" />
        <h:commandButton value="crop" immediate="true" styleClass="profilebut" action="#{profileBean.handleCropFileUpload}" />
      </div>
    </p:panel>
  </h:form>
</p:dialog> 

我的豆子:

CroppedImage croppedImage;

public void handleCropFileUpload() {
  System.out.println("GET Bytes" + croppedImage.getBytes());
  FileImageOutputStream imageOutput;
  try {
    imageOutput = new FileImageOutputStream(file);
    imageOutput.write(croppedImage.getBytes(), 0,
    croppedImage.getBytes().length);
    imageOutput.close();
  } catch (Exception e) {
    e.printStackTrace();
  }
}

public CroppedImage getImage() {
  return image;
}

public void setImage(CroppedImage image) {
  this.image = image;
}

1 个答案:

答案 0 :(得分:0)

从您immediate="true"中移除属性h:commandButton,它将起作用。