1

当尝试TODO在这样的 Facelets 文件中的一段 JavaScript 代码中添加注释时

<script type="text/javascript">
    <!--

    // TODO -- my comment
    function makeExecute() {                            

    }                       

    -->
</script>

然后我面临一个例外:

javax.faces.view.facelets.FaceletException: Error Parsing /myScreen.xhtml: 
    Error Traced[line: 448] The string "--" is not permitted within comments.
        at com.sun.faces.facelets.compiler.SAXCompiler.doCompile(SAXCompiler.java:390)
        at com.sun.faces.facelets.compiler.SAXCompiler.doCompile(SAXCompiler.java:364)
        at com.sun.faces.facelets.compiler.Compiler.compile(Compiler.java:122)

这是如何引起的,我该如何解决?

4

2 回答 2

5

堆栈跟踪几乎是这样说的:

注释中不允许使用字符串“--”。

根据定义

注释声明以 开头<!,后跟零个或多个注释,然后是>。注释以 开头和结尾--,并且不包含任何出现的“--”。

要消除错误,只需--在注释中键入一个空格(或将其删除)。

// TODO - - my comment
于 2013-10-05T23:23:09.360 回答
1

实际上在文件中;如果遇到 double -,则认为评论已结束!。double-还不如穿插在评论中 <!-- hello 1 - 2 - exit -->; 所以它会认为评论在 2 之后结束。

解决方案。摆脱-评论中的任何内容,使用其他字符。它会让你的生活更轻松。

于 2014-01-22T06:25:36.547 回答