c5bf45cad989ff446c88d8399a8eb854de0c214d
기본 ObjectMapper 는 JSON 숫자 왕복에서 값을 변형한다 (100000000.00 -> 1.0E8, 0.00000012 -> 1.2E-7). payload 를 다루는 지점을 JacksonUtil.newNumberSafeMapper() 로 맞춘다. - KakaopayAdapterErrorMsgHandler: 응답 JSON 파싱/왕복 지점 전환 - HttpClient5AdapterServiceBigTechAddFilter: JsonNode 직렬화 지점 전환 - KakaopayFilter: JacksonUtil.readTree(message, OBJECT_MAPPER) 로 plain mapper 를 넘기고 있어 유틸을 써도 파싱이 깨졌다. 인자 1개 오버로드(number-safe 싱글턴)를 쓰도록 바꾸고 plain 필드 제거 - JsonPathExtractRequestMessage: 미사용으로 보였던 objectMapper 필드는 사실 연결이 빠진 것이었다. JsonPath 의 기본 JacksonJsonNodeJsonProvider() 가 내부적으로 plain ObjectMapper 를 쓰기 때문에 JSON 실수가 DoubleNode 로 파싱되어 resultNode.asText() 가 "1.0E8" 을 반환했다. 프로바이더에 number-safe mapper 를 주입해 해결 - NaverpayAdapterErrorMsgHandler: Kakaopay 판을 복사하며 딸려온 미사용 필드/import 제거. 이 핸들러는 JSON 을 파싱하지 않고 StandardMessage 로만 응답을 만든다 검증: gradlew compileJava BUILD SUCCESSFUL
eLink ONLINE
eLink 온라인 거래처리 시스템으로 실시간으로 메시지 통신하는 전반적인 처리를 수행한다.
eLink 코어 및 통신, 변환 모듈을 참조하며, 각 사이트 별 커스텀 로직은 본 모듈에 작성하여 개발을 수행한다.
참조 eLink 모듈
eLink 모듈을 참조하여 구성되어있다.
| 이름 | 버전 | 설명 |
|---|---|---|
| elink-online-core | 4.5-SNAPSHOT | 코어 모듈로 인터페이스 클래스 정의 |
| elink-online-transformer | 4.5-SNAPSHOT | 변환 모듈로 메시지 및 변환 관련 클래스 정의 |
| elink-online-adapter | 4.5-SNAPSHOT | 어댑터 모듈로 통신에 필요한 어댑터 클래스 정의 |
| elink-online-common | 4.5-SNAPSHOT | 나머지 공통 프로그램이 정의되어있다 |
| elink-online-emsclient | 4.5-SNAPSHOT | ems와 통신하기 위한 모듈 |
TOMCAT 기동 옵션 참조
-Deai.jdbc.Name=NDAPIGW_APP_NXA
-Dinst.Name=apigw11
-Deai.systemtype=API
-Deai.tableowner=apigw
-Deai.systemmode=D
-Dfile.encoding=utf-8
-Djava.net.preferIPv4Stack=true
-Dlogger.async.active=true
항목 설멍
eai.rmiport, eai.rmiserviceport : Spring RMI를 사용하는 port 정보
scalable : 클라우드 환경 여부, true 일 경우 서버 정보를 기동시 자동 등록
use.internal.queue : JMS 큐대신 내부 ActiveMQ 사용
logger.async.active : 비동기 로그 처리 여부, false일 경우 DB저장시 Sync 처리
StandardMessage WebApp 외부 설정파일 지정 방법
지정하지 않은 경우 resources의 파일을 참고함.
-Dstandard.message.config=D:/workspace/MessageGenerator/resources/standard-message-config.properties
Description
Languages
Java
89.5%
CSS
6.6%
JavaScript
3.8%