--- name: kccf-jsp-view description: "KCCF 시스템의 JSP 화면을 작성하거나 수정한다. 목록/등록/상세/팝업 화면, JSP 레이아웃, Ajax 연동 작업 시 사용한다. '화면 수정', 'JSP 추가', '목록화면', '등록화면', '팝업' 관련 요청에 적용." --- # KCCF JSP 화면 작성 스킬 ## 화면 위치 규칙 ``` WEB-INF/jsp/ mng/{module}/ ← 관리자(인증 필요) 화면 list{Module}.jsp ← 목록 {module}Regist.jsp ← 등록/수정 select{Module}Popup.jsp ← 선택 팝업 kccf/{module}/ ← 공개 화면 list{Module}Find.jsp ← 조회/검색 popup/ ← 공개 팝업 (주소, 지도 등) ``` ## 목록 화면 템플릿 ```jsp <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
번호명칭등록일
조회 중...
``` ## 등록/수정 화면 템플릿 ```jsp <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
명칭 *
지역
``` ## 팝업 화면 패턴 ```jsp ``` ## 주소 검색 팝업 호출 ```javascript function fnJusoPopup() { var url = contextPath + "/juso/jusoPopup.do"; window.open(url, "jusoPopup", "width=570,height=420,scrollbars=yes"); } // 주소팝업 콜백: fn_jusoPopup(roadAddr, zipCode, jibunAddr) ``` ## 주의사항 - XSS 방지: 출력은 반드시 `` 또는 `fn:escapeXml()` 사용 - `${}` 직접 HTML 출력 금지 (스크립트 컨텍스트 제외) - 신규 화면 작성 전 기존 유사 화면을 먼저 Read하여 스타일 클래스 통일 - 참조 화면: `WEB-INF/jsp/mng/bsns/` 디렉토리 ## 참조 - 주소팝업: `WEB-INF/jsp/kccf/lcltt/popup/jusoPopup.jsp` - 지도팝업: `WEB-INF/jsp/kccf/lcltt/popup/mapPopup.jsp` - Act 선택팝업: `WEB-INF/jsp/mng/act/selectActListPopup.jsp` - 사업 선택팝업: `WEB-INF/jsp/mng/act/selectBsnsPopup.jsp`