From 45dc8c3cf96e7dec4e57b4f16bacf67b49102580 Mon Sep 17 00:00:00 2001 From: mzr Date: Mon, 7 Jul 2025 13:43:47 +0800 Subject: [PATCH] =?UTF-8?q?=E5=9B=9E=E5=86=99=E5=90=88=E5=90=8C=E9=94=80?= =?UTF-8?q?=E5=94=AE=E8=AE=A2=E5=8D=95=E7=9A=84BOM=E9=85=8D=E7=BD=AE?= =?UTF-8?q?=E6=97=B6=E9=97=B4=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/so/m30/APISaleOrderMaitainImpl.java | 1 - .../api/impl/so/m30/IgnoreSslUtil.java | 55 +++++++++++++++++++ 2 files changed, 55 insertions(+), 1 deletion(-) create mode 100644 so/src/private/nccloud/api/impl/so/m30/IgnoreSslUtil.java diff --git a/so/src/private/nccloud/api/impl/so/m30/APISaleOrderMaitainImpl.java b/so/src/private/nccloud/api/impl/so/m30/APISaleOrderMaitainImpl.java index 7747e2c..89c7089 100644 --- a/so/src/private/nccloud/api/impl/so/m30/APISaleOrderMaitainImpl.java +++ b/so/src/private/nccloud/api/impl/so/m30/APISaleOrderMaitainImpl.java @@ -8,7 +8,6 @@ import nc.bs.dao.DAOException; import nc.bs.framework.common.NCLocator; import nc.bs.logging.Logger; import nc.bs.trade.business.HYSuperDMO; -import nc.bs.uapbd.bip.workplugin.IgnoreSslUtil; import nc.impl.pubapp.pattern.data.bill.BillQuery; import nc.itf.scmpub.reference.uap.bd.customer.CustomerPubService; import nc.itf.scmpub.reference.uap.pf.PfServiceScmUtil; diff --git a/so/src/private/nccloud/api/impl/so/m30/IgnoreSslUtil.java b/so/src/private/nccloud/api/impl/so/m30/IgnoreSslUtil.java new file mode 100644 index 0000000..335616b --- /dev/null +++ b/so/src/private/nccloud/api/impl/so/m30/IgnoreSslUtil.java @@ -0,0 +1,55 @@ +package nccloud.api.impl.so.m30; + +import javax.net.ssl.*; +import java.security.cert.CertificateException; +import java.security.cert.X509Certificate; + +public class IgnoreSslUtil { + private static void trustAllHttpsCertificates() throws Exception { + TrustManager[] trustAllCerts = new TrustManager[1]; + TrustManager tm = new miTM(); + trustAllCerts[0] = tm; + SSLContext sc = SSLContext.getInstance("SSL"); + sc.init(null, trustAllCerts, null); + HttpsURLConnection.setDefaultSSLSocketFactory(sc.getSocketFactory()); + } + + static class miTM implements TrustManager,X509TrustManager { + public X509Certificate[] getAcceptedIssuers() { + return null; + } + + public boolean isServerTrusted(X509Certificate[] certs) { + return true; + } + + public boolean isClientTrusted(X509Certificate[] certs) { + return true; + } + + public void checkServerTrusted(X509Certificate[] certs, String authType) + throws CertificateException { + return; + } + + public void checkClientTrusted(X509Certificate[] certs, String authType) + throws CertificateException { + return; + } + } + + /** + * 忽略HTTPS请求的SSL证书,必须在openConnection之前调用 + * @throws Exception + */ + public static void ignoreSsl() throws Exception{ + HostnameVerifier hv = new HostnameVerifier() { + public boolean verify(String urlHostName, SSLSession session) { + System.out.println("Warning: URL Host: " + urlHostName + " vs. " + session.getPeerHost()); + return true; + } + }; + trustAllHttpsCertificates(); + HttpsURLConnection.setDefaultHostnameVerifier(hv); + } +} \ No newline at end of file