Jsf h:输出链接指向http://localhost:8080/Org/faces/gone4.com/faces/index.xhtml 而不是gone4.com

Jsf h:输出链接指向http://localhost:8080/Org/faces/gone4.com/faces/index.xhtml 而不是gone4.com,jsf,jsf-2,hyperlink,Jsf,Jsf 2,Hyperlink,我使用的是PrimeFaces3.5。在我的树表中,我使用的如下所示 <p:column styleClass="names"> <h:outputLink value="#{nodeData.name}" rendered="#{nodeData.id ne 0 or not empty nodeData.id}" target="_blank"> #{

我使用的是PrimeFaces3.5。在我的树表中,我使用的
如下所示

<p:column styleClass="names">
    <h:outputLink value="#{nodeData.name}"
                  rendered="#{nodeData.id ne 0 or not empty nodeData.id}"
                  target="_blank">

                  #{nodeData.name}
    </h:outputLink>
<p:column>

#{nodeData.name}
其中,
nodeData.name
是我的URL,但当我单击它时不起作用,但当我右键单击并说“在新选项卡中打开链接”时,它会重定向到此位置:

XML分析错误:未找到元素位置:
http://localhost:8080/Org/faces/gone4.com/faces/index.xhtml
第1行第1列:

但我的网址是gone4.com


代码中是否有错误?

gone4.com
不是有效的绝对URL。它类似于可以解释为相对URL的域名。HTML文档中链接的任何相对URL都是相对于HTML文档的基本URL进行解释的,该基本URL默认为当前请求URL(如浏览器地址栏中所示)

您需要将其设置为有效的绝对URL。基本上,链接应该如下所示:

<a href="http://gone4.com">

因此,这个

<a href="gone4.com">


相应地修复模型,使其包含正确的URL。否则,请在这些域名前面手动添加前缀
http://

错误消息表明某些内容不太可能仅与
相关。您的XHTML文件本身似乎已损坏。它可能包含无效/不正确的XHTML元素(或者根本没有元素-XHTML文件的基本结构可能无效)。如果我不点击链接,它工作正常,但是当我点击链接时,它会重定向到不正确的链接。在上面的例子中,链接是gone4.com查看生成的HTML代码中的URL,看看它是否是您从
value=“#{nodeData.name}”
中期望的内容。在生成的HTML代码中,它显示如果
“#{nodeData.name}”
返回注释中显示的
gone4.com
,这不是您希望
属性提供的内容。单击链接时,请提供您感兴趣的URL的
属性,而不是要重定向到的URL。