我有一个用JSF 2.2编写的主页。它使用由许多其他页面共享的公共模板。我不想在公共模板中包含<f:view transient="true">
,因为我想只将此特定主页设为瞬态。
现在我的主页上有这段代码
<f:view transient="true">
<ui:define name="content">
.....
<h:commandLink value="#{msg['homepage.createaccount']}"
action="#{homepageController.createNewAccount()}" />
</ui:define>
</f:view>
现在,HomepageController是一个命名的会话bean。
@Named
@Session
public class HomepageController {
//code here
}
<f:view = "transient">
似乎不起作用。是因为控制器是会话作用域的吗?
控制器是会话作用域的,因为在加载第一页时,我们会获取几个重要的列表,这些列表稍后会被应用程序的许多部分使用。