【问题标题】:tag library descriptor in XHTMLXHTML 中的标记库描述符
【发布时间】:2012-09-30 19:24:11
【问题描述】:

您好,我正在创建一个 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 后 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">

任何人都可以帮助如何做到这一点。

【问题讨论】:

    标签: eclipse jsf autocomplete facelets


    【解决方案1】:

    首先,您应该绝对不从 JAR 中提取松散的 TLD 文件并将它们转储到您的 web 应用程序中。这是便携性问题的秘诀。删除它们并撤消与此相关的所有其他内容。你应该只拥有那些 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 的 Dynamic Web 项目

    替代方案正在集成Glassfish Eclipse pluginJBoss Tools Eclipse plugin。特别是 JBoss Tools 插件提供了很多其他的功能,例如 EL 表达式自动完成和 Ctrl+Click 导航。

    【讨论】:

      猜你喜欢
      • 2017-03-01
      • 2011-04-27
      • 2011-09-13
      • 1970-01-01
      • 2015-02-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-01-16
      相关资源
      最近更新 更多