begin process at 2012 02 13 00:16:48
  Trouver un code source :
 
dans
 
Accueil > Forum > 

JAVA / J2EE / J2ME

 > 

Réseau & internet

 > 

JavaServerPage (JSP)

 > 

probleme d'ajout d'un nouveau enregistrement avec jsf1.2/hibernate2


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

probleme d'ajout d'un nouveau enregistrement avec jsf1.2/hibernate2

lundi 26 mai 2008 à 01:45:59 | probleme d'ajout d'un nouveau enregistrement avec jsf1.2/hibernate2

lucky82

Bonjour tout le monde,

je travaille avec hibernate 2 et jsf 1.2 et Oracle 10g sous eclipse europa. je suis bloquée ca fait 4 jours sur un probleme que j'ai avec jsf/hibernate,

donc, j'ai deux tables: programme et devises, dont voilà les fichier .hbm (générés par hibernate synchroniser ):

Programme.hbm

[CODE]
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
 "-//Hibernate/Hibernate Mapping DTD//EN"
 " [ Lien ]" >

<hibernate-mapping package="com.projet.hibernate">
 <class name="Programme" table="PROGRAMME" dynamic-update="true" dynamic-insert="true" select-before-update="false">
  <id
   column="ID_PROGRAMME"
   name="IdProgramme"
   type="integer"
  >
   <generator class="increment" />
  </id>
  <property
   column="DESCRIPTION_PROGRAMME"
   length="200"
   name="DescriptionProgramme"
   not-null="false"
   type="string"
   />
  <property
   column="OBJET_PROGRAMME"
   length="200"
   name="ObjetProgramme"
   not-null="false"
   type="string"
   />
  <property
   column="REGLEMENTATION_PROGRAMME"
   length="200"
   name="ReglementationProgramme"
   not-null="false"
   type="string"
   />
  <property
   column="OBSERVATION_PROGRAMME"
   length="200"
   name="ObservationProgramme"
   not-null="false"
   type="string"
   />
  <property
   column="MONTANT_PROGRAMME"
   length="126"
   name="MontantProgramme"
   not-null="false"
   type="java.lang.Float"
   />
  <property
   column="DESIGNATION_PROGRAMME"
   length="200"
   name="DesignationProgramme"
   not-null="false"
   type="string"
   />

  <many-to-one
   class="Devises"
   name="IdDevise"
   not-null="true"
   cascade="all"
  >
   <column name="ID_DEVISE"  />
  </many-to-one>
  
 </class>
</hibernate-mapping>
[/CODE]

devises.hbm

[CODE]
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
 "-//Hibernate/Hibernate Mapping DTD//EN"
 " [ Lien ]" >

<hibernate-mapping package="com.projet.hibernate">
 <class name="Devises" table="DEVISES">
  <id
   column="ID_DEVISE"
   name="IdDevise"
   type="integer"
  >
   <generator class="vm" />
  </id>
  <property
   column="NOM_DEVISE"
   length="20"
   name="NomDevise"
   not-null="false"
   type="string"
   />
  <property
   column="PAYS_DEVISE"
   length="20"
   name="PaysDevise"
   not-null="false"
   type="string"
   />
  <property
   column="DATETAUXCHANGE_DEVISE"
   length="20"
   name="DatetauxchangeDevise"
   not-null="false"
   type="string"
   />
  <property
   column="TAUXCHANGE_DEVISE"
   length="126"
   name="TauxchangeDevise"
   not-null="false"
   type="java.lang.Float"
   />

  <set inverse="true" name="PROGRAMMESet"  lazy="true" cascade="all" >
   <key column="ID_DEVISE"  />
   <one-to-many class="Programme" />
  </set>
 </class>
</hibernate-mapping>


[/CODE]

et ma page jsf qui insere un nouveau programme dans la table programme (ges_programme_ajouter.jsp) est:

[CODE]
<%@taglib uri=" [ Lien ]" prefix="f" %>
<%@taglib uri=" [ Lien ]" prefix="h" %>
<%@taglib uri=" [ Lien ]" prefix="c" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    " [ Lien ]">

<f:view>
    <html>
        <head>
            <title>Gestion des programmes: Ajout</title>
            <link rel="stylesheet" href="extra.css" type="text/css"></link>
   <script language="JavaScript" src="JScripts.js"></script>
           
        </head>
        <body>
            <h:form>
            <table width="752" border="1" cellspacing="2" class="texte">
              <tr>
                <td width="207">D&eacute;signation</td>
                <td colspan="2"><h:inputText id="designationProgramme" value="#{programme.designationProgramme}" /></td>
              </tr>
              <tr>
                <td>Objet</td>
                <td colspan="2"><h:inputTextarea id="objetProgramme" value="#{programme.objetProgramme}" /></td>
              </tr>
              <tr>
                <td>Description</td>
                <td colspan="2"><h:inputTextarea id="descriptionProgramme" value="#{programme.descriptionProgramme}" /></td>
              </tr>
              <tr>
                <td style="width: 192px">Observation</td>
                <td colspan="2"><h:inputTextarea id="observationProgramme" value="#{programme.observationProgramme}" /></td>
              </tr>
               <tr>
                <td >Montant</td>
                <td style="width: 291px"><h:inputText id="montantProgramme" value="#{programme.montantProgramme}" style="width: 113px"/>
     
     <h:selectOneMenu value="#{devises.idDevise}" >
         <f:selectItems id="idDevise" value="#{devises.listeDevises}"/>
       </h:selectOneMenu>
     
    </td>
                <td width="265" style="width: 133px"> </td>
              </tr>
               <tr>
                <td >Reglements</td>
                <td colspan="2">
                <h:selectOneMenu value='#{programme.reglementationProgramme}' >
                <f:selectItem itemLabel="Directive BM" itemValue="Directive BM" />
                <f:selectItem itemLabel="Reglementation internationnale" itemValue="Reglementation internationnale"/>
                </h:selectOneMenu>
                </td>
              </tr>
                <tr>
                <td align="center" height="58" colspan="3">
     <h:commandButton value="Ajouter"  action="#{programme.ValiderForm}" ></h:commandButton>
     <h:commandButton value="Annuler"  ></h:commandButton>
    </td>
              </tr>
            </table>
        </h:form>  
        </body>
    </html>
</f:view>
[/CODE]

les classes beans je les ai crée automatiquement à l'aide de hibernate synchronizer sous eclipse europa, auxequls j'ai ajouté les deux méthodes suivantes:

dans Programme.java
[CODE]
 private List<Programme> ListeProgrammes=null;
 public void ValiderForm(){
 
  

Devises dvs=new Devises();

int IdDevise=dvs.getIdDevise();

System.out.println("IdDevise = "+IdDevise);

int IdProgramme= new Integer(44);;

String Designation=this.getDesignationProgramme();

String Objet=this.getObjetProgramme();

String Description=this.getDescriptionProgramme();

String Observation=this.getObservationProgramme();

Float Montant=this.getMontantProgramme();

Float MontantdirhamProgramme=this.getMontantdirhamProgramme();

String Reglementation=this.getReglementationProgramme();

System.out.println("IdProgramme = "+IdProgramme);

System.out.println("Designation saisie = "+Designation);

System.out.println("Objet saisi = "+Objet);

System.out.println("Description saisi = "+Description);

System.out.println("Observation saisi = "+Observation);

System.out.println("Montant saisi = "+Montant);

System.out.println("MontantdirhamProgramme saisi = "+MontantdirhamProgramme);

System.out.println("Reglementation saisi = "+Reglementation);

      
 }
[/CODE]

FICHIER Devises.java

[CODE]
 private List<SelectItem> ListeDevises=null;

 public Devises getDetailDevise(int IdDevises){
  Devises ddvs=new Devises();
  //lecture des comptes existants à partir de la table compte
  try {
        Session session = HibernateUtil.currentSession();
       
        List list = session.find("from Devises where IdDevises="+IdDevises);
        ddvs = (Devises)list.get(0);
        HibernateUtil.closeSession();
       
   } catch (HibernateException e) {
        e.printStackTrace();
   } 

  return ddvs;

 }

 public List<SelectItem> getListeDevises(){
   
   //lecture des comptes existants à partir de la table compte
   try {
         Session session = HibernateUtil.currentSession();
        
         List list = session.find("from Devises");
         Iterator it = list.iterator();
         ListeDevises= new ArrayList<SelectItem>();
          
         while(it.hasNext()) {
      Devises dvs = (Devises)it.next();
      System.out.println("IdDevise = "+dvs.getIdDevise()+" devise Nom= "+dvs.getNomDevise());
      ListeDevises.add(new SelectItem(dvs.getIdDevise(),dvs.getNomDevise()));
         }
        
         HibernateUtil.closeSession();
    } catch (HibernateException e) {
         e.printStackTrace();
    } 
     
    return ListeDevises;
   }

[/CODE]

lors de l'execution du fichierr .jsf, je recois cette exception:
[CODE]

exception

javax.servlet.ServletException: #{programme.ValiderForm}: java.lang.NullPointerException 	javax.faces.webapp.FacesServlet.service(FacesServlet.java:277) 


note La trace complète de la cause mère de cette erreur est disponible dans les fichiers journaux de Apache Tomcat/6.0.16.

[/CODE]

Merci de m'aider

lundi 26 mai 2008 à 09:57:39 | Re : probleme d'ajout d'un nouveau enregistrement avec jsf1.2/hibernate2

lucky82

je peux pas avoir votre aide les amis?!

mardi 24 juin 2008 à 14:51:52 | Re : probleme d'ajout d'un nouveau enregistrement avec jsf1.2/hibernate2

boumarsel

Bonjour,

As-tu déclaré le bean dans ton fichier faces-config.xml?

<managed-bean>
        <managed-bean-name>programme</managed-bean-name>
        <managed-bean-class>
            leNomduPackageComplet.Programme
        </managed-bean-class>
        <managed-bean-scope>request</managed-bean-scope>
    </managed-bean>

Cordialement,
dimanche 20 juillet 2008 à 15:14:13 | Re : probleme d'ajout d'un nouveau enregistrement avec jsf1.2/hibernate2

delivrance84

bonjour,

j'avais le même probleme de lucky82, Merci boumarsel pour votre reponse mais malheureusement même si j'ai suivis votre salution ,le probleme n'a pas encore éte résolus ,s'il vous plait est-ce qu'il y aquelqu'un qui peut m'aider à ce point là?je suis en stage et je suis vraiment bloquée et Merci d'avance.


Cette discussion est classée dans : programme, string, name, hibernate, devises


Répondre à ce message

Sujets en rapport avec ce message

Attente entre RUNTIME lancés en boucle ! [ par darktonight ] Bonjour, et tout d'abord merci pour le temps passé à nous aider.Je veux lancé plusieurs fois un logiciel (.exe) avec des paramétres differents.Pour ce .toLowerCase() [ par christo01 ] Bonjour, je pose cette question avec .toLowerCase(), mais je parle bien sûr de n'importe quelle fonction similaire. Question: Qu'est ce qui est le pl saisie clavier sous netbeans [ par steppenwolf ] Je dois réaliser un programme java qui permet de lire une chaine de caractères saisie au clavier par l'utilisateur. Je travaille sous NetBeans et avec LinkedHashMap [ par awata ] bonjour, svp j'ai un problème par rapport à likedhash map au fait j'ai une classe java qui contient un string et un linked hash map public class T debutant en java [ par juleshervey ] bonjour à tous.comme vs pouvez le constater je suis un debutant avec ce langage,mais comme tout langage j'ai commence par m'exercer avec des variables persistence ejb3 [ par seeif ] Bonjour, j'utilise la technologie ejb3 pour pour creer une application dont le role d'inserer des données dans une base de données (mysql) j'ai crée code source [ par saberla ] [^^happy10] salem 3likom[^^happy10] je suis en train de developper une applicationsur netbeans qui utilise une base de donné mysql en entity classes f Hibernate [ par gaouinformaticien ] salut à tous . je suis debutant en Hibernate.à l'éxecution d'un tp j'ai l'erreur suivante : [b]Caused by: org.hibernate.InvalidMappingException: Could passage de parametre entre un bean et une jsf [ par anisj1m ] bonjour; j'ai un probleme de passage de parametre de type list entre on bean et ma jsf; mon bean est [code] /* * Licensed to the Apache Software


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,624 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales