У меня есть компонент jsf, который должен иметь доступ к файлу javascript, я добавил этот код с помощью 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
/resources/js/DateValidation.js
/resources/js/messages.js
Не связано1014 * к конкретной проблеме, ваш подход к составным компонентам довольно неудобен.Я бы посоветовал проверить составной компонент тег вики: https://stackoverflow.com/tags/composite-component/info