I've attached a zip archive that contains some files that may help you get up and running with Oracle.  My stuff does not give a 100% solution - there are still some issues with attachments.  You'll find these files in the zip:
 
* xwiki-db_ora_tab.sql - script to create Oracle schema
* hibernate.cfg.xml - hibernate config (I'm using the Oracle OCI JDBC driver because the thin driver apparently has some size issues with LOBS)
* xwiki.hbm.xml - hibernate mapping (I'm using a custom type for nulls/empty string conversion)
* String2.java - hibernate custom type
 
I wrote a small program to read the data from the MySQL seed database to the Oracle schema.
 
I hope this helps.
 
Regards, John
 


From: Srinivasa Pulugurtha [mailto:pulugurtha@gmail.com]
Sent: Wednesday, 1 March 2006 9:13 AM
To: xwiki-users@objectweb.org
Subject: [xwiki-users] New XWiki installation with Oracle

Hi All.

I have recently downloaded and installed xwiki on mysql. It was so smooth and impressive, we wanted to use it enterprise wide and need to get it working with Oracle for that.  So, far I haven't been able to deploy it properly.


Our Environment - Oracle 9.0.2 database, with Oracle 10g JDBC Thin drivers; Running in Tomcat (4.1.31)

Used both the schema from the attachment in the 'oracle' page of www.xwiki.org/xwiki/bin/view/AdminGuide/Oracle and also generated the schema using Hibernate hbm2ddl (Oracle Dialect).  I am unable to get this deployed with Oracle database.

1. Can someone in the list, who has success with Oracle + Xwiki (at least past where I am at), send a hibernate mapping file (xwiki.hbm.xml) that worked for Oracle?
2. In addition to the steps outlined in the page above, are there any other steps needed to get it working on Oracle?  Can this be done with reasonable config/code/db changes?
Any pointers to debugging this further are much appreciated.
Here is the problem I am currently facing.
When I point my browser to the xwiki main page (out of the box), I get the StaleObjectStateException exception while saving 'multilingual' preference.

09:55:09,975 DEBUG http-8080-Processor5 <http://nh120099:8080/xwiki/bin/view/Main/WebHome > Printer:toString:83 - listing e
ntities:
09:55:09,975 DEBUG http-8080-Processor5 <http://nh120099:8080/xwiki/bin/view/Main/WebHome > Printer:toString:90 - com.xpn.x
wiki.objects.classes.BooleanClass{prettyName=Multi-Lingual , displayType=yesno, unmodifiable=false, classType=com.xpn.xwi
ki.objects.classes.BooleanClass, number=1}
09:55:09,975 DEBUG http-8080-Processor5 < http://nh120099:8080/xwiki/bin/view/Main/WebHome > AbstractFlushingEventListener:p
erformExecutions:267 - executing flush
09:55:09,991 DEBUG http-8080-Processor5 < http://nh120099:8080/xwiki/bin/view/Main/WebHome > BasicEntityPersister:delete:201
7 - Deleting entity: [com.xpn.xwiki.objects.classes.BooleanClass#component[id,name]{name=multilingual, id=104408758}]
09:55:09,991 DEBUG http-8080-Processor5 < http://nh120099:8080/xwiki/bin/view/Main/WebHome> AbstractBatcher:logOpenPrepared
Statement:277 - about to open PreparedStatement (open PreparedStatements: 0, globally: 1)
09:55:09,991 DEBUG http-8080-Processor5 < http://nh120099:8080/xwiki/bin/view/Main/WebHome> SQL:log:311 - delete from xwiki
booleanclasses where XWN_ID=? and XWN_NAME=?
Hibernate: delete from xwikibooleanclasses where XWN_ID=? and XWN_NAME=?
09:55:09,991 DEBUG http-8080-Processor5 <http://nh120099:8080/xwiki/bin/view/Main/WebHome > AbstractBatcher:getPreparedStat
ement:365 - preparing statement
09:55:10,053 DEBUG http-8080-Processor5 <http://nh120099:8080/xwiki/bin/view/Main/WebHome > IntegerType:nullSafeSet:59 - bi
nding '104408758' to parameter: 1
09:55:10,053 DEBUG http-8080-Processor5 <http://nh120099:8080/xwiki/bin/view/Main/WebHome > StringType:nullSafeSet:59 - bin
ding 'multilingual' to parameter: 2
09:55:10,116 DEBUG http-8080-Processor5 <http://nh120099:8080/xwiki/bin/view/Main/WebHome > AbstractBatcher:logClosePrepare
dStatement:285 - about to close PreparedStatement (open PreparedStatements: 1, globally: 2)
09:55:10,131 DEBUG http-8080-Processor5 <http://nh120099:8080/xwiki/bin/view/Main/WebHome > AbstractBatcher:closePreparedSt
atement:403 - closing statement
09:55:10,147 ERROR http-8080-Processor5 <http://nh120099:8080/xwiki/bin/view/Main/WebHome > AbstractFlushingEventListener:p
erformExecutions:277 - Could not synchronize database state with session
org.hibernate.StaleObjectStateException: Row was updated or deleted by another transaction (or unsaved-value mapping was
incorrect): [com.xpn.xwiki.objects.classes.BooleanClass#<?xml version="1.0" encoding="UTF-8"?>
        <multilingual>
        <name>multilingual</name>
        <prettyName>Multi-Lingual</prettyName>
        <unmodifiable>0</unmodifiable>
        <displayType>yesno</displayType>
        <number>1</number>
        <classType>com.xpn.xwiki.objects.classes.BooleanClass</classType>
        </multilingual>
        ]
        at org.hibernate.persister.entity.BasicEntityPersister.check (BasicEntityPersister.java:1431)
        at org.hibernate.persister.entity.BasicEntityPersister.delete(BasicEntityPersister.java:2062)
        at org.hibernate.persister.entity.BasicEntityPersister.delete(BasicEntityPersister.java :2203)
        at org.hibernate.action.EntityDeleteAction.execute(EntityDeleteAction.java:59)
        at org.hibernate.engine.ActionQueue.execute(ActionQueue.java:239)
        at org.hibernate.engine.ActionQueue.executeActions (ActionQueue.java:223)
        at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:141)
        at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java :27
        4)
        at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:27)
        at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:726)
        at com.xpn.xwiki.store.XWikiHibernateStore.saveXWikiClassProperty (XWikiHibernateStore.java:1288)
        at com.xpn.xwiki.store.XWikiHibernateStore.saveXWikiClass(XWikiHibernateStore.java:1165)
        at com.xpn.xwiki.store.XWikiHibernateStore.saveXWikiDoc(XWikiHibernateStore.java :517)
        at com.xpn.xwiki.store.XWikiHibernateStore.saveXWikiDoc(XWikiHibernateStore.java:557)
        at com.xpn.xwiki.store.XWikiCacheStore.saveXWikiDoc(XWikiCacheStore.java:77)
        at com.xpn.xwiki.XWiki.saveDocument (XWiki.java:556)
        at com.xpn.xwiki.XWiki.getPrefsClass(XWiki.java:1418)
        at com.xpn.xwiki.XWiki.initXWiki(XWiki.java:405)
        at com.xpn.xwiki.XWiki.<init>(XWiki.java:343)
        at com.xpn.xwiki.XWiki.getMainXWiki (XWiki.java:134)
        at com.xpn.xwiki.XWiki.getXWiki(XWiki.java:202)
        at com.xpn.xwiki.web.ViewEditAction.execute(ViewEditAction.java:117)
        at org.apache.struts.action.RequestProcessor.processActionPerform (RequestProcessor.java:421)
        at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:226)
        at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1164)
        at org.apache.struts.action.ActionServlet.doGet (ActionServlet.java:397)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:696)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:809)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:200)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:146)
        at com.xpn.xwiki.web.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java :127)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:146)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:209)
        at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
        at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
        at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
        at org.apache.catalina.core.StandardContextValve.invoke (StandardContextValve.java:144)
        at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
        at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java :433)
        at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
        at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2358)
        at org.apache.catalina.core.StandardHostValve.invoke (StandardHostValve.java:133)
        at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
        at org.apache.catalina.valves.ErrorDispatcherValve.invoke ( ErrorDispatcherValve.java:118)
        at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java :116)
        at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594)
        at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
        at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:127)
        at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext (StandardPipeline.java:596)
        at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
        at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
        at org.apache.coyote.tomcat4.CoyoteAdapter.service (CoyoteAdapter.java:152)
        at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
        at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java :705)
        at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
        at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
        at java.lang.Thread.run (Thread.java:534)
        09:55:10,147 DEBUG http-8080-Processor5 <http://nh120099:8080/xwiki/bin/view/Main/WebHome > XWikiException:<init>:175 - Err
        or number 3222 in 3: Exception while saving class XWiki.XWikiPreferences
        Wrapped Exception: Row was updated or deleted by another transaction (or unsaved-value mapping was incorrect): [com.xpn.
        xwiki.objects.classes.BooleanClass#<?xml version="1.0" encoding="UTF-8"?>
        <multilingual>
        <name>multilingual</name>
        <prettyName>Multi-Lingual</prettyName>
        <unmodifiable>0</unmodifiable>
        <displayType>yesno</displayType>
        <number>1</number>
        <classType> com.xpn.xwiki.objects.classes.BooleanClass</classType>
        </multilingual>
        ]
        org.hibernate.StaleObjectStateException: Row was updated or deleted by another transaction (or unsaved-value mapping was
        incorrect): [com.xpn.xwiki.objects.classes.BooleanClass#<?xml version="1.0" encoding="UTF-8"?>
        <multilingual>
        <name>multilingual</name>
        <prettyName>Multi-Lingual</prettyName>
        <unmodifiable>0</unmodifiable>
        <displayType>yesno</displayType>
        <number>1</number>
        <classType>com.xpn.xwiki.objects.classes.BooleanClass </classType>
        </multilingual>
        ]
        at org.hibernate.persister.entity.BasicEntityPersister.check(BasicEntityPersister.java:1431)
        at org.hibernate.persister.entity.BasicEntityPersister.delete (BasicEntityPersister.java:2062)
        at org.hibernate.persister.entity.BasicEntityPersister.delete(BasicEntityPersister.java:2203)
        at org.hibernate.action.EntityDeleteAction.execute(EntityDeleteAction.java :59)
        at org.hibernate.engine.ActionQueue.execute(ActionQueue.java:239)
        at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:223)
        at org.hibernate.engine.ActionQueue.executeActions (ActionQueue.java:141)
        at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:27
        4)
        at org.hibernate.event.def.DefaultFlushEventListener.onFlush (DefaultFlushEventListener.java:27)
        at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:726)
        at com.xpn.xwiki.store.XWikiHibernateStore.saveXWikiClassProperty(XWikiHibernateStore.java:1288)
        at com.xpn.xwiki.store.XWikiHibernateStore.saveXWikiClass(XWikiHibernateStore.java:1165)
        at com.xpn.xwiki.store.XWikiHibernateStore.saveXWikiDoc(XWikiHibernateStore.java:517)
        at com.xpn.xwiki.store.XWikiHibernateStore.saveXWikiDoc (XWikiHibernateStore.java:557)
        at com.xpn.xwiki.store.XWikiCacheStore.saveXWikiDoc(XWikiCacheStore.java:77)
        at com.xpn.xwiki.XWiki.saveDocument(XWiki.java:556)
        at com.xpn.xwiki.XWiki.getPrefsClass (XWiki.java:1418)
        at com.xpn.xwiki.XWiki.initXWiki(XWiki.java:405)
        at com.xpn.xwiki.XWiki.<init>(XWiki.java:343)
        at com.xpn.xwiki.XWiki.getMainXWiki(XWiki.java:134)
        at com.xpn.xwiki.XWiki.getXWiki (XWiki.java:202)
        at com.xpn.xwiki.web.ViewEditAction.execute(ViewEditAction.java:117)
        at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:421)
        at org.apache.struts.action.RequestProcessor.process (RequestProcessor.java:226)
        at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1164)
        at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:397)
        at javax.servlet.http.HttpServlet.service (HttpServlet.java:696)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:809)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:200)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:146)
        at com.xpn.xwiki.web.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:127)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:166)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:146)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java :209)
        at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
        at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
        at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:144)
        at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext (StandardPipeline.java:596)
        at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
        at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
        at org.apache.catalina.core.StandardContext.invoke (StandardContext.java:2358)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:133)
        at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java :596)
        at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:118)
        at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java :594)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:116)
        at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594)
        at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
        at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
        at org.apache.catalina.core.StandardEngineValve.invoke (StandardEngineValve.java:127)
        at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
        at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java :433)
        at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
        at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:152)
        at org.apache.coyote.http11.Http11Processor.process (Http11Processor.java:799)
        at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
        at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java :577)
        at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
        at java.lang.Thread.run(Thread.java:534)
        09:55:10,162 DEBUG http-8080-Processor5 < http://nh120099:8080/xwiki/bin/view/Main/WebHome> XWikiException:<init>:175 - Err
        or number 3221 in 3: Exception while saving class XWiki.XWikiPreferences
        Wrapped Exception: Error number 3222 in 3: Exception while saving class XWiki.XWikiPreferences
        Wrapped Exception: Row was updated or deleted by another transaction (or unsaved-value mapping was incorrect): [com.xpn.
        xwiki.objects.classes.BooleanClass#<?xml version="1.0" encoding="UTF-8"?>
        <multilingual>
        <name>multilingual</name>
        <prettyName>Multi-Lingual</prettyName>
        <unmodifiable>0</unmodifiable>
        <displayType>yesno</displayType>
        <number>1</number>
        <classType> com.xpn.xwiki.objects.classes.BooleanClass</classType>
        </multilingual>
        ]
        com.xpn.xwiki.XWikiException: Error number 3222 in 3: Exception while saving class XWiki.XWikiPreferences
        Wrapped Exception: Row was updated or deleted by another transaction (or unsaved-value mapping was incorrect): [com.xpn.
        xwiki.objects.classes.BooleanClass#<?xml version="1.0" encoding="UTF-8"?>
        <multilingual>
        <name>multilingual</name>
        <prettyName>Multi-Lingual</prettyName>
        <unmodifiable>0</unmodifiable>
        <displayType>yesno</displayType>
        <number>1</number>
        <classType> com.xpn.xwiki.objects.classes.BooleanClass</classType>
        </multilingual>
        ]
        at com.xpn.xwiki.store.XWikiHibernateStore.saveXWikiClassProperty(XWikiHibernateStore.java:1304)
        at com.xpn.xwiki.store.XWikiHibernateStore.saveXWikiClass(XWikiHibernateStore.java:1165)
        at com.xpn.xwiki.store.XWikiHibernateStore.saveXWikiDoc(XWikiHibernateStore.java:517)
        at com.xpn.xwiki.store.XWikiHibernateStore.saveXWikiDoc (XWikiHibernateStore.java:557)
        at com.xpn.xwiki.store.XWikiCacheStore.saveXWikiDoc(XWikiCacheStore.java:77)
        at com.xpn.xwiki.XWiki.saveDocument(XWiki.java:556)
        at com.xpn.xwiki.XWiki.getPrefsClass (XWiki.java:1418)
        at com.xpn.xwiki.XWiki.initXWiki(XWiki.java:405)
        at com.xpn.xwiki.XWiki.<init>(XWiki.java:343)
        at com.xpn.xwiki.XWiki.getMainXWiki(XWiki.java:134)
        at com.xpn.xwiki.XWiki.getXWiki (XWiki.java:202)
        at com.xpn.xwiki.web.ViewEditAction.execute(ViewEditAction.java:117)
        at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:421)
        at org.apache.struts.action.RequestProcessor.process (RequestProcessor.java:226)
        at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1164)
        at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:397)
        at javax.servlet.http.HttpServlet.service (HttpServlet.java:696)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:809)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:200)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:146)
        at com.xpn.xwiki.web.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:127)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:166)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:146)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java :209)
        at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
        at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
        at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:144)
        at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext (StandardPipeline.java:596)
        at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
        at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
        at org.apache.catalina.core.StandardContext.invoke (StandardContext.java:2358)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:133)
        at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java :596)
        at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:118)
        at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java :594)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:116)
        at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594)
        at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
        at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
        at org.apache.catalina.core.StandardEngineValve.invoke (StandardEngineValve.java:127)
        at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
        at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java :433)
        at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
        at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:152)
        at org.apache.coyote.http11.Http11Processor.process (Http11Processor.java:799)
        at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
        at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java :577)
        at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
        at java.lang.Thread.run(Thread.java:534)

        Wrapped Exception:

        org.hibernate.StaleObjectStateException : Row was updated or deleted by another transaction (or unsaved-value mapping was
        incorrect): [com.xpn.xwiki.objects.classes.BooleanClass#<?xml version="1.0" encoding="UTF-8"?>
        <multilingual>
        <name>multilingual</name>
        <prettyName>Multi-Lingual</prettyName>
        <unmodifiable>0</unmodifiable>
        <displayType>yesno</displayType>
        <number>1</number>
        <classType>com.xpn.xwiki.objects.classes.BooleanClass</classType>
        </multilingual>
        ]
        at org.hibernate.persister.entity.BasicEntityPersister.check (BasicEntityPersister.java:1431)
        at org.hibernate.persister.entity.BasicEntityPersister.delete(BasicEntityPersister.java:2062)
        at org.hibernate.persister.entity.BasicEntityPersister.delete(BasicEntityPersister.java :2203)
        at org.hibernate.action.EntityDeleteAction.execute(EntityDeleteAction.java:59)
        at org.hibernate.engine.ActionQueue.execute(ActionQueue.java:239)
        at org.hibernate.engine.ActionQueue.executeActions (ActionQueue.java:223)
        at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:141)
        at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java :27
        4)
        at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:27)
        at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:726)
        at com.xpn.xwiki.store.XWikiHibernateStore.saveXWikiClassProperty (XWikiHibernateStore.java:1288)
        at com.xpn.xwiki.store.XWikiHibernateStore.saveXWikiClass(XWikiHibernateStore.java:1165)
        at com.xpn.xwiki.store.XWikiHibernateStore.saveXWikiDoc(XWikiHibernateStore.java :517)
        at com.xpn.xwiki.store.XWikiHibernateStore.saveXWikiDoc(XWikiHibernateStore.java:557)
        at com.xpn.xwiki.store.XWikiCacheStore.saveXWikiDoc(XWikiCacheStore.java:77)
        at com.xpn.xwiki.XWiki.saveDocument (XWiki.java:556)
        at com.xpn.xwiki.XWiki.getPrefsClass(XWiki.java:1418)
        at com.xpn.xwiki.XWiki.initXWiki(XWiki.java:405)
        at com.xpn.xwiki.XWiki.<init>(XWiki.java:343)
        at com.xpn.xwiki.XWiki.getMainXWiki (XWiki.java:134)
        at com.xpn.xwiki.XWiki.getXWiki(XWiki.java:202)
        at com.xpn.xwiki.web.ViewEditAction.execute(ViewEditAction.java:117)
        at org.apache.struts.action.RequestProcessor.processActionPerform (RequestProcessor.java:421)
        at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:226)
        at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1164)
        at org.apache.struts.action.ActionServlet.doGet (ActionServlet.java:397)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:696)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:809)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:200)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:146)
        at com.xpn.xwiki.web.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java :127)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:146)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:209)
        at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
        at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
        at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
        at org.apache.catalina.core.StandardContextValve.invoke (StandardContextValve.java:144)
        at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
        at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java :433)
        at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
        at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2358)
        at org.apache.catalina.core.StandardHostValve.invoke (StandardHostValve.java:133)
        at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
        at org.apache.catalina.valves.ErrorDispatcherValve.invoke ( ErrorDispatcherValve.java:118)
        at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java :116)
        at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594)
        at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
        at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:127)
        at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext (StandardPipeline.java:596)
        at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
        at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
        at org.apache.coyote.tomcat4.CoyoteAdapter.service (CoyoteAdapter.java:152)
        at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
        at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java :705)
        at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
        at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
        at java.lang.Thread.run (Thread.java:534)
        09:55:10,240 DEBUG http-8080-Processor5 <http://nh120099:8080/xwiki/bin/view/Main/WebHome > XWikiException:<init>:175 - Err
        or number 3201 in 3: Exception while saving document XWiki.XWikiPreferences
        Wrapped Exception: Error number 3221 in 3: Exception while saving class XWiki.XWikiPreferences
        Wrapped Exception: Error number 3222 in 3: Exception while saving class XWiki.XWikiPreferences
        Wrapped Exception: Row was updated or deleted by another transaction (or unsaved-value mapping was incorrect): [com.xpn.
        xwiki.objects.classes.BooleanClass#<?xml version="1.0" encoding="UTF-8"?>
        <multilingual>
        <name>multilingual</name>
        <prettyName>Multi-Lingual</prettyName>
        <unmodifiable>0</unmodifiable>
        <displayType>yesno</displayType>
        <number>1</number>
        <classType> com.xpn.xwiki.objects.classes.BooleanClass</classType>
        </multilingual>
        ]
        com.xpn.xwiki.XWikiException: Error number 3221 in 3: Exception while saving class XWiki.XWikiPreferences
        Wrapped Exception: Error number 3222 in 3: Exception while saving class XWiki.XWikiPreferences
        Wrapped Exception: Row was updated or deleted by another transaction (or unsaved-value mapping was incorrect): [com.xpn.
        xwiki.objects.classes.BooleanClass#<?xml version="1.0" encoding="UTF-8"?>
        <multilingual>
        <name>multilingual</name>
        <prettyName>Multi-Lingual</prettyName>
        <unmodifiable>0</unmodifiable>
        <displayType>yesno</displayType>
        <number>1</number>
        <classType> com.xpn.xwiki.objects.classes.BooleanClass</classType>
        </multilingual>
        ]
        at com.xpn.xwiki.store.XWikiHibernateStore.saveXWikiClass(XWikiHibernateStore.java:1173)
        at com.xpn.xwiki.store.XWikiHibernateStore.saveXWikiDoc(XWikiHibernateStore.java:517)
        at com.xpn.xwiki.store.XWikiHibernateStore.saveXWikiDoc(XWikiHibernateStore.java:557)
        at com.xpn.xwiki.store.XWikiCacheStore.saveXWikiDoc (XWikiCacheStore.java:77)
        at com.xpn.xwiki.XWiki.saveDocument(XWiki.java:556)
        at com.xpn.xwiki.XWiki.getPrefsClass(XWiki.java:1418)
        at com.xpn.xwiki.XWiki.initXWiki(XWiki.java:405)
        at com.xpn.xwiki.XWiki.<init>(XWiki.java:343)
        at com.xpn.xwiki.XWiki.getMainXWiki(XWiki.java:134)
        at com.xpn.xwiki.XWiki.getXWiki(XWiki.java:202)
        at com.xpn.xwiki.web.ViewEditAction.execute (ViewEditAction.java:117)
        at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:421)
        at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:226)
        at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1164)
        at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:397)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java :696)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:809)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:200)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter (ApplicationFilterChain.java:146)
        at com.xpn.xwiki.web.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:127)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java :166)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:146)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:209)
        at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
        at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
        at org.apache.catalina.core.ContainerBase.invoke (ContainerBase.java:948)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:144)
        at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java :596)
        at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
        at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
        at org.apache.catalina.core.StandardContext.invoke (StandardContext.java:2358)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:133)
        at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java :596)
        at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:118)
        at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java :594)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:116)
        at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594)
        at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
        at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
        at org.apache.catalina.core.StandardEngineValve.invoke (StandardEngineValve.java:127)
        at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
        at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java :433)
        at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
        at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:152)
        at org.apache.coyote.http11.Http11Processor.process (Http11Processor.java:799)
        at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
        at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java :577)
        at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
        at java.lang.Thread.run(Thread.java:534)
        ======================

        Please let me know if you need further information.
        Thanks in advance,
        Srini