fnAreaSubCodeList에서 시.도 코드가 콤마로 조합된 경우(전남광주), 구.군 목록 최상단에 value="" '전남광주' 옵션을 추가해 구.군 필터 없이 광주+전남 문화원을 통합 조회하도록 함. - 운영(210.181.197.152 webapps/kccf) 개별 JSP 반영 완료 (백업: listLclttFind.jsp.bak_20260709_124900, 동일 폴더) Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
7.5 KiB
7.5 KiB
KCCF 프로젝트
프로젝트 개요
문화예술 사업 관리 시스템 (eGovFramework 4.0.0 + Spring MVC 5.3.6 + MyBatis + JSP/Tiles)
- Git: https://git.zioinfo.co.kr/ythong/kcc.git
- 빌드: Maven (
mvn install) - Java: 1.8 / 패키지:
kccf.*+egovframework.com.*
하네스: KCCF 개발 자동화
목표: eGovFramework 패턴 기반 CRUD 개발, 버그 수정, 보안 검토를 에이전트 팀으로 자동화
트리거: KCCF 관련 개발 작업(신규 기능, 화면 추가, 버그 수정, 쿼리 작업, 보안 점검) 요청 시 kccf-orchestrate 스킬을 사용하라. 단순 질문은 직접 응답 가능.
핵심 도메인
| 패키지 | 한글명 | 역할 |
|---|---|---|
kccf.bsns |
사업 | 문화예술 사업 관리 |
kccf.act |
활동 | 사업 연계 행사/활동 |
kccf.lcltt |
지방문화원 | 지역 문화기관 |
kccf.bbs |
게시판 | 공지/갤러리/FAQ/강의 |
kccf.auth |
권한 | 메뉴별 읽기/쓰기 |
kccf.code |
코드 | 공통코드/상세코드 |
kccf.user |
사용자 | 회원 관리 |
변경 이력
| 날짜 | 변경 내용 | 대상 | 사유 |
|---|---|---|---|
| 2026-06-15 | 하네스 초기 구성 | 전체 | KCCF 개발 자동화 |
| 2026-07-08 | 지방문화원 시.도 검색에 '전남광주' 통합 버튼 추가 (광주/전남 버튼 제거, 서울-부산 사이 배치, 클릭 시 두 지역 통합 검색) | kccf.lcltt - listLcltt.jsp(관리자), listLclttFind.jsp(공개 찾기), LclttDAO.xml(selectLclttList, selectLclttFindList - AREA_CODE 다중값 매칭을 INSTR 방식으로 변경) |
사용자 요청(광주/전남 조직 통합 반영). 매퍼 XML 변경은 Tomcat 재시작 후 적용됨 |
| 2026-07-08 | 공개 찾기 화면에서 '전남광주' 선택 시 구.군 드롭다운이 비는 문제 수정 | kccf.lcltt - LclttDAO.xml(selectAreaSubCodeListAjax - ADIT_ATRB_INFO_VALUE1 매칭을 INSTR 방식으로 변경) |
병합 코드("GJ,JN")가 단일값 매칭에 걸리지 않던 문제. Tomcat 재시작 필요 |
| 2026-07-08 | 관리자 지방문화원 상세(lclttRegist.jsp) 저장 시 "시스템 에러"(egovError.jsp) 발생 수정 | kccf.lcltt - LclttServiceImpl.java(insertLcltt/updateLcltt - 주소1 텍스트로 구.군을 추정하는 로직에서 배열 인덱스/null 체크 없이 접근하던 부분을 setAreaSubCodeByAdres()로 분리, 방어 코드 추가) |
폼에 구.군(AREA_SUB_CODE) 선택 UI가 없어 서비스단이 주소 문자열 파싱으로 대신 추정하는데, 매칭 실패/이상 데이터 시 ArrayIndexOutOfBoundsException 또는 NullPointerException이 발생해 저장이 실패하던 문제. 매칭 실패 시 예외 대신 조용히 건너뛰도록 수정. WAS 재시작(재빌드) 필요 |
| 2026-07-08 | 관리자 지방문화원 등록/수정 화면에 구.군(AREA_SUB_CODE) 선택 드롭다운 추가 (근본 개선) | kccf.lcltt - lclttRegist.jsp(지역 select 옆에 구.군 select 추가, /lcltt/selectAreaSubCodeListAjax.do 연동, 필수값 검증 추가, 주소검색 팝업 콜백에서 sggNm 일치 시 자동 선택), LclttDAO.xml(selectLclttDetail - A.AREA_SUB_CODE 컬럼 추가로 수정화면 진입 시 기존 값 표시), LclttServiceImpl.java(insertLcltt/updateLcltt - 폼에서 areaSubCode가 명시적으로 전달되면 이를 우선 사용하고, 비어있을 때만 주소 텍스트 추정 로직을 폴백으로 사용) |
주소 텍스트 파싱으로 구.군을 추정하는 기존 방식이 근본적으로 취약(오탐/미스매치로 AREA_SUB_CODE가 계속 null 저장됨)하여, listLclttFind.jsp와 동일한 지역-구.군 연동 드롭다운 패턴으로 명시적 선택이 가능하도록 개선. WAS 재시작(재빌드) 필요 |
| 2026-07-08 | 지방문화원 구.군 선택 기능 - Tomcat 배포 디렉토리에 개별 파일 반영 (WAR 재배포 없이 빌드/배포) | C:\apache-tomcat-9.0.79-windows-x64\apache-tomcat-9.0.79\webapps\ROOT - WEB-INF/classes/kccf/lcltt/service/impl/LclttServiceImpl.class(WEB-INF/lib 클래스패스로 javac -source/-target 8 직접 컴파일해 교체, .java 소스도 갱신), WEB-INF/jsp/mng/lcltt/lclttRegist.jsp(교체), WEB-INF/classes/egovframework/mapper/kccf/lcltt/LclttDAO.xml(selectLclttDetail에 A.AREA_SUB_CODE 추가) |
사용자 요청: war로 통째로 푸는 것 금지, 변경된 파일만 개별 반영. Maven/네트워크 접근 없이 WEB-INF/lib 기존 jar를 클래스패스로 사용해 컴파일. Tomcat 재시작 필요 |
| 2026-07-09 | 공개 찾기 화면 구.군 드롭다운에 '전남광주'(통합 전체) 항목 추가 | kccf.lcltt - listLclttFind.jsp(fnAreaSubCodeList - 시.도 코드가 콤마로 조합된 경우, 구.군 목록 최상단에 value="" '전남광주' 옵션을 추가해 선택 시 구.군 필터 없이 광주+전남 통합 조회) |
사용자 요청: 시.도에서 '전남광주' 선택 시 구.군에도 광주/전남을 한번에 전체 조회하는 항목이 필요. 기존엔 '광주광역시'만 기본 선택되어 전남 문화원이 누락됐음. JSP만 변경되어 재컴파일 불요(Tomcat이 JSP 변경 자동 반영, 캐싱 설정에 따라 재배포 필요할 수 있음) |
| 2026-07-09 | 위 '전남광주' 구.군 항목 추가 - Tomcat 배포 디렉토리 JSP 개별 반영 | C:\apache-tomcat-9.0.79-windows-x64\apache-tomcat-9.0.79\webapps\ROOT\WEB-INF\jsp\kccf\lcltt\listLclttFind.jsp - fnAreaSubCodeList에 동일 로직 적용 |
사용자 요청: WAR 재배포 없이 변경 JSP만 반영. 단, 배포본의 $(document).ready 초기화 로직(pageNo 없이 진입 시 기본 '서울' 지역 선택하는 uniq/SU 처리)이 소스 리포지토리(src/main/webapp)에는 없어 배포본과 소스가 이미 어긋나 있었음 — 이번 반영은 배포본의 기존 코드는 그대로 두고 fnAreaSubCodeList 부분만 동일하게 수정함. 소스 동기화 필요 여부는 별도 확인 요망 |
| 2026-07-09 | 위 '전남광주' 구.군 항목 반영 확인을 위한 Tomcat 강제 재기동 및 동작 검증 | C:\apache-tomcat-9.0.79-windows-x64\apache-tomcat-9.0.79 - shutdown.bat/startup.bat 정상 실행에도 JSP 컴파일 캐시(work 디렉토리)가 갱신되지 않고 두 번째 기동이 응답 없이 멈추는 문제 발생 → PowerShell(Stop-Process, commandline에 'catalina' 포함된 java.exe 대상)로 강제 종료 후 재기동하여 정상화. http://localhost:8080/lcltt/lclttFindPage.do?searchAreaCode=GJ,JN(구.군 값 비움)로 직접 요청해 광주+전남 통합 29건이 정상 조회됨을 확인(전남 소속인 목포문화원·여수문화원 포함) |
사용자가 재시작/새로고침 후에도 화면에 '전남광주' 항목이 안 보인다고 보고. 검증용으로 만든 임시 파일(force_kill_tomcat.bat, open_test_page.url, open_test_page2.url)은 bin 폴더에 정리 못 하고 남아있음 - 실행에는 무해하나 추후 수동 삭제 필요 |
| 2026-07-09 | 소스 저장소(C:\Users\URP2026\Desktop\source_new\kccf) git 커밋 시도 - 보류 |
.git/index.lock |
listLclttFind.jsp, CLAUDE.md 두 파일만 stage해서 커밋하려 했으나 .git/index.lock이 계속 존재해 git add가 반복 실패(재시도 5회 포함). 사용자가 lock 파일 강제 삭제는 거부함 - VS Code 등 다른 Git 클라이언트가 저장소를 물고 있는지 확인 필요. 참고로 저장소 전체는 CRLF/LF 줄바꿈 차이로 무관한 파일 2,361개가 수정된 것처럼 표시되는 상태(git diff -w로 보면 우리가 만진 2개 파일만 실제 변경분이 있음) |