아키텍처와 함께

블로그 이미지
by gregorio
  • Total hit
  • Today hit
  • Yesterday hit

JSP에서 taglib c를 사용하여 img, script. css tag src를 지정하는 경우 resource에 jsessionid가 붙어 페이지를 처음 로딩할 때 jsessionid가 붙어 화면이 제대로 로딩되지 않는 경우가 발생한다.


화면을 다시 로딩하면 정상적으로 script, imgae, css가 적용된다.



■ 사용 예제

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>


<link rel="stylesheet" type="text/css" href="<c:url value='/rui/plugins/ui/form/LFileBox.css'/>"/> 


■ 오류 결과

<link type="text/css" rel="stylesheet" href="/resource/css/import.css;jsessionid=589184C928C5896286836A1EF0DE6880" />

<link rel="alternate stylesheet" title="bh_style1" type="text/css" href=";jsessionid=589184C928C5896286836A1EF0DE6880resource/css/global_style_Rtl.css" id="bhStyle1"></link>
<link rel="stylesheet" title="en_style1" type="text/css" href=";jsessionid=589184C928C5896286836A1EF0DE6880resource/css/global_style.css" id="enStyle1"></link>
<script type="text/javascript" src="/resource/js/dui_prototype.js;jsessionid=589184C928C5896286836A1EF0DE6880"></script>
<script type="text/javascript" src="/resource/js/dui_hhmenu.js;jsessionid=589184C928C5896286836A1EF0DE6880"></script>
<script type="text/javascript" src="/resource/js/foriegnCheck.js;jsessionid=589184C928C5896286836A1EF0DE6880"></script>


브라우저에서 소스보기를 선택하여 소스를 확인하면 모든 script, css에 jessionid가 붙어 있어 404 오류가 발생한다.


이를 해결하기 위해 여러가지 방법이 있지만, 소스를 수정하지 않고 해결하는 방법은 web.xml에 sessoin-config에 tracking-mod를 추가하면 해결된다.


tracking-mods는 web-app_3.0이상에서만 지원하기 때문에 web.xml namespace를 변경해야한다.


■해결방법

<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"

xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"

id="WebApp_ID" version="3.0">


  <session-config>

  <session-timeout>30</session-timeout>

<tracking-mode>COOKIE</tracking-mode>

  </session-config>

 


'Java' 카테고리의 다른 글

JVM GC 설정  (0) 2018.06.07
Java Reflection 사용법  (0) 2018.04.12
Html a tag function call  (0) 2018.02.20
CDI를 이용한 Java 개발  (0) 2018.02.13
Java Class Instance화  (0) 2018.02.12
AND

ARTICLE CATEGORY

분류 전체보기 (56)
Spring Framrwork (33)
Linux (1)
APM (1)
Java (8)
python (0)
ant (1)
chart (1)
OS (1)
tomcat (1)
apache (1)
database (0)

RECENT ARTICLE

RECENT COMMENT

CALENDAR

«   2025/01   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31

ARCHIVE

LINK