我使用NetBeans 8.2,JSF 2.2和glassfish 4.1。我已尝试过以下部分代码:
我的xhtml页面代码:
<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://xmlns.jcp.org/jsf/html"
xmlns:f="http://xmlns.jcp.org/jsf/core">
<h:head>
<title>Facelet Title</title>
</h:head>
<h:body>
<h:form>
<h:inputText value="#{myBean.inputValue}">
<f:validateLongRange minimum="25" maximum="40"/>
</h:inputText>
<h:commandButton
value="submit"
action="#{myBean.action}" />
<h:outputText
value="#{myBean.outputValue}" />
<h:messages />
</h:form>
</h:body>
</html>
我的托管bean如下:
import javax.faces.bean.ManagedBean;
import javax.faces.bean.RequestScoped;
@ManagedBean
@RequestScoped
public class MyBean {
private String inputValue;
private String outputValue;
public MyBean() {
}
public void action() {
outputValue = inputValue;
}
// Getters/setters
public String getInputValue() {
return inputValue;
}
public void setInputValue(String inputValue) {
this.inputValue = inputValue;
}
public String getOutputValue() {
return outputValue;
}
}
一切正常。我的问题是:当我检查生成的页面时
我没有看到任何javascript函数或执行测试的任何其他代码。我想了解究竟发生了什么,代码执行测试的部分在哪里?
此外,&#34; 3.3)验证器中的here&#34;部分,我读过这个:
几乎任何应用程序都必须验证。客户输入的数据必须在发送到服务器进行处理之前进行验证。
让我更加困惑。验证是在客户端还是在服务器端进行?