java.lang.ExceptionInInitializerError
at com.huawei.gameserverCMS.common.secret.pwd.PwdCommonTool.getEncryptConfigNames(PwdCommonTool.java:106)
at com.huawei.gameserverCMS.common.prop.PropertiesBase.decryptParams(PropertiesBase.java:219)
at com.huawei.gameserverCMS.common.prop.PropertiesBase.readProperties(PropertiesBase.java:207)
at com.huawei.gameserverCMS.common.prop.PropertiesBase.get(PropertiesBase.java:101)
at com.huawei.gameserverCMS.common.dataaccess.dc.GssDCManager.initDCConnection(GssDCManager.java:59)
at com.huawei.gameserverCMS.common.dataaccess.dc.GssDCManager.<init>(GssDCManager.java:35)
at com.huawei.gameserverCMS.common.dataaccess.dc.GssDCManager.<clinit>(GssDCManager.java:25)
at com.huawei.gameserverCMS.common.dataaccess.dc.GssDCClient.initDCClient(GssDCClient.java:46)
at com.huawei.gameserverCMS.common.dataaccess.dc.GssDCClient.<init>(GssDCClient.java:38)
at com.huawei.gameserverCMS.common.dataaccess.dc.GssDCClient.<clinit>(GssDCClient.java:27)
at com.huawei.gameserverCMS.common.dataaccess.redis.ShardedJedisClient.getCacheClient(ShardedJedisClient.java:61)
at com.huawei.gameserverCMS.common.dataaccess.redis.ShardedJedisClient.<init>(ShardedJedisClient.java:51)
at com.huawei.gameserverCMS.common.dataaccess.redis.ShardedJedisClient.<clinit>(ShardedJedisClient.java:39)
at com.huawei.gameserverCMS.service.config.ConfigService.delUrlControlCache(ConfigService.java:643)
at com.huawei.gameserverCMS.service.config.ConfigService.deleteUrlControl(ConfigService.java:679)
at com.huawei.gameserverCMS.controller.config.ConfigController.deleteUrlControl(ConfigController.java:532)
at com.huawei.gcms.controller.TestConfigController.testDeleteUrlControl(TestConfigController.java:238)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at org.junit.internal.runners.TestMethod.invoke(TestMethod.java:68)
at org.powermock.modules.junit4.internal.impl.PowerMockJUnit44RunnerDelegateImpl$PowerMockJUnit44MethodRunner.runTestMethod(PowerMockJUnit44RunnerDelegateImpl.java:310)
at org.junit.internal.runners.MethodRoadie$2.run(MethodRoadie.java:89)
at org.junit.internal.runners.MethodRoadie.runBeforesThenTestThenAfters(MethodRoadie.java:97)
at org.powermock.modules.junit4.internal.impl.PowerMockJUnit44RunnerDelegateImpl$PowerMockJUnit44MethodRunner.executeTest(PowerMockJUnit44RunnerDelegateImpl.java:294)
at org.powermock.modules.junit4.internal.impl.PowerMockJUnit47RunnerDelegateImpl$PowerMockJUnit47MethodRunner.executeTestInSuper(PowerMockJUnit47RunnerDelegateImpl.java:127)
at org.powermock.modules.junit4.internal.impl.PowerMockJUnit47RunnerDelegateImpl$PowerMockJUnit47MethodRunner.executeTest(PowerMockJUnit47RunnerDelegateImpl.java:82)
at org.powermock.modules.junit4.internal.impl.PowerMockJUnit44RunnerDelegateImpl$PowerMockJUnit44MethodRunner.runBeforesThenTestThenAfters(PowerMockJUnit44RunnerDelegateImpl.java:282)
at org.junit.internal.runners.MethodRoadie.runTest(MethodRoadie.java:87)
at org.junit.internal.runners.MethodRoadie.run(MethodRoadie.java:50)
at org.powermock.modules.junit4.internal.impl.PowerMockJUnit44RunnerDelegateImpl.invokeTestMethod(PowerMockJUnit44RunnerDelegateImpl.java:207)
at org.powermock.modules.junit4.internal.impl.PowerMockJUnit44RunnerDelegateImpl.runMethods(PowerMockJUnit44RunnerDelegateImpl.java:146)
at org.powermock.modules.junit4.internal.impl.PowerMockJUnit44RunnerDelegateImpl$1.run(PowerMockJUnit44RunnerDelegateImpl.java:120)
at org.junit.internal.runners.ClassRoadie.runUnprotected(ClassRoadie.java:34)
at org.junit.internal.runners.ClassRoadie.runProtected(ClassRoadie.java:44)
at org.powermock.modules.junit4.internal.impl.PowerMockJUnit44RunnerDelegateImpl.run(PowerMockJUnit44RunnerDelegateImpl.java:122)
at org.powermock.modules.junit4.common.internal.impl.JUnit4TestSuiteChunkerImpl.run(JUnit4TestSuiteChunkerImpl.java:106)
at org.powermock.modules.junit4.common.internal.impl.AbstractCommonPowerMockRunner.run(AbstractCommonPowerMockRunner.java:53)
at org.powermock.modules.junit4.PowerMockRunner.run(PowerMockRunner.java:59)
at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:86)
at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:459)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:675)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:382)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:192)
Caused by: java.lang.ClassCastException: com.sun.crypto.provider.AESCipher$General cannot be cast to javax.crypto.CipherSpi
at javax.crypto.Cipher.chooseProvider(Cipher.java:860)
at javax.crypto.Cipher.init(Cipher.java:1396)
at javax.crypto.Cipher.init(Cipher.java:1327)
at com.huawei.gameserverCMS.common.secret.aes.AESTool.aesDecWithIv(AESTool.java:179)
at com.huawei.gameserverCMS.common.secret.aes.AESTool.aesDecWithIv(AESTool.java:234)
at com.huawei.gameserverCMS.common.secret.pwd.PwdCommonTool.decryptPropValue(PwdCommonTool.java:158)
at com.huawei.gameserverCMS.common.prop.pwd.PwdConfigHelper.decryptPassKeyConfig(PwdConfigHelper.java:111)
at com.huawei.gameserverCMS.common.prop.pwd.PwdConfigHelper.init(PwdConfigHelper.java:84)
at com.huawei.gameserverCMS.common.prop.pwd.PwdConfigHelper.<clinit>(PwdConfigHelper.java:51)
... 46 more

解决方案 »

  1.   

     /**
         * 删除缓存
         * @throws MsgException
         */
        private void delUrlControlCache()
        {
            
            ShardedJedisClient jedisClient = ShardedJedisClient.newInstance();
            try
            {
                jedisClient.del(RedisConstant.KEY_URL_CONTROL_INFO);            
            }
            catch (MsgException e)
            {
                LOG.error("clear cache failed", e);
            }
        }
    结果定位在创建ShardedJedisClientt的对象出bug
    贴上ShardedJedisClient的代码
    public final class ShardedJedisClient
    {
        private final static Logger LOGGER = LoggerFactory.getLogger(ShardedJedisClient.class);
        
        private static ShardedJedisClient jedisClient = new ShardedJedisClient();
        
        private GssDCClient cacheClient = null;
        
        public static ShardedJedisClient newInstance()
        {  
            
            return jedisClient;
        }
        
        private ShardedJedisClient()
        {
            this.cacheClient = getCacheClient();
        }
        
        /**
         * 获取缓存适配器
         * 
         * @return
         */
        private GssDCClient getCacheClient()
        {
            return GssDCClient.newInstance();
        }
        
    各位大神,帮忙看看,在线等!
      

  2.   

    Caused by: java.lang.ClassCastException: com.sun.crypto.provider.AESCipher$General cannot be cast to javax.crypto.CipherSpi看报错是类型转换异常
      

  3.   

    java.lang.ExceptionInInitializerError  这种问题往往是初始化顺序不对造成的,把初始化的顺序调一下试试,百度的
      

  4.   

    http://blog.csdn.net/jackie_xiaonan/article/details/9896739看看这个,已解决。