2016-11-22 34 views
0

我想持久化数据表项的复选框。复选框回调和持久

简而言之,我需要坚持这个复选框。一旦检查完成,它需要保持检查状态,直到通过GUI取消检查。

   <p:column width="20"> 
       <p:selectBooleanCheckbox value="#{datas.data_checkbox}" onchange="selectme(#{indexvar});"> 
        <p:ajax event="change" 
          async="true" 
          process="@form" 
          global="true" 
          update="data_tab" 
          listener="#{datasBean.updateDataProcess}"> 
         <f:setPropertyActionListener value="#{datas}" target="#{datasBean.selectedData}"/> 
        </p:ajax> 
       </p:selectBooleanCheckbox> 
      </p:column> 


public void updateDataProcess() { 
    try { 
    System.out.println("Update process is in progress..."); 

    if (selectedData.getData_process() == "true") { 
     System.out.println("Process value is true"); 
     dataAccessObject.updateDataProcess(selectedData.getData_pk(),"1"); 
    } 
    if (selectedData.getData_process() == "false") { 
     System.out.println("Process value is true"); 
     dataAccessObject.updateDataProcess(selectedData.getData_pk(),"0"); 
    } 
    } 
    catch (SocketTimeoutException ex) { 
     ex.printStackTrace(); 
    } 
} 

    public Integer updateDataProcess(String data_pk, String data_process) throws SocketTimeoutException { 
    try { 
     //&setDataStatus=true&dataPk=2&dataStatus=2 
     String updateDataProcessUrl = urlconstants.data_api_url + "/data.jsp?mrs_rest=true" 
       + "&setDataProcess=true" 
       + "&dataPk=" + data_pk 
       + "&dataProcess=" + data_process; 

     System.out.println("json_call=" + updateDataProcessUrl); 
     return Integer.parseInt(tools.getJSON(updateDataProcessUrl, 5000).trim()); 


    } catch (JsonSyntaxException ex) { 
     ex.printStackTrace(); 
     return null; 
    } 
} 

我有一个JSON实用程序,它可以将整数写入数据库中的数据列。

我不确定复选框回调期望是否为布尔值。

如果是,我需要将布尔转换为整数,反之亦然?

我似乎无法坚持这种类型的数据。

+0

可能的重复:http://stackoverflow.com/questions/5706513/bind-hselectbooleancheckbox-value-to-int-integer-instead-of-boolean-boolean – WitYoBadSelf

回答

0

复选框的值需要是布尔值。

我在我的setters和getters中定义了boolean datatyped属性。

在postgres中也创建了一个列为布尔型数据类型。