Khaleel
Khaleel

Reputation: 11

Help with Spring3.0 MVC/Hibernate/HibernateDaoSupport integration

Mapping

<bean id="signinDAO" class="com.socialshop.authentication.dao.SigninDAOImpl"> <property name="sessionFactory" ref="mySessionFactory" /> </bean>

DAO

public interface SigninDAO{
        public List<DataObject> getList();
}

public class SigninDAOImpl extends HibernateDaoSupport {
         public List<T> getList() {
  return (getHibernateTemplate().find("from " + dataClass.getName() + " x"));
 }
}

Controller

@Controller
@RequestMapping("/signin.html")
public class Signin {

 private SigninDAO signinDAO;
 Signin(){ 
 }

 public void setSigninDAO(SigninDAO signinDAO) {
  this.signinDAO = signinDAO;
 }

 @RequestMapping(method=RequestMethod.POST)
 public String processSubmit(@ModelAttribute("signinRequest") SigninRequest signinRequest,
   BindingResult result, SessionStatus status) {

  List<Merchant> merchant = signinDAO.getList();

   return "index";

 }

}

When my signin form is posted processSubmit method is called and I get null pointer Exception here List<Merchant> merchant = signinDAO.getList();

Looks like setSigninDAO() method is not mapped with this request? How do I map it? How do I use multiactioncontroller in this case?

Upvotes: 0

Views: 762

Answers (1)

axtavt
axtavt

Reputation: 242686

You need to annotate your dependency setter method with @Autowired:

@Autowired 
public void setSigninDAO(SigninDAO signinDAO) {   
    this.signinDAO = signinDAO;  
}

See also:

Upvotes: 2

Related Questions