Compare commits
6 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 428ab1103a | |||
| 4813a2ef0e | |||
| 752156b86f | |||
| 5732ddf962 | |||
| 5ffc48c039 | |||
| cbb6f33ce5 |
Binary file not shown.
+6
-7
@@ -527,8 +527,8 @@ public class HttpClient5AdapterServiceRest extends HttpClient5AdapterServiceSupp
|
|||||||
// 이경우 정상으로 처리함
|
// 이경우 정상으로 처리함
|
||||||
} else if (status >= 200 && status <= 207) {
|
} else if (status >= 200 && status <= 207) {
|
||||||
if (useAdapterToken && StringUtils.equals(tokenErrorHttpStatusCode, "200")) {
|
if (useAdapterToken && StringUtils.equals(tokenErrorHttpStatusCode, "200")) {
|
||||||
needReissue = checkTokenRetry(responseMessage, tokenErrorCodeKey, tokenErrorCodeValues,
|
needReissue = checkTokenRetry(status, responseMessage, tokenErrorHttpStatusCode, tokenErrorCodeKey,
|
||||||
vo.getEncode());
|
tokenErrorCodeValues, vo.getEncode());
|
||||||
}
|
}
|
||||||
} else if (status == 302) {
|
} else if (status == 302) {
|
||||||
if (!StringUtils.contains(relayResponseHeaderKeys, "Location")) {
|
if (!StringUtils.contains(relayResponseHeaderKeys, "Location")) {
|
||||||
@@ -542,15 +542,14 @@ public class HttpClient5AdapterServiceRest extends HttpClient5AdapterServiceSupp
|
|||||||
|
|
||||||
if (status >= 400 && status < 500) {
|
if (status >= 400 && status < 500) {
|
||||||
if (useAdapterToken) {
|
if (useAdapterToken) {
|
||||||
needReissue = checkTokenRetry(responseMessage, tokenErrorCodeKey, tokenErrorCodeValues,
|
needReissue = checkTokenRetry(status, responseMessage, tokenErrorHttpStatusCode,
|
||||||
vo.getEncode());
|
tokenErrorCodeKey, tokenErrorCodeValues, vo.getEncode());
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!needReissue) {
|
if (!needReissue) {
|
||||||
throw new Exception(errMsg);
|
throw new Exception(errMsg);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
throw new Exception(errMsg);
|
throw new Exception(errMsg);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -882,8 +881,8 @@ public class HttpClient5AdapterServiceRest extends HttpClient5AdapterServiceSupp
|
|||||||
String.format("%s %s", AccessTokenVO.BEARER_TYPE, accessToken.getAccessToken()));
|
String.format("%s %s", AccessTokenVO.BEARER_TYPE, accessToken.getAccessToken()));
|
||||||
}
|
}
|
||||||
|
|
||||||
private boolean checkTokenRetry(byte[] responseMessage, String tokenErrorCodeKey, String tokenErrorCodeValues,
|
protected boolean checkTokenRetry(int status, byte[] responseMessage, String tokenErrorHttpStatusCode,
|
||||||
String encode) {
|
String tokenErrorCodeKey, String tokenErrorCodeValues, String encode) {
|
||||||
if (responseMessage == null) {
|
if (responseMessage == null) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -18,6 +18,7 @@ import com.eactive.eai.adapter.http.dynamic.filter.HttpAdapterFilterFactory;
|
|||||||
import com.eactive.eai.adapter.http.dynamic.filter.HttpAdapterFilterType;
|
import com.eactive.eai.adapter.http.dynamic.filter.HttpAdapterFilterType;
|
||||||
import com.eactive.eai.adapter.http.dynamic.filter.JwtAuthException;
|
import com.eactive.eai.adapter.http.dynamic.filter.JwtAuthException;
|
||||||
import com.eactive.eai.common.TransactionContextKeys;
|
import com.eactive.eai.common.TransactionContextKeys;
|
||||||
|
import com.eactive.eai.common.server.EAIServerManager;
|
||||||
import com.eactive.eai.common.util.Logger;
|
import com.eactive.eai.common.util.Logger;
|
||||||
import com.eactive.eai.common.util.TxSiftContext;
|
import com.eactive.eai.common.util.TxSiftContext;
|
||||||
import com.eactive.eai.common.util.UUIDGenerator;
|
import com.eactive.eai.common.util.UUIDGenerator;
|
||||||
@@ -31,13 +32,20 @@ public abstract class HttpAdapterServiceSupport implements HttpAdapterService, H
|
|||||||
public static final String PROPERTIES_NAME_CLIENT_ID = "clientId";
|
public static final String PROPERTIES_NAME_CLIENT_ID = "clientId";
|
||||||
static Logger logger = Logger.getLogger(Logger.LOGGER_ADAPTER);
|
static Logger logger = Logger.getLogger(Logger.LOGGER_ADAPTER);
|
||||||
private ObjectMapper mapper = new ObjectMapper();
|
private ObjectMapper mapper = new ObjectMapper();
|
||||||
|
EAIServerManager eaiServerManager;
|
||||||
|
String instid = null;
|
||||||
|
|
||||||
public Object service(String adptGrpName, String adptName, Object message, Properties prop,
|
public Object service(String adptGrpName, String adptName, Object message, Properties prop,
|
||||||
HttpServletRequest request, HttpServletResponse response) throws Exception {
|
HttpServletRequest request, HttpServletResponse response) throws Exception {
|
||||||
String uuid = prop.getProperty(TransactionContextKeys.TRANSACTION_UUID);
|
String uuid = prop.getProperty(TransactionContextKeys.TRANSACTION_UUID);
|
||||||
boolean bMDCput = false;
|
boolean bMDCput = false;
|
||||||
|
|
||||||
if(uuid == null) {
|
if(uuid == null) {
|
||||||
uuid = UUIDGenerator.getUUID().toString().replaceAll("-", "");
|
if(instid == null) {
|
||||||
|
eaiServerManager = EAIServerManager.getInstance();
|
||||||
|
instid = eaiServerManager.getGroupInstId();
|
||||||
|
}
|
||||||
|
uuid = instid + UUIDGenerator.getUUID().toString().replaceAll("-", "");
|
||||||
prop.setProperty(TransactionContextKeys.TRANSACTION_UUID, uuid);
|
prop.setProperty(TransactionContextKeys.TRANSACTION_UUID, uuid);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -2,10 +2,8 @@ package com.eactive.eai.common.util;
|
|||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.HashSet;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.Set;
|
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
@@ -63,13 +61,17 @@ public class HttpAdapterExtraLogUtil {
|
|||||||
httpAdapterExtraLogVo.setHttpMethod(httpMethod);
|
httpAdapterExtraLogVo.setHttpMethod(httpMethod);
|
||||||
|
|
||||||
for (HttpAdapterExtraHeaderVo httpAdapterExtraHeaderVo : headerVoList) {
|
for (HttpAdapterExtraHeaderVo httpAdapterExtraHeaderVo : headerVoList) {
|
||||||
// String name = httpAdapterExtraHeaderVo.getName();
|
String name = httpAdapterExtraHeaderVo.getName();
|
||||||
// if(StringUtils.isNotBlank(name) && "authorization".equals(name.toLowerCase())) {
|
// if(StringUtils.isNotBlank(name) && "authorization".equals(name.toLowerCase())) {
|
||||||
// httpAdapterExtraHeaderVo.setValue("{hidden}");
|
// httpAdapterExtraHeaderVo.setValue("{hidden}");
|
||||||
// }
|
// }
|
||||||
|
|
||||||
|
if(StringUtils.isNotBlank(name) && BODY_FIELD_NAME.equals(name))
|
||||||
|
continue;
|
||||||
|
|
||||||
String value = httpAdapterExtraHeaderVo.getValue();
|
String value = httpAdapterExtraHeaderVo.getValue();
|
||||||
if(StringUtils.isNotBlank(value) && value.length() > MAX_HEADER_VALUE_SIZE) {
|
if(StringUtils.isNotBlank(value) && value.length() > MAX_HEADER_VALUE_SIZE) {
|
||||||
value = value.substring(0, 400) + "...";
|
value = value.substring(0, MAX_HEADER_VALUE_SIZE) + "...";
|
||||||
httpAdapterExtraHeaderVo.setValue(value);
|
httpAdapterExtraHeaderVo.setValue(value);
|
||||||
}else if(value == null){
|
}else if(value == null){
|
||||||
httpAdapterExtraHeaderVo.setValue(" ");
|
httpAdapterExtraHeaderVo.setValue(" ");
|
||||||
@@ -116,7 +118,7 @@ public class HttpAdapterExtraLogUtil {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public static List<HttpAdapterExtraHeaderVo> convertHeaderToListOfHttpAdapterExtraHeaderVo(Header[] headers) {
|
public static List<HttpAdapterExtraHeaderVo> convertHeaderToListOfHttpAdapterExtraHeaderVo(Header[] headers) {
|
||||||
Set<String> seenNames = new HashSet<>();
|
// Set<String> seenNames = new HashSet<>();
|
||||||
return Arrays.stream(headers)
|
return Arrays.stream(headers)
|
||||||
// .filter(header -> seenNames.add(header.getName())) // 중복된 이름을 스킵
|
// .filter(header -> seenNames.add(header.getName())) // 중복된 이름을 스킵
|
||||||
.map(header -> new HttpAdapterExtraHeaderVo(header.getName(), header.getValue()))
|
.map(header -> new HttpAdapterExtraHeaderVo(header.getName(), header.getValue()))
|
||||||
|
|||||||
@@ -123,7 +123,7 @@ public class RequestProcessor extends RequestProcessorSupport {
|
|||||||
|
|
||||||
// UUID 생성 : UUID에서 - 없는 32자리
|
// UUID 생성 : UUID에서 - 없는 32자리
|
||||||
String uuid = prop.getProperty(TransactionContextKeys.TRANSACTION_UUID);
|
String uuid = prop.getProperty(TransactionContextKeys.TRANSACTION_UUID);
|
||||||
uuid = uuid == null ? UUIDGenerator.getUUID().toString().replaceAll("-", "") : uuid;
|
uuid = uuid == null ? instid+UUIDGenerator.getUUID().toString().replaceAll("-", "") : uuid;
|
||||||
// UUID 생성 : UUID = server구분4자리 + UUID
|
// UUID 생성 : UUID = server구분4자리 + UUID
|
||||||
/*
|
/*
|
||||||
String uuid = "";
|
String uuid = "";
|
||||||
|
|||||||
Reference in New Issue
Block a user