From Bugzilla Helper: User-Agent: Mozilla/5.0 Galeon/1.2.9 (X11; Linux i686; U;) Gecko/20030314 Description of problem: When I attempt to add a section to a multi-part article I get the following exception: com.arsdigita.persistence.FlushException: (root cause: com.redhat.persistence.FlushException: Unable to send all events to database for object [com.arsdigita.cms.TextAsset:{id=35015}] because these required properties are null: [com.arsdigita.cms.TextAsset:{id=35015}].item) at com.arsdigita.persistence.PersistenceException.newInstance(PersistenceException.java:134) at com.arsdigita.persistence.PersistenceException.newInstance(PersistenceException.java:109) at com.arsdigita.persistence.DataObjectImpl.save(DataObjectImpl.java:397) at com.arsdigita.domain.DomainObject.save(DomainObject.java:315) at com.arsdigita.cms.contenttypes.ui.mparticle.SectionEditForm.process(SectionEditForm.java:285) at com.arsdigita.bebop.FormSection.fireProcess(FormSection.java:491) at com.arsdigita.bebop.FormSection$4.process(FormSection.java:465) at com.arsdigita.bebop.FormModel.fireFormProcess(FormModel.java:478) at com.arsdigita.bebop.FormModel.process(FormModel.java:345) at com.arsdigita.bebop.Form.process(Form.java:440) at com.arsdigita.bebop.Form.respond(Form.java:281) at com.arsdigita.bebop.PageState.respond(PageState.java:368) at com.arsdigita.bebop.Page.process(Page.java:696) at com.arsdigita.bebop.Page.process(Page.java:678) at com.arsdigita.bebop.Page.buildDocument(Page.java:732) at com.arsdigita.cms.dispatcher.CMSPage$1.excurse(CMSPage.java:280) at com.arsdigita.cms.CMSExcursion$1.excurse(CMSExcursion.java:82) at com.arsdigita.kernel.KernelExcursion.run(KernelExcursion.java:57) at com.arsdigita.cms.CMSExcursion.run(CMSExcursion.java:77) at com.arsdigita.cms.dispatcher.CMSPage.dispatch(CMSPage.java:294) at _packages._content_22dsection._www._admin._item__jsp._jspService(_item__jsp.java:60) at com.caucho.jsp.JavaPage.service(JavaPage.java:75) at com.caucho.jsp.Page.subservice(Page.java:506) at com.caucho.server.http.FilterChainPage.doFilter(FilterChainPage.java:182) at com.caucho.server.http.Invocation.service(Invocation.java:315) at com.caucho.server.http.QRequestDispatcher.forward(QRequestDispatcher.java:222) at com.caucho.server.http.QRequestDispatcher.forward(QRequestDispatcher.java:103) at com.caucho.server.http.QRequestDispatcher.forward(QRequestDispatcher.java:80) at com.arsdigita.dispatcher.DispatcherHelper.forwardHelper(DispatcherHelper.java:177) at com.arsdigita.dispatcher.DispatcherHelper.forwardRequestByPath(DispatcherHelper.java:206) at com.arsdigita.dispatcher.DispatcherHelper.forwardRequestByPath(DispatcherHelper.java:219) at com.arsdigita.cms.dispatcher.FileDispatcher.chainedDispatch(FileDispatcher.java:63) at com.arsdigita.dispatcher.DispatcherChain.dispatch(DispatcherChain.java:74) at com.arsdigita.cms.ContentSectionServlet.doService(ContentSectionServlet.java:143) at com.arsdigita.web.BaseApplicationServlet$1.excurse(BaseApplicationServlet.java:111) at com.arsdigita.kernel.KernelExcursion.run(KernelExcursion.java:57) at com.arsdigita.web.BaseApplicationServlet.doService(BaseApplicationServlet.java:105) at com.arsdigita.web.BaseServlet$1.excurse(BaseServlet.java:119) at com.arsdigita.kernel.KernelExcursion.run(KernelExcursion.java:57) at com.arsdigita.web.BaseServlet.internalService(BaseServlet.java:94) at com.arsdigita.web.BaseServlet.doPost(BaseServlet.java:229) at javax.servlet.http.HttpServlet.service(HttpServlet.java:165) at javax.servlet.http.HttpServlet.service(HttpServlet.java:103) at com.caucho.server.http.FilterChainServlet.doFilter(FilterChainServlet.java:96) at com.caucho.server.http.Invocation.service(Invocation.java:315) at com.caucho.server.http.QRequestDispatcher.forward(QRequestDispatcher.java:222) at com.caucho.server.http.QRequestDispatcher.forward(QRequestDispatcher.java:103) at com.caucho.server.http.QRequestDispatcher.forward(QRequestDispatcher.java:80) at com.arsdigita.web.BaseDispatcher.forward(BaseDispatcher.java:214) at com.arsdigita.web.BaseDispatcher.forward(BaseDispatcher.java:200) at com.arsdigita.web.BaseDispatcher.dispatch(BaseDispatcher.java:132) at com.arsdigita.web.DispatcherServlet.service(DispatcherServlet.java:136) at com.caucho.server.http.FilterChainServlet.doFilter(FilterChainServlet.java:96) at com.caucho.server.http.Invocation.service(Invocation.java:315) at com.caucho.server.http.HttpRequest.handleRequest(HttpRequest.java:246) at com.caucho.server.http.HttpRequest.handleConnection(HttpRequest.java:164) at com.caucho.server.TcpConnection.run(TcpConnection.java:139) at java.lang.Thread.run(Thread.java:513) Version-Release number of selected component (if applicable): How reproducible: Always Steps to Reproduce: 1. Create a MultipartArticle 2. Add a section 3. Save the section Actual Results: Exception is thrown Expected Results: Section is created Additional info:
Created attachment 94038 [details] Error Report
For the record, another content type has defined a compulsory association against Asset: association { composite FreeformContentItem[1..1] freeformItem = join cms_assets.asset_id to ff_content_item_asset_map.asset_id, join ff_content_item_asset_map.item_id to ff_freeform_content_items.item_id; component Asset[0..n] assets = join ff_freeform_content_items.item_id to ff_content_item_asset_map.item_id, join ff_content_item_asset_map.asset_id to cms_assets.asset_id; Integer[1..1] rank = ff_content_item_asset_map.rank; } CHanging this to '0..1' instead of '1..1' solved the immediate problem.