Olá, tenho um modal que abre assim que busco um numero de protocolo e nesse modal eu adiciono as exigência para gerar o relatório.
O problema e quando clico ele seleciona tanto na parte da descrição como na parte para selecionar checkbox e quando tem varios selecionados se eu clicar na descrição sem querer e desmarcar todos.
Eu gostaria que a selecão fosse apenas no.

Eu vi que o selectBooleanCheckbox da certo agora como eu chamo ele para adicionar no relatorio?
Meu xhtml
<p:dialog header=“Buscar Exigências” widgetVar=“dlgExigencias” id=“dlgExigencias” width=“920” height=“450” style=“text-align: left”> <p:dataTable rowKey="#{exig.id}" selection="#{parecerProcessoMB.exigenciasParecer}" style=“width: 890px; margin-left: -10px; font-size: 80%” filteredValue="#{parecerProcessoMB.exigenciasFiltro}" id=“dtExigencia” widgetVar=“dtExigencia” emptyMessage=“Nenhuma exigência encontrada” rows=“30” paginator=“true” paginatorPosition=“top” paginatorTemplate="{PreviousPageLink} {NextPageLink}" value="#{parecerProcessoMB.exigencias}" var=“exig”>
<p:column headerText="Id" style="width: 30px; ">
<h:outputText value="#{exig.id}"/>
</p:column>
<p:ajax event="rowUnselectCheckbox" listener="#{parecerProcessoMB.removerExigencia}" update="dtExigencia"/>
<p:ajax event="rowSelectCheckbox" listener="#{parecerProcessoMB.inserirExigencia}" />
<p:column id="colDesc" headerText="Descrição" filterStyleClass="glyphicon-search" style="width: 500px; text-align: left"
filterBy="#{exig.descricao}" filterMatchMode="contains" filterStyle="width: 550px;text-align: left; margin-top: -22px;margin-left: 12%;">
<h:outputText value="#{exig.descricao}" />
<p:watermark for="@(#formCadastro\\:dtExigencia\\:colDesc\\:filter)" value="Pesquisar"/>
</p:column>
<p:column headerText="Selecionar" style=" width:7%; text-align: center">
<p:selectBooleanCheckbox value="" />
</p:column>
</p:dataTable>
<p:separator/>
<div class="row" style="margin-top: 5px">
<div class="col-lg-7">
<p:inputTextarea value="#{parecerProcessoMB.observacao}" style="width: 100%" placeholder="Inserir Observação"/>
</div>
<div class="col-lg-2">
<p:commandButton action="#{parecerProcessoMB.adicionarParecer()}" icon="ui-icon-circle-plus" style="width: 130px" update=":formCadastro" value="Adicionar"/>
</div>
</div>
</p:dialog>
meu bean
/**
* Método que adiciona paracer
*/
public void adicionarParecer() {
String exigenciaSelecionadas = "";
JasperUtil jasperUtil = new JasperUtil();
String pathResource = FacesContext.getCurrentInstance().getExternalContext().getRealPath("/");
try {
int quantidade = 0;
if (observacao == null) {
observacao = "";
}
for (Exigencia ex : exigenciasParecer) {
quantidade += 1;
exigenciaSelecionadas += quantidade + " - " + ex.getDescricao() + "\n\n";
}
if (exigenciaSelecionadas.equals("")) {
UtilBean.mostrarMensagemAlerta("Atenção", "Nenhuma exigência foi selecionada.");
} else {
File arquivoRelatorio = new File(getClass().getResource("/br/com/michel/reports/repExigencia.jasper").toURI());
String jasperPath = arquivoRelatorio.getParent() + File.separator;
Map<String, Object> params = new HashMap<String, Object>();
params.put("PROTOCOLO", processo.getProtocolo());
params.put("EXIGENCIAS", exigenciaSelecionadas);
params.put("OBSERVACAO", observacao);
params.put("SUBREPORT_DIR", jasperPath);
relatorio = jasperUtil.exceuteReportMain("repExigencia", br.com.michel.dao.UtilDAO.getConnection(), params);
visualizacao = new DefaultStreamedContent(new ByteArrayInputStream(relatorio), "application/pdf");
String timestamp = new SimpleDateFormat("yyyyMMddHHmmss", Locale.ENGLISH).format(new Date());
String pathPdf = FacesContext.getCurrentInstance().getExternalContext().getRealPath("/resources/reportTemp") + "/repExigencia_" + timestamp + ".pdf";
file = new File(pathPdf);
FileOutputStream in = new FileOutputStream(file);
FileInputStream entrada = new FileInputStream(file);
filePDF = "/resources/reportTemp/repExigencia_" + timestamp + ".pdf";
in.write(relatorio);
in.close();
RequestContext.getCurrentInstance().execute("PF('dlgProcesso').show()");
RequestContext.getCurrentInstance().execute("PF('dlgExigencias').hide()");
RequestContext.getCurrentInstance().execute("PF('dtExigencia').clearFilters()");
String destino = "";
destino = copyFile(file.getName(), entrada);
processoDAO.atualizarProcesso(destino, processo.getId());
enviarEmail();
String emailEnviado = "";
if (escritorio.getEmail() == null || escritorio.getEmail().equals("")) {
emailEnviado = processo.getEmail();
} else {
emailEnviado = escritorio.getEmail();
}
if (!historicoDAO.inserirHistorico(processo, emailEnviado)) {
UtilBean.mostrarMensagemAlerta("Falha: ", "Falha ao adicionar histórico.");
}
habilitarImp = true;
}
quantidade = 0;
exigenciaSelecionadas = "";
if (exigenciasFiltro != null) {
exigenciasFiltro.clear();
}
exigencias.clear();
exigenciasParecer.clear();
exigencias = exigenciaDAO.listarExigencias();
observacao = "";
} catch (Exception e) {
UtilBean.mostrarMensagemErro("Falha", "Erro ao gerar PDF." + e.getMessage());
}
}
