Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/429.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Can';t访问jsf组件中的javascript文件_Javascript_Jsf_Jsf 2_Composite Component - Fatal编程技术网

Can';t访问jsf组件中的javascript文件

Can';t访问jsf组件中的javascript文件,javascript,jsf,jsf-2,composite-component,Javascript,Jsf,Jsf 2,Composite Component,我有一个必须访问javascript文件的jsf组件,我在下面的代码中添加了这个带有outputScript的组件,我在生成的html中得到一个错误,无法访问javascript。 javascript文件位于document_root/js目录中 我怎样才能解决这个问题,谢谢你的帮助 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml

我有一个必须访问javascript文件的jsf组件,我在下面的代码中添加了这个带有outputScript的组件,我在生成的html中得到一个错误,无法访问javascript。 javascript文件位于document_root/js目录中

我怎样才能解决这个问题,谢谢你的帮助

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:f="http://java.sun.com/jsf/core"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:composite="http://java.sun.com/jsf/composite"
      xmlns:c="http://java.sun.com/jsp/jstl/core">
<h:head><title>(For validation only)</title>
<link href="./css/styles.css" 
      rel="stylesheet" type="text/css"/> 
</h:head>
<h:body>
<composite:interface/>
<composite:implementation>
<h:outputScript library="js" name="messages.js" />
<h:outputScript library="js" name="DateValidation.js" />

<h:form id="f">
    <h:outputText value="Date" />
    <h:inputText id="dateA" 
        onblur="return validateDateField('f:dateA');">
    </h:inputText>
</h:form>   

</composite:implementation>

</h:body>
</html>

(仅用于验证)

这些文件必须放在
/resources
子文件夹中。因此,您应该在公共网络内容中包含以下内容:

  • /resources/js/DateValidation.js
  • /resources/js/messages.js


与具体问题无关,您的复合组件方法相当笨拙。我建议查看tag wiki:

在生成的html中,我得到这一行:我不知道jsf try
name=“./js/messages.js”
非常感谢您的回答,我现在可以访问javascript文件了,但是我得到了一个javascript错误,因为我的inputText的id是在j_idt6前面的,所以我的inputText的id变成了j_idt6:f:dateA,而不是f:dateA。你有没有想法绕过这个问题。这是一个不同的问题,你本质上应该问一个新问题。然而,之前已经多次询问过,另请参见和