1)web.xml中配置
<web-app>
<context-param>
<param-name>javax.faces.CONFIG_FILES</param-name>
<param-value>/WEB-INF/faces-config.xml</param-value> 有很多个就用逗号隔开
</context-param>
...
</web-app>
2) 如果要在其它类别中取得 Bean 对象,则可以先取得
javax.faces.context.FacesContext,它代表了 JSF 目前的执行环境对象,接着尝试取
得 javax.faces.el.ValueBinding对象,从中取得指定的 Bean 对象,例如:
FacesContext context = FacesContext.getCurrentInstance();
ValueBinding binding = context.getApplication().createValueBinding("#{user}");
UserBean user = (UserBean) binding.getValue(context);
如果只是要尝试取得 Bean 的某个属性,则可以如下:
FacesContext context = FacesContext.getCurrentInstance();
ValueBinding binding =
context.getApplication().createValueBinding( "#{user.name}");
String name = (String) binding.getValue(context);
3)*如果有必要在启始 Bean 时,自动设置属性的初始值,则可以如下设定:
<managed-bean>
<managed-bean-name>user</managed-bean-name>
<managed-bean-class>
onlyfun.caterpillar.UserBean
</managed-bean-class>
<managed-bean-scope>session</managed-bean-scope>
<managed-property>
<property-name>name</property-name>
<value>caterpillar</value>
</managed-property>
<managed-property>
<property-name>password</property-name>
<value>123456</value>
</managed-property>
</managed-bean>
如果要设定属性为 null 值,则可以使用<null-value/>标签,例如:
<managed-property>
<property-name>name</property-name>
<null-value/>
</managed-property>
其它类型
<managed-property>
<property-name>user</property-name>
<value>#{user}</value>
</managed-property>
<managed-property>
<property-name>someProperty</property-name>
<!-- list --> <list-entries>
<value-class>java.lang.Integer</value-class>
<value>1</value>
<value>2</value>
<value>3</value>
</list-entries>
</managed-property>
<managed-property>
<property-name>someProperty</property-name>
<map-entries>
<value-class>java.lang.Integer</value-class>
<map-entry>
<key>someKey1</key>
<value>100</value>
</map-entry>
<map-entry>
<key>someKey2</key>
<value>200</value>
</map-entry>
</map-entries>
</managed-property>