Bean receber valor do inputText (Primefaces) (RESOLVIDO)

Boa tarde.

Gostaria de saber como utilizar os valores dos inputs no meu bean.

Se tiver algum link ou tutorial…

<h:form>
		<center>
			<br />
			<br />
			<p:panelGrid columns="2">
				<f:facet name="header">  
        Alterar Dados 
    </f:facet>
				<h:outputLabel value="Login: " />
				<p:inputText value="#{administradorBean.administrador.login}" />
				<h:outputLabel value="Nome: " />
				<p:inputText id="nome"
					value="#{administradorBean.administrador.nome}" />
				<h:outputLabel value="Telefone: " />
				<p:inputMask id="telefone" mask="(99) 9999-9999"
					value="#{administradorBean.administrador.telefone}" />
				<h:outputLabel value="Celular: " />
				<p:inputMask id="celular" mask="(99) 9999-9999"
					value="#{administradorBean.administrador.celular}" />
				<h:outputLabel value="Operadora: " />
				<p:inputText id="operadora"
					value="#{administradorBean.administrador.operadora}" />
				<h:outputLabel value="Email: " />
				<p:inputText id="email"
					value="#{administradorBean.administrador.email}" />
				<h:outputLabel value="Senha Atual: " />
				<p:password id="senha_atual"
					value="#{administradorBean.administrador.senha}" />
				<h:outputLabel value="Nova Senha: " />
				<p:password id="senha_nova" feedback="true" />
				<f:facet name="footer">
					<p:commandButton value="Salvar"
						actionListener="#{administradorBean.alterar}" />
				</f:facet>
			</p:panelGrid>
		</center>
	</h:form>

Consegui pegar o valor, porém os ids ficam estranhos. Como no exemplo abaixo.

public void alterar(){
		System.out.println(FacesContext.getCurrentInstance().getExternalContext().getRequestParameterMap().get("j_idt67:celular")); 
		//System.out.println(FacesContext.getCurrentInstance().getExternalContext().getRequestParameterMap().values()); 
	}

há alguma maneira de contornar o problema? Posso utilizar estes id malucos ou eles podem mudar?

Obrigado.

ThalesSilva,

Posta o código do teu bean também… Mas tu não precisa pegar os dados dessa forma que você fez. Basicamente o objeto administrador do teu bean administradorBean, é populado com os dados do input da tela.

Dai tu só faria isso no teu bean pra pegar os dados:

System.out.println(administrador.celular);

Obs: sobre os ids do jsf, se você não colocar um id em cada input, form, panel, o jsf vai gerar um dinamicamente. Nesse caso, tu precisaria colocar o atributo id no teu h:fom.

Você não precisa disso, pode mapear diretamente no ManagedBean.

Aqui tem um exemplo: Aplicação Web Completa Tomcat JSF Primefaces JPA Hibernate.

[quote=edubiss]ThalesSilva,

Posta o código do teu bean também… Mas tu não precisa pegar os dados dessa forma que você fez. Basicamente o objeto administrador do teu bean administradorBean, é populado com os dados do input da tela.
[/quote]

Funcionou perfeitamente. Muito Obrigado :smiley:

Bom dia amigos, estou com um problema na hora em que desejo buscar o valor da nova senha a ser cadastrada.

Mais especificadamente na parte: “getRequestParameterValuesMap().get(“nova_senha”);” ele sempre me retorna null.

Meu form esta com prependId=“false” portanto eu não preciso especificar o caminho completo do id “nova_senha”.

Alguém poderia me ajudar?

Desde já agradeço a atenção de todos.