javascript – 如何在上传primefaces后重新加载jsf页面?

前端之家收集整理的这篇文章主要介绍了javascript – 如何在上传primefaces后重新加载jsf页面?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

在primefaces上传后,重新加载jsf页面有什么用?

我尝试使用javascript oncomplete =“javascript:window.location.reload()”,但它不起作用:

XHTML:

豆:

public void upload(FileUploadEvent event) throws sqlException {  
    LoginAuthentication user = new LoginAuthentication();
    FacesMessage msg = new FacesMessage("Success! ",event.getFile().getFileName() 
        + " is uploaded.");  
    FacesContext.getCurrentInstance().addMessage(null,msg);
    // Do what you want with the file        
    try {
        copyFile(event.getFile().getFileName(),event.getFile().getInputstream());
        ConectaBanco MysqL = new ConectaBanco();
        MysqL.insere("INSERT INTO edicoes VALUES (NULL,'" 
            + MysqL.pegaIDrev(user.getNome()) 
            + "',NULL,'" 
            + event.getFile().getFileName()
            + "' );");
        File pasta = new File(caminhoPastaPDF 
            + "/convertidos/" 
            + event.getFile().getFileName());
        pasta.mkdir();
        convertePdf(event.getFile().getFileName());
        FacesMessage msg1 = new FacesMessage("Succesful",event.getFile().getFileName() 
            + " is uploaded.");  
        FacesContext.getCurrentInstance().addMessage(null,msg1); 
    } catch (IOException e) {
        e.printStackTrace();
    }

}  

public void copyFile(String fileName,InputStream in) {
    try {
        // write the inputStream to a FileOutputStream
        OutputStream out = new FileOutputStream(new File(destination + fileName));
        int read = 0;
        byte[] bytes = new byte[1024];
        while ((read = in.read(bytes)) != -1) {
            out.write(bytes,read);
        }
        in.close();
        out.flush();
        out.close();
        ////System.out.println("New file created!");
    } 
}

还有其他方法吗?
我想刷新< a4j:重复>

最佳答案
有一个更新属性,给定@form值,再次呈现整个表单.

否则,如果你想摆脱ajax功能,你也有basic fileUpload组件.

基本上,尽量不要javascripting已经做了!

猜你在找的JavaScript相关文章