z在作Facelet+JSF开发的时候,根据facelet的基本配置说明,我们会把jsf的默认文件后缀明设置成.xhtml
<context-param> <param-name>javax.faces.DEFAULT_SUFFIX</param-name> <param-value>.xhtml</param-value> </context-param>
然后会在xhtml文件里面添加上jsf标签的声明
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html">
.......
</html>
但是会发现,eclipse的HTML编辑器却没有办法对<f:xx>的标签进行自动提示,这对进行jsf开发的是非常郁闷的,那么多的标签,如果在加上扩展的标签,那是非常恐怖
我们发现,当我们用jsp文件的时候,eclipse打开的是jsp editor(不是HTML Editor)
如果用<%taglib%>标签引入标签定义,编辑器就可以正常的自动联想
因此,我们用如下方法可以解决标签自动联想
1. 将xhtml文件的默认编辑器设置成jsp editor
2. 在Preference->Content Types->JSP 中添加File association *.xhtml
然后重新打开xhtml就可以发现,标签自动联想了