我正在尝试理解JSF 1.2 sun实现的内部工作原理。
我有以下问题。
据说Lifecycle类管理特定JavaServer Faces请求的整个生命周期的处理。它有执行和渲染方法,但它是一个抽象类。它是如何真正实现的?
在this博客中,他声明ViewHandler最终会调用以下内容:
stateManager.saveView(context);
它是否正确?我找不到这行代码。
在哪个类中我会找到解析JSF标记并创建组件树的代码(xml - > tree)?
在哪个类中我会找到与(3)相反的代码,即呈现组件树。 (树 - > xml)?
如果有人能指出我提供有关JSF 1.2实现的解释的任何资源,那也将是无限的。
答案 0 :(得分:0)
自从我进入JSF 1.2之后已经过了几年,但如果内存服务于实现Lifecycle的类,那么LifecycleImpl总是如此。
关于xml->树和tree-> xhtml之间的转换(对我而言,无论如何),我一直认为这是由组件/渲染器/转换器完成的。基于标记,在树中创建并填充组件。附加到Component的渲染器(基于标签定义)负责渲染输出(默认为html,但您可以根据所需的输出将多个渲染器连接到组件),并且Converter负责String< ; - >对象转换。
我总是很幸运地阅读了源代码(可以在http://javaserverfaces.java.net/download.html找到),虽然我花了一些时间试着了解其中的一些。
希望这有帮助