JSPX를 사용하고 이상한 문제가 발생했습니다. jsp : text 내부의 텍스트는 공백을 제거하지 않아야한다고 JSP 문서에 따르면, jspx 뷰에서 사용되는 tagx 파일의 시작 부분에 공백이있는 jsp : text 요소가있을 때, 공백이 사라집니다.jsp : text가 태그 안에 공백을 잃음
저는 인터넷 검색을 많이 해왔지만이 문제의 원인을 찾을 수 없습니다. jspx 뷰에 직접 포함 된 동일한 jsp : text 인스턴스가 올바르게 작동하지만 별도의 tagx 파일에 저장하면이 인스턴스가 손실된다는 것을 확인했습니다.
JSP 2.1 라이브러리를 사용하는 Jetty 6.1.19 및 6.1.22가 적용됩니다.
편집 : 일부 샘플 코드는 다음과 같습니다. <jsp:text>
태그 내에서 앞뒤에 공백이 제거됩니다. 볼 수있는 JSP 문서를 보면, 그 안에있는 공백은 유지되어야한다.
WEB-INF는/탭/nameValuePair.tagx :
가<jsp:root version="2.0" xmlns:jsp="http://java.sun.com/JSP/Page">
<jsp:directive.attribute name="name" type="java.lang.String" required="true"/>
<jsp:directive.attribute name="value" type="java.lang.String" required="true"/>
<jsp:text> ${name}=${value} </jsp:text>
</jsp:root>
test.jspx :
출력<jsp:root version="2.0" xmlns:jsp="http://java.sun.com/JSP/Page" xmlns:t="urn:jsptagdir:/WEB-INF/tags">
<jsp:directive.page contentType="text/html; charset=ISO-8859-1" />
<html>
<head>
<title>Test</title>
</head>
<body>
<t:nameValuePair name="name" value="Google" />
<t:nameValuePair name="age" value="11" />
<t:nameValuePair name="description" value="Popular Search Engine" />
<jsp:text> test=value </jsp:text>
</body>
</html>
</jsp:root>
:
<html><head><title>Test</title></head><body>name=Googleage=11description=Popular Search Engine test=value </body></html>
공백을 점이나 다른 것으로 바꾸면 보존됩니까? 공백을 제거하는 태그를 둘러싼 다른 것이 없습니까? 태그 외부의 공백도 제거 되었습니까? 아니면 사라지는 JSP 공백 문자의 공백 만입니까? – Brimstedt
공백을 잃어버린 jsp : text 태그는 tagx 파일의 jsp : root 바로 아래에 있으며, jspx 파일 내에서 공백을 감추고있는 것은 아무것도 없습니다. 비슷한 jsp : jspx 파일 내부의 텍스트 태그는 앞뒤 공백을 유지하지만 tagx 파일 안의 것들은 그렇지 않습니다. –
나는이 문제가 무엇인지 잘 모르겠습니다. "test = value"에는 출력에 공백이 있습니다. t : nameValuePair 항목에는 공백이 없으며 올바른 항목입니다. 출력이 올바른 것처럼 보입니다! 한 가지 덧글은 닫는 두 개의 태그가 있다는 것입니다. – Joshua