首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >PrimeFaces imageCropper不显示可选区域

PrimeFaces imageCropper不显示可选区域
EN

Stack Overflow用户
提问于 2013-06-21 19:29:03
回答 2查看 766关注 0票数 4

我只是复制了primefaces showcase上的示例,但选择图像的区域没有显示。在展示中,它看起来很简单。

我的页面:

代码语言:javascript
运行
AI代码解释
复制
<ui:composition 
    xmlns="http://www.w3.org/1999/xhtml"
    xmlns:ui="http://java.sun.com/jsf/facelets"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:p="http://primefaces.org/ui">

<h:form>  

<p:imageCropper value="#{uploadMB.croppedImage}" id="imageCropper" 
image="/images/banner.jpg" />


</h:form>  

</ui:composition>

我的BackBean:

代码语言:javascript
运行
AI代码解释
复制
@ManagedBean
public class UploadMB implements Serializable{

    private static final Logger logger = Logger.getLogger(UploadMB.class.getName());

    private CroppedImage croppedImage;
    private String newImageName;  

    public String crop() {  
        if(croppedImage == null)  
            return null;  

        setNewImageName(getRandomImageName());  
        ServletContext servletContext = (ServletContext) FacesContext.getCurrentInstance().getExternalContext().getContext();  
        String newFileName = servletContext.getRealPath("") + File.separator + "images" + File.separator + "barca" + File.separator + getNewImageName() + ".jpg";  

        FileImageOutputStream imageOutput;  
        try {  
            imageOutput = new FileImageOutputStream(new File(newFileName));  
            imageOutput.write(croppedImage.getBytes(), 0, croppedImage.getBytes().length);  
            imageOutput.close();  
        } catch (FileNotFoundException e) {  
            e.printStackTrace();  
        } catch (IOException e) {  
            e.printStackTrace();  
        }  

        return null;  
    }  

    private String getRandomImageName() {  
        int i = (int) (Math.random() * 100000);  

        return String.valueOf(i);  
    }  

    public String getNewImageName() {  
        return newImageName;  
    }  

    public CroppedImage getCroppedImage() {
        return croppedImage;
    }

    public void setCroppedImage(CroppedImage croppedImage) {
        this.croppedImage = croppedImage;
    }

    public void setNewImageName(String newImageName) {
        this.newImageName = newImageName;
    }  

有没有可能缺少一些库?或者是另一个配置选项?我刚刚下载了primefaces3.5jar并将其放入我的类路径中。

谢谢

EN

回答 2

Stack Overflow用户

发布于 2013-07-13 13:20:24

您的映像是否位于%WEBAPP_ROOT%/images/banner.jpg

您可以通过HTTP Url (浏览器)访问您的图像吗?

票数 0
EN

Stack Overflow用户

发布于 2014-03-19 09:23:23

你是否为裁剪建立了initialCoords属性:"x,y,w,h"?您还可以设置aspectRatiominSize

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17242917

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档