diff --git a/weixin4j-base/src/main/java/com/foxinmy/weixin4j/http/weixin/error.xml b/weixin4j-base/src/main/java/com/foxinmy/weixin4j/http/weixin/error.xml
index 731f29b8..b4bddbc6 100644
--- a/weixin4j-base/src/main/java/com/foxinmy/weixin4j/http/weixin/error.xml
+++ b/weixin4j-base/src/main/java/com/foxinmy/weixin4j/http/weixin/error.xml
@@ -662,6 +662,10 @@
45022
应用名字长度不合法,合法长度为2-16个字
+
+ 45047
+ 客服接口下行条数超过上限
+
45024
账号数量超过上限
diff --git a/weixin4j-base/src/main/java/com/foxinmy/weixin4j/payment/WeixinPayProxy.java b/weixin4j-base/src/main/java/com/foxinmy/weixin4j/payment/WeixinPayProxy.java
index 0ce4270e..d2573801 100644
--- a/weixin4j-base/src/main/java/com/foxinmy/weixin4j/payment/WeixinPayProxy.java
+++ b/weixin4j-base/src/main/java/com/foxinmy/weixin4j/payment/WeixinPayProxy.java
@@ -154,7 +154,7 @@ public class WeixinPayProxy {
* @see com.foxinmy.weixin4j.payment.mch.JSAPIPayRequest JS支付
* @see com.foxinmy.weixin4j.payment.mch.NATIVEPayRequest 扫码支付
* @see com.foxinmy.weixin4j.payment.mch.APPPayRequest APP支付
- * @see com.foxinmy.weixin4j.payment.mch.WAPPayRequest WAP支付t
+ * @see com.foxinmy.weixin4j.payment.mch.WAPPayRequest WAP支付
* @throws WeixinPayException
*/
public MchPayRequest createPayRequest(TradeType tradeType, String openId,
diff --git a/weixin4j-base/src/main/java/com/foxinmy/weixin4j/token/TokenHolder.java b/weixin4j-base/src/main/java/com/foxinmy/weixin4j/token/TokenHolder.java
index 63dc71b1..935d0488 100644
--- a/weixin4j-base/src/main/java/com/foxinmy/weixin4j/token/TokenHolder.java
+++ b/weixin4j-base/src/main/java/com/foxinmy/weixin4j/token/TokenHolder.java
@@ -74,8 +74,4 @@ public class TokenHolder {
tokenStorager.caching(cacheKey, token);
return token;
}
-
- public TokenStorager getTokenStorager() {
- return tokenStorager;
- }
}
diff --git a/weixin4j-mp/src/main/java/com/foxinmy/weixin4j/mp/WeixinProxy.java b/weixin4j-mp/src/main/java/com/foxinmy/weixin4j/mp/WeixinProxy.java
index 744acd36..e2dd51a0 100644
--- a/weixin4j-mp/src/main/java/com/foxinmy/weixin4j/mp/WeixinProxy.java
+++ b/weixin4j-mp/src/main/java/com/foxinmy/weixin4j/mp/WeixinProxy.java
@@ -151,7 +151,7 @@ public class WeixinProxy {
public TokenHolder getTicketHolder(TicketType ticketType) {
return new TokenHolder(new WeixinTicketCreator(getWeixinAccount()
.getId(), ticketType, this.tokenHolder),
- this.tokenHolder.getTokenStorager());
+ this.settings.getTokenStorager0());
}
/**
diff --git a/weixin4j-qy/src/main/java/com/foxinmy/weixin4j/qy/WeixinProxy.java b/weixin4j-qy/src/main/java/com/foxinmy/weixin4j/qy/WeixinProxy.java
index 401aeae7..868eeea1 100644
--- a/weixin4j-qy/src/main/java/com/foxinmy/weixin4j/qy/WeixinProxy.java
+++ b/weixin4j-qy/src/main/java/com/foxinmy/weixin4j/qy/WeixinProxy.java
@@ -113,7 +113,7 @@ public class WeixinProxy {
public WeixinProxy(SuitePerCodeHolder perCodeHolder,
TokenHolder suiteTokenHolder) {
this(new TokenHolder(new WeixinTokenSuiteCreator(perCodeHolder,
- suiteTokenHolder), suiteTokenHolder.getTokenStorager()));
+ suiteTokenHolder), perCodeHolder.getTokenStorager()));
this.settings = new Weixin4jSettings(new WeixinAccount(
perCodeHolder.getAuthCorpId(), null));
}
@@ -167,7 +167,7 @@ public class WeixinProxy {
public TokenHolder getTicketHolder(TicketType ticketType) {
return new TokenHolder(new WeixinTicketCreator(getWeixinAccount()
.getId(), ticketType, this.tokenHolder),
- this.tokenHolder.getTokenStorager());
+ this.settings.getTokenStorager0());
}
/**
diff --git a/weixin4j-qy/src/main/java/com/foxinmy/weixin4j/qy/WeixinSuiteProxy.java b/weixin4j-qy/src/main/java/com/foxinmy/weixin4j/qy/WeixinSuiteProxy.java
index 99e17b9f..37746212 100644
--- a/weixin4j-qy/src/main/java/com/foxinmy/weixin4j/qy/WeixinSuiteProxy.java
+++ b/weixin4j-qy/src/main/java/com/foxinmy/weixin4j/qy/WeixinSuiteProxy.java
@@ -65,7 +65,8 @@ public class WeixinSuiteProxy {
new WeixinProviderTokenCreator(suiteSettings
.getWeixinAccount().getId(), suiteSettings
.getWeixinAccount().getProviderSecret()),
- suiteSettings.getTokenStorager0()));
+ suiteSettings.getTokenStorager0()),
+ suiteSettings.getTokenStorager0());
}
}
diff --git a/weixin4j-qy/src/main/java/com/foxinmy/weixin4j/qy/api/ProviderApi.java b/weixin4j-qy/src/main/java/com/foxinmy/weixin4j/qy/api/ProviderApi.java
index 99419654..d38e9798 100644
--- a/weixin4j-qy/src/main/java/com/foxinmy/weixin4j/qy/api/ProviderApi.java
+++ b/weixin4j-qy/src/main/java/com/foxinmy/weixin4j/qy/api/ProviderApi.java
@@ -8,6 +8,7 @@ import com.foxinmy.weixin4j.model.Token;
import com.foxinmy.weixin4j.qy.model.OUserInfo;
import com.foxinmy.weixin4j.qy.type.LoginTargetType;
import com.foxinmy.weixin4j.token.TokenHolder;
+import com.foxinmy.weixin4j.token.TokenStorager;
import com.foxinmy.weixin4j.util.StringUtil;
/**
@@ -22,9 +23,12 @@ import com.foxinmy.weixin4j.util.StringUtil;
*/
public class ProviderApi extends QyApi {
private final TokenHolder providerTokenHolder;
+ private final TokenStorager tokenStorager;
- public ProviderApi(TokenHolder providerTokenHolder) {
+ public ProviderApi(TokenHolder providerTokenHolder,
+ TokenStorager tokenStorager) {
this.providerTokenHolder = providerTokenHolder;
+ this.tokenStorager = tokenStorager;
}
/**
@@ -49,14 +53,13 @@ public class ProviderApi extends QyApi {
oUser.getRedirectLoginInfo().setAccessToken(
obj.getJSONObject("redirect_login_info").getString(
"login_ticket"));
- providerTokenHolder.getTokenStorager().caching(
- getLoginTicketCacheKey(oUser.getCorpInfo().getCorpId()),
- oUser.getRedirectLoginInfo());
+ tokenStorager.caching(getLoginTicketCacheKey(oUser.getCorpInfo()
+ .getCorpId()), oUser.getRedirectLoginInfo());
return oUser;
}
private String getLoginTicketCacheKey(String coprId) {
- return String.format("wx_qy_provider_login_ticket_%s", coprId);
+ return String.format("weixin4j_qy_provider_ticket_%s", coprId);
}
/**
@@ -75,8 +78,7 @@ public class ProviderApi extends QyApi {
*/
public String getLoginUrl(String corpId, LoginTargetType targetType,
int agentId) throws WeixinException {
- Token token = providerTokenHolder.getTokenStorager().lookup(
- getLoginTicketCacheKey(corpId));
+ Token token = tokenStorager.lookup(getLoginTicketCacheKey(corpId));
if (token == null || StringUtil.isBlank(token.getAccessToken())) {
throw new WeixinException("maybe oauth first?");
}
diff --git a/weixin4j-qy/src/main/java/com/foxinmy/weixin4j/qy/suite/SuitePerCodeHolder.java b/weixin4j-qy/src/main/java/com/foxinmy/weixin4j/qy/suite/SuitePerCodeHolder.java
index 6a5befaa..92d400ab 100644
--- a/weixin4j-qy/src/main/java/com/foxinmy/weixin4j/qy/suite/SuitePerCodeHolder.java
+++ b/weixin4j-qy/src/main/java/com/foxinmy/weixin4j/qy/suite/SuitePerCodeHolder.java
@@ -45,7 +45,8 @@ public class SuitePerCodeHolder {
* @return
*/
public String getCacheKey() {
- return String.format("qy_suite_percode_%s:%s", suiteId, authCorpId);
+ return String.format("weixin4j_qy_suite_percode_%s:%s", suiteId,
+ authCorpId);
}
/**
@@ -65,4 +66,8 @@ public class SuitePerCodeHolder {
public String getAuthCorpId() {
return this.authCorpId;
}
+
+ public TokenStorager getTokenStorager() {
+ return this.tokenStorager;
+ }
}
diff --git a/weixin4j-server/src/main/java/com/foxinmy/weixin4j/socket/WeixinServerInitializer.java b/weixin4j-server/src/main/java/com/foxinmy/weixin4j/socket/WeixinServerInitializer.java
index 2bf75c0e..1fef2fa7 100644
--- a/weixin4j-server/src/main/java/com/foxinmy/weixin4j/socket/WeixinServerInitializer.java
+++ b/weixin4j-server/src/main/java/com/foxinmy/weixin4j/socket/WeixinServerInitializer.java
@@ -9,7 +9,6 @@ import io.netty.handler.codec.http.HttpServerCodec;
import java.util.Map;
import com.foxinmy.weixin4j.dispatcher.WeixinMessageDispatcher;
-import com.foxinmy.weixin4j.exception.WeixinException;
import com.foxinmy.weixin4j.util.AesToken;
/**
@@ -27,7 +26,7 @@ public class WeixinServerInitializer extends ChannelInitializer {
private final WeixinMessageDispatcher messageDispatcher;
public WeixinServerInitializer(Map aesTokenMap,
- WeixinMessageDispatcher messageDispatcher) throws WeixinException {
+ WeixinMessageDispatcher messageDispatcher) {
this.aesTokenMap = aesTokenMap;
this.messageDispatcher = messageDispatcher;
}
diff --git a/weixin4j-server/src/main/java/com/foxinmy/weixin4j/startup/WeixinServerBootstrap.java b/weixin4j-server/src/main/java/com/foxinmy/weixin4j/startup/WeixinServerBootstrap.java
index 1c25cbaf..8aa41949 100644
--- a/weixin4j-server/src/main/java/com/foxinmy/weixin4j/startup/WeixinServerBootstrap.java
+++ b/weixin4j-server/src/main/java/com/foxinmy/weixin4j/startup/WeixinServerBootstrap.java
@@ -216,8 +216,6 @@ public final class WeixinServerBootstrap {
}
}).sync().channel();
ch.closeFuture().sync();
- } catch (WeixinException e) {
- throw e;
} catch (InterruptedException e) {
throw new WeixinException(e);
} finally {