AppDevelopment - Création de la page d’accueil
Page
- dernière modification par Jérôme Lacour le 2015/04/24 09:54
[...]
}
2. Vous voulez afficher une page de liste générée
Dans ce cas, c’est un peu plus compliqué puisque avant d’afficher la liste, le controller doit avoir préparé et
exécuté la requête.
Pour ce faire, vous pouvez suivre l’exemple suivant :
@Override
public String getDefaultPage(User user) {
if (user != null) {
ViewController jsfCtrl = ((ViewController) JSFBeanUtils.getManagedBean(FacesContext.getCurrentInstance(),
”jsfCtrl”));
return jsfCtrl.prepareView(DemProduit.NAME, DemProduitQuery.Query.QUERY_DEM_PRODUIT,
”QUERY_DEM_PRODUIT”);
}
return ”/index/login”;
}
v4.0 et plus
@Override
public String getDefaultPage(User user) {
if (user != null) {
ViewController viewCtrl = ((ViewController)
JSFBeanUtils.getManagedBean(FacesContext.getCurrentInstance(), ”viewCtrl”));
Request<DemProduit> request = new Request<DemProduit>(viewCtrl.getContext(), DemProduit.NAME,
DemProduitConstants.Query.DEM_PRODUIT);
return viewCtrl.prepareView(request);
}
return ”/index/login”;
}
Dans le cas d’un multiapp
v4.0 et plus
package fr.logica.application;
[... imports ...]
/**
* Default implementation for the application logic methods.
*/
public class DefaultApplicationLogic extends AbstractApplicationLogic {
[...]
public String getDefaultPage(String app, User user) {
if (user != null) {
if (”ENTRETIEN_PREVISIONNEL”.equals(app)) {
ViewController viewCtrl = ((ViewController)
JSFBeanUtils.getManagedBean(FacesContext.getCurrentInstance(), ”viewCtrl”));
viewCtrl.reset();
return viewCtrl.prepareView(EptxTravauxRecensesConstants.ENTITY_NAME,
EptxTravauxRecensesQuery.Query.QUERY_MENU_EPTXDW_BATI_A_VENIR,
”MENU_EPTXDW_BATI_A_VENIR_LIST”);
}
}
return ”/index/login.jsf?” + Constants.CURRENT_APP_PARAMETER + ”=” + app + ”&faces-redirect=true”;
}
[...]
}
Customiser la page par défaut
Si vous voulez afficher des données statiques ou des données préparées par des controlleurs customisés, vous
pouvez aussi choisir de customiser le fichier “index/defaultPage.xhtml”.
Le fichier généré par défaut est le suivant :