Commanbutton ERROR

时间:2017-05-23 20:02:40

标签: java jsf primefaces

我正在尝试加载一个文件,但只有最后一个commanButton可以正常工作,如果它在更改中完美无缺,则第一个不能正常工作。

列表的第一个commanbutton不起作用,最后一个如果,这里是代码:

 <h:form enctype="multipart/form-data" id="frm-main">
                    <p:growl id="messages" showDetail="true"/>
                    <p:dataTable var="task" value="#{tareaBean.tareas}">

                        <p:column headerText="Nombre">
                            <h:outputText value="#{task.nombre}"/>
                        </p:column>

                        <p:column headerText="Descripcion">
                            <h:outputText value="#{task.cuerpo}"/>
                        </p:column>

                         <p:column headerText="Fecha Inicio">
                             <h:outputText value="#{task.fechaInicio}"/>
                        </p:column>

                        <p:column headerText="Fecha Final">
                            <h:outputText value="#{task.fechaFinal}"/>
                        </p:column>

                        <p:column headerText="Subir archivo">
                            <p:panel>
                            <p:fileUpload  value="#{tareaBean.file}" mode="simple" skinSimple="true" update = "messages" rendered="true" />

                            </p:panel>
                            <h:commandButton   value="Subir"  actionListener="#{tareaBean.cargar()}"/>

               <p:growl id="growl" showDetail="true"/> 
                        </p:column>


                    </p:dataTable>
                       </h:form>

这里的功能:

public void cargar(){
       String extValidate;
       if(getFile()!=null){
           String ext = getFile().getFileName();
           if(ext!=null){
               extValidate = ext.substring(ext.indexOf(".")+1);
           }
           else{extValidate = "null";}
           if(extValidate.equals("pdf")){
               try{
                   TransferFile(getFile().getFileName(),getFile().getInputstream());
               }catch(IOException ex){
                   Logger.getLogger(FileUploadControl.class.getName()).log(Level.SEVERE,null,ex);
                   FacesContext context = FacesContext.getCurrentInstance();
                   context.addMessage(null,new FacesMessage("Error","Error subiendo el archivo"));
               }
               FacesContext context = FacesContext.getCurrentInstance();
               context.addMessage(null, new FacesMessage("EXITO",getFile().getFileName()+" cargado exitosamente, tipo de contenido: "+getFile().getContentType()+" tamaño :"+getFile().getSize()));
           }
           else{
               FacesContext context = FacesContext.getCurrentInstance();
               context.addMessage(null,new FacesMessage("Error_ext","Solo se pemite archivos con extension .pdf"));
           }
       }
       else{
           FacesContext context = FacesContext.getCurrentInstance();
           context.addMessage(null,new FacesMessage("Error","Seleccione una fila"));
           }
   }

0 个答案:

没有答案