jsp 출력에서 공백 제거
jsp 페이지 출력에서 여분의 공백을 제거하려면 어떻게해야합니까? web.xml에서 전환 할 수있는 스위치가 있습니까? Tomcat 특정 설정이 있습니까?
이를 수행하는 trimWhiteSpaces 지시문이 있습니다.
JSP에서 :
<%@ page trimDirectiveWhitespaces="true" %>
또는 jsp-config 섹션에서 web.xml (서블릿 스펙 2.5부터 작동 함)에 유의하십시오.
<jsp-config>
<jsp-property-group>
<url-pattern>*.jsp</url-pattern>
<trim-directive-whitespaces>true</trim-directive-whitespaces>
</jsp-property-group>
</jsp-config>
안타깝게도 필요한 공간이 있으면 스트립을 제거해야 할 수도 있으므로 일부 지역에서는 중단되지 않는 공간이 필요할 수 있습니다.
서블릿 컨테이너가 JSP 2.1 trimDirectiveWhitespaces
특성을 지원하지 않으면 JspServlet
초기화 매개 변수에 대해서는 해당 문서 를 참조해야합니다 . 예를 들어 Tomcat 에서 Tomcat의 trimSpaces
init-param을 true
in 으로 설정하여 구성 할 수도 있습니다 .JspServlet
/conf/web.xml
<init-param>
<param-name>trimSpaces</param-name>
<param-value>true</param-value>
</init-param>
완전히 다른 대안은 JTidyFilter 입니다. 공백을 제거 할뿐만 아니라 HTML을 올바른 들여 쓰기로 형식화 합니다.
trimDirectiveWhitespaces는 JSP 2.1 이상을 지원하는 서블릿 컨테이너 또는 Tomcat 6의 경우 또는 Tomcat 6 (및 Tomcat 6.0.10과 같은 일부 버전에서는 제대로 구현되지 않음-다른 것에 대해서는 알지 못함)에서만 지원됩니다. trimDirectiveWhitespaces에 대한 자세한 정보는 다음과 같습니다.
http://www.oracle.com/technetwork/articles/javaee/jsp-21-136414.html
그리고 여기
http://raibledesigns.com/rd/entry/trim_spaces_in_your_jsp1
태그를 사용하는 경우 태그를 적용 할 수도 있습니다.
<%@ tag description="My Tag" trimDirectiveWhitespaces="true" %>
그리고 당신의 JSP에 :
<%@ page trimDirectiveWhitespaces="true" %>
직접 요청하는 것이 아니라 jsp 태그 주위에 HTML 주석 태그를 영리하게 배치하고 서블릿 태그 (<% %>) 안에 공백을 넣는 것도 도움이됩니다.
${"<!--"}
<c:if test="${first}">
<c:set var="extraClass" value="${extraClass} firstRadio"/>
</c:if>
<c:set var="first" value="${false}"/>
${"-->"}<%
%><input type="radio" id="input1" name="dayChooser" value="Tuesday"/><%
%><label for="input1" class="${extraClass}">Tuesday</label>
예를 들어 트림 기능을 사용하십시오.
fn:trim(string1)
톰캣 catalina.properties
파일을 추가 / 편집
org.apache.jasper.compiler.Parser.STRICT_QUOTE_ESCAPING=false
참조 : https://confluence.sakaiproject.org/display/BOOT/Install+Tomcat+7
한 단계 더 나아가 빌드 시간에 html 태그 사이의 줄 바꿈 (캐리지 리턴)을 제거 할 수도 있습니다.
예 : 변경 :
<p>Hello</p>
<p>How are you?</p>
으로:
<p>Hello</p><p>How are you?</p>
그렇게하고를 사용하여 다음 maven-replacer-plugin
을 설정하십시오 pom.xml
.
<plugin>
<groupId>com.google.code.maven-replacer-plugin</groupId>
<artifactId>replacer</artifactId>
<version>1.5.3</version>
<executions>
<execution>
<id>stripNewlines</id>
<phase>prepare-package</phase>
<goals>
<goal>replace</goal>
</goals>
<configuration>
<basedir>${project.build.directory}</basedir>
<filesToInclude>projectname/WEB-INF/jsp/**/*.jsp</filesToInclude>
<token>>\s*<</token>
<value>><</value>
<regexFlags>
<regexFlag>MULTILINE</regexFlag>
</regexFlags>
</configuration>
</execution>
</executions>
</plugin>
이는 빌드 디렉토리의 JSP 만 수정하며 소스의 JSP는 건드리지 않습니다.
<filesToInclude>
JSP가 있는 경로 ( ) 를 조정해야 할 수도 있습니다 .
참고 URL : https://stackoverflow.com/questions/208736/strip-whitespace-from-jsp-output
'program story' 카테고리의 다른 글
R 산점도에서 점의 크기를 제어 하시겠습니까? (0) | 2020.08.05 |
---|---|
링크 반응 라우터에서 소품 전달 (0) | 2020.08.05 |
수직 분할 창에서 Vim 도움말 열기 (0) | 2020.08.05 |
값은 null 일 수 없습니다. (0) | 2020.08.05 |
ArrayList 변환 (0) | 2020.08.05 |