fix(stats): /api/stats/visits 500 — Mapper resultType int→long
- StatsMapper interface는 long 반환인데 XML resultType이 int - Integer를 primitive long으로 cast 못 함 → ClassCastException → 500 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
@@ -6,6 +6,10 @@
|
|||||||
|
|
||||||
## 2026-06-16
|
## 2026-06-16
|
||||||
|
|
||||||
|
### 🐛 /api/stats/visits 500 — StatsMapper resultType int → long (v0.1.54)
|
||||||
|
- StatsMapper interface는 `long` 반환인데 XML resultType이 `int` → Integer를 long에 cast 실패
|
||||||
|
- ClassCastException: Integer → Long. resultType만 long으로 교정
|
||||||
|
|
||||||
### 🐛 NaverMap 인증 파라미터 ncpClientId → ncpKeyId (v0.1.53)
|
### 🐛 NaverMap 인증 파라미터 ncpClientId → ncpKeyId (v0.1.53)
|
||||||
- NCLOUD 신 정책: `ncpKeyId` 사용 (옛 `ncpClientId`는 NAVER Developers용)
|
- NCLOUD 신 정책: `ncpKeyId` 사용 (옛 `ncpClientId`는 NAVER Developers용)
|
||||||
- 인증 200/Failed의 진짜 원인 — 도메인 등록은 정확했으나 파라미터 이름 차이로 키 인식 실패
|
- 인증 200/Failed의 진짜 원인 — 도메인 등록은 정확했으나 파라미터 이름 차이로 키 인식 실패
|
||||||
|
|||||||
@@ -10,13 +10,13 @@
|
|||||||
WHEN NOT MATCHED THEN INSERT (visit_date, visit_count) VALUES (src.d, 1)
|
WHEN NOT MATCHED THEN INSERT (visit_date, visit_count) VALUES (src.d, 1)
|
||||||
</update>
|
</update>
|
||||||
|
|
||||||
<select id="getTodayVisits" resultType="int">
|
<select id="getTodayVisits" resultType="long">
|
||||||
SELECT NVL(visit_count, 0)
|
SELECT NVL(visit_count, 0)
|
||||||
FROM site_visits
|
FROM site_visits
|
||||||
WHERE visit_date = TRUNC(SYSDATE)
|
WHERE visit_date = TRUNC(SYSDATE)
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="getTotalVisits" resultType="int">
|
<select id="getTotalVisits" resultType="long">
|
||||||
SELECT NVL(SUM(visit_count), 0)
|
SELECT NVL(SUM(visit_count), 0)
|
||||||
FROM site_visits
|
FROM site_visits
|
||||||
</select>
|
</select>
|
||||||
|
|||||||
Reference in New Issue
Block a user