【发布时间】:2016-11-22 03:21:59
【问题描述】:
我正在尝试保留数据表项的复选框。
简单来说,我需要保留这个复选框。一旦被选中,它需要保持选中状态,直到通过 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 实用程序,它也可以将整数写入数据库中的数据列。
我不确定复选框回调是否期待布尔值。
如果是,我是否需要将布尔值转换为整数,反之亦然?
我似乎无法持久化这种类型的数据。
【问题讨论】:
标签: java checkbox primefaces