Showing posts with label jsf. Show all posts
Showing posts with label jsf. Show all posts

Wednesday, March 25, 2015

gmap:jsf+primefaces

Dans cet article, on va montrer comment faire la géolocalisation dans une application web en utilisant jsf et primefaces:

voici le vidéo qui montre ca :


Ceci et le code de managedBean :


Le code de la page geo.xhtml est le suivant :



Le script suivant est obligatoire,sinon le map ne s'affiche pas .

<script src="http://maps.google.com/maps/api/js?sensor=false" type="text/javascript">
</script>



Thursday, January 8, 2015

JSF :Affichage de la ligne selectionnée du tableau primefaces dans un dialogue


Dans cet exemple, on va montre comment afficher les details d'une ligne séléctionné dans tableau jsf.
Les details seront afficher dans un dialogue.
Tout d'abord voici le code de l'objet employe.



La classe departement.chaque employe appartient à un departement.



La classe ServiceBean qui est le managedBean:




finalement la page web :




Monday, December 29, 2014

JSF:Un exemple d'image dynamique en primefaces

Dans cet exemple , on va montrer comment travailler avec une image dynamique en utilisant le composant graphicImage du primefaces.

voici la classe du managedBean:



InputStream is = new FileInputStream("c://jsf.png"); Cette ligne va convertir le fichier de l'image en InputStream.

Voici le code de la page qui va afficher l'image .



Voici ce qu'on va obtenir aprés exécution:

Wednesday, December 24, 2014

JSF:Exemple d'affichage dans un tableau en JSF

Tout d'abord on doit créer la classe Person suivante:




Puis on developpe le ManagedBean.Notons bien que à partir de JSF2.0,les ManagedBean peut etre décalaré en utilisant @ManagedBean comme suit:

Ceci la page Consultation.jsp qui contient le code d'affichage du tableau en jsf






Monday, December 22, 2014

JSF:Exemple pour les débutants,contient un formulaireet navigation entre les pages selon un critère



Tout d'abord,on doit créer la classe etudiant suivante:






La page index.jsp


 La page failure.jsp








et la page succes.jsp







Le fichier faces-config.xml final doit etre comme suit:




















Wednesday, December 17, 2014

JSF:un simple exemple d'authentification


On va présenter un exemple de JSF.

Tout d'abord on doit créer la classe  BeanUser 


public class BeanUser {
String username;
String pwd;
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPwd() {
return pwd;
}
public void setPwd(String pwd) {
this.pwd = pwd;
}

public String login(){
if(username.equals("test") && pwd.equals("test"))
return "yes";
else

return "no";

}

}
Cette classe doit etre déclaré dans le fichier faces-config.xml  pour etre applelé de la page index.xhtml

<managed-bean>
<managed-bean-name>beanUser</managed-bean-name>
<managed-bean-class>training.jsf.BeanUser</managed-bean-class>
<managed-bean-scope>session</managed-bean-scope>
</managed-bean>



Voici la page index.jsp:

<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%>
<%@ taglib prefix="f"  uri="http://java.sun.com/jsf/core"%>
<%@ taglib prefix="h"  uri="http://java.sun.com/jsf/html"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>demo jsf</title>
</head>
<body>
<f:view>
<h:form>
<h:messages style="color:red"/>
<h:panelGrid columns="2" bgcolor="cyan">
<h:outputText value="Username" />
<h:inputText value="#{beanUser.username }" required="true" requiredMessage="Username is required" />
<h:outputText value="Password" />
<h:inputSecret value="#{beanUser.pwd}" required="true" requiredMessage="Password is required"/>
<h:commandButton action="#{beanUser.login }" value="Ok" />
</h:panelGrid>
</h:form>
</f:view>
</body>
</html>

Maintenant , on va ajouter la page accueil.jsp suivante:

<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%>
<%@ taglib prefix="f"  uri="http://java.sun.com/jsf/core"%>
<%@ taglib prefix="h"  uri="http://java.sun.com/jsf/html"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<f:view>
Bienvenue <h:outputText value="#{beanUser.username}" />
</f:view>
</body>
</html>

et dans le fichier  faces-config.xml  ,on doit ajouter les regles de navigation comme suit:

<?xml version="1.0" encoding="UTF-8"?>
<faces-config version="2.0" xmlns="http://java.sun.com/xml/ns/javaee"
 xmlns:xi="http://www.w3.org/2001/XInclude"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_2_0.xsd">
 <managed-bean>
  <managed-bean-name>beanUser</managed-bean-name>
  <managed-bean-class>training.jsf.BeanUser</managed-bean-class>
  <managed-bean-scope>session</managed-bean-scope>
 </managed-bean>
 <navigation-rule>
  <display-name>index</display-name>
  <from-view-id>/index.jsp</from-view-id>
  <navigation-case>
   <from-outcome>yes</from-outcome>
   <to-view-id>/accueil.jsp</to-view-id>
  </navigation-case>
 </navigation-rule>
</faces-config>

Le vidéo suivant peut vous aider à mieux compendre ceci.

Wednesday, October 29, 2014

Exemple JSF authentfication avec primefaces


I
-Exemple JSF authentfication avec primefaces:

    Tout d'abord nous allons declarer trois attributs dans la classe LoginBean qui est un managedBean. 

    private String username;
    private String password;
    private boolean loggedIn;
    1. créer la methode doLogin


    public String doLogin() {
    if (username.equals("test") && password.equals("test")) {
    loggedIn = true;
     return "home";
    }
    FacesMessage msg = new FacesMessage("Login error!", "ERROR MSG");
            msg.setSeverity(FacesMessage.SEVERITY_ERROR);
            FacesContext.getCurrentInstance().addMessage(null, msg);
         return "/login.xhtml";
    }


    2-creer dans login.xhtml le formulaire suivant:


    <h:form id="login-form">
          <h:messages />
          <h:panelGrid columns="2">
            <h:outputText value="username:"/>
            <p:inputText value="#{loginBean.username}" id="username"/>
           
            <h:outputText value="password:"/>
            <p:password value="#{loginBean.password}" id="password"/>
        
            <p:commandButton id="button" value="Login" action="#{loginBean.doLogin}"/>
            
         </h:panelGrid>
           
        
         </h::form>


    3-Dans la page home.xhtml nous allons developper le code suivant:

    <h:form>
    <p:panel header="Accueil">
      <p>Bienvneue</p>

    <h:outputText value="#{loginBean.username}"/>

    <p:commandButton action="#{loginBean.doLogout}" value="Déconnecter"/>
    </p:panel>
    </h:form>


    3-le boutton Déconnecter va appeler la methode suivante dans LoginBean


    public String doLogout() {

    // Set the paremeter indicating that user is logged in to falseloggedIn = false;





    FacesMessage msg = new FacesMessage("Déconnexion avec success!", "INFO MSG");

    msg.setSeverity(FacesMessage.SEVERITY_INFO);

    FacesContext.getCurrentInstance().addMessage(null, msg);



    return "/login.xhtml";




    }


    II-Filter dans JSF et primefaces:

    -Tout d'abors ous allons creer notre classe Filter:

    public class LoginFilter implements Filter {

    public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
    LoginBean loginBean = (LoginBean)((HttpServletRequest)request).getSession().getAttribute("loginBean");
    if (loginBean == null || !loginBean.isLoggedIn()) {
    String contextPath = ((HttpServletRequest)request).getContextPath();
    ((HttpServletResponse)response).sendRedirect(contextPath + "/login.xhtml");
    }
    chain.doFilter(request, response);
    }

    @Override
    public void destroy() {
    // TODO Auto-generated method stub
    }

    @Override
    public void init(FilterConfig arg0) throws ServletException {
    // TODO Auto-generated method stub
    }

    }

    dans le fichier Web.xml je dois ajouter la déclaration du filter et de son mapping:



    </filter>
    <filter-name>LoginFilter</filter-name>
    <filter-class>com.examples.filters.LoginFilter</filter-class>
    </filter>


    <filter-mapping>
    <filter-name>LoginFilter</filter-name>
    <url-pattern>/secured/*</url-pattern>
    </filter-mapping>

    Monday, October 27, 2014

    Initiation JSF:
    Dans cet exemple nous allons montrer un petit exemple d'une page JSF:

    tout d'abord nous allons créer un projet Web dynamique demojsf. Dans la partie configuration nous devons choisir JavaServer Faces V2.0 Project



    nous allons creer une page jsp comme suit:



    Cette page sera dans WebContent de notre projet Web dynamique.



    on ne doit pas oublier de mettre les lib jsf-api ,jsf-impl et jstl dans le repertoire  WEB-INF/lib de notre projet.