JSF Getters工作,Setters没有

时间:2013-09-16 10:49:54

标签: jsf getter-setter

我对JSF有点问题,

我已经制作了简单的JSF页面来学习:

 <?xml version="1.0" encoding="UTF-8" ?>
  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML      1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:ui="http://java.sun.com/jsf/facelets"     xmlns:f="http://java.sun.com/jsf/core" xmlns:h="http://java.sun.com/jsf/html">
 <h:head>
   <title>register</title>
   <meta http-equiv="Content-Type"
content="application/xhtml+xml; charset=UTF-8" />
  </h:head>
  <h:body>
<h:form>
    <h:outputText value="Hello."/>
    <h:inputText value="#{login.name}"/> 
    <h:outputText value="Password"/>
    <h:inputText value="#{login.password}"/>

    <h:button value="Getgreeeting" outcome="welcome"/>
</h:form>




 </h:body>
 </html>

另一个显示插入bean的值的页面:

<?xml version="1.0" encoding="UTF-8" ?>
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML  1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:f="http://java.sun.com/jsf/core" xmlns:h="http://java.sun.com/jsf/html">
<h:head>
<title>welcome</title>
<meta http-equiv="Content-Type"
content="application/xhtml+xml; charset=UTF-8" />
</h:head>
<h:body>
<h:outputText value="#{login.name}"></h:outputText>
<h:outputText value="Yours password #{login.password}"></h:outputText>

 </h:body>
 </html>

我已经制作了一些System.out.println()方法,并且它们表明只有我的bean中的getter才有效。有人可以解释一下为什么吗?什么是我的问题的解决方案?

1 个答案:

答案 0 :(得分:1)

<h:button>不是提交按钮。这是一个导航按钮。仔细查看book / tutorial / resource(if you have any ..)中的Hello World示例。您需要<h:commandButton>代替。

另见: