今天有人试图说服我Facelets是建立在Servlet API之上的。知道与JSP不同的Facelets永远不会编译为实际的servlet Java类,我想知道这是如何可能的。如果发生这种情况,那么Servlet API抽象类和接口在哪个阶段实现?
你知道API和实现的区别吗?Servlet API
可能充满了抽象类和接口,但servlet实现不是。
JSF有一个FacesServlet
处理与JSF
相关的事情,所以是的,它肯定是建立在Servlet API
之上的。
请注意,Facelets
实际上是与JSF
一起使用的高级模板系统(而不是使用JSP
),所以我不会说Facelets
是建立在Servlets
之上的,但JSF
是。
没有将facelets编译为Servlet或任何其他Java类实例。它们被转换成XML树,然后存储在FaceletCache类的实例中。
更多信息:
- 如何调试JSF EL ? Facelets页面是否像JSP一样生成给Servlet ?