mirror of
https://gitee.com/dromara/sms4j.git
synced 2025-12-06 17:08:40 +08:00
1.修复群发短信始终抛出异常的问题
This commit is contained in:
parent
c2adc018e0
commit
067c08ab46
2
pom.xml
2
pom.xml
@ -52,7 +52,7 @@
|
||||
</scm>
|
||||
|
||||
<properties>
|
||||
<revision>3.2.0</revision>
|
||||
<revision>3.2.1-SNAPSHOT</revision>
|
||||
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
|
||||
|
||||
@ -93,7 +93,6 @@ public class CoreMethodParamValidateProcessor implements CoreMethodProcessor {
|
||||
}
|
||||
}
|
||||
}
|
||||
throw new SmsBlendException("cant send message to null!");
|
||||
}
|
||||
|
||||
public void validateMessages(String templateId, LinkedHashMap<String, String> messages) {
|
||||
|
||||
@ -15,6 +15,7 @@ import org.dromara.sms4j.api.SmsBlend;
|
||||
import org.dromara.sms4j.api.dao.SmsDao;
|
||||
import org.dromara.sms4j.api.dao.SmsDaoDefaultImpl;
|
||||
import org.dromara.sms4j.api.universal.SupplierConfig;
|
||||
import org.dromara.sms4j.api.verify.PhoneVerify;
|
||||
import org.dromara.sms4j.cloopen.config.CloopenFactory;
|
||||
import org.dromara.sms4j.comm.constant.Constant;
|
||||
import org.dromara.sms4j.comm.exception.SmsBlendException;
|
||||
@ -51,6 +52,7 @@ import java.lang.reflect.Method;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.ServiceLoader;
|
||||
|
||||
/**
|
||||
* 初始化类
|
||||
@ -132,7 +134,15 @@ public class SEInitializer {
|
||||
SmsProxyFactory.addProcessor(new BlackListProcessor());
|
||||
SmsProxyFactory.addProcessor(new BlackListRecordingProcessor());
|
||||
SmsProxyFactory.addProcessor(new SingleBlendRestrictedProcessor());
|
||||
SmsProxyFactory.addProcessor(new CoreMethodParamValidateProcessor());
|
||||
//如果手机号校验器存在实现,则注册手机号校验器
|
||||
ServiceLoader<PhoneVerify> loader = ServiceLoader.load(PhoneVerify.class);
|
||||
if (loader.iterator().hasNext()) {
|
||||
loader.forEach(f -> {
|
||||
SmsProxyFactory.addProcessor(new CoreMethodParamValidateProcessor(f));
|
||||
});
|
||||
} else {
|
||||
SmsProxyFactory.addProcessor(new CoreMethodParamValidateProcessor(null));
|
||||
}
|
||||
}catch (Exception e){
|
||||
log.error("配置对象转换配置信息失败,但不影响基础功能的使用。【注意】:未加载SMS4J扩展功能模块,拦截器,参数校验可能失效!");
|
||||
}
|
||||
@ -198,7 +208,15 @@ public class SEInitializer {
|
||||
SmsProxyFactory.addProcessor(new BlackListProcessor());
|
||||
SmsProxyFactory.addProcessor(new BlackListRecordingProcessor());
|
||||
SmsProxyFactory.addProcessor(new SingleBlendRestrictedProcessor());
|
||||
SmsProxyFactory.addProcessor(new CoreMethodParamValidateProcessor());
|
||||
//如果手机号校验器存在实现,则注册手机号校验器
|
||||
ServiceLoader<PhoneVerify> loader = ServiceLoader.load(PhoneVerify.class);
|
||||
if (loader.iterator().hasNext()) {
|
||||
loader.forEach(f -> {
|
||||
SmsProxyFactory.addProcessor(new CoreMethodParamValidateProcessor(f));
|
||||
});
|
||||
} else {
|
||||
SmsProxyFactory.addProcessor(new CoreMethodParamValidateProcessor(null));
|
||||
}
|
||||
for (String configId : blends.keySet()) {
|
||||
Map<String, Object> configMap = blends.get(configId);
|
||||
Object supplierObj = configMap.get(Constant.SUPPLIER_KEY);
|
||||
|
||||
@ -7,6 +7,7 @@ import lombok.extern.slf4j.Slf4j;
|
||||
import org.dromara.sms4j.aliyun.config.AlibabaFactory;
|
||||
import org.dromara.sms4j.api.SmsBlend;
|
||||
import org.dromara.sms4j.api.universal.SupplierConfig;
|
||||
import org.dromara.sms4j.api.verify.PhoneVerify;
|
||||
import org.dromara.sms4j.cloopen.config.CloopenFactory;
|
||||
import org.dromara.sms4j.comm.constant.Constant;
|
||||
import org.dromara.sms4j.comm.utils.SmsUtils;
|
||||
@ -37,6 +38,7 @@ import org.noear.solon.core.AppContext;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.ServiceLoader;
|
||||
|
||||
|
||||
@Slf4j
|
||||
@ -72,7 +74,15 @@ public class SmsBlendsInitializer {
|
||||
SmsProxyFactory.addProcessor(new BlackListProcessor());
|
||||
SmsProxyFactory.addProcessor(new BlackListRecordingProcessor());
|
||||
SmsProxyFactory.addProcessor(new SingleBlendRestrictedProcessor());
|
||||
SmsProxyFactory.addProcessor(new CoreMethodParamValidateProcessor());
|
||||
//如果手机号校验器存在实现,则注册手机号校验器
|
||||
ServiceLoader<PhoneVerify> loader = ServiceLoader.load(PhoneVerify.class);
|
||||
if (loader.iterator().hasNext()) {
|
||||
loader.forEach(f -> {
|
||||
SmsProxyFactory.addProcessor(new CoreMethodParamValidateProcessor(f));
|
||||
});
|
||||
} else {
|
||||
SmsProxyFactory.addProcessor(new CoreMethodParamValidateProcessor(null));
|
||||
}
|
||||
// 解析供应商配置
|
||||
for(String configId : blends.keySet()) {
|
||||
Map<String, Object> configMap = blends.get(configId);
|
||||
|
||||
@ -91,10 +91,10 @@ public class SmsBlendsInitializer {
|
||||
//如果手机号校验器存在实现,则注册手机号校验器
|
||||
ServiceLoader<PhoneVerify> loader = ServiceLoader.load(PhoneVerify.class);
|
||||
if (loader.iterator().hasNext()) {
|
||||
loader.forEach(f->{
|
||||
loader.forEach(f -> {
|
||||
SmsProxyFactory.addProcessor(new CoreMethodParamValidateProcessor(f));
|
||||
});
|
||||
}else {
|
||||
} else {
|
||||
SmsProxyFactory.addProcessor(new CoreMethodParamValidateProcessor(null));
|
||||
}
|
||||
|
||||
@ -138,11 +138,12 @@ public class SmsBlendsInitializer {
|
||||
ProviderFactoryHolder.registerFactory(DingZhongFactory.instance());
|
||||
ProviderFactoryHolder.registerFactory(QiNiuFactory.instance());
|
||||
ProviderFactoryHolder.registerFactory(BudingV2Factory.instance());
|
||||
if(SmsUtils.isClassExists("com.jdcloud.sdk.auth.CredentialsProvider")) {
|
||||
if (SmsUtils.isClassExists("com.jdcloud.sdk.auth.CredentialsProvider")) {
|
||||
if (SmsUtils.isClassExists("com.jdcloud.sdk.auth.CredentialsProvider")) {
|
||||
ProviderFactoryHolder.registerFactory(JdCloudFactory.instance());
|
||||
}
|
||||
log.debug("加载内置运营商完成!");
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user