Details
-
Bug
-
Resolution: Fixed
-
Low
-
None
Description
NOTE: This bug report is for Confluence Cloud. Using Confluence Server? See the corresponding bug report.
Steps to reproduce:
- Like a comment on any page in a space.
- Make a space or full site backup that doesn't include comments.
- Try to import that backup.
The full stack trace:
2012-12-20 09:35:02,382 ERROR [Long running task: Importing data] [confluence.importexport.xmlimport.BackupImporter] importEntities Cannot import the entities: -- url: /wiki/admin/importspace/doimportconfluencespace.action | userName: nmason | referer: https://nmason.jira-dev.com/wiki/admin/importspace/importconfluencespace.action | action: doimportconfluencespace com.atlassian.confluence.importexport.ImportExportException: Unable to complete import: Error while importing backup: not-null property references a null or transient value: com.atlassian.confluence.like.LikeEntity.content at com.atlassian.confluence.importexport.xmlimport.DefaultXmlImporter.doImport(DefaultXmlImporter.java:71) at com.atlassian.confluence.importexport.xmlimport.BackupImporter.importEntities(BackupImporter.java:337) at com.atlassian.confluence.importexport.xmlimport.BackupImporter.importEverything(BackupImporter.java:305) at com.atlassian.confluence.importexport.xmlimport.FileBackupImporter.importEverything(FileBackupImporter.java:110) at com.atlassian.confluence.importexport.xmlimport.BackupImporter$1.doInTransactionWithoutResult(BackupImporter.java:154) at org.springframework.transaction.support.TransactionCallbackWithoutResult.doInTransaction(TransactionCallbackWithoutResult.java:33) at com.atlassian.confluence.importexport.xmlimport.RestorePluginStateStoreTransactionCallbackDecorator.doInTransaction(RestorePluginStateStoreTransactionCallbackDecorator.java:47) at org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:128) at com.atlassian.confluence.importexport.xmlimport.BackupImporter.doImportInternal(BackupImporter.java:147) at com.atlassian.confluence.importexport.Importer.doImport(Importer.java:75) at com.atlassian.confluence.importexport.DefaultImportExportManager.doImport(DefaultImportExportManager.java:67) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:307) at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149) at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:106) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204) at $Proxy89.doImport(Unknown Source) at com.atlassian.confluence.importexport.actions.ImportLongRunningTask.runInternal(ImportLongRunningTask.java:81) at com.atlassian.confluence.util.longrunning.ConfluenceAbstractLongRunningTask.run(ConfluenceAbstractLongRunningTask.java:26) at com.atlassian.confluence.util.longrunning.ManagedTask.run(ManagedTask.java:35) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:662) Caused by: net.sf.hibernate.PropertyValueException: not-null property references a null or transient value: com.atlassian.confluence.like.LikeEntity.content at com.atlassian.confluence.importexport.xmlimport.parser.BackupParser.endElement(BackupParser.java:53) at org.apache.xerces.parsers.AbstractSAXParser.endElement(Unknown Source) at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanEndElement(Unknown Source) at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source) at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source) at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source) at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source) at org.apache.xerces.parsers.XMLParser.parse(Unknown Source) at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source) at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source) at com.atlassian.security.xml.RestrictedXMLReader.parse(RestrictedXMLReader.java:103) at com.atlassian.confluence.importexport.xmlimport.DefaultXmlImporter.parseBackup(DefaultXmlImporter.java:103) at com.atlassian.confluence.importexport.xmlimport.DefaultXmlImporter.doImport(DefaultXmlImporter.java:55) ... 30 more Caused by: net.sf.hibernate.PropertyValueException: not-null property references a null or transient value: com.atlassian.confluence.like.LikeEntity.content at net.sf.hibernate.impl.SessionImpl.checkNullability(SessionImpl.java:1302) at net.sf.hibernate.impl.SessionImpl.doSave(SessionImpl.java:954) at net.sf.hibernate.impl.SessionImpl.doSave(SessionImpl.java:883) at net.sf.hibernate.impl.SessionImpl.save(SessionImpl.java:837) at com.atlassian.confluence.importexport.xmlimport.ImportProcessorContext.saveObject(ImportProcessorContext.java:269) at com.atlassian.confluence.importexport.xmlimport.persister.ReflectiveObjectPersister.persist(ReflectiveObjectPersister.java:142) at com.atlassian.confluence.importexport.xmlimport.DefaultImportProcessor.persist(DefaultImportProcessor.java:46) at com.atlassian.confluence.importexport.xmlimport.DefaultImportProcessor.processObject(DefaultImportProcessor.java:36) at com.atlassian.confluence.importexport.xmlimport.parser.BackupParser.endElement(BackupParser.java:49) ... 42 more
Workaround
Delete all LikeEntity entries from the XML file - this will remove all Likes and will allow the import to continue.
- Open the zip file and edit entities.xml
- Search for LikeEntity. You will see <object> entries like this:
<object class="LikeEntity" package="com.atlassian.confluence.like"> <id name="id">1900546</id> <property name="content" class="Comment" package="com.atlassian.confluence.pages"> <id name="id">1572927</id> </property> <property name="username"> <![CDATA[ admin ]]> </property> <property name="creationDate">2013-01-04 17:28:25.971</property> </object>
- Remove the entire <object> entry, from the opening '<object class = ' up to and including hte '</object>' closing tag
- Repeat for all LikeEntity objects found
- Reimport the backup.
- NB: You may need to clean the half-imported data out first.
- If it is a space, you can do this by removing the space and then re-importing.
- If it is a full site backup and you are restoring it as part of the installation, you would be better off cleaning the home directory and running the setup wizard again. Just stop Confluence, empty the contents of the home directory and restart Confluence. This will start the setup wizard again.
Attachments
Issue Links
- is related to
-
CONFSERVER-27600 Attempting to import a space backup that doesn't include comments when a comment has been liked results in "not-null property references a null or transient value: com.atlassian.confluence.like.LikeEntity.content" error
- Closed