From a218291748b0f49bb95f7363e8cac543152bc334 Mon Sep 17 00:00:00 2001 From: curry772 Date: Fri, 19 Jun 2026 11:21:22 +0900 Subject: [PATCH] =?UTF-8?q?rest=20outbound=20adapter=EC=97=90=EC=84=9C=20?= =?UTF-8?q?=ED=86=B5=EC=8B=A0=EC=98=A4=EB=A5=98=EA=B0=80=20=EC=95=84?= =?UTF-8?q?=EB=8B=8C=20=EA=B2=BD=EC=9A=B0=EC=97=90=EB=A7=8C,=20adaptererro?= =?UTF-8?q?rhandler=EB=A5=BC=20=ED=98=B8=EC=B6=9C=ED=95=98=EB=8F=84?= =?UTF-8?q?=EB=A1=9D=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/eactive/eai/outbound/RESTProcess.java | 42 ++++++++++--------- 1 file changed, 22 insertions(+), 20 deletions(-) diff --git a/src/main/java/com/eactive/eai/outbound/RESTProcess.java b/src/main/java/com/eactive/eai/outbound/RESTProcess.java index 1059aaf..838879b 100644 --- a/src/main/java/com/eactive/eai/outbound/RESTProcess.java +++ b/src/main/java/com/eactive/eai/outbound/RESTProcess.java @@ -694,35 +694,37 @@ public class RESTProcess extends HTTPProcess { public void setOutboundErrorMessage() throws Exception { this.logPssSno = TranLogUtil.getResLogSeq(this.svcPssTp, this.svcPssSeq, this.isComp); + boolean setResObject = false; // 에러에 대한 응답메시지 if(this.tempProp.get(HttpAdapterServiceKey.OUTBOUND_PROPERTY_MAP) instanceof Map) { @SuppressWarnings("unchecked") Map map = (Map) this.tempProp.get(HttpAdapterServiceKey.OUTBOUND_PROPERTY_MAP); this.callProp.put(HttpAdapterServiceKey.OUTBOUND_PROPERTY_MAP, map); - } - - boolean setResObject = false; - AdapterGroupVO outboundAdapterGroupVO = AdapterManager.getInstance().getAdapterGroupVO(adapterGroupName); - if (outboundAdapterGroupVO != null) { - AdapterVO outboundAdapterVo = null; - if(adapterName != null) - outboundAdapterVo = outboundAdapterGroupVO.getAdapterVO(adapterName); - else - outboundAdapterVo = outboundAdapterGroupVO.nextAdapterVO(); - if (outboundAdapterVo != null) { - String errorHandlerClass = AdapterPropManager.getInstance().getProperty( - outboundAdapterVo.getPropGroupName(), "ERR_MSG_HANDLER"); - if (StringUtils.isNotBlank(errorHandlerClass)) { - if (logger.isInfo()) - logger.info("ExceptionHandler] errorSyncSend ERR_MSG_HANDLER=" + errorHandlerClass); - AdapterErrorMessageHandler handler = AdapterErrorMessageHandlerFactory.createHandler(errorHandlerClass); - this.resObject = handler.generateOutboundErrorResponseMessage(adapterGroupName, adapterGroupName, - callProp, this.reqObject, this.resEaiMsg); - setResObject = true; + // OUTBOUND_PROPERTY_MAP 이 있는 경우, 즉 타겟서버와 통신은 정상적으로 이루진 경우 처리한다. + AdapterGroupVO outboundAdapterGroupVO = AdapterManager.getInstance().getAdapterGroupVO(adapterGroupName); + if (outboundAdapterGroupVO != null) { + AdapterVO outboundAdapterVo = null; + if(adapterName != null) + outboundAdapterVo = outboundAdapterGroupVO.getAdapterVO(adapterName); + else + outboundAdapterVo = outboundAdapterGroupVO.nextAdapterVO(); + + if (outboundAdapterVo != null) { + String errorHandlerClass = AdapterPropManager.getInstance().getProperty( + outboundAdapterVo.getPropGroupName(), "ERR_MSG_HANDLER"); + if (StringUtils.isNotBlank(errorHandlerClass)) { + if (logger.isInfo()) + logger.info("ExceptionHandler] errorSyncSend ERR_MSG_HANDLER=" + errorHandlerClass); + AdapterErrorMessageHandler handler = AdapterErrorMessageHandlerFactory.createHandler(errorHandlerClass); + this.resObject = handler.generateOutboundErrorResponseMessage(adapterGroupName, adapterGroupName, + callProp, this.reqObject, this.resEaiMsg); + setResObject = true; + } } } } + if (!setResObject) { this.resObject = ""; }