Thursday 30 August 2012

java.lang.ClassCastException: java.util.Collections$SynchronizedMap

Problem

private static HashMap<String, Long> orderProcessmap = null;
orderProcessmap =  Collections.synchronizedMap((new HashMap<String, Long>()));
java.lang.ClassCastException: java.util.Collections$SynchronizedMap cannot be cast to java.util.HashMap
 at .......org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1266)
 at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1185)
 at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1080)
 at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:5015)
 at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5302)
 at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
 at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:895)
 at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:871)
 at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:615)
 at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:962)
 at org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1603)
 at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
 at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
 at java.util.concurrent.FutureTask.run(FutureTask.java:166)
 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
 at java.lang.Thread.run(Thread.java:679)

Solution

private static Map<String, Long> map = null;
map =  Collections.synchronizedMap((new HashMap<String, Long>()));

No comments:

Post a Comment