From 6f5af2ac69175832e127d8cc2eeb4c84e5932425 Mon Sep 17 00:00:00 2001 From: curry772 Date: Tue, 21 Apr 2026 09:08:31 +0900 Subject: [PATCH 1/2] =?UTF-8?q?fix:=20toJson=20=EC=A7=81=EB=A0=AC=ED=99=94?= =?UTF-8?q?=20=EC=8B=9C=20=EB=B9=88=20=ED=95=AD=EB=AA=A9=20=EC=A0=9C?= =?UTF-8?q?=EC=99=B8=20=EC=B2=98=EB=A6=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit itemPart가 비어있을 경우 구분자와 내용을 출력하지 않도록 수정. Co-Authored-By: Claude Sonnet 4.6 --- .../java/com/eactive/eai/message/StandardItem.java | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/eactive/eai/message/StandardItem.java b/src/main/java/com/eactive/eai/message/StandardItem.java index f8a74ab..cf750fd 100644 --- a/src/main/java/com/eactive/eai/message/StandardItem.java +++ b/src/main/java/com/eactive/eai/message/StandardItem.java @@ -783,12 +783,15 @@ public class StandardItem implements Serializable, Cloneable { if(p>0) sb.append(","); sb.append("{"); while(keyIter.hasNext()) { - if(ai>0) sb.append(","); String key = keyIter.next(); StandardItem item = group.get(key); - if(showPretty) sb.append("\n"); - sb.append(item.toJson(showPretty, withBizData)); - ai++; + String itemPart = item.toJson(showPretty, withBizData); + if(StringUtils.isNotEmpty(itemPart)) { + if(ai>0) sb.append(","); + if(showPretty) sb.append("\n"); + sb.append(itemPart); + ai++; + } } if(showPretty) { From ae6ed9b262866e41de95c144d6add95a450c062e Mon Sep 17 00:00:00 2001 From: curry772 Date: Tue, 21 Apr 2026 15:48:20 +0900 Subject: [PATCH 2/2] =?UTF-8?q?fix:=20DJBank=20=ED=91=9C=EC=A4=80=EC=A0=84?= =?UTF-8?q?=EB=AC=B8=20=EB=8C=80=EC=9D=91=20=ED=94=84=EB=A0=88=EC=9E=84?= =?UTF-8?q?=EC=9B=8C=ED=81=AC=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - BaseFCProcess.setGUID(): nextGuidSeq 자동 호출 비활성화 (guid_prgs_no 증가는 Coordinator에서 처리) - DefaultProcess: 오류 응답 시 nextGuidSeq 자동 호출 비활성화 - RequestProcessor: GUID 조합(guid+seq) 로직 비활성화, logger.error에 exception 객체 추가 - StandardMessageManager: config 기본 경로 ./resources/ → ./ 수정 Co-Authored-By: Claude Sonnet 4.6 --- .../eai/flowcontroller/BaseFCProcess.java | 18 +++++++++--------- .../inbound/processor/RequestProcessor.java | 12 ++++++------ .../manager/StandardMessageManager.java | 2 +- .../eactive/eai/outbound/DefaultProcess.java | 2 +- 4 files changed, 17 insertions(+), 17 deletions(-) diff --git a/src/main/java/com/eactive/eai/flowcontroller/BaseFCProcess.java b/src/main/java/com/eactive/eai/flowcontroller/BaseFCProcess.java index 8f31090..6db0102 100644 --- a/src/main/java/com/eactive/eai/flowcontroller/BaseFCProcess.java +++ b/src/main/java/com/eactive/eai/flowcontroller/BaseFCProcess.java @@ -427,15 +427,15 @@ public class BaseFCProcess extends Process { public void setGUID() throws Exception { InterfaceMapper mapper = this.resEaiMsg.getMapper(); StandardMessage standardMessage = this.resEaiMsg.getStandardMessage(); - String guid = mapper.getGuid(standardMessage); - String guidseq = mapper.getGuidSeq(standardMessage); - - if (logger.isDebug()) - logger.debug(guidLogPrefix + " REQ Current GUID [" + guid + "][" + guidseq + "]"); - mapper.nextGuidSeq(standardMessage); - guidseq = mapper.getGuidSeq(standardMessage); - if (logger.isDebug()) - logger.debug(guidLogPrefix + " REQ ADD PATHSEQ GUID [" + guid + "][" + guidseq + "]"); +// String guid = mapper.getGuid(standardMessage); +// String guidseq = mapper.getGuidSeq(standardMessage); +// +// if (logger.isDebug()) +// logger.debug(guidLogPrefix + " REQ Current GUID [" + guid + "][" + guidseq + "]"); +// mapper.nextGuidSeq(standardMessage); +// guidseq = mapper.getGuidSeq(standardMessage); +// if (logger.isDebug()) +// logger.debug(guidLogPrefix + " REQ ADD PATHSEQ GUID [" + guid + "][" + guidseq + "]"); String svcTsmtUsgTp = this.reqEaiMsg.getSvcTsmtUsgTp(); // 기동 호출방식 String psvItfTp = this.reqEaiMsg.getCurrentSvcMsg().getPsvItfTp(); // 수동 호출방식 diff --git a/src/main/java/com/eactive/eai/inbound/processor/RequestProcessor.java b/src/main/java/com/eactive/eai/inbound/processor/RequestProcessor.java index b3f43c8..54dd255 100644 --- a/src/main/java/com/eactive/eai/inbound/processor/RequestProcessor.java +++ b/src/main/java/com/eactive/eai/inbound/processor/RequestProcessor.java @@ -1292,17 +1292,17 @@ public class RequestProcessor extends RequestProcessorSupport { STDMessageKeys.SEND_RECV_CD_SEND.equals(returnType) ) { try { retEaiMsg.setLogPssSno(400); - String retGuid = mapper.getGuid(retEaiMsg.getStandardMessage()); - String retGuidSeq = mapper.getGuidSeq(retEaiMsg.getStandardMessage()); - String newGuid = retGuid + StringUtils.defaultString(StringUtils.leftPad(retGuidSeq, UUIDGenerator.GUID_SEQ_LENGTH, '0')); - mapper.setGuid(retEaiMsg.getStandardMessage(), newGuid); - mapper.setSendTime(retEaiMsg.getStandardMessage(), DatetimeUtil.getCurrentTimeMillis()); + //String retGuid = mapper.getGuid(retEaiMsg.getStandardMessage()); + //String retGuidSeq = mapper.getGuidSeq(retEaiMsg.getStandardMessage()); + //String newGuid = retGuid + StringUtils.defaultString(StringUtils.leftPad(retGuidSeq, UUIDGenerator.GUID_SEQ_LENGTH, '0')); + //mapper.setGuid(retEaiMsg.getStandardMessage(), newGuid); + //mapper.setSendTime(retEaiMsg.getStandardMessage(), DatetimeUtil.getCurrentTimeMillis()); EAILogSender.send(retEaiMsg, null); } catch(Exception e) { vo.setRspErrorCode("RECEAIIRP100"); vo.setRspErrorMsg(ExceptionUtil.make(e, vo.getRspErrorCode(), new String[]{vo.getEaiSvcCd()} )); - if (logger.isError()) logger.error(guidLogPrefix + " : " + vo.getRspErrorMsg()); + if (logger.isError()) logger.error(guidLogPrefix + " : " + vo.getRspErrorMsg(), e); } if (logger.isInfo()) logger.info(guidLogPrefix + " : LOG(" + eaiMsg.getLogPssSno() + ") EAIMessage : "+eaiMsg.getEAISvcCd()); } diff --git a/src/main/java/com/eactive/eai/message/manager/StandardMessageManager.java b/src/main/java/com/eactive/eai/message/manager/StandardMessageManager.java index 34f1c23..cb93af1 100644 --- a/src/main/java/com/eactive/eai/message/manager/StandardMessageManager.java +++ b/src/main/java/com/eactive/eai/message/manager/StandardMessageManager.java @@ -47,7 +47,7 @@ reader.XML=com.eactive.eai.message.parser.XmlReader reader.FLAT=com.eactive.eai.message.parser.FlatReader */ public static String STANDARD_MESSAGE_CONFIG = "standard.message.config"; - private String DEFAULT_CONFIG_PATH = "./resources/standard-message-config.properties"; + private String DEFAULT_CONFIG_PATH = "./standard-message-config.properties"; private String DEFAULT_CONFIG_FILE = "standard-message-config.properties"; private String LAYOUT_FILE_TYPE = "layout.file.type"; diff --git a/src/main/java/com/eactive/eai/outbound/DefaultProcess.java b/src/main/java/com/eactive/eai/outbound/DefaultProcess.java index 71693d3..7a9120d 100644 --- a/src/main/java/com/eactive/eai/outbound/DefaultProcess.java +++ b/src/main/java/com/eactive/eai/outbound/DefaultProcess.java @@ -776,7 +776,7 @@ public abstract class DefaultProcess extends Process { } standardMessage.setBizData(this.resObject, this.inboundCharset); try { - mapper.nextGuidSeq(standardMessage); + //mapper.nextGuidSeq(standardMessage); mapper.setSendRecvDivision(standardMessage, STDMessageKeys.SEND_RECV_CD_RECV); StandardMessageManager standardManager = StandardMessageManager.getInstance(); standardManager.getMessageCoordinator().coordinateSetStandardMessageError(standardMessage, mapper,