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:
public interface IBaseUtilisateursDAO {
public UtilisateursDAO getInstance ();
public java.lang.Integer save(business.Utilisateurs utilisateurs)
throws net.sf.hibernate.HibernateException;
DAO
Code:
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:
public interface IBaseUtilisateursBusiness {
public UtilisateursDAO getInstance ();
public java.lang.Integer save(business.Utilisateurs utilisateur)
throws net.sf.hibernate.HibernateException;
Metier
Code:
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:
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.
[/code]