Hibernate, Struts problème avec une action
Bonjour, je suis en train de développer une appli avec Struts 1 et Hibernate
J'ai un problème de Null Pointer Exception dans mon action. J'ai utilisé Hibernate Synchronizer pour créer les fichiers de mapping etc
mon arborescence est
+ src
+ action
+ business (créer par Synchronizer : constructeur des beans comme Utilisateurs)
+ business.base (suite des beans avec setters et getters)
+ business.dao
+ form
+ metier
et au niveau de src les fichiers de mapping hbm et le hibernate.cfg.xml
voici le code
Interface DAO (la fonction save car c'est elle qui m'interesse)
Code:
1 2 3 4 5 6 7
|
public interface IBaseUtilisateursDAO {
public UtilisateursDAO getInstance ();
public java.lang.Integer save(business.Utilisateurs utilisateurs)
throws net.sf.hibernate.HibernateException; |
DAO
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
|
public abstract class BaseUtilisateursDAO extends business.dao._RootDAO implements IBaseUtilisateursDAO{
public static UtilisateursDAO instance;
public UtilisateursDAO getInstance () {
if (null == instance) instance = new UtilisateursDAO();
return instance;
}
public java.lang.Integer save(business.Utilisateurs utilisateurs)
throws net.sf.hibernate.HibernateException {
return (java.lang.Integer) super.save(utilisateurs);
} |
Interface Metier
Code:
1 2 3 4 5 6
|
public interface IBaseUtilisateursBusiness {
public UtilisateursDAO getInstance ();
public java.lang.Integer save(business.Utilisateurs utilisateur)
throws net.sf.hibernate.HibernateException; |
Metier
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
|
public class BaseUtilisateursBusiness implements IBaseUtilisateursBusiness{
IBaseUtilisateursDAO ibaseutilisateurdao;
public UtilisateursDAO getInstance () {
return ibaseutilisateurdao.getInstance();
}
public java.lang.Integer save(business.Utilisateurs utilisateurs)
throws net.sf.hibernate.HibernateException {
return ibaseutilisateurdao.save(utilisateurs);
} |
Action
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
|
public class ValidateNewUserAction extends Action{
IBaseUtilisateursBusiness ibaseutilisateurbusiness;
public ActionForward execute(
ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response) throws Exception{
NewUserForm newuserForm = (NewUserForm) form;
Utilisateurs utilisateur = new Utilisateurs();
utilisateur.setNomUtilisateur(newuserForm.getNom());
utilisateur.setPrenomUtilisateur(newuserForm.getPrenom());
utilisateur.setEmailUtilisateur(newuserForm.getEmail());
utilisateur.setLoginUtilisateur(newuserForm.getLogin());
utilisateur.setMotdepasseUtilisateur(newuserForm.getPassword());
ibaseutilisateurbusiness = new BaseUtilisateursBusiness();
ibaseutilisateurbusiness.save(utilisateur);
return mapping.findForward("success");
}
} |
L'erreur se fait au niveau du ibaseutilisateurbusiness.save(utilisateur);
J'ai vérifié le bean utilisateur est bien rempli avec les différents champs de la JSP mais impossible de sauvegarder dans la base.