Problema com Primefaces 3.4.1 e JSF 2.0

Boa tarde a todos.

Estou tendo o seguinte problema na minha aplicação:

  • Possuo uma dataTable com 4 colunas. 3 com informações e a 4ª apenas com um botão de alterar. Ao clicar no botão de alterar esses valores são passados para 3 campos de textos que ficam ao lado da dataTable (mesmo form). O problema é que essas informações só aparecem nos campos, caso eles estejam disabled=“true”.

Alguém já passou por algo parecido?

Poste o código para auxiliar.
Faz muito tempo que não uso JSF (uns 6 anos), mas parece que eu me lembro de algo do tipo.
É só um palpite, um chute. Disabled é diferente de Editable. Se você estiver misturando os dois, pode ser que de problema.
Não lembro se existe a propriedade “editable”.

Coloca o código da tabela ai para a gente ver.

Abraço.

Renan.

Seguem os códigos:

DataTable

<p:dataTable
	id="table_alteraVariaveisGlobais"
	value="#{contratoMB.contratoDetalhes.sgttb004VariaveisGlbsCntros}"
	var="row"
	emptyMessage="#{msgApp.Nao_Existe_Registros}"
	paginator="true"
	paginatorPosition="bottom"
	rows="3"
	width="600px">							
	<p:column
		id="column_variavel"
		headerText="#{msgContrato.COL_VARIAVEL}"
		style="text-shadow: none !important;"
		width="70">
		<h:outputLabel styleClass="semClick" value="#{row.noVariavel}" />
	</p:column>
	<p:column
		id="column_deVariavel"
		headerText="#{msgContrato.COL_DESCRICAO_VARIAVEL}"
		width="330">
		<h:outputLabel styleClass="semClick" value="#{row.deVariavel}" />
	</p:column>
	<p:column
		id="column_valorVariavel"
		headerText="#{msgContrato.COL_VALOR_VARIAVEL}"
		width="70">
		<h:outputLabel styleClass="semClick" value="#{row.vrVariavel}" converter="valorVariavelConverter"/>
	</p:column>

	<p:column
		id="column_acao"
		width="60"
		headerText="#{msgContrato.COL_ACAO_VARIAVEL}">
		<!-- É esse o botão que estou chamando [INÍCIO] -->
		<p:commandLink
			id="link_toAlterar"
			actionListener="#{contratoMB.toAlterarVariavel}"
			title="#{msgContrato.TITLE_ALTERAR_REGISTRO_ATUAL}"
			update=":form"
			ajax="false"
			immediate="true">
			<h:graphicImage
				value="/resources/img/layout/icon_editar.gif"
				style="margin:0px 5px; border: none !important;" />
		</p:commandLink>
		<!-- É esse o botão que estou chamando [FIM] -->
		
		<h:commandLink
			id="link_inativar"
			actionListener="#{contratoMB.doInativaVariavel(row)}"
			title="#{msgContrato.TITLE_INATIVAR_REGISTRO}"
			rendered="#{row.icAtivo}"
			onclick="if(!confirm('#{msgsCef.MA004}')) {return false;}"
			immediate="true">
			<h:graphicImage
				value="/resources/img/layout/icon_-delete.gif"
				styleClass="action-icon"
				style="margin:0px 5px; border: none !important;" />
		</h:commandLink>
		
		<h:commandLink
			id="link_ativar"
			actionListener="#{contratoMB.doAtivaVariavel(row)}"
			title="#{msgContrato.TITLE_ATIVAR_REGISTRO}"
			rendered="#{!row.icAtivo}"
			onclick="if(!confirm('#{msgsCef.MA006}')) {return false;}"
			immediate="true">
			<h:graphicImage
				value="/resources/img/layout/tick.png"
				styleClass="action-icon"
				style="margin:0px 5px; border: none !important;" />
		</h:commandLink>
	</p:column>
</p:dataTable>

Campos que recebem os valores:

<div>
	<comp:input
		id="variavelAlteraContrato"
		label="#{msgContrato.LABEL_VARIAVEL}"
		size="150"
		disabled="true"
		value="#{contratoMB.variaveis.noVariavel}"
		sizeLabel="85" />
</div>
<div>
	<comp:input
		id="deVariavelAlteraContrato"
		label="#{msgContrato.LABEL_DESCRICAO_VARIAVEL}"
		size="150"
		value="#{contratoMB.variaveis.deVariavel}"
		showRequired="true"
		sizeLabel="85" />
</div>
<div>
	<comp:input
		id="valorVariavelAlteraContrato"
		label="#{msgContrato.LABEL_VALOR_VARIAVEL}"
		size="150"
		showRequired="true"
		value="#{contratoMB.variaveis.vrVariavel}"
		inputClass="valorVariavel"
		converter="valorVariavelConverter"
		sizeLabel="85" />
</div>

Componente composto ‘input’

<?xml version="1.0"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
                      "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html
	xmlns="http://www.w3.org/1999/xhtml"
	xmlns:c="http://java.sun.com/jsp/jstl/core"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:f="http://java.sun.com/jsf/core"
	xmlns:p="http://primefaces.org/ui"
	xmlns:composite="http://java.sun.com/jsf/composite">
<composite:interface>
	<composite:attribute name="label" />
	<composite:attribute name="value" />
	<composite:attribute name="size" />
	<composite:attribute name="sizeLabel" />
	<composite:attribute name="converter" />
	<composite:attribute name="validatorId" />
	<composite:attribute name="inputClass" />
	<composite:attribute name="inputStyle" />
	<composite:attribute name="componentStyle" />
	<composite:attribute name="labelStyle" />
	<composite:attribute
		name="immediate"
		default="false" />
	<composite:attribute
		name="maxlength"
		default="256" />
	<composite:attribute
		name="disabled"
		default="false" />
	<composite:attribute
		name="required"
		default="false" />
	<composite:attribute
		name="showRequired"
		default="false" />
	<composite:attribute
		name="requiredMessage"
		default="#{cc.attrs.label} é um campo obrigatório." />
	<composite:attribute name="mask" />
</composite:interface>
<composite:implementation id="#{cc.attrs.id}">
	<h:panelGroup
		id="pnlExternoInput"
		layout="block"
		style="float:left;#{cc.attrs.componentStyle}">
		<h:panelGroup
			layout="block"
			style="width: #{cc.attrs.sizeLabel}px; float:left;margin: 10px 10px 0 0;">
			<h:outputLabel
				value="#{cc.attrs.label}"
				styleClass="rotulos semClick"
				id="lbl"
				style="#{cc.attrs.labelStyle}"
				for="input" />
			<h:outputText
				value="*"
				title="Campo Obrigatório."
				rendered="#{cc.attrs.required or cc.attrs.showRequired}"
				style="color:Red;font-style:normal;font-weight:bold;margin: 0 8px 0 -6px; " />
		</h:panelGroup>
		<p:inputMask
			value="#{cc.attrs.value}"
			mask="#{cc.attrs.mask}"
			id="input"
			styleClass="#{cc.attrs.inputClass}"
			maxlength="#{cc.attrs.maxlength}"
			disabled="#{cc.attrs.disabled}"
			immediate="#{cc.attrs.immediate}"
			requiredMessage="#{cc.attrs.requiredMessage}"
			style="margin: 10px 10px 0 0; float: left; width: #{cc.attrs.size}px; #{cc.attrs.inputStyle}">
			<c:if test="#{cc.attrs.converter != null}">
				<f:converter converterId="#{cc.attrs.converter}" />
			</c:if>
			<c:if test="#{cc.attrs.validatorId != null}">
				<f:validator validatorId="#{cc.attrs.validatorId}" />
			</c:if>
			<c:if test="#{cc.attrs.required}">
				<f:validator validatorId="required" />
			</c:if>
			<composite:insertChildren />
		</p:inputMask>
	</h:panelGroup>
</composite:implementation>
</html>

Eae pessoal, alguém?