代码之家  ›  专栏  ›  技术社区  ›  wds

在Eclipse中编辑xhtml-jsp文件

  •  2
  • wds  · 技术社区  · 17 年前

    我有一些应该输出xhtml的jsp文件。它们似乎具有正确的doctype等,但Eclipse没有解析xhtml属性。例如,对于根元素:

    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
    

    我收到警告:“未定义的属性名(xmlns)。”在Eclipse中解决这个问题的最佳方法是什么?

    <!DOCTYPE html PUBLIC 
       "-//W3C//DTD XHTML 1.1 Transitional//EN" 
       "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    

    这显然是不存在的。Eclipse现在抱怨taglib标签,即:

    <%@taglib prefix="s" uri="/struts-tags" %>
    

    生成警告:“Tag(jsp:directive.taglib)应该是一个空元素标记。”

    4 回复  |  直到 17 年前
        1
  •  2
  •   Ian Devlin    17 年前

    如果你要输出xml(在我看来是xhtml) 文档 语法,例如你的

    <%@taglib prefix="s" uri="/struts-tags" %>
    

    相反,它应该是某个顶级标记中的命名空间。对于我正在开发的项目,所有的jsp都是这样的

    <?xml version="1.0" encoding="UTF-8" ?>
    <jsp:root version="2.0"
          xmlns:jsp="http://java.sun.com/JSP/Page"
          xmlns:c="http://java.sun.com/jsp/jstl/core"
          xmlns:fmt="http://java.sun.com/jsp/jstl/fmt"
          xmlns:fn="http://java.sun.com/jsp/jstl/functions">
    <jsp:directive.page language="java"
        contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"/>
    <jsp:text><![CDATA[<?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">]]>
    </jsp:text>
    <html xmlns="http://www.w3.org/1999/xhtml">
    ...
    </html>
    </jsp:root>
    
        2
  •  4
  •   agnul    17 年前

    您使用的DOCTYPE是什么?我用过

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

        3
  •  1
  •   Jérôme Verstrynge    14 年前

    如果您使用的是JSF,请检查是否获得了两次视图标记。

    Undefined attribute name "xmlns:ui"

        4
  •  0
  •   Romain Linsolas    17 年前