您好我正在创建一个JSF项目,但自动完成功能在eclipse中不起作用。 例如
<?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 lang="en" xmlns="http://www.w3.org/1999/xhtml"
xmlns:f="/WEB-INF/jsf_core.tld"
xmlns:h="http://java.sun.com/jsf/html">
<h:head>
<title>JSF 2.0 Hello World</title>
<h:outputStylesheet library="css" name="default.css" />
</h:head>
<h:body>
<h3>JSF 2.0 Hello World Example - hello.xhtml</h3>
<h:form>
<h:inputText value="#{helloBean.name}"></h:inputText>
<h:commandButton value="Click" action="welcome"></h:commandButton>
</h:form>
</h:body>
</html>
tlds由链接的男性导入。 当我按下ctrl + space afiter f:它没有显示可用的命令。 所以我试图将实际文件放在WEB-INF文件夹中,并将其导入文件中。它还没有用。
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:f="/WEB-INF/jsf_core.tld"
xmlns:h="/WEB-INF/jsf_core.tld">
anybodt可以帮助解决这个问题。
答案 0 :(得分:1)
首先,您应该绝对不从JAR中提取松散的TLD文件并将其转储到您的webapp中。这是便携性问题的秘诀。删除它们并撤消与此相关的所有其他内容。您应该只拥有这些XML命名空间:
xmlns:f="http://java.sun.com/jsf/core"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:ui="http://java.sun.com/jsf/facelets"
关于自动完成在Eclipse中不起作用的具体问题;该行为取决于所使用的Eclipse版本和项目配置。您需要至少拥有Eclipse Indigo SR1才能拥有适当的内置JSF 2.0 Facelets自动完成支持。此外,项目需要创建为启用JSF 2.0 Facet的动态Web项目。
替代方案正在整合Glassfish Eclipse plugin或JBoss Tools Eclipse plugin。特别是JBoss Tools插件提供了很多其他很棒的功能,例如EL表达式自动完成和Ctrl + Click导航。