在Strutsconfigxml中有ActionForm Action以及Jsp之间的流程关系在facesconfigxml中也有这样的流程我们具体解释一下Navigation
在indexjsp中有一个事件
< h
commandButton label=
Login
action=
login
/>
action的值必须匹配formoutcome值上述Navigation配置表示如果在indexjsp中有一个login事件那么事件触发后下一个页面将是welcomejsp
JSF有一个独立的事件发生和页面导航的流程安排这个思路比struts要非常清晰
managedbean类似Struts的ActionForm正如可以在strutsconfigxml中定义ActionForm的scope一样这里也定义了managedbean的scope为session
但是如果你只以为JSF的managedbean就这点功能就错了JSF融入了新的Ioc模式/依赖性注射等技术
Ioc模式
对于Userbean这样一个managedbean其代码如下
public class UserBean {
private String name;
private String password;
// PROPERTY: name
public String getName() { return name; }
public void setName(String newValue) { name = newValue; }
// PROPERTY: password
public String getPassword() { return password; }
public void setPassword(String newValue) { password = newValue; }
}
< managedbean>
< managedbeanname>user< /managedbeanname>
< managedbeanclass>comcorejsfUserBean< /managedbeanclass>
< managedbeanscope>session< /managedbeanscope>
< managedproperty>
< propertyname>name< /propertyname>
< value>me< /value>
< /managedproperty>
< managedproperty>
< propertyname>password< /propertyname>
< value>secret< /value>
< /managedproperty>
< /managedbean>
facesconfigxml这段配置其实是将me赋值给name将secret赋值给password这是采取Ioc模式中的Setter注射方式
[] [] [] []