I am using JSF2+Spring3.1+Hibernate4 in my demo application and i will want to use annotation to create session factory but my DAO class is not initialize in Jsf Managed Bea
Remove bean declaration from your applicationContext.xml. As you have annotated UserDao with @Repository the spring container will create a singleton bean out of it. This should solve your problem.