|
|
@@ -22,6 +22,8 @@ import com.style24.persistence.domain.Payment;
|
|
|
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
|
|
|
+import java.lang.reflect.Field;
|
|
|
+import java.nio.charset.Charset;
|
|
|
import java.util.HashMap;
|
|
|
|
|
|
@Service
|
|
|
@@ -400,14 +402,14 @@ public class TscKcpService {
|
|
|
siteKey = "4aVa--.Xz8Fc78nwYPsrmmY__";
|
|
|
|
|
|
String tranCd = "00100000";
|
|
|
-
|
|
|
+ // 파일 인코딩 EUC-KR 변경
|
|
|
+ setFileEncoding("EUC-KR");
|
|
|
J_PP_CLI_N c_PayPlus = new J_PP_CLI_N();
|
|
|
c_PayPlus.mf_init( "", pgUrl, pgPort, 0, env.getProperty("pg.kcp.log.dir") );
|
|
|
c_PayPlus.mf_init_set();
|
|
|
|
|
|
HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.currentRequestAttributes()).getRequest();
|
|
|
String custIp = request.getRemoteAddr();
|
|
|
- //String custIp = custAccount.getIpAddress();
|
|
|
String ordNo = String.valueOf(custAccount.getOrdNo());
|
|
|
String bankCode = custAccount.getBankCd();
|
|
|
String accountNo = custAccount.getAccountNo();
|
|
|
@@ -447,6 +449,8 @@ public class TscKcpService {
|
|
|
result.set("resCd", c_PayPlus.m_res_cd); // 결과 메시지
|
|
|
result.set("resMsg", c_PayPlus.m_res_msg); // 결과 메시지
|
|
|
result.set("res_en_msg", c_PayPlus.getRecvMsgOfKey("res_en_msg")); // 결과 메시지(영문)
|
|
|
+ // 파일 인코딩 UTF-8 변경
|
|
|
+ setFileEncoding("UTF-8");
|
|
|
|
|
|
return result;
|
|
|
}
|
|
|
@@ -526,4 +530,33 @@ public class TscKcpService {
|
|
|
|
|
|
return result;
|
|
|
}
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 파일 인코딩 설정
|
|
|
+ * JDK 1.9에서는 작동 안하는것 같음
|
|
|
+ * @param encoding - EUC-KR, UTF-8
|
|
|
+ * @author jsshin
|
|
|
+ * @since 2021. 06. 21
|
|
|
+ */
|
|
|
+ private void setFileEncoding(String encoding) {
|
|
|
+ log.info("file.encoding Before: {}", System.getProperty("file.encoding"));
|
|
|
+ System.setProperty("file.encoding", encoding);
|
|
|
+ Field charset;
|
|
|
+ try {
|
|
|
+ charset = Charset.class.getDeclaredField("defaultCharset");
|
|
|
+ charset.setAccessible(true);
|
|
|
+ charset.set(null, null);
|
|
|
+ } catch (NoSuchFieldException e1) {
|
|
|
+ e1.printStackTrace();
|
|
|
+ } catch (SecurityException e1) {
|
|
|
+ e1.printStackTrace();
|
|
|
+ } catch (IllegalArgumentException e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ } catch (IllegalAccessException e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ }
|
|
|
+ log.info("file.encoding After: {}", System.getProperty("file.encoding"));
|
|
|
+ }
|
|
|
+
|
|
|
}
|
|
|
+
|