0
Q
태그 라이브러리
A
답변
1
답변은 질문자가 JSP에서 JSF 1.x를 사용하는 것으로 알려진 질문을 대상으로했습니다. JSF 2.0 이후로 더 이상 사용되지 않는 Facelets의 기존 predecesor 인 JSP에 대한 구문이 있습니다.
functions.tld
파일을 모두 제거하십시오. 이어서
<?xml version="1.0" encoding="UTF-8"?>
<facelet-taglib
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facelettaglibrary_2_0.xsd"
version="2.0">
<namespace>http://example.com/functions</namespace>
<function>
<function-name>escapeJavaScript</function-name>
<function-class>org.apache.commons.lang.StringEscapeUtils</function-class>
<function-signature>java.lang.String escapeJavaScript(java.lang.String)</function-signature>
</function>
</facelet-taglib>
/WEB-INF/web.xml
에 등록 :
우선은
/WEB-INF/functions.taglib.xml
을 만들고 다음과 같이 기존의 고정 방법에 따라 지정 함수 선언 적절한 JSF 2.X Facelets의 방법은(이 단계는 JAR 파일의
/META-INF
에있을 때 불필요합니다. 난 당신이 따라 발견 대답을 업데이 트했습니다<html ... xmlns:func="http://example.com/functions"> ... <h:outputScript>var foo = '#{func:escapeJavaScript(bean.foo)}';</h:outputScript>
참고 :
마지막으로 선언하고 다음과 같이 사용) /WEB-INF/lib
에 위치. 또한이 함수는 JSF 유틸리티 라이브러리 OmniFaces에 의해 #{of:escapeJS(bean.foo)}
상자에 이미 제공되어 있습니다 (사용중인 경우).