2017-03-29 8 views
0

JSF 2, primefaces 5.3을 사용하고 Jpg, png 또는 다른 이미지 형식과 같은 이미지 회전 및 크기 조정을 시도합니다. 그러나이 오류가 발생합니다. 비 ClientBehaviorHolder 부모 jsf - 파일 미리보기에 동작을 첨부 할 수 없습니다.이미지 회전 및 크기 조정

여기 내 코드입니다.

    <pe:imageAreaSelect id="areaSelect" 
             for="myImage" 
             widgetVar="areaSelectWidget" 
             autoHide="true" 
             handles="false" 
             movable="false" 
             persistent="false" 
             resizable="false" 
             parentSelector="#imageWrapper"> 
         <p:ajax event="selectEnd" listener="#{fileViewer.selectEndListener}" update="growl"/> 
        </pe:imageAreaSelect> 

        <pe:imageRotateAndResize id="rotateAndResize" for="myImage" widgetVar="rotateAndResizeWidget"> 
         <p:ajax event="rotate" listener="#{fileViewer.rotateListener}" 
           update="growl" oncomplete="PF('areaSelectWidget').reload();"/> 
         <pe:javascript event="resize" execute="PF('areaSelectWidget').reload();"/> 
        </pe:imageRotateAndResize> 

        <p:commandButton type="button" icon="ui-icon-arrowreturnthick-1-w" 
            value="Rotate" onclick="PF('rotateAndResizeWidget').rotateLeft(90); 
              return false;"/> 
        <p:commandButton type="button" icon="ui-icon-arrowreturnthick-1-e" 
            value="Rotate" onclick="PF('rotateAndResizeWidget').rotateRight(90); 
              return false;"/> 
        <p:commandButton type="button" icon="ui-icon-zoomin" 
            value="+" onclick="PF('rotateAndResizeWidget').scale(1.05); 
              return false;"/> 
        <p:commandButton type="button" icon="ui-icon-zoomout" 
            value="-" onclick="PF('rotateAndResizeWidget').scale(0.95); 
              return false;"/> 
       </p:panelGrid> 

공공 무효 rotateListener (최종 RotateEvent 전자) { 최종 FacesMessage의 MSG는 새로운 FacesMessage (FacesMessage.SEVERITY_INFO는 + e.getDegree() + "학위" "이미지 회전") =;

FacesContext.getCurrentInstance().addMessage(null, msg); 
} 

public void resizeListener(final ResizeEvent e) { 
    final FacesMessage msg = new FacesMessage(FacesMessage.SEVERITY_INFO, "Image resized", "Width:" + e.getWidth() + ", Height: " + e.getHeight()); 

    FacesContext.getCurrentInstance().addMessage(null, msg); 
} 

public void selectEndListener(final ImageAreaSelectEvent e) { 
    final FacesMessage msg = new FacesMessage(FacesMessage.SEVERITY_INFO, "Area selected", 
      "X1: " + e.getX1() 
      + ", X2: " + e.getX2() 
      + ", Y1: " + e.getY1() 
      + ", Y2: " + e.getY2() 
      + ", Image width: " + e.getImgWidth() 
      + ", Image height: " + e.getImgHeight()); 

    FacesContext.getCurrentInstance().addMessage(null, msg); 
} 

어떻게 해결할 수 있습니까?

답변

0

PrimeFaces Extension을 포함하지 않았습니까? AFAIR 4.0.0은 PF 5.3과 호환되어야합니다.

그렇지 않으면이 스 니펫에서 예외가 발생하지 않습니다.