This is an automated email from the ASF dual-hosted git repository.

liubao pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/servicecomb-java-chassis.git


The following commit(s) were added to refs/heads/master by this push:
     new b1948e1  [SCB-2318]revert PR[#2350] and add test case for map null 
value (#2580)
b1948e1 is described below

commit b1948e193c7516a58dcc70f72adabb574171a0c4
Author: liubao68 <[email protected]>
AuthorDate: Thu Sep 16 19:30:43 2021 +0800

    [SCB-2318]revert PR[#2350] and add test case for map null value (#2580)
---
 .../demo/pojo/client/CodeFirstPojoClient.java      | 55 ++++++++++++++++------
 .../servicecomb/demo/pojo/client/PojoClient.java   |  8 ----
 .../resources/META-INF/spring/pojo.client.bean.xml |  3 --
 .../demo/pojo/server/CodeFirstPojo.java            |  5 ++
 .../apache/servicecomb/demo/CodeFirstPojoIntf.java |  2 +
 .../org/apache/servicecomb/AuthHandlerBoot.java    | 16 +------
 .../authentication/RSAAuthenticationToken.java     | 22 ++++-----
 .../provider/RSAProviderTokenManager.java          | 29 ++++--------
 .../authentication/TestAuthHandlerBoot.java        |  8 +---
 .../TestRSAProviderTokenManager.java               | 21 ++++-----
 .../demo/pojo/test/endpoints/CodeFirstPojo.java    |  5 ++
 11 files changed, 85 insertions(+), 89 deletions(-)

diff --git 
a/demo/demo-pojo/pojo-client/src/main/java/org/apache/servicecomb/demo/pojo/client/CodeFirstPojoClient.java
 
b/demo/demo-pojo/pojo-client/src/main/java/org/apache/servicecomb/demo/pojo/client/CodeFirstPojoClient.java
index e9c55a1..dc03b66 100644
--- 
a/demo/demo-pojo/pojo-client/src/main/java/org/apache/servicecomb/demo/pojo/client/CodeFirstPojoClient.java
+++ 
b/demo/demo-pojo/pojo-client/src/main/java/org/apache/servicecomb/demo/pojo/client/CodeFirstPojoClient.java
@@ -26,20 +26,21 @@ import java.util.concurrent.CountDownLatch;
 
 import javax.inject.Inject;
 
+import org.apache.servicecomb.demo.CategorizedTestCase;
 import org.apache.servicecomb.demo.CodeFirstPojoIntf;
-import org.apache.servicecomb.demo.DemoConst;
 import org.apache.servicecomb.demo.TestMgr;
 import org.apache.servicecomb.demo.compute.Person;
 import org.apache.servicecomb.demo.server.User;
-import org.apache.servicecomb.foundation.test.scaffolding.config.ArchaiusUtils;
 import org.apache.servicecomb.foundation.vertx.VertxUtils;
 import org.apache.servicecomb.provider.pojo.RpcReference;
 import org.apache.servicecomb.swagger.invocation.context.ContextUtils;
 import org.apache.servicecomb.swagger.invocation.context.InvocationContext;
+import org.springframework.stereotype.Component;
 
 import io.vertx.core.Vertx;
 
-public class CodeFirstPojoClient {
+@Component
+public class CodeFirstPojoClient implements CategorizedTestCase {
   @RpcReference(microserviceName = "pojo", schemaId = 
"org.apache.servicecomb.demo.CodeFirstPojoIntf")
   public CodeFirstPojoClientIntf codeFirstAnnotation;
 
@@ -49,25 +50,24 @@ public class CodeFirstPojoClient {
   @Inject
   private CodeFirstPojoIntf codeFirstFromXml;
 
-  public void testCodeFirst(String microserviceName) {
-    for (String transport : DemoConst.transports) {
-      ArchaiusUtils.setProperty("servicecomb.references.transport." + 
microserviceName, transport);
-      TestMgr.setMsg(microserviceName, transport);
-
-      testAll(codeFirstAnnotation);
-      testAll(codeFirstAnnotationEmptySchemaId);
-      testAll(codeFirstFromXml);
-    }
-
-    ArchaiusUtils.setProperty("servicecomb.references.transport." + 
microserviceName, "rest");
+  @Override
+  public void testRestTransport() throws Exception {
     testOnlyRest(codeFirstAnnotation);
   }
 
+  @Override
+  public void testAllTransport() throws Exception {
+    testAll(codeFirstAnnotation);
+    testAll(codeFirstAnnotationEmptySchemaId);
+    testAll(codeFirstFromXml);
+  }
+
   private void testOnlyRest(CodeFirstPojoIntf codeFirst) {
     testCodeFirstStrings(codeFirst);
   }
 
   private void testAll(CodeFirstPojoIntf codeFirst) {
+    remoteCodeFirstPojo_testMap(codeFirst);
     testCodeFirstUserMap(codeFirst);
     testCodeFirstUserArray(codeFirst);
     testCodeFirstStrings(codeFirst);
@@ -121,6 +121,24 @@ public class CodeFirstPojoClient {
     }
   }
 
+  private void remoteCodeFirstPojo_testMap(CodeFirstPojoIntf codeFirst) {
+    Map<String, String> userMap = new HashMap<>();
+    userMap.put("u1", "u1");
+    userMap.put("u2", null);
+    Map<String, String> result = codeFirst.testMap(userMap);
+
+    TestMgr.check(result.get("u1"), "u1");
+    TestMgr.check(result.get("u2"), null);
+
+    userMap = new HashMap<>();
+    userMap.put("u1", "u1");
+    userMap.put("u2", "u2");
+    result = codeFirst.testMap(userMap);
+
+    TestMgr.check(result.get("u1"), "u1");
+    TestMgr.check(result.get("u2"), "u2");
+  }
+
   private void testCodeFirstUserMap(CodeFirstPojoIntf codeFirst) {
     User user1 = new User();
     user1.setNames(new String[] {"u1", "u2"});
@@ -137,6 +155,15 @@ public class CodeFirstPojoClient {
     TestMgr.check("u2", result.get("u1").getNames()[1]);
     TestMgr.check("u3", result.get("u2").getNames()[0]);
     TestMgr.check("u4", result.get("u2").getNames()[1]);
+
+    userMap = new HashMap<>();
+    userMap.put("u1", user1);
+    userMap.put("u2", null);
+    result = codeFirst.testUserMap(userMap);
+
+    TestMgr.check(result.get("u1").getNames()[0], "u1");
+    TestMgr.check(result.get("u1").getNames()[1], "u2");
+    TestMgr.check(result.get("u2"), null);
   }
 
   private void testCodeFirstUserArray(CodeFirstPojoIntf codeFirst) {
diff --git 
a/demo/demo-pojo/pojo-client/src/main/java/org/apache/servicecomb/demo/pojo/client/PojoClient.java
 
b/demo/demo-pojo/pojo-client/src/main/java/org/apache/servicecomb/demo/pojo/client/PojoClient.java
index 71a1d82..84dd27f 100644
--- 
a/demo/demo-pojo/pojo-client/src/main/java/org/apache/servicecomb/demo/pojo/client/PojoClient.java
+++ 
b/demo/demo-pojo/pojo-client/src/main/java/org/apache/servicecomb/demo/pojo/client/PojoClient.java
@@ -57,8 +57,6 @@ public class PojoClient {
 
   public static final byte buffer[] = new byte[1024];
 
-  public static CodeFirstPojoClient codeFirstPojoClient;
-
   // reference a not exist a microservice, and never use it
   // this should not cause problems
   @RpcReference(microserviceName = "notExist")
@@ -114,7 +112,6 @@ public class PojoClient {
 
     smartcare = BeanUtils.getBean("smartcare");
     String microserviceName = "pojo";
-    codeFirstPojoClient.testCodeFirst(microserviceName);
 
     for (String transport : DemoConst.transports) {
       ArchaiusUtils.setProperty("servicecomb.references.transport." + 
microserviceName, transport);
@@ -350,9 +347,4 @@ public class PojoClient {
 
     TestMgr.check("User [name=nameA,  users count:1, age=100, index=0]", 
result);
   }
-
-  @Inject
-  public void setCodeFirstPojoClient(CodeFirstPojoClient codeFirstPojoClient) {
-    PojoClient.codeFirstPojoClient = codeFirstPojoClient;
-  }
 }
diff --git 
a/demo/demo-pojo/pojo-client/src/main/resources/META-INF/spring/pojo.client.bean.xml
 
b/demo/demo-pojo/pojo-client/src/main/resources/META-INF/spring/pojo.client.bean.xml
index b806eba..bba1822 100644
--- 
a/demo/demo-pojo/pojo-client/src/main/resources/META-INF/spring/pojo.client.bean.xml
+++ 
b/demo/demo-pojo/pojo-client/src/main/resources/META-INF/spring/pojo.client.bean.xml
@@ -35,9 +35,6 @@
   <cse:rpc-reference id="codeFirstFromXml" microservice-name="pojo"
     
schema-id="org.apache.servicecomb.demo.CodeFirstPojoIntf"></cse:rpc-reference>
 
-  <bean class="org.apache.servicecomb.demo.pojo.client.CodeFirstPojoClient">
-  </bean>
-
   <bean class="org.apache.servicecomb.demo.pojo.client.BeanRpcTest" 
init-method="init">
   </bean>
 </beans>
diff --git 
a/demo/demo-pojo/pojo-server/src/main/java/org/apache/servicecomb/demo/pojo/server/CodeFirstPojo.java
 
b/demo/demo-pojo/pojo-server/src/main/java/org/apache/servicecomb/demo/pojo/server/CodeFirstPojo.java
index 8905d8e..3b02aec 100644
--- 
a/demo/demo-pojo/pojo-server/src/main/java/org/apache/servicecomb/demo/pojo/server/CodeFirstPojo.java
+++ 
b/demo/demo-pojo/pojo-server/src/main/java/org/apache/servicecomb/demo/pojo/server/CodeFirstPojo.java
@@ -35,6 +35,11 @@ import io.swagger.annotations.SwaggerDefinition;
 @SwaggerDefinition(basePath = "/pojo/rest")
 public class CodeFirstPojo implements CodeFirstPojoIntf {
   @Override
+  public Map<String, String> testMap(Map<String, String> map) {
+    return map;
+  }
+
+  @Override
   public Map<String, User> testUserMap(Map<String, User> userMap) {
     return userMap;
   }
diff --git 
a/demo/demo-schema/src/main/java/org/apache/servicecomb/demo/CodeFirstPojoIntf.java
 
b/demo/demo-schema/src/main/java/org/apache/servicecomb/demo/CodeFirstPojoIntf.java
index bcf5681..ccb95b8 100644
--- 
a/demo/demo-schema/src/main/java/org/apache/servicecomb/demo/CodeFirstPojoIntf.java
+++ 
b/demo/demo-schema/src/main/java/org/apache/servicecomb/demo/CodeFirstPojoIntf.java
@@ -25,6 +25,8 @@ import org.apache.servicecomb.demo.compute.Person;
 import org.apache.servicecomb.demo.server.User;
 
 public interface CodeFirstPojoIntf {
+  Map<String, String> testMap(Map<String, String> map);
+
   Map<String, User> testUserMap(Map<String, User> userMap);
 
   List<User> testUserArray(List<User> users);
diff --git 
a/handlers/handler-publickey-auth/src/main/java/org/apache/servicecomb/AuthHandlerBoot.java
 
b/handlers/handler-publickey-auth/src/main/java/org/apache/servicecomb/AuthHandlerBoot.java
index 9a2e219..5eb06ce 100644
--- 
a/handlers/handler-publickey-auth/src/main/java/org/apache/servicecomb/AuthHandlerBoot.java
+++ 
b/handlers/handler-publickey-auth/src/main/java/org/apache/servicecomb/AuthHandlerBoot.java
@@ -24,8 +24,6 @@ import org.apache.servicecomb.registry.RegistrationManager;
 import org.apache.servicecomb.registry.definition.DefinitionConst;
 import org.springframework.stereotype.Component;
 
-import com.netflix.config.DynamicPropertyFactory;
-
 /**
  *
  * initialize public and private key pair when system boot before registry 
instance to service center
@@ -45,17 +43,7 @@ public class AuthHandlerBoot implements BootListener {
     RSAKeypair4Auth.INSTANCE.setPrivateKey(rsaKeyPairEntry.getPrivateKey());
     RSAKeypair4Auth.INSTANCE.setPublicKey(rsaKeyPairEntry.getPublicKey());
     
RSAKeypair4Auth.INSTANCE.setPublicKeyEncoded(rsaKeyPairEntry.getPublicKeyEncoded());
-    if (addMicroservicePublicKey()) {
-      
RegistrationManager.INSTANCE.getMicroservice().getProperties().put(DefinitionConst.INSTANCE_PUBKEY_PRO,
-          rsaKeyPairEntry.getPublicKeyEncoded());
-    } else {
-      
RegistrationManager.INSTANCE.getMicroserviceInstance().getProperties().put(DefinitionConst.INSTANCE_PUBKEY_PRO,
-          rsaKeyPairEntry.getPublicKeyEncoded());
-    }
-  }
-
-  private boolean addMicroservicePublicKey() {
-    return DynamicPropertyFactory.getInstance()
-        .getBooleanProperty("servicecomb.publicKey.microservice.enabled", 
true).get();
+    
RegistrationManager.INSTANCE.getMicroserviceInstance().getProperties().put(DefinitionConst.INSTANCE_PUBKEY_PRO,
+        rsaKeyPairEntry.getPublicKeyEncoded());
   }
 }
diff --git 
a/handlers/handler-publickey-auth/src/main/java/org/apache/servicecomb/authentication/RSAAuthenticationToken.java
 
b/handlers/handler-publickey-auth/src/main/java/org/apache/servicecomb/authentication/RSAAuthenticationToken.java
index b70f783..0a7385e 100644
--- 
a/handlers/handler-publickey-auth/src/main/java/org/apache/servicecomb/authentication/RSAAuthenticationToken.java
+++ 
b/handlers/handler-publickey-auth/src/main/java/org/apache/servicecomb/authentication/RSAAuthenticationToken.java
@@ -26,17 +26,19 @@ public class RSAAuthenticationToken {
 
   public final static long TOKEN_ACTIVE_TIME = 24 * 60 * 60 * 1000;
 
-  private String instanceId;
+  private final String instanceId;
 
-  private String serviceId;
+  private final String serviceId;
 
-  private long generateTime;
+  private final long generateTime;
 
-  private String randomCode;
+  private final String randomCode;
 
-  private String sign;
+  private final String sign;
 
-  private String tokenFormat;
+  private final String tokenFormat;
+
+  private final String plainToken;
 
   public RSAAuthenticationToken(String instanceId, String serviceId, long 
generateTime,
       String randomCode, String sign) {
@@ -51,13 +53,13 @@ public class RSAAuthenticationToken {
         generateTime,
         randomCode,
         sign);
+    this.plainToken = String.format("%s@%s@%s@%s", this.instanceId, 
this.serviceId, this.generateTime, this.randomCode);
   }
 
   public String plainToken() {
-    return String.format("%s@%s@%s@%s", this.instanceId, this.serviceId, 
this.generateTime, this.randomCode);
+    return this.plainToken;
   }
 
-
   public String getInstanceId() {
     return instanceId;
   }
@@ -90,10 +92,6 @@ public class RSAAuthenticationToken {
     return serviceId;
   }
 
-  public void setServiceId(String serviceId) {
-    this.serviceId = serviceId;
-  }
-
   @Override
   public boolean equals(Object obj) {
     if (!(obj instanceof RSAAuthenticationToken)) {
diff --git 
a/handlers/handler-publickey-auth/src/main/java/org/apache/servicecomb/authentication/provider/RSAProviderTokenManager.java
 
b/handlers/handler-publickey-auth/src/main/java/org/apache/servicecomb/authentication/provider/RSAProviderTokenManager.java
index ac3f767..f6e2ee5 100644
--- 
a/handlers/handler-publickey-auth/src/main/java/org/apache/servicecomb/authentication/provider/RSAProviderTokenManager.java
+++ 
b/handlers/handler-publickey-auth/src/main/java/org/apache/servicecomb/authentication/provider/RSAProviderTokenManager.java
@@ -22,16 +22,15 @@ import java.security.SignatureException;
 import java.security.spec.InvalidKeySpecException;
 import java.util.concurrent.TimeUnit;
 
-import org.apache.commons.lang3.StringUtils;
 import org.apache.servicecomb.authentication.RSAAuthenticationToken;
 import org.apache.servicecomb.foundation.common.utils.RSAUtils;
-import org.apache.servicecomb.registry.api.registry.Microservice;
 import org.apache.servicecomb.registry.api.registry.MicroserviceInstance;
 import org.apache.servicecomb.registry.cache.MicroserviceInstanceCache;
 import org.apache.servicecomb.registry.definition.DefinitionConst;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
+import com.google.common.annotations.VisibleForTesting;
 import com.google.common.cache.Cache;
 import com.google.common.cache.CacheBuilder;
 
@@ -39,7 +38,7 @@ public class RSAProviderTokenManager {
 
   private final static Logger LOGGER = 
LoggerFactory.getLogger(RSAProviderTokenManager.class);
 
-  private static Cache<RSAAuthenticationToken, Boolean> validatedToken = 
CacheBuilder.newBuilder()
+  private Cache<RSAAuthenticationToken, Boolean> validatedToken = 
CacheBuilder.newBuilder()
       .expireAfterAccess(getExpiredTime(), TimeUnit.MILLISECONDS)
       .build();
 
@@ -57,12 +56,12 @@ public class RSAProviderTokenManager {
         return false;
       }
 
-      if (getValidatedToken().asMap().containsKey(rsaToken)) {
+      if (validatedToken.asMap().containsKey(rsaToken)) {
         return 
accessController.isAllowed(MicroserviceInstanceCache.getOrCreate(rsaToken.getServiceId()));
       }
 
       if (isValidToken(rsaToken) && !tokenExpired(rsaToken)) {
-        getValidatedToken().put(rsaToken, true);
+        validatedToken.put(rsaToken, true);
         return 
accessController.isAllowed(MicroserviceInstanceCache.getOrCreate(rsaToken.getServiceId()));
       }
       return false;
@@ -76,14 +75,11 @@ public class RSAProviderTokenManager {
       throws NoSuchAlgorithmException, InvalidKeySpecException, 
InvalidKeyException, SignatureException {
     String sign = rsaToken.getSign();
     String content = rsaToken.plainToken();
-    String publicKey = getPublicKeyFromMicroservice(rsaToken.getServiceId());
-    if (StringUtils.isEmpty(publicKey)) {
-      publicKey = getPublicKeyFromInstance(rsaToken.getInstanceId(), 
rsaToken.getServiceId());
-    }
+    String publicKey = getPublicKeyFromInstance(rsaToken.getInstanceId(), 
rsaToken.getServiceId());
     return RSAUtils.verify(publicKey, sign, content);
   }
 
-  public static int getExpiredTime() {
+  protected int getExpiredTime() {
     return 60 * 60 * 1000;
   }
 
@@ -104,17 +100,8 @@ public class RSAProviderTokenManager {
     }
   }
 
-  private String getPublicKeyFromMicroservice(String serviceId) {
-    Microservice microservice = 
MicroserviceInstanceCache.getOrCreate(serviceId);
-    if (microservice != null) {
-      return 
microservice.getProperties().get(DefinitionConst.INSTANCE_PUBKEY_PRO);
-    } else {
-      LOGGER.error("not instance found {}, maybe attack", serviceId);
-      return "";
-    }
-  }
-
-  public static Cache<RSAAuthenticationToken, Boolean> getValidatedToken() {
+  @VisibleForTesting
+  Cache<RSAAuthenticationToken, Boolean> getValidatedToken() {
     return validatedToken;
   }
 }
diff --git 
a/handlers/handler-publickey-auth/src/test/java/org/apache/servicecomb/authentication/TestAuthHandlerBoot.java
 
b/handlers/handler-publickey-auth/src/test/java/org/apache/servicecomb/authentication/TestAuthHandlerBoot.java
index 1cd38fb..829269c 100644
--- 
a/handlers/handler-publickey-auth/src/test/java/org/apache/servicecomb/authentication/TestAuthHandlerBoot.java
+++ 
b/handlers/handler-publickey-auth/src/test/java/org/apache/servicecomb/authentication/TestAuthHandlerBoot.java
@@ -63,16 +63,12 @@ public class TestAuthHandlerBoot {
   }
 
   @Test
-  public void testMicroservicePublicKey() {
-    MicroserviceInstance microserviceInstance = new MicroserviceInstance();
-    Microservice microservice = new Microservice();
-    microservice.setInstance(microserviceInstance);
-
+  public void testMicroserviceInstancePublicKey() {
     AuthHandlerBoot authHandlerBoot = new AuthHandlerBoot();
     BootEvent bootEvent = new BootEvent();
     bootEvent.setEventType(BootListener.EventType.BEFORE_REGISTRY);
     authHandlerBoot.onBootEvent(bootEvent);
-    String publicKey = RegistrationManager.INSTANCE.getMicroservice().
+    String publicKey = RegistrationManager.INSTANCE.getMicroserviceInstance().
         getProperties().get(DefinitionConst.INSTANCE_PUBKEY_PRO);
     Assert.assertNotNull(publicKey);
   }
diff --git 
a/handlers/handler-publickey-auth/src/test/java/org/apache/servicecomb/authentication/TestRSAProviderTokenManager.java
 
b/handlers/handler-publickey-auth/src/test/java/org/apache/servicecomb/authentication/provider/TestRSAProviderTokenManager.java
similarity index 92%
rename from 
handlers/handler-publickey-auth/src/test/java/org/apache/servicecomb/authentication/TestRSAProviderTokenManager.java
rename to 
handlers/handler-publickey-auth/src/test/java/org/apache/servicecomb/authentication/provider/TestRSAProviderTokenManager.java
index b742038..5581143 100644
--- 
a/handlers/handler-publickey-auth/src/test/java/org/apache/servicecomb/authentication/TestRSAProviderTokenManager.java
+++ 
b/handlers/handler-publickey-auth/src/test/java/org/apache/servicecomb/authentication/provider/TestRSAProviderTokenManager.java
@@ -14,14 +14,13 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.servicecomb.authentication;
+package org.apache.servicecomb.authentication.provider;
 
 import java.util.HashMap;
 import java.util.Map;
-import java.util.concurrent.TimeUnit;
 
+import org.apache.servicecomb.authentication.RSAAuthenticationToken;
 import org.apache.servicecomb.authentication.consumer.RSAConsumerTokenManager;
-import org.apache.servicecomb.authentication.provider.RSAProviderTokenManager;
 import org.apache.servicecomb.config.ConfigUtil;
 import org.apache.servicecomb.foundation.common.utils.RSAKeyPairEntry;
 import org.apache.servicecomb.foundation.common.utils.RSAUtils;
@@ -38,7 +37,6 @@ import org.junit.Before;
 import org.junit.Test;
 
 import com.google.common.cache.Cache;
-import com.google.common.cache.CacheBuilder;
 
 import mockit.Expectations;
 
@@ -75,7 +73,13 @@ public class TestRSAProviderTokenManager {
     String tokenStr =
         
"e8a04b54cf2711e7b701286ed488fc20@c8636e5acf1f11e7b701286ed488fc20@1511315597475@9t0tp8ce80SUM5ts6iRGjFJMvCdQ7uvhpyh0RM7smKm3p4wYOrojr4oT1Pnwx7xwgcgEFbQdwPJxIMfivpQ1rHGqiLp67cjACvJ3Ke39pmeAVhybsLADfid6oSjscFaJ@WBYouF6hXYrXzBA31HC3VX8Bw9PNgJUtVqOPAaeW9ye3q/D7WWb0M+XMouBIWxWY6v9Un1dGu5Rkjlx6gZbnlHkb2VO8qFR3Y6lppooWCirzpvEBRjlJQu8LPBur0BCfYGq8XYrEZA2NU6sg2zXieqCSiX6BnMnBHNn4cR9iZpk=";
     RSAAuthenticationToken token = RSAAuthenticationToken.fromStr(tokenStr);
-    RSAProviderTokenManager tokenManager = new RSAProviderTokenManager();
+    RSAProviderTokenManager tokenManager = new RSAProviderTokenManager() {
+      @Override
+      protected int getExpiredTime() {
+        return 500;
+      }
+    };
+
     new Expectations(RSAProviderTokenManager.class, 
RSAAuthenticationToken.class) {
       {
         token.getGenerateTime();
@@ -83,17 +87,12 @@ public class TestRSAProviderTokenManager {
 
         tokenManager.isValidToken(token);
         result = true;
-
-        RSAProviderTokenManager.getValidatedToken();
-        result = CacheBuilder.newBuilder()
-            .expireAfterAccess(500, TimeUnit.MILLISECONDS)
-            .build();
       }
     };
 
     Assert.assertTrue(tokenManager.valid(tokenStr));
 
-    Cache<RSAAuthenticationToken, Boolean> cache = RSAProviderTokenManager
+    Cache<RSAAuthenticationToken, Boolean> cache = tokenManager
         .getValidatedToken();
     Assert.assertTrue(cache.asMap().containsKey(token));
 
diff --git 
a/integration-tests/pojo-test/src/test/java/org/apache/servicecomb/demo/pojo/test/endpoints/CodeFirstPojo.java
 
b/integration-tests/pojo-test/src/test/java/org/apache/servicecomb/demo/pojo/test/endpoints/CodeFirstPojo.java
index f420315..944d17e 100644
--- 
a/integration-tests/pojo-test/src/test/java/org/apache/servicecomb/demo/pojo/test/endpoints/CodeFirstPojo.java
+++ 
b/integration-tests/pojo-test/src/test/java/org/apache/servicecomb/demo/pojo/test/endpoints/CodeFirstPojo.java
@@ -31,6 +31,11 @@ import 
org.apache.servicecomb.swagger.invocation.context.ContextUtils;
 public class CodeFirstPojo implements CodeFirstPojoIntf {
 
   @Override
+  public Map<String, String> testMap(Map<String, String> map) {
+    return map;
+  }
+
+  @Override
   public Map<String, User> testUserMap(Map<String, User> userMap) {
     return userMap;
   }

Reply via email to