[Tapestry5] T5 ioc的问题
bill_mouse
2008-11-24
在使用ioc的时候出现了问题,高人看看是不是我理解错了
这里注入了ProjectDAO(继承自AbstractDAO,实现DAOInterface); 测试发现并没有成功注入,dao始终为null。 @InjectService("ProjectDAO") private DAOInterface dao; private Project project; public Object onSuccess() { System.out.println(dao); dao.create(project); return ProjectEdit.class; } AppModel.java public class AppModule { public static void bind(ServiceBinder binder) { binder.bind(DAOInterface.class,ProjectDAO.class).withId("ProjectDAO"); } } ProjectDAO.java public class ProjectDAO extends AbstractDAO implements DAOInterface { @Override public List<AbstractPO> searchBySo(AbstractSO so) { return null; } } AbstractDAO.java public abstract class AbstractDAO extends HibernateDaoSupport { public int create(AbstractPO po) { this.getHibernateTemplate().save(po); return po.getId(); } public boolean update(AbstractPO po) { try { this.getHibernateTemplate().update(po); } catch (Exception e) { return false; } return true; } public abstract List<AbstractPO> searchBySo(AbstractSO so); } |
|
lishubing_2000
2008-11-26
注入调用的时候不要用
@InjectService("ProjectDAO") 用 @Inject就可以了 |