FacesContext
和 和有什么不一样ExternalContext
?我什么时候可以使用其中一种?一个有什么,另一个有什么?
以下示例来自 JavaServer Faces 第 3 版一书:
<h:commandButton ... actionListener="#{rushmore.handleMouseClick}" />
支持豆:
public void handleMouseClick(ActionEvent e) {
FacesContext context = FacesContext.getCurrentInstance();
String clientId = e.getComponent().getClientId(context);
Map<String, String> requestParams = context.getExternalContext().getRequestParameterMap();
// ...
}
为什么请求参数在ExternalContext
?是什么clientId
?它是在应用程序启动时由 JSF 生成的吗?