cancel
Showing results for 
Search instead for 
Did you mean: 

Revert Code

thaneshk
Champ in-the-making
Champ in-the-making
Hi,

CAn someone tell me whether i am going on the right path.



 
         NodeService nodeService = registry.getNodeService();
         
         CheckOutCheckInService check = registry.getCheckOutCheckInService();
         
         VersionService version = registry.getVersionService();
         
         ContentService contentService = registry.getContentService();

NodeRef nodeRef = JCRNodeRef.getNodeRef(contentNode);

                        
            
            NodeRef workingCopy1 = check.checkout(nodeRef);      
            
            ContentWriter tempWriter = contentService.getWriter(workingCopy1, ContentModel.PROP_CONTENT, false);
            //assertNotNull(tempWriter);
            tempWriter.putContent(CONTENT_2);
            String contentUrl = tempWriter.getContentUrl();
                        
            System.out.println("Conent is going to be checked back in - MAJOR VERSION");
            Map<String, Serializable> versionProperties3 = new HashMap<String, Serializable>();
            versionProperties3.put(Version.PROP_DESCRIPTION, "description");
            versionProperties3.put(VersionModel.PROP_VERSION_TYPE, VersionType.MAJOR);
            
            
            NodeRef nodeRef2 = check.checkin(workingCopy1, versionProperties3, contentUrl, false);   
            //contentNode.save();
            contentNode.save();
            
            System.out.println("Going to be checked out Again  -2 ");
            
            NodeRef workingCopy2 = check.checkout(nodeRef2);
            
            ContentWriter tempWriter2 = contentService.getWriter(workingCopy2, ContentModel.PROP_CONTENT, false);
            //assertNotNull(tempWriter);
            tempWriter2.putContent(CONTENT_3);
            String contentUrl2 = tempWriter2.getContentUrl();
            
            System.out.println("Conent is going to be checked back in - MAJOR VERSION");
            Map<String, Serializable> versionProperties4 = new HashMap<String, Serializable>();
            versionProperties4.put(Version.PROP_DESCRIPTION, "description");
            versionProperties4.put(VersionModel.PROP_VERSION_TYPE, VersionType.MAJOR);
            NodeRef contentNode3 = check.checkin(workingCopy2, versionProperties4, contentUrl2, false);   
            
            System.out.println("1");
            
            
            version.revert(contentNode3);


What i am worried abt is whther i am using version.revert(contentNode3) properly. Should i be passing some other variable to be testing this?

Cheers

-Thanesh
2 REPLIES 2

thaneshk
Champ in-the-making
Champ in-the-making
Intro - I am trying to test revert functionality along with checking and checking out funcationality. I get the node value of the content i have created. then i checkout, checkin to a major version - thus creatin 2.0 and puting in a peice of content. then i checkout again and checking again to another major version thus creating 3.0. now what i want to do is revert to 2.0 content and properties but i know that the versionlabel will remain the same at 3.0 right?

thaneshk
Champ in-the-making
Champ in-the-making
This is my error



10:53:06,255 INFO  [DefaultLoadEventListener] Error performing load command
     [exec] org.hibernate.ObjectDeletedException: The object with that id was deleted: [org.alfresco.repo.domain.hibernate.NodeImpl#NodeKey[ id=6bc6865f-c9e4-11da-8a6c-7d70550712c1, protocol=workspace, identifier=SpacesStore]]
     [exec] at org.hibernate.event.def.DefaultLoadEventListener.throwObjectDeletedIfNecessary(DefaultLoadEventListener.java:415)
     [exec] at org.hibernate.event.def.DefaultLoadEventListener.loadFromSessionCache(DefaultLoadEventListener.java:405)
     [exec] at org.hibernate.event.def.DefaultLoadEventListener.doLoad(DefaultLoadEventListener.java:310)
     [exec] at org.hibernate.event.def.DefaultLoadEventListener.load(DefaultLoadEventListener.java:123)
     [exec] at org.hibernate.event.def.DefaultLoadEventListener.proxyOrLoad(DefaultLoadEventListener.java:177)
     [exec] at org.hibernate.event.def.DefaultLoadEventListener.onLoad(DefaultLoadEventListener.java:87)
     [exec] at org.hibernate.impl.SessionImpl.fireLoad(SessionImpl.java:891)
     [exec] at org.hibernate.impl.SessionImpl.get(SessionImpl.java:828)
     [exec] at org.hibernate.impl.SessionImpl.get(SessionImpl.java:821)
     [exec] at org.springframework.orm.hibernate3.HibernateTemplate$1.doInHibernate(HibernateTemplate.java:451)
     [exec] at org.springframework.orm.hibernate3.HibernateTemplate.execute(HibernateTemplate.java:365)
     [exec] at org.springframework.orm.hibernate3.HibernateTemplate.get(HibernateTemplate.java:445)
     [exec] at org.springframework.orm.hibernate3.HibernateTemplate.get(HibernateTemplate.java:439)
     [exec] at org.alfresco.repo.node.db.hibernate.HibernateNodeDaoServiceImpl.getNode(HibernateNodeDaoServiceImpl.java:211)
     [exec] at sun.reflect.GeneratedMethodAccessor82.invoke(Unknown Source)
     [exec] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
     [exec] at java.lang.reflect.Method.invoke(Method.java:585)
     [exec] at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:335)
     [exec] at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:181)
     [exec] at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:148)
     [exec] at org.alfresco.repo.transaction.NodeDaoServiceTransactionInterceptor.invoke(NodeDaoServiceTransactionInterceptor.java:61)
     [exec] at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:170)
     [exec] at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:176)
     [exec] at $Proxy57.getNode(Unknown Source)
     [exec] at org.alfresco.repo.node.db.DbNodeServiceImpl.exists(DbNodeServiceImpl.java:116)
     [exec] at sun.reflect.GeneratedMethodAccessor100.invoke(Unknown Source)
     [exec] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
     [exec] at java.lang.reflect.Method.invoke(Method.java:585)
     [exec] at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:335)
     [exec] at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:165)
     [exec] at $Proxy58.exists(Unknown Source)
     [exec] at sun.reflect.GeneratedMethodAccessor100.invoke(Unknown Source)
     [exec] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
     [exec] at java.lang.reflect.Method.invoke(Method.java:585)
     [exec] at org.alfresco.repo.service.StoreRedirectorProxyFactory$RedirectorInvocationHandler.invoke(StoreRedirectorProxyFactory.java:212)
     [exec] at $Proxy59.exists(Unknown Source)
     [exec] at org.alfresco.repo.action.executer.CreateVersionActionExecuter.executeImpl(CreateVersionActionExecuter.java:59)
     [exec] at org.alfresco.repo.action.executer.ActionExecuterAbstractBase.execute(ActionExecuterAbstractBase.java:91)
     [exec] at org.alfresco.repo.action.ActionServiceImpl.directActionExecution(ActionServiceImpl.java:472)
     [exec] at org.alfresco.repo.action.executer.CompositeActionExecuter.executeImpl(CompositeActionExecuter.java:64)
     [exec] at org.alfresco.repo.action.executer.ActionExecuterAbstractBase.execute(ActionExecuterAbstractBase.java:91)
     [exec] at org.alfresco.repo.action.ActionServiceImpl.directActionExecution(ActionServiceImpl.java:472)
     [exec] at org.alfresco.repo.action.ActionServiceImpl.executeActionImpl(ActionServiceImpl.java:404)
     [exec] at org.alfresco.repo.action.ActionServiceImpl.executeAction(ActionServiceImpl.java:331)
     [exec] at org.alfresco.repo.action.ActionServiceImpl.executeAction(ActionServiceImpl.java:319)
     [exec] at org.alfresco.repo.action.ActionServiceImpl.executeAction(ActionServiceImpl.java:480)
     [exec] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
     [exec] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
     [exec] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
     [exec] at java.lang.reflect.Method.invoke(Method.java:585)
     [exec] at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:335)
     [exec] at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:181)
     [exec] at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:148)
     [exec] at org.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:116)
     [exec] at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:170)
     [exec] at org.alfresco.repo.security.permissions.impl.AlwaysProceedMethodInterceptor.invoke(AlwaysProceedMethodInterceptor.java:32)
     [exec] at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:170)
     [exec] at org.alfresco.repo.security.permissions.impl.ExceptionTranslatorMethodInterceptor.invoke(ExceptionTranslatorMethodInterceptor.java:37)
     [exec] at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:170)
     [exec] at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96)
     [exec] at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:170)
     [exec] at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:176)
     [exec] at $Proxy74.executeAction(Unknown Source)
     [exec] at org.alfresco.repo.rule.RuleServiceImpl.executePendingRule(RuleServiceImpl.java:779)
     [exec] at org.alfresco.repo.rule.RuleServiceImpl.executePendingRules(RuleServiceImpl.java:715)
     [exec] at org.alfresco.repo.rule.RuleTransactionListener.beforeCommit(RuleTransactionListener.java:61)
     [exec] at org.alfresco.repo.transaction.AlfrescoTransactionSupport$TransactionSynchronizationImpl.beforeCommit(AlfrescoTransactionSupport.java:581)
     [exec] at org.springframework.transaction.support.AbstractPlatformTransactionManager.triggerBeforeCommit(AbstractPlatformTransactionManager.java:657)
     [exec] at org.springframework.transaction.support.AbstractPlatformTransactionManager.processCommit(AbstractPlatformTransactionManager.java:482)
     [exec] at org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(AbstractPlatformTransactionManager.java:469)
     [exec] at org.springframework.transaction.interceptor.TransactionAspectSupport.doCommitTransactionAfterReturning(TransactionAspectSupport.java:266)
     [exec] at org.alfresco.util.transaction.SpringAwareUserTransaction.commit(SpringAwareUserTransaction.java:396)
     [exec] at com.xpflow.dam.poc.repository.CheckoutServlet.doPost(CheckoutServlet.java:215)
     [exec] at com.xpflow.dam.poc.repository.CheckoutServlet.doGet(CheckoutServlet.java:71)
     [exec] at javax.servlet.http.HttpServlet.service(HttpServlet.java:697)
     [exec] at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
     [exec] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
     [exec] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
     [exec] at com.xpflow.admin.access.RequestServiceHandler.doFilter(RequestServiceHandler.java:69)
     [exec] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
     [exec] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
     [exec] at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:81)
     [exec] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
     [exec] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
     [exec] at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
     [exec] at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
     [exec] at org.jboss.web.tomcat.security.CustomPrincipalValve.invoke(CustomPrincipalValve.java:39)
     [exec] at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:153)
     [exec] at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:407)
     [exec] at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:59)
     [exec] at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
     [exec] at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
     [exec] at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
     [exec] at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
     [exec] at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856)
     [exec] at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744)
     [exec] at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
     [exec] at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
     [exec] at java.lang.Thread.run(Thread.java:595)
     [exec] 10:53:06,345 INFO  [DefaultLoadEventListener] Error performing load command
     [exec] org.hibernate.ObjectDeletedException: The object with that id was deleted: [org.alfresco.repo.domain.hibernate.NodeImpl#NodeKey[ id=6bc6865f-c9e4-11da-8a6c-7d70550712c1, protocol=workspace, identifier=SpacesStore]]
     [exec] at org.hibernate.event.def.DefaultLoadEventListener.throwObjectDeletedIfNecessary(DefaultLoadEventListener.java:415)
     [exec] at org.hibernate.event.def.DefaultLoadEventListener.loadFromSessionCache(DefaultLoadEventListener.java:405)
     [exec] at org.hibernate.event.def.DefaultLoadEventListener.doLoad(DefaultLoadEventListener.java:310)
     [exec] at org.hibernate.event.def.DefaultLoadEventListener.load(DefaultLoadEventListener.java:123)
     [exec] at org.hibernate.event.def.DefaultLoadEventListener.proxyOrLoad(DefaultLoadEventListener.java:177)
     [exec] at org.hibernate.event.def.DefaultLoadEventListener.onLoad(DefaultLoadEventListener.java:87)
     [exec] at org.hibernate.impl.SessionImpl.fireLoad(SessionImpl.java:891)
     [exec] at org.hibernate.impl.SessionImpl.get(SessionImpl.java:828)
     [exec] at org.hibernate.impl.SessionImpl.get(SessionImpl.java:821)
     [exec] at org.springframework.orm.hibernate3.HibernateTemplate$1.doInHibernate(HibernateTemplate.java:451)
     [exec] at org.springframework.orm.hibernate3.HibernateTemplate.execute(HibernateTemplate.java:365)
     [exec] at org.springframework.orm.hibernate3.HibernateTemplate.get(HibernateTemplate.java:445)
     [exec] at org.springframework.orm.hibernate3.HibernateTemplate.get(HibernateTemplate.java:439)
     [exec] at org.alfresco.repo.node.db.hibernate.HibernateNodeDaoServiceImpl.getNode(HibernateNodeDaoServiceImpl.java:211)
     [exec] at sun.reflect.GeneratedMethodAccessor82.invoke(Unknown Source)
     [exec] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
     [exec] at java.lang.reflect.Method.invoke(Method.java:585)
     [exec] at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:335)
     [exec] at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:181)
     [exec] at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:148)
     [exec] at org.alfresco.repo.transaction.NodeDaoServiceTransactionInterceptor.invoke(NodeDaoServiceTransactionInterceptor.java:61)
     [exec] at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:170)
     [exec] at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:176)
     [exec] at $Proxy57.getNode(Unknown Source)
     [exec] at org.alfresco.repo.node.db.DbNodeServiceImpl.getNodeNotNull(DbNodeServiceImpl.java:97)
     [exec] at org.alfresco.repo.node.db.DbNodeServiceImpl.getProperties(DbNodeServiceImpl.java:803)
     [exec] at sun.reflect.GeneratedMethodAccessor105.invoke(Unknown Source)
     [exec] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
     [exec] at java.lang.reflect.Method.invoke(Method.java:585)
     [exec] at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:335)
     [exec] at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:165)
     [exec] at $Proxy58.getProperties(Unknown Source)
     [exec] at sun.reflect.GeneratedMethodAccessor105.invoke(Unknown Source)
     [exec] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
     [exec] at java.lang.reflect.Method.invoke(Method.java:585)
     [exec] at org.alfresco.repo.service.StoreRedirectorProxyFactory$RedirectorInvocationHandler.invoke(StoreRedirectorProxyFactory.java:212)
     [exec] at $Proxy59.getProperties(Unknown Source)
     [exec] at org.alfresco.repo.node.integrity.PropertiesIntegrityEvent.checkAllProperties(PropertiesIntegrityEvent.java:80)
     [exec] at org.alfresco.repo.node.integrity.PropertiesIntegrityEvent.checkIntegrity(PropertiesIntegrityEvent.java:57)
     [exec] at org.alfresco.repo.node.integrity.IntegrityChecker.processAllEvents(IntegrityChecker.java:606)
     [exec] at org.alfresco.repo.node.integrity.IntegrityChecker.checkIntegrity(IntegrityChecker.java:529)
     [exec] at org.alfresco.repo.transaction.AlfrescoTransactionSupport$TransactionSynchronizationImpl.flush(AlfrescoTransactionSupport.java:519)
     [exec] at org.alfresco.repo.transaction.AlfrescoTransactionSupport$TransactionSynchronizationImpl.beforeCommit(AlfrescoTransactionSupport.java:585)
     [exec] at org.springframework.transaction.support.AbstractPlatformTransactionManager.triggerBeforeCommit(AbstractPlatformTransactionManager.java:657)
     [exec] at org.springframework.transaction.support.AbstractPlatformTransactionManager.processCommit(AbstractPlatformTransactionManager.java:482)
     [exec] at org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(AbstractPlatformTransactionManager.java:469)
     [exec] at org.springframework.transaction.interceptor.TransactionAspectSupport.doCommitTransactionAfterReturning(TransactionAspectSupport.java:266)
     [exec] at org.alfresco.util.transaction.SpringAwareUserTransaction.commit(SpringAwareUserTransaction.java:396)
     [exec] at com.xpflow.dam.poc.repository.CheckoutServlet.doPost(CheckoutServlet.java:215)
     [exec] at com.xpflow.dam.poc.repository.CheckoutServlet.doGet(CheckoutServlet.java:71)
     [exec] at javax.servlet.http.HttpServlet.service(HttpServlet.java:697)
     [exec] at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
     [exec] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
     [exec] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
     [exec] at com.xpflow.admin.access.RequestServiceHandler.doFilter(RequestServiceHandler.java:69)
     [exec] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
     [exec] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
     [exec] at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:81)
     [exec] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
     [exec] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
     [exec] at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
     [exec] at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
     [exec] at org.jboss.web.tomcat.security.CustomPrincipalValve.invoke(CustomPrincipalValve.java:39)
     [exec] at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:153)
     [exec] at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:407)
     [exec] at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:59)
     [exec] at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
     [exec] at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
     [exec] at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
     [exec] at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
     [exec] at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856)
     [exec] at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744)
     [exec] at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
     [exec] at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
     [exec] at java.lang.Thread.run(Thread.java:595)