Boa tarde amigos.
Tenho um h:selectOneMenu q dependendo da escolha deveria atualizar (habilitar ou ñ) só um h:inputText via a4j:support mas esta atualizando td o form. =S
Já fiz com a4j:region, só o imput e td mais mas nada deu resultado, ele sempre manda atualizar todo o form.
Estou usando o jsf 1.2 + facelets 1.1.14, richfaces 3.3.0.
Já li alguns relatos aq no guj e no javasf mas o problemas dos colegas foram resolvido com region e/ou panelGrid e a atualização só ocorria ou ñ para um componete.
Se alguém tiver alguma ideia da solução ficarei muito feliz em testá-la… =D
Muito obrigado.
[]'s
...
<h:selectOneMenu id="tipos" value="#{defaultBean.tipo}" required="true">
<f:selectItem itemValue="Tipo 1"/>
<f:selectItem itemValue="Tipo 2"/>
<a4j:support event="onchange" ajaxSingle="true" reRender="tipo_form"/>
</h:selectOneMenu>
<h:outputLabel for="tipo_2" value="Dados "/>
<h:panelGrid id="tipo_form">
<h:inputText id="tipo_2" value="#{defaultBean.tipoDados}" size="22"
required="false" disabled="#{defaultBean.tipo == 'Tipo 1'}">
<f:validateLength maximum="17" minimum="15"/>
</h:inputText>
</h:panelGrid>
...
Cara…
Na propriedade reRender voce precisa colocar o que quer atualizar… no caso o InputText tipo_2.
Então, o correto seria reRender=“tipo_2”
Caso seja mais de um ítem, você separa por virgula
Espero ter ajudado.
Abs
valeu pela ajuda joaopaulo.cardozo… 
mas já tentei desta forma. alias, foi minha primeira tentativa pois é assim q está no exadel mas infelizmente o resulta ñ está sendo o esperado…
=(
por favor, se alguém souber qual é o “pulo do gato”, sou todo ouvidos… 
muito obrigado.
[]'s
baum, se algum bem intensionada ainda estiver acompanhado este post :?:
do selectOnMenu em questão:
<h:selectOneMenu id="tipos" value="#{defaultBean.tipo}" required="true">
<f:selectItem itemValue="Tipo 1"/>
<f:selectItem itemValue="Tipo 2"/>
<a4j:support event="onchange" ajaxSingle="true" reRender="tipo_form"/>
</h:selectOneMenu>
tá sendo enviado ao navegador:
<select id="formOutputPanel:tipos" name="formOutputPanel:tipos" size="1" onchange="A4J.AJAX.Submit('_viewRoot','formOutputPanel',event,{'control':this,'similarityGroupingId':'formOutputPanel:j_id166','parameters':{'formOutputPanel:j_id166':'formOutputPanel:j_id166','ajaxSingle':'formOutputPanel:tipos'} ,'actionUrl':'/AcAJ/faces/pages/ajCRUD.xhtml'} )">
como pode-se ver, ele ñ estão solicitando o atualização do componete solicitado mas sim do form principal :roll:
alguém sabe oq fazer para corrigir isso ou oq estou fazendo d errado??? :?: :?: :?:
muito obrigado a tds…
[]'s
t++
alguém?
…
alguém?!
apesar de aparentemente ñ ter nenhuma semelha nos assuntos, localizei outros post com o msm problema q estou tendo:
http://www.guj.com.br/java/127882-jsfa4j---nao-passa-valor-pro-managedbean-nem-a-pau
e
http://www.guj.com.br/java/126387-problema-a4j-#682888
fiz td qto é tipo de alteração com e sem a4j:region e ajaxSingle mas nada resolveu meu problema ainda… 
“JESUS ACENDE A LUZ!!!”
de qq forma vou continuar postando aq.
estou tentando qq coisa e qdo resolver o problema vou postar aq pois certamente ira ajudar outros. 
kd a ação do a4j:support??
segui o exemplo do EXADEL assim ñ coloquei nada.
a ação em si deveria ser só a (des)habilitação do outro input, é necessário um ação explícita?
obrigado pela ajuda! 
Já tentou assim?
<h:selectOneMenu id="tipos" value="#{defaultBean.tipo}" required="true">
<f:selectItem itemValue="Tipo 1"/>
<f:selectItem itemValue="Tipo 2"/>
<a4j:support event="onchange" ajaxSingle="true"/>
</h:selectOneMenu>
<h:outputLabel for="tipo_2" value="Dados "/>
<a4j:outputPanel id="tipo_form" ajaxRendered="true">
<h:inputText id="tipo_2" value="#{defaultBean.tipoDados}" size="22"
required="false" disabled="#{defaultBean.tipo == 'Tipo 1'}">
<f:validateLength maximum="17" minimum="15"/>
</h:inputText>
</a4j:outputPanel>
valeu pela ajuda raf4ever… 
intaum, coloquei o action e ñ resolveu… :x
tb testei teu opção com a4j:outputPanel e nada… :evil:
ñ sitei anteriormente mas estou usando o “modelo de layout” do rpontes e nela temos isso no template principal:
<html>
...
<div id="right">
<a4j:outputPanel id="contentOutputPanel" ajaxRendered="true">
<a4j:form id="formOutputPanel" reRender="false" ignoreDupResponses="true" ajaxSubmit="true">
<!-- bloco de pesquisa -->
<a4j:outputPanel id="searchlistBlock" style="text-align: center; font-size: 10px;" rendered="#{defaultBean.pesquisarState}" >
<ui:insert name="searchlistBlock">
</ui:insert>
</a4j:outputPanel>
<!-- bloco de edição -->
<a4j:outputPanel id="addUpdateBlock" rendered="#{defaultBean.adicionarState or defaultBean.editarState}">
<ui:insert name="addUpdateBlock">
</ui:insert>
</a4j:outputPanel>
</a4j:form>
</a4j:outputPanel>
</div>
...
</html>
meu código problemático tá dentro do bloco de edição. o engraçado e q, como sitei num post anterior, ele solicita a atualização do “formOutputPanel” no código javascript e ñ o componente solicitado no .xhtml.
<select id="formOutputPanel:tipos" name="formOutputPanel:tipos" size="1" onchange="A4J.AJAX.Submit('_viewRoot','formOutputPanel',event,{'control':this,'similarityGroupingId':'formOutputPanel:j_id166','parameters':{'formOutputPanel:j_id166':'formOutputPanel:j_id166','ajaxSingle':'formOutputPanel:tipos'} ,'actionUrl':'/AcAJ/faces/pages/ajCRUD.xhtml'} )">
muito obrigado pela ajuda raf4ever!!!
se tiver alguma ideia, sou “todo ouvidos”. 
[]'s
[quote=Charles]valeu pela ajuda raf4ever… 
intaum, coloquei o action e ñ resolveu… :x
tb testei teu opção com a4j:outputPanel e nada… :evil:
ñ sitei anteriormente mas estou usando o “modelo de layout” do rpontes e nela temos isso no template principal:
<html>
...
<div id="right">
<a4j:outputPanel id="contentOutputPanel" ajaxRendered="true">
<a4j:form id="formOutputPanel" reRender="false" ignoreDupResponses="true" ajaxSubmit="true">
<!-- bloco de pesquisa -->
<a4j:outputPanel id="searchlistBlock" style="text-align: center; font-size: 10px;" rendered="#{defaultBean.pesquisarState}" >
<ui:insert name="searchlistBlock">
</ui:insert>
</a4j:outputPanel>
<!-- bloco de edição -->
<a4j:outputPanel id="addUpdateBlock" rendered="#{defaultBean.adicionarState or defaultBean.editarState}">
<ui:insert name="addUpdateBlock">
</ui:insert>
</a4j:outputPanel>
</a4j:form>
</a4j:outputPanel>
</div>
...
</html>
[/quote]
Esse negócio de manter estado da tela no MB é dor de cabeça muita… :lol:
tô quase usando a celebre frase do Conrado, amigo do Fudêncio: “eu só me fd nesta mer*a!”… :lol:
dq qq forma valeu pela força raf4ever… 
se resolver essa inhaca vou colocar aq a solução.