JSF调试小志1-恢复视图阶段(RestoreViewExecutor)

恢复视图阶段,描述不当之处敬请指正。

恢复视图阶段流程走向,见流程图。



关键代码段:

1.restoreViewSupport.processComponentBinding(facesContext,viewRoot);//组件树解析

 

2._invokeViewRootAfterPhaseListener(facesContext);//ViewRoot后阶段el方法执行

 

3. StringviewId = restoreViewSupport.calculateViewId(facesContext);//计算请求视图

 

4. //计算目标视图

viewRoot =viewHandler.restoreView(facesContext, viewId);

String calculatedViewId =getViewHandlerSupport(context).calculateViewId(context, viewId);

 

viewId = handleSuffixMapping(context,viewId);//真实资源名称

String[] faceletsViewMappings =_initialized ? _faceletsViewMappings : getFaceletsViewMappings(context);//获取支持FACELETS语言的配置资源后缀

 

 

ViewDeclarationLanguage vdl =viewHandler.getViewDeclarationLanguage(facesContext,

                   restoreViewSupport.deriveViewId(facesContext, viewId));//查找解析语言

 

 

return strategy.getViewDeclarationLanguage();//文件后缀判断并返回当前语言解析器

 

//有用参数

<context-param>

       <param-name>javax.faces.DEFAULT_SUFFIX</param-name>

       <param-value>.xhtml .jsp .ui</param-value>

    </context-param>

<context-param>

       <param-name>javax.faces.FACELETS_VIEW_MAPPINGS</param-name>

       <param-value>*.xhtml;*.usl</param-value>

    </context-param>


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值