(JSF)Como evitar alterações em uma checkbox?

Bom dia pessoal!

Estou utilizando o atributo readonly para um campo selectBooleanCheckbox de uma dataTable conforme código anexo, a questão é que apesar de estar setado “somente leitura” o usuário ainda pode alterar a marca de conferido na checkbox (mesmo não alterando realmente o valor da mesma). Acredito que tenha uma maneira de evitar que o usuário possa alterar (visualmente) a checkbox. Alguém que já tenha feito isso pode dar uma luz???

<h:column>
        <f:facet name="header">
        <h:outputText value="Motorista"/>
        </f:facet>
       <h:selectBooleanCheckbox value="#{item.motorista}" readonly="true"/>
</h:column>

Desde já agradeço!

Já tentou isso?

disabled = true

[quote=SanjuanRJ]Já tentou isso?

disabled = true[/quote]

Obrigado SanjuanRJ! Era exatamente isso!
Mas… sem querer me aproveitar de sua boa vontade, se fosse para aparecer a checkbox somente se ela estiver com valor true, como eu poderia fazer? Saberia me informar?

Mais uma vez obrigado!

Tem a opção rendered=true ou false…

[quote=SanjuanRJ]Tem a opção rendered=true ou false…

[/quote]

Entendo. Mas utilizando o rendered a coluna em todas as linhas vai renderizar ou não, correto? Ou preciso fazer linha a linha. Tipo, se o valor da variável for true aparece a checkbox, mas se for false apenas a checkbox daquela linha não aparece. Tem idéia de como fazer?

Você usa o rendered apenas no componente checkbox.
Você deve ter alguma propriedade no seu bean que indica se ele é true ou false, e nesse caso a condição vai ser analisada a cada linha.

[quote=rogeriuslima]Você usa o rendered apenas no componente checkbox.
Você deve ter alguma propriedade no seu bean que indica se ele é true ou false, e nesse caso a condição vai ser analisada a cada linha.[/quote]

Olá rogeriuslima! Eu fiz como você está indicando. Mas quando uma nova linha é inserida, se o componente do meu bean indicar false, todas as outras linhas também ficam vazias. Então se uma próxima linha receber true (da propriedade em meu bean) todas as linhas voltam a ficar visíveis. O rendered não atua somente na linha que está sendo inserida…

Segue o cód.:

<h:column>
        <f:facet name="header">
        <h:outputText value="Motorista"/>
        </f:facet>
        <h:selectBooleanCheckbox value="#{item.motorista}" rendered="#{lancarPonto.renderedMoto}" disabled="true"/>
</h:column>

Alguém teria uma solução para esse problema???

Obrigado!

Aparentemente está tudo ok, vc vai ter q postar mais do q isso para te ajudar.

Posta o managed bean tb…

flw