【问题标题】:Rotate and Resize image旋转和调整图像大小
【发布时间】:2017-08-22 16:16:08
【问题描述】:

我使用 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>

public void rotateListener(final RotateEvent e) { final FacesMessage msg = new FacesMessage(FacesMessage.SEVERITY_INFO, "图像旋转", + e.getDegree() + " Degree:");

    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);
}

我该如何解决?

【问题讨论】:

    标签: primefaces jsf-2


    【解决方案1】:

    可能是您没有包含 PrimeFaces Extensions 吗? AFAIR 你需要 4.0.0,它应该与 PF 5.3 兼容。

    否则我不例外来自这个sn-p。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-12-26
      • 2019-07-11
      • 1970-01-01
      • 1970-01-01
      • 2013-04-17
      • 1970-01-01
      相关资源
      最近更新 更多