je suit une partie de l'interface utilisateur sur JSF - c'est un formulaire de recherche simple champ de saisie et de soumettre:Impossible d'obtenir la valeur du champ d'entrée JSF sur backend JAVA
<h:form>
<h:commandButton action="#{operation.found}" value="#{msg.search}" />
<h:inputText name="searchParam"/>
</h:form>
Et en conséquence, le back-end, je tente d'obtenir la valeur du champ de saisie de la manière suivante:
public List<Store> getFound() {
String name = (String) FacesContext.getCurrentInstance()
.getExternalContext().getRequestParameterMap().get(
"searchParam");
SessionFactory sessionFactory = new Configuration().configure()
.buildSessionFactory();
HibernateTemplate hbt = new HibernateTemplate();
hbt.setSessionFactory(sessionFactory);
foundStores = hbt.find(BEAN_PATH + " WHERE name = ?",
new Object[] { name });
return foundStores;
}
Et le nom nul est transmis au serveur principal.
Il semble que problème en partie .jsf, mais de prime abord semble ok ...
Voir , s'il vous plaît, méthode complète pour la recherche supérieure. Géré géré configuré ok. J'ai ajouté la propriété searchParam au bean. Une interface utilisateur ressemble maintenant: \t \t \t \t \t \t \t \t \t \t Cependant, la valeur null reste affichée dans le backend. –
sergionni
la méthode d'action doit être vide, et vous devez utiliser 'operation.getFound', au lieu de operation.found. – Bozho
peut-être que je n'ai pas besoin de searchParam pour le bean? il semble que j'ai juste besoin d'obtenir la valeur d'entrée de la requête et la passer à la requête HQL. du point de Portlets et JSP ce sont des actions claires, mais pas si claires pour JSF et les beans gérés. – sergionni