Because you are trying to insert employee with same name and you do have
constraint for it .
Caused by: org.postgresql.util.PSQLException: ERROR: duplicate key value
violates unique constraint "dcm_emp_ename"
  Detail: Key (ename)=(Jacky) already exists.

On Thu, Jun 22, 2017 at 8:35 PM, Muthu <[email protected]> wrote:

> Hello Folks,
>
> I tried the Ignite spring transactions integration by using
> *CacheSpringStoreSessionL**istener* (i used it with Ignite web console
> based Automatic Persistence).
>
> I see that Transactional writes seems to fail & does not seem to work as
> expected (one table/cache was inserted while another wasn't when both were
> in a transaction annotated with @Transactional. (In the below example for
> my test input one of the 'Emp' object inserts would fail on the DB & this
> should have caused the cache & table to rollback for both 'Dept' & 'Emp',
> but i see the partial entry for 'Dept' in DB).
>
> Anyone who was tried & got this working?.....it would be good to have this
> working..
>
> Below is the code fragment,
>
>
> *@Transactional*
> *public Boolean insertDepartmentWithEmployees(Dept dept, List<Emp>
> empList) {*
> * Boolean ret = true;*
> * try {*
> * System.out.println("==== in
> ObjectCacheMgrService.insertDepartmentWithEmployees ==== for dept : " +
> dept);*
> * String uUID = new IgniteUuid(UUID.randomUUID(),
> igniteAtomicSequence.incrementAndGet()).toString();*
> * dept.setId(uUID);*
> * deptCache.getAndPut(uUID, dept);*
> * System.out.println("==== in
> ObjectCacheMgrService.insertDepartmentWithEmployees : department ====
> inserted succesfully : " + dept);*
> * for (Emp emp : empList) {*
> * uUID = new IgniteUuid(UUID.randomUUID(),
> igniteAtomicSequence.incrementAndGet()).toString();*
> * emp.setId(uUID);*
> * emp.setDeptid(dept.getId());*
> * empCache.getAndPut(uUID, emp);*
> * System.out.println("==== in
> ObjectCacheMgrService.insertDepartmentWithEmployees : employee ====
> inserted succesfully : " + emp);*
> * }*
> * } catch (Exception e) {*
> * System.out.println("==== EXCEPTION in
> ObjectCacheMgrService.insertDepartmentWithEmployees ==== message is : " +
> e.getMessage());*
> * System.out.println("==== EXCEPTION in
> ObjectCacheMgrService.insertDepartmentWithEmployees ==== class is : " +
> e.getClass().getName());*
> * e.printStackTrace();*
> * ret = false;*
> * }*
> * return ret;*
> *}*
>
> Below is the CacheSpringStoreSessionListener config segment,
>
> *   <!-- Postgresql datasource -->*
> *    <bean id="dataSource"
> class="org.apache.commons.dbcp2.BasicDataSource" destroy-method="close">*
> *        <property name="driverClassName" value="${db.driverClassName}" />*
> * <property name="url" value="${db.url}" />*
> * <property name="username" value="${db.username}" />*
> * <property name="password" value="${db.password}" />*
> * <property name="removeAbandonedOnBorrow" value="true"/>*
> * <property name="initialSize" value="10" />*
> * <property name="maxTotal" value="20" />*
> * <property name="maxIdle" value="5" />*
> * <property name="minIdle" value="0" />*
> * <property name="maxWaitMillis" value="90000" />*
> * <property name="minEvictableIdleTimeMillis" value="900000" />*
> * <property name="softMinEvictableIdleTimeMillis" value="900000" />*
> * <property name="validationQuery" value="select 1" />*
> * <property name="validationQueryTimeout" value="90" />*
> * <property name="defaultTransactionIsolation" value="1" />*
> *    </bean>*
>
> *    <!-- For transaction manager, using DataSourceTransactionManager"
> since we are using JDBC local tx -->*
> *    <bean id="transactionManager"
> class="org.springframework.jdbc.datasource.DataSourceTransactionManager">*
> *        <property name="dataSource" ref="dataSource" />*
> * <property name="defaultTimeout" value="300" />*
> *    </bean>*
> <!-- enable transaction demarcation with annotations -->
>     <tx:annotation-driven />
>
> * <property name="CacheStoreSessionListenerFactories">*
> *         <list>*
> *             <bean
> class="javax.cache.configuration.FactoryBuilder$SingletonFactory">*
> *                 <constructor-arg>*
> *                     <bean
> class="org.apache.ignite.cache.store.spring.CacheSpringStoreSessionListener">*
> *                         <!-- Inject transaction manager. -->*
> *                         <property name="transactionManager"
> ref="transactionManager"/>*
> *                     </bean>*
> *                 </constructor-arg>*
> *             </bean>*
> *         </list>*
> * </property>*
>
>
> Below is the exception (*RunTimeException subclass only*) stack trace
> showing one of the 'Emp' object inserts failing & the rollback..but the db
> 'Dept' table still has the 'Dept' entry that was made first as part of the
> transaction as shown in the above code),
>
> ==== EXCEPTION in ObjectCacheMgrService.insertDepartmentWithEmployees
> ==== class is : javax.cache.integration.CacheWriterException
> javax.cache.integration.CacheWriterException: class
> org.apache.ignite.transactions.TransactionRollbackException: Transaction
> has been rolled back: b5584ef8c51-00000000-0678-3b15-0000-000000000001
>         at org.apache.ignite.internal.processors.cache.GridCacheUtils.c
> onvertToCacheException(GridCacheUtils.java:1404)
>         at org.apache.ignite.internal.processors.cache.IgniteCacheProxy
> .cacheException(IgniteCacheProxy.java:2641)
>         at org.apache.ignite.internal.processors.cache.IgniteCacheProxy
> .getAndPut(IgniteCacheProxy.java:1589)
>         at com.brocade.dcm.server.service.ObjectCacheMgrService.insertD
> epartmentWithEmployees(ObjectCacheMgrService.java:101)
>         at com.brocade.dcm.server.service.ObjectCacheMgrService$$FastCl
> assBySpringCGLIB$$2d159c39.invoke(<generated>)
>         at org.springframework.cglib.proxy.MethodProxy.invoke(MethodPro
> xy.java:204)
>         at org.springframework.aop.framework.CglibAopProxy$CglibMethodI
> nvocation.invokeJoinpoint(CglibAopProxy.java:721)
>         at org.springframework.aop.framework.ReflectiveMethodInvocation
> .proceed(ReflectiveMethodInvocation.java:157)
>         at org.springframework.transaction.interceptor.TransactionInter
> ceptor$1.proceedWithInvocation(TransactionInterceptor.java:99)
>         at org.springframework.transaction.interceptor.TransactionAspec
> tSupport.invokeWithinTransaction(TransactionAspectSupport.java:282)
>         at org.springframework.transaction.interceptor.TransactionInter
> ceptor.invoke(TransactionInterceptor.java:96)
>         at org.springframework.aop.framework.ReflectiveMethodInvocation
> .proceed(ReflectiveMethodInvocation.java:179)
>         at org.springframework.aop.framework.CglibAopProxy$DynamicAdvis
> edInterceptor.intercept(CglibAopProxy.java:656)
>         at com.brocade.dcm.server.service.ObjectCacheMgrService$$Enhanc
> erBySpringCGLIB$$592efdc.insertDepartmentWithEmployees(<generated>)
>         at com.brocade.dcm.server.controller.ObjectCacheMgrServiceContr
> oller.putPost(ObjectCacheMgrServiceController.java:24)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
>         at java.lang.reflect.Method.invoke(Unknown Source)
>         at org.springframework.web.method.support.InvocableHandlerMetho
> d.doInvoke(InvocableHandlerMethod.java:205)
>         at org.springframework.web.method.support.InvocableHandlerMetho
> d.invokeForRequest(InvocableHandlerMethod.java:133)
>         at org.springframework.web.servlet.mvc.method.annotation.Servle
> tInvocableHandlerMethod.invokeAndHandle(ServletInvocableHand
> lerMethod.java:116)
>         at org.springframework.web.servlet.mvc.method.annotation.Reques
> tMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHan
> dlerAdapter.java:827)
>         at org.springframework.web.servlet.mvc.method.annotation.Reques
> tMappingHandlerAdapter.handleInternal(RequestMappingHandlerA
> dapter.java:738)
>         at org.springframework.web.servlet.mvc.method.AbstractHandlerMe
> thodAdapter.handle(AbstractHandlerMethodAdapter.java:85)
>         at org.springframework.web.servlet.DispatcherServlet.doDispatch
> (DispatcherServlet.java:963)
>         at org.springframework.web.servlet.DispatcherServlet.doService(
> DispatcherServlet.java:897)
>         at org.springframework.web.servlet.FrameworkServlet.processRequ
> est(FrameworkServlet.java:970)
>         at org.springframework.web.servlet.FrameworkServlet.doPost(Fram
> eworkServlet.java:872)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:648)
>         at org.springframework.web.servlet.FrameworkServlet.service(Fra
> meworkServlet.java:846)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFi
> lter(ApplicationFilterChain.java:230)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(App
> licationFilterChain.java:165)
>         at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilte
> r.java:52)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFi
> lter(ApplicationFilterChain.java:192)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(App
> licationFilterChain.java:165)
>         at org.springframework.web.filter.RequestContextFilter.doFilter
> Internal(RequestContextFilter.java:99)
>         at org.springframework.web.filter.OncePerRequestFilter.doFilter
> (OncePerRequestFilter.java:107)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFi
> lter(ApplicationFilterChain.java:192)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(App
> licationFilterChain.java:165)
>         at org.springframework.web.filter.HttpPutFormContentFilter.doFi
> lterInternal(HttpPutFormContentFilter.java:105)
>         at org.springframework.web.filter.OncePerRequestFilter.doFilter
> (OncePerRequestFilter.java:107)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFi
> lter(ApplicationFilterChain.java:192)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(App
> licationFilterChain.java:165)
>         at org.springframework.web.filter.HiddenHttpMethodFilter.doFilt
> erInternal(HiddenHttpMethodFilter.java:81)
>         at org.springframework.web.filter.OncePerRequestFilter.doFilter
> (OncePerRequestFilter.java:107)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFi
> lter(ApplicationFilterChain.java:192)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(App
> licationFilterChain.java:165)
>         at org.springframework.web.filter.CharacterEncodingFilter.doFil
> terInternal(CharacterEncodingFilter.java:197)
>         at org.springframework.web.filter.OncePerRequestFilter.doFilter
> (OncePerRequestFilter.java:107)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFi
> lter(ApplicationFilterChain.java:192)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(App
> licationFilterChain.java:165)
>         at org.apache.catalina.core.StandardWrapperValve.invoke(Standar
> dWrapperValve.java:198)
>         at org.apache.catalina.core.StandardContextValve.invoke(Standar
> dContextValve.java:96)
>         at org.apache.catalina.authenticator.AuthenticatorBase.invoke(A
> uthenticatorBase.java:474)
>         at org.apache.catalina.core.StandardHostValve.invoke(StandardHo
> stValve.java:140)
>         at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorRepo
> rtValve.java:79)
>         at org.apache.catalina.core.StandardEngineValve.invoke(Standard
> EngineValve.java:87)
>         at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAd
> apter.java:349)
>         at org.apache.coyote.http11.Http11Processor.service(Http11Proce
> ssor.java:783)
>         at org.apache.coyote.AbstractProcessorLight.process(AbstractPro
> cessorLight.java:66)
>         at org.apache.coyote.AbstractProtocol$ConnectionHandler.process
> (AbstractProtocol.java:798)
>         at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.
> doRun(NioEndpoint.java:1434)
>         at org.apache.tomcat.util.net.SocketProcessorBase.run(
> SocketProcessorBase.java:49)
>         at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown
> Source)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown
> Source)
>         at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.r
> un(TaskThread.java:61)
>         at java.lang.Thread.run(Unknown Source)
> Caused by: class org.apache.ignite.transactions.TransactionRollbackException:
> Transaction has been rolled back: b5584ef8c51-00000000-0678-3b15
> -0000-000000000001
>         at org.apache.ignite.internal.util.IgniteUtils$11.apply(IgniteU
> tils.java:843)
>         at org.apache.ignite.internal.util.IgniteUtils$11.apply(IgniteU
> tils.java:841)
>         at org.apache.ignite.internal.util.IgniteUtils.convertException
> NoWrap(IgniteUtils.java:911)
>         ... 69 more
> Caused by: class org.apache.ignite.internal.tra
> nsactions.IgniteTxRollbackCheckedException: Transaction has been rolled
> back: b5584ef8c51-00000000-0678-3b15-0000-000000000001
>         at org.apache.ignite.internal.processors.cache.GridCacheAdapter
> .syncOp(GridCacheAdapter.java:4054)
>         at org.apache.ignite.internal.processors.cache.GridCacheAdapter
> .getAndPut0(GridCacheAdapter.java:2259)
>         at org.apache.ignite.internal.processors.cache.GridCacheAdapter
> .getAndPut(GridCacheAdapter.java:2242)
>         at org.apache.ignite.internal.processors.cache.GridCacheAdapter
> .getAndPut(GridCacheAdapter.java:2221)
>         at org.apache.ignite.internal.processors.cache.IgniteCacheProxy
> .getAndPut(IgniteCacheProxy.java:1582)
>         ... 66 more
> Caused by: class org.apache.ignite.IgniteCheckedException: Failed update
> entry in database [table=dcm.emp, entry=Entry 
> [key=a0594ef8c51-f6aac86d-689c-43cc-99ad-2a04825bb0cc,
> val=com.brocade.dcm.domain.model.
> Emp [idHash=693577784, hash=1434265603, 
> id=a0594ef8c51-f6aac86d-689c-43cc-99ad-2a04825bb0cc,
> ename=Jacky, job=SDEV1, mgr=2, hiredate=2017-05-28, sal=100000, comm=50000,
> deptid=90594ef8c51-45a6457b-518e-473c-
> aecc-7348b1ed31a5]]]
>         at org.apache.ignite.internal.processors.cache.store.GridCacheS
> toreManagerAdapter.put(GridCacheStoreManagerAdapter.java:576)
>         at org.apache.ignite.internal.processors.cache.store.GridCacheS
> toreManagerAdapter.putAll(GridCacheStoreManagerAdapter.java:609)
>         at org.apache.ignite.internal.processors.cache.transactions.Ign
> iteTxAdapter.batchStoreCommit(IgniteTxAdapter.java:1326)
>         at org.apache.ignite.internal.processors.cache.transactions.Ign
> iteTxLocalAdapter.userCommit(IgniteTxLocalAdapter.java:500)
>         at org.apache.ignite.internal.processors.cache.distributed.near
> .GridNearTxLocal.localFinish(GridNearTxLocal.java:3021)
>         at org.apache.ignite.internal.processors.cache.distributed.near
> .GridNearTxFinishFuture.finish(GridNearTxFinishFuture.java:405)
>         at org.apache.ignite.internal.processors.cache.distributed.near
> .GridNearTxLocal$16.apply(GridNearTxLocal.java:3171)
>         at org.apache.ignite.internal.processors.cache.distributed.near
> .GridNearTxLocal$16.apply(GridNearTxLocal.java:3163)
>         at org.apache.ignite.internal.util.future.GridFutureAdapter.not
> ifyListener(GridFutureAdapter.java:382)
>         at org.apache.ignite.internal.util.future.GridFutureAdapter.lis
> ten(GridFutureAdapter.java:352)
>         at org.apache.ignite.internal.processors.cache.distributed.near
> .GridNearTxLocal.commitNearTxLocalAsync(GridNearTxLocal.java:3163)
>         at org.apache.ignite.internal.processors.cache.distributed.near
> .GridNearTxLocal.optimisticPutFuture(GridNearTxLocal.java:2373)
>         at org.apache.ignite.internal.processors.cache.distributed.near
> .GridNearTxLocal.putAsync0(GridNearTxLocal.java:623)
>         at org.apache.ignite.internal.processors.cache.distributed.near
> .GridNearTxLocal.putAsync(GridNearTxLocal.java:386)
>         at org.apache.ignite.internal.processors.cache.GridCacheAdapter
> $20.op(GridCacheAdapter.java:2261)
>         at org.apache.ignite.internal.processors.cache.GridCacheAdapter
> .syncOp(GridCacheAdapter.java:4040)
>         ... 70 more
> Caused by: javax.cache.integration.CacheWriterException: Failed update
> entry in database [table=dcm.emp, entry=Entry 
> [key=a0594ef8c51-f6aac86d-689c-43cc-99ad-2a04825bb0cc,
> val=com.brocade.dcm.domain.model.Em
> p [idHash=693577784, hash=1434265603, 
> id=a0594ef8c51-f6aac86d-689c-43cc-99ad-2a04825bb0cc,
> ename=Jacky, job=SDEV1, mgr=2, hiredate=2017-05-28, sal=100000, comm=50000,
> deptid=90594ef8c51-45a6457b-518e-473c-ae
> cc-7348b1ed31a5]]]
>         at org.apache.ignite.cache.store.jdbc.CacheAbstractJdbcStore.wr
> iteUpsert(CacheAbstractJdbcStore.java:955)
>         at org.apache.ignite.cache.store.jdbc.CacheAbstractJdbcStore.wr
> ite(CacheAbstractJdbcStore.java:1006)
>         at org.apache.ignite.internal.processors.cache.store.GridCacheS
> toreManagerAdapter.put(GridCacheStoreManagerAdapter.java:568)
>         ... 85 more
> Caused by: org.postgresql.util.PSQLException: ERROR: current transaction
> is aborted, commands ignored until end of transaction block
>         at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorRespons
> e(QueryExecutorImpl.java:2476)
>         at org.postgresql.core.v3.QueryExecutorImpl.processResults(Quer
> yExecutorImpl.java:2189)
>         at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecut
> orImpl.java:300)
>         at org.postgresql.jdbc.PgStatement.executeInternal(PgStatement.
> java:428)
>         at org.postgresql.jdbc.PgStatement.execute(PgStatement.java:354)
>         at org.postgresql.jdbc.PgPreparedStatement.executeWithFlags(PgP
> reparedStatement.java:169)
>         at org.postgresql.jdbc.PgPreparedStatement.executeUpdate(PgPrep
> aredStatement.java:136)
>         at org.apache.commons.dbcp2.DelegatingPreparedStatement.execute
> Update(DelegatingPreparedStatement.java:98)
>         at org.apache.commons.dbcp2.DelegatingPreparedStatement.execute
> Update(DelegatingPreparedStatement.java:98)
>         at org.apache.ignite.cache.store.jdbc.CacheAbstractJdbcStore.wr
> iteUpsert(CacheAbstractJdbcStore.java:902)
>         ... 87 more
> Caused by: org.postgresql.util.PSQLException: ERROR: duplicate key value
> violates unique constraint "dcm_emp_ename"
>   Detail: Key (ename)=(Jacky) already exists.
>         at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorRespons
> e(QueryExecutorImpl.java:2476)
>         at org.postgresql.core.v3.QueryExecutorImpl.processResults(Quer
> yExecutorImpl.java:2189)
>         at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecut
> orImpl.java:300)
>         at org.postgresql.jdbc.PgStatement.executeInternal(PgStatement.
> java:428)
>         at org.postgresql.jdbc.PgStatement.execute(PgStatement.java:354)
>         at org.postgresql.jdbc.PgPreparedStatement.executeWithFlags(PgP
> reparedStatement.java:169)
>         at org.postgresql.jdbc.PgPreparedStatement.executeUpdate(PgPrep
> aredStatement.java:136)
>         at org.apache.commons.dbcp2.DelegatingPreparedStatement.execute
> Update(DelegatingPreparedStatement.java:98)
>         at org.apache.commons.dbcp2.DelegatingPreparedStatement.execute
> Update(DelegatingPreparedStatement.java:98)
>         at org.apache.ignite.cache.store.jdbc.CacheAbstractJdbcStore.wr
> iteUpsert(CacheAbstractJdbcStore.java:908)
>         ... 87 more
> Jun 09, 2017 7:46:19 PM org.apache.catalina.core.StandardWrapperValve
> invoke
> SEVERE: Servlet.service() for servlet [dispatcherServlet] in context with
> path [] threw exception [Request processing failed; nested exception is
> org.springframework.transaction.UnexpectedRollbackException:
> Transaction rolled back because it has been marked as rollback-only] with
> root cause
> org.springframework.transaction.UnexpectedRollbackException: Transaction
> rolled back because it has been marked as rollback-only
>         at org.springframework.transaction.support.AbstractPlatformTran
> sactionManager.commit(AbstractPlatformTransactionManager.java:724)
>         at org.springframework.transaction.interceptor.TransactionAspec
> tSupport.commitTransactionAfterReturning(TransactionAspectSu
> pport.java:504)
>         at org.springframework.transaction.interceptor.TransactionAspec
> tSupport.invokeWithinTransaction(TransactionAspectSupport.java:292)
>         at org.springframework.transaction.interceptor.TransactionInter
> ceptor.invoke(TransactionInterceptor.java:96)
>         at org.springframework.aop.framework.ReflectiveMethodInvocation
> .proceed(ReflectiveMethodInvocation.java:179)
>         at org.springframework.aop.framework.CglibAopProxy$DynamicAdvis
> edInterceptor.intercept(CglibAopProxy.java:656)
>         at com.brocade.dcm.server.service.ObjectCacheMgrService$$Enhanc
> erBySpringCGLIB$$592efdc.insertDepartmentWithEmployees(<generated>)
>         at com.brocade.dcm.server.controller.ObjectCacheMgrServiceContr
> oller.putPost(ObjectCacheMgrServiceController.java:24)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
>         at java.lang.reflect.Method.invoke(Unknown Source)
>         at org.springframework.web.method.support.InvocableHandlerMetho
> d.doInvoke(InvocableHandlerMethod.java:205)
>         at org.springframework.web.method.support.InvocableHandlerMetho
> d.invokeForRequest(InvocableHandlerMethod.java:133)
>         at org.springframework.web.servlet.mvc.method.annotation.Servle
> tInvocableHandlerMethod.invokeAndHandle(ServletInvocableHand
> lerMethod.java:116)
>         at org.springframework.web.servlet.mvc.method.annotation.Reques
> tMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHan
> dlerAdapter.java:827)
>         at org.springframework.web.servlet.mvc.method.annotation.Reques
> tMappingHandlerAdapter.handleInternal(RequestMappingHandlerA
> dapter.java:738)
>         at org.springframework.web.servlet.mvc.method.AbstractHandlerMe
> thodAdapter.handle(AbstractHandlerMethodAdapter.java:85)
>         at org.springframework.web.servlet.DispatcherServlet.doDispatch
> (DispatcherServlet.java:963)
>         at org.springframework.web.servlet.DispatcherServlet.doService(
> DispatcherServlet.java:897)
>         at org.springframework.web.servlet.FrameworkServlet.processRequ
> est(FrameworkServlet.java:970)
>         at org.springframework.web.servlet.FrameworkServlet.doPost(Fram
> eworkServlet.java:872)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:648)
>         at org.springframework.web.servlet.FrameworkServlet.service(Fra
> meworkServlet.java:846)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFi
> lter(ApplicationFilterChain.java:230)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(App
> licationFilterChain.java:165)
>         at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilte
> r.java:52)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFi
> lter(ApplicationFilterChain.java:192)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(App
> licationFilterChain.java:165)
>         at org.springframework.web.filter.RequestContextFilter.doFilter
> Internal(RequestContextFilter.java:99)
>         at org.springframework.web.filter.OncePerRequestFilter.doFilter
> (OncePerRequestFilter.java:107)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFi
> lter(ApplicationFilterChain.java:192)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(App
> licationFilterChain.java:165)
>         at org.springframework.web.filter.HttpPutFormContentFilter.doFi
> lterInternal(HttpPutFormContentFilter.java:105)
>         at org.springframework.web.filter.OncePerRequestFilter.doFilter
> (OncePerRequestFilter.java:107)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFi
> lter(ApplicationFilterChain.java:192)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(App
> licationFilterChain.java:165)
>         at org.springframework.web.filter.HiddenHttpMethodFilter.doFilt
> erInternal(HiddenHttpMethodFilter.java:81)
>         at org.springframework.web.filter.OncePerRequestFilter.doFilter
> (OncePerRequestFilter.java:107)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFi
> lter(ApplicationFilterChain.java:192)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(App
> licationFilterChain.java:165)
>         at org.springframework.web.filter.CharacterEncodingFilter.doFil
> terInternal(CharacterEncodingFilter.java:197)
>         at org.springframework.web.filter.OncePerRequestFilter.doFilter
> (OncePerRequestFilter.java:107)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFi
> lter(ApplicationFilterChain.java:192)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(App
> licationFilterChain.java:165)
>         at org.apache.catalina.core.StandardWrapperValve.invoke(Standar
> dWrapperValve.java:198)
>         at org.apache.catalina.core.StandardContextValve.invoke(Standar
> dContextValve.java:96)
>         at org.apache.catalina.authenticator.AuthenticatorBase.invoke(A
> uthenticatorBase.java:474)
>         at org.apache.catalina.core.StandardHostValve.invoke(StandardHo
> stValve.java:140)
>         at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorRepo
> rtValve.java:79)
>         at org.apache.catalina.core.StandardEngineValve.invoke(Standard
> EngineValve.java:87)
>         at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAd
> apter.java:349)
>         at org.apache.coyote.http11.Http11Processor.service(Http11Proce
> ssor.java:783)
>         at org.apache.coyote.AbstractProcessorLight.process(AbstractPro
> cessorLight.java:66)
>         at org.apache.coyote.AbstractProtocol$ConnectionHandler.process
> (AbstractProtocol.java:798)
>         at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.
> doRun(NioEndpoint.java:1434)
>         at org.apache.tomcat.util.net.SocketProcessorBase.run(
> SocketProcessorBase.java:49)
>         at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown
> Source)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown
> Source)
>         at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.r
> un(TaskThread.java:61)
>         at java.lang.Thread.run(Unknown Source)
>
> Regards,
> Muthu
>

Reply via email to