在web.xml中jsf的listener和spring的listener都设置了吗? 
配监听了 
<context-param> 
<param-name>javax.faces.CONFIG_FILES </param-name> 
<param-value>/WEB-INF/faces-config.xml </param-value> 
</context-param> 
<servlet> 
<servlet-name>Faces Servlet </servlet-name> 
<servlet-class>javax.faces.webapp.FacesServlet </servlet-class> 
<load-on-startup>0 </load-on-startup> 
</servlet> 
<servlet-mapping> 
<servlet-name>Faces Servlet </servlet-name> 
<url-pattern>*.faces </url-pattern> 
</servlet-mapping> 
<welcome-file-list> 
<welcome-file>index.jsp </welcome-file> 
</welcome-file-list> 
<!-- spring 监听器 --> 
<listener> 
<listener-class> 
org.springframework.web.context.ContextLoaderListener 
</listener-class> 
</listener> 页面: 
<body> 
    <f:view> 
    <h:form> 
    <h:outputText value="#{user.errmessage}"> </h:outputText> <p> 
    名称: <h:inputText value="#{user.name}"> </h:inputText> <p> 
    密码: <h:inputSecret value="#{user.password}"> </h:inputSecret> <p> 
    <h:commandButton value="提交" action="#{user.verify}"> </h:commandButton>     </h:form> 
    </f:view> 
  </body> 
实体bean: 
public class UserBean { 
private String name; 
private String password; 
private String errmessage; 
private UserDAO userdao; public String getName() { 
return name; 

public void setName(String name) { 
this.name = name; 

public String getPassword() { 
return password; 

public void setPassword(String password) { 
this.password = password; 

public String getErrmessage() { 
return errmessage; 

public void setErrmessage(String errmessage) { 
this.errmessage = errmessage; 
} public String verify(){ 
Book book = new Book(); 
book.setName(name); 
book.setPassword(password); 
userdao.save(book); 
return "success"; 

public UserDAO getUserdao() { 
return userdao; 

public void setUserdao(UserDAO userdao) { 
this.userdao = userdao; 

spring配置文件: 
<bean id="sessionFactory" 
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"> 
<property name="dataSource"> 
<ref bean="DataSource" /> 
</property> 
<property name="hibernateProperties"> 
<props> 
<prop key="hibernate.dialect"> 
org.hibernate.dialect.MySQLDialect 
</prop> 
</props> 
</property> 
</bean> <bean id="userdao" class="com.dao.UserDAOImpl"> 
<property name="sessionFactory" ref="sessionFactory"> 
</property> 
</bean> <bean id="user" class="com.bean.UserBean"> 
<property name="userdao" ref="userdao"> </property> 
</bean> 
老是报错,老说空javax.faces.el.EvaluationException: Expression Error: Named Object: 'userdao' not found