Uploaded image for project: 'Isis'
  1. Isis
  2. ISIS-1750

SQL Exception when invoke action (inline prompt) not handled correctly in UI

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 1.15.1
    • Fix Version/s: 1.16.0
    • Component/s: Core: Viewer: Wicket
    • Labels:
      None

      Description

      Invoked an action that threw SQL exception due to DB constraint being hit.

      reproduce:

      • github shaId: ca2923908b4f2c3f07b088c79e698bdd849fb48d,
      • bitbucket shaId: 3df4e10b5d3f8f584ffb7bb468ebc2c337d659ea

      using org.estatio.app.EstatioEcpAppManifestWithDemoFixture
      http://localhost:8080/wicket/entity/orders.OrderItem:2
      editCharge : WORKS -> MARKETING

      What I see is that the prompt doesn't change when hit OK (this is a single autoComplete parameter), and in the browser we see a Javascript error, and the following stacktrace server-side:

      14:09:37,954 [TitleFacetViaTitleMethod      ] title failure
      javax.jdo.JDODataStoreException: Update of object "org.estatio.capex.dom.order.OrderItem@a0ac5fc" using statement "UPDATE "dbo"."OrderItem" SET "chargeId"=?, "version"=? WHERE "id"=?" failed : java.sql.SQLIntegrityConstraintViolationException: integrity constraint violation: unique constraint or index violation; "OrderItem_order_charge_UNQ" table: "OrderItem"
      	at org.hsqldb.jdbc.JDBCUtil.sqlException(Unknown Source)
      	at org.hsqldb.jdbc.JDBCUtil.sqlException(Unknown Source)
      	at org.hsqldb.jdbc.JDBCPreparedStatement.fetchResult(Unknown Source)
      	at org.hsqldb.jdbc.JDBCPreparedStatement.executeUpdate(Unknown Source)
      	at com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.executeUpdate(NewProxyPreparedStatement.java:105)
      	at org.datanucleus.store.rdbms.ParamLoggingPreparedStatement.executeUpdate(ParamLoggingPreparedStatement.java:393)
      	at org.datanucleus.store.rdbms.SQLController.executeStatementUpdate(SQLController.java:431)
      	at org.datanucleus.store.rdbms.request.UpdateRequest.execute(UpdateRequest.java:395)
      	at org.datanucleus.store.rdbms.RDBMSPersistenceHandler.updateObjectInTable(RDBMSPersistenceHandler.java:409)
      	at org.datanucleus.store.rdbms.RDBMSPersistenceHandler.updateObject(RDBMSPersistenceHandler.java:383)
      	at org.datanucleus.state.StateManagerImpl.flush(StateManagerImpl.java:4585)
      	at org.datanucleus.flush.FlushOrdered.execute(FlushOrdered.java:106)
      	at org.datanucleus.ExecutionContextImpl.flushInternal(ExecutionContextImpl.java:4054)
      	at org.datanucleus.store.query.Query.prepareDatastore(Query.java:1647)
      	at org.datanucleus.store.query.Query.executeQuery(Query.java:1832)
      	at org.datanucleus.store.query.Query.executeWithMap(Query.java:1762)
      	at org.datanucleus.api.jdo.JDOQuery.executeWithMap(JDOQuery.java:346)
      	at org.apache.isis.objectstore.jdo.datanucleus.persistence.queries.PersistenceQueryFindUsingApplibQueryProcessor.getResults(PersistenceQueryFindUsingApplibQueryProcessor.java:117)
      	at org.apache.isis.objectstore.jdo.datanucleus.persistence.queries.PersistenceQueryFindUsingApplibQueryProcessor.process(PersistenceQueryFindUsingApplibQueryProcessor.java:57)
      	at org.apache.isis.objectstore.jdo.datanucleus.persistence.queries.PersistenceQueryFindUsingApplibQueryProcessor.process(PersistenceQueryFindUsingApplibQueryProcessor.java:41)
      	at org.apache.isis.core.runtime.system.persistence.PersistenceSession.processPersistenceQuery(PersistenceSession.java:606)
      	at org.apache.isis.core.runtime.system.persistence.PersistenceSession.access$000(PersistenceSession.java:147)
      	at org.apache.isis.core.runtime.system.persistence.PersistenceSession$1.execute(PersistenceSession.java:567)
      	at org.apache.isis.core.runtime.system.persistence.PersistenceSession$1.execute(PersistenceSession.java:564)
      	at org.apache.isis.core.runtime.system.transaction.IsisTransactionManager.executeWithinTransaction(IsisTransactionManager.java:188)
      	at org.apache.isis.core.runtime.system.transaction.IsisTransactionManager.executeWithinTransaction(IsisTransactionManager.java:178)
      	at org.apache.isis.core.runtime.system.persistence.PersistenceSession.findInstancesInTransaction(PersistenceSession.java:563)
      	at org.apache.isis.core.runtime.system.persistence.PersistenceSession.allMatchingQuery(PersistenceSession.java:530)
      	at org.apache.isis.core.runtime.services.persistsession.PersistenceSessionServiceInternalDefault.allMatchingQuery(PersistenceSessionServiceInternalDefault.java:171)
      	at org.apache.isis.core.metamodel.services.repository.RepositoryServiceInternalDefault.submitQuery(RepositoryServiceInternalDefault.java:173)
      	at org.apache.isis.core.metamodel.services.repository.RepositoryServiceInternalDefault.allMatches(RepositoryServiceInternalDefault.java:169)
      	at org.apache.isis.core.metamodel.services.container.DomainObjectContainerDefault.allMatches(DomainObjectContainerDefault.java:495)
      	at org.apache.isis.applib.AbstractContainedObject.allMatches(AbstractContainedObject.java:289)
      	at org.estatio.dom.UdoDomainRepositoryAndFactory.allMatches(UdoDomainRepositoryAndFactory.java:69)
      	at org.estatio.capex.dom.orderinvoice.OrderItemInvoiceItemLinkRepository.findByOrderItem(OrderItemInvoiceItemLinkRepository.java:76)
      	at org.estatio.capex.dom.orderinvoice.OrderItemInvoiceItemLinkRepository.calculateNetAmountLinkedToOrderItem(OrderItemInvoiceItemLinkRepository.java:126)
      	at org.estatio.capex.dom.order.OrderItem.netAmountInvoiced(OrderItem.java:507)
      	at org.estatio.capex.dom.order.OrderItem.netAmountOutstanding(OrderItem.java:502)
      	at org.estatio.capex.dom.order.OrderItem.title(OrderItem.java:145)
      	at sun.reflect.GeneratedMethodAccessor457.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.lang.reflect.Method.invoke(Method.java:498)
      	at org.apache.isis.core.commons.lang.MethodExtensions.invoke(MethodExtensions.java:53)
      	at org.apache.isis.core.commons.lang.MethodExtensions.invoke(MethodExtensions.java:47)
      	at org.apache.isis.core.metamodel.adapter.ObjectAdapter$InvokeUtils.invoke(ObjectAdapter.java:373)
      	at org.apache.isis.core.metamodel.facets.object.title.methods.TitleFacetViaTitleMethod.title(TitleFacetViaTitleMethod.java:68)
      	at org.apache.isis.core.metamodel.facets.object.domainobjectlayout.TitleFacetViaDomainObjectLayoutAnnotationUsingTitleUiEvent.title(TitleFacetViaDomainObjectLayoutAnnotationUsingTitleUiEvent.java:108)
      	at org.apache.isis.core.metamodel.facets.object.title.TitleFacetAbstract.title(TitleFacetAbstract.java:42)
      	at org.apache.isis.core.metamodel.specloader.specimpl.ObjectSpecificationAbstract.getTitle(ObjectSpecificationAbstract.java:397)
      	at org.apache.isis.core.metamodel.specloader.specimpl.ObjectSpecificationAbstract.getTitle(ObjectSpecificationAbstract.java:389)
      	at org.apache.isis.core.metamodel.services.title.TitleServiceDefault.titleOf(TitleServiceDefault.java:42)
      	at org.isisaddons.module.publishmq.dom.jdo.spi.InteractionExecutionRepositoryJdo.buildTitle(InteractionExecutionRepositoryJdo.java:75)
      	at org.isisaddons.module.publishmq.dom.jdo.spi.InteractionExecutionRepositoryJdo.persist(InteractionExecutionRepositoryJdo.java:64)
      	at org.isisaddons.module.publishmq.dom.servicespi.PublisherServiceUsingActiveMq.persist(PublisherServiceUsingActiveMq.java:200)
      	at org.isisaddons.module.publishmq.dom.servicespi.PublisherServiceUsingActiveMq.publish(PublisherServiceUsingActiveMq.java:150)
      	at org.apache.isis.core.runtime.services.publish.PublishingServiceInternalDefault.publishToPublisherServices(PublishingServiceInternalDefault.java:400)
      	at org.apache.isis.core.runtime.services.publish.PublishingServiceInternalDefault.publishAction(PublishingServiceInternalDefault.java:235)
      	at sun.reflect.GeneratedMethodAccessor517.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.lang.reflect.Method.invoke(Method.java:498)
      	at org.apache.isis.core.runtime.services.ServiceInstantiator$2.invoke(ServiceInstantiator.java:219)
      	at org.apache.isis.core.runtime.services.publish.PublishingServiceInternalDefault_$$_jvst45b_8.publishAction(PublishingServiceInternalDefault_$$_jvst45b_8.java)
      	at org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventAbstract.doInvoke(ActionInvocationFacetForDomainEventAbstract.java:343)
      	at org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventAbstract$1.execute(ActionInvocationFacetForDomainEventAbstract.java:164)
      	at org.apache.isis.core.runtime.system.transaction.IsisTransactionManager.executeWithinTransaction(IsisTransactionManager.java:142)
      	at org.apache.isis.core.runtime.system.transaction.IsisTransactionManager.executeWithinTransaction(IsisTransactionManager.java:132)
      	at org.apache.isis.core.runtime.services.persistsession.PersistenceSessionServiceInternalDefault.executeWithinTransaction(PersistenceSessionServiceInternalDefault.java:181)
      	at org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventAbstract.invoke(ActionInvocationFacetForDomainEventAbstract.java:160)
      	at org.apache.isis.core.metamodel.specloader.specimpl.ObjectActionDefault.executeInternal(ObjectActionDefault.java:400)
      	at org.apache.isis.core.metamodel.specloader.specimpl.ObjectActionDefault.execute(ObjectActionDefault.java:389)
      	at org.apache.isis.core.metamodel.specloader.specimpl.ObjectActionDefault.executeWithRuleChecking(ObjectActionDefault.java:370)
      	at org.apache.isis.viewer.wicket.model.models.ActionModel.executeAction(ActionModel.java:460)
      	at org.apache.isis.viewer.wicket.model.models.ActionModel.load(ActionModel.java:439)
      	at org.apache.isis.viewer.wicket.model.models.ActionModel.load(ActionModel.java:76)
      	at org.apache.wicket.model.LoadableDetachableModel.getObject(LoadableDetachableModel.java:135)
      	at org.apache.isis.viewer.wicket.model.models.ActionModel.execute(ActionModel.java:564)
      	at org.apache.isis.viewer.wicket.ui.components.actions.ActionFormExecutorStrategy.obtainResultAdapter(ActionFormExecutorStrategy.java:72)
      	at org.apache.isis.viewer.wicket.ui.panels.FormExecutorDefault.obtainResultAdapter(FormExecutorDefault.java:514)
      	at org.apache.isis.viewer.wicket.ui.panels.FormExecutorDefault.executeAndProcessResults(FormExecutorDefault.java:145)
      	at org.apache.isis.viewer.wicket.ui.panels.PromptFormAbstract.onOkSubmittedOf(PromptFormAbstract.java:228)
      	at org.apache.isis.viewer.wicket.ui.panels.PromptFormAbstract.access$000(PromptFormAbstract.java:60)
      	at org.apache.isis.viewer.wicket.ui.panels.PromptFormAbstract$1.onSubmit(PromptFormAbstract.java:122)
      	at org.apache.wicket.ajax.markup.html.form.AjaxButton$1.onSubmit(AjaxButton.java:113)
      	at org.apache.wicket.ajax.form.AjaxFormSubmitBehavior$AjaxFormSubmitter.onSubmit(AjaxFormSubmitBehavior.java:215)
      	at org.apache.wicket.markup.html.form.Form.delegateSubmit(Form.java:1307)
      	at org.apache.wicket.markup.html.form.Form.process(Form.java:976)
      	at org.apache.isis.viewer.wicket.ui.panels.FormAbstract.process(FormAbstract.java:77)
      	at org.apache.wicket.markup.html.form.Form.onFormSubmitted(Form.java:797)
      	at org.apache.wicket.ajax.form.AjaxFormSubmitBehavior.onEvent(AjaxFormSubmitBehavior.java:171)
      	at org.apache.wicket.ajax.AjaxEventBehavior.respond(AjaxEventBehavior.java:155)
      	at org.apache.wicket.ajax.AbstractDefaultAjaxBehavior.onRequest(AbstractDefaultAjaxBehavior.java:601)
      	at sun.reflect.GeneratedMethodAccessor481.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.lang.reflect.Method.invoke(Method.java:498)
      	at org.apache.wicket.RequestListenerInterface.internalInvoke(RequestListenerInterface.java:258)
      	at org.apache.wicket.RequestListenerInterface.invoke(RequestListenerInterface.java:241)
      	at org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler.invokeListener(ListenerInterfaceRequestHandler.java:248)
      	at org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler.respond(ListenerInterfaceRequestHandler.java:234)
      	at org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:895)
      	at org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)
      	at org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:265)
      	at org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:222)
      	at org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:293)
      	at org.apache.wicket.protocol.http.WicketFilter.processRequestCycle(WicketFilter.java:261)
      	at org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:203)
      	at org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:284)
      	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1621)
      	at org.apache.isis.core.webapp.diagnostics.IsisLogOnExceptionFilter.doFilter(IsisLogOnExceptionFilter.java:52)
      	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1621)
      	at org.togglz.servlet.TogglzFilter.doFilter(TogglzFilter.java:100)
      	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1621)
      	at org.apache.shiro.web.servlet.AbstractShiroFilter.executeChain(AbstractShiroFilter.java:449)
      	at org.apache.shiro.web.servlet.AbstractShiroFilter$1.call(AbstractShiroFilter.java:365)
      	at org.apache.shiro.subject.support.SubjectCallable.doCall(SubjectCallable.java:90)
      	at org.apache.shiro.subject.support.SubjectCallable.call(SubjectCallable.java:83)
      	at org.apache.shiro.subject.support.DelegatingSubject.execute(DelegatingSubject.java:383)
      	at org.apache.shiro.web.servlet.AbstractShiroFilter.doFilterInternal(AbstractShiroFilter.java:362)
      	at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125)
      	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1613)
      	at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:541)
      	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
      	at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548)
      	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
      	at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:190)
      	at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1593)
      	at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:188)
      	at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1239)
      	at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:168)
      	at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:481)
      	at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1562)
      	at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:166)
      	at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1141)
      	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
      	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
      	at org.eclipse.jetty.server.Server.handle(Server.java:564)
      	at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:320)
      	at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:251)
      	at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:279)
      	at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:110)
      	at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:124)
      	at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:672)
      	at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:590)
      	at java.lang.Thread.run(Thread.java:745)
      Caused by: org.hsqldb.HsqlException: integrity constraint violation: unique constraint or index violation; "OrderItem_order_charge_UNQ" table: "OrderItem"
      	at org.hsqldb.error.Error.error(Unknown Source)
      	at org.hsqldb.Constraint.getException(Unknown Source)
      	at org.hsqldb.index.IndexAVLMemory.insert(Unknown Source)
      	at org.hsqldb.persist.RowStoreAVL.indexRow(Unknown Source)
      	at org.hsqldb.TransactionManager2PL.addInsertAction(Unknown Source)
      	at org.hsqldb.Session.addInsertAction(Unknown Source)
      	at org.hsqldb.Table.insertSingleRow(Unknown Source)
      	at org.hsqldb.StatementDML.update(Unknown Source)
      	at org.hsqldb.StatementDML.executeUpdateStatement(Unknown Source)
      	at org.hsqldb.StatementDML.getResult(Unknown Source)
      	at org.hsqldb.StatementDMQL.execute(Unknown Source)
      	at org.hsqldb.Session.executeCompiledStatement(Unknown Source)
      	at org.hsqldb.Session.execute(Unknown Source)
      	... 141 more
      
      	at org.datanucleus.api.jdo.NucleusJDOHelper.getJDOExceptionForNucleusException(NucleusJDOHelper.java:543)
      	at org.datanucleus.api.jdo.JDOQuery.executeWithMap(JDOQuery.java:363)
      	at org.apache.isis.objectstore.jdo.datanucleus.persistence.queries.PersistenceQueryFindUsingApplibQueryProcessor.getResults(PersistenceQueryFindUsingApplibQueryProcessor.java:117)
      	at org.apache.isis.objectstore.jdo.datanucleus.persistence.queries.PersistenceQueryFindUsingApplibQueryProcessor.process(PersistenceQueryFindUsingApplibQueryProcessor.java:57)
      	at org.apache.isis.objectstore.jdo.datanucleus.persistence.queries.PersistenceQueryFindUsingApplibQueryProcessor.process(PersistenceQueryFindUsingApplibQueryProcessor.java:41)
      	at org.apache.isis.core.runtime.system.persistence.PersistenceSession.processPersistenceQuery(PersistenceSession.java:606)
      	at org.apache.isis.core.runtime.system.persistence.PersistenceSession.access$000(PersistenceSession.java:147)
      	at org.apache.isis.core.runtime.system.persistence.PersistenceSession$1.execute(PersistenceSession.java:567)
      	at org.apache.isis.core.runtime.system.persistence.PersistenceSession$1.execute(PersistenceSession.java:564)
      	at org.apache.isis.core.runtime.system.transaction.IsisTransactionManager.executeWithinTransaction(IsisTransactionManager.java:188)
      	at org.apache.isis.core.runtime.system.transaction.IsisTransactionManager.executeWithinTransaction(IsisTransactionManager.java:178)
      	at org.apache.isis.core.runtime.system.persistence.PersistenceSession.findInstancesInTransaction(PersistenceSession.java:563)
      	at org.apache.isis.core.runtime.system.persistence.PersistenceSession.allMatchingQuery(PersistenceSession.java:530)
      	at org.apache.isis.core.runtime.services.persistsession.PersistenceSessionServiceInternalDefault.allMatchingQuery(PersistenceSessionServiceInternalDefault.java:171)
      	at org.apache.isis.core.metamodel.services.repository.RepositoryServiceInternalDefault.submitQuery(RepositoryServiceInternalDefault.java:173)
      	at org.apache.isis.core.metamodel.services.repository.RepositoryServiceInternalDefault.allMatches(RepositoryServiceInternalDefault.java:169)
      	at org.apache.isis.core.metamodel.services.container.DomainObjectContainerDefault.allMatches(DomainObjectContainerDefault.java:495)
      	at org.apache.isis.applib.AbstractContainedObject.allMatches(AbstractContainedObject.java:289)
      	at org.estatio.dom.UdoDomainRepositoryAndFactory.allMatches(UdoDomainRepositoryAndFactory.java:69)
      	at org.estatio.capex.dom.orderinvoice.OrderItemInvoiceItemLinkRepository.findByOrderItem(OrderItemInvoiceItemLinkRepository.java:76)
      	at org.estatio.capex.dom.orderinvoice.OrderItemInvoiceItemLinkRepository.calculateNetAmountLinkedToOrderItem(OrderItemInvoiceItemLinkRepository.java:126)
      	at org.estatio.capex.dom.order.OrderItem.netAmountInvoiced(OrderItem.java:507)
      	at org.estatio.capex.dom.order.OrderItem.netAmountOutstanding(OrderItem.java:502)
      	at org.estatio.capex.dom.order.OrderItem.title(OrderItem.java:145)
      	at sun.reflect.GeneratedMethodAccessor457.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.lang.reflect.Method.invoke(Method.java:498)
      	at org.apache.isis.core.commons.lang.MethodExtensions.invoke(MethodExtensions.java:53)
      	at org.apache.isis.core.commons.lang.MethodExtensions.invoke(MethodExtensions.java:47)
      	at org.apache.isis.core.metamodel.adapter.ObjectAdapter$InvokeUtils.invoke(ObjectAdapter.java:373)
      	at org.apache.isis.core.metamodel.facets.object.title.methods.TitleFacetViaTitleMethod.title(TitleFacetViaTitleMethod.java:68)
      	at org.apache.isis.core.metamodel.facets.object.domainobjectlayout.TitleFacetViaDomainObjectLayoutAnnotationUsingTitleUiEvent.title(TitleFacetViaDomainObjectLayoutAnnotationUsingTitleUiEvent.java:108)
      	at org.apache.isis.core.metamodel.facets.object.title.TitleFacetAbstract.title(TitleFacetAbstract.java:42)
      	at org.apache.isis.core.metamodel.specloader.specimpl.ObjectSpecificationAbstract.getTitle(ObjectSpecificationAbstract.java:397)
      	at org.apache.isis.core.metamodel.specloader.specimpl.ObjectSpecificationAbstract.getTitle(ObjectSpecificationAbstract.java:389)
      	at org.apache.isis.core.metamodel.services.title.TitleServiceDefault.titleOf(TitleServiceDefault.java:42)
      	at org.isisaddons.module.publishmq.dom.jdo.spi.InteractionExecutionRepositoryJdo.buildTitle(InteractionExecutionRepositoryJdo.java:75)
      	at org.isisaddons.module.publishmq.dom.jdo.spi.InteractionExecutionRepositoryJdo.persist(InteractionExecutionRepositoryJdo.java:64)
      	at org.isisaddons.module.publishmq.dom.servicespi.PublisherServiceUsingActiveMq.persist(PublisherServiceUsingActiveMq.java:200)
      	at org.isisaddons.module.publishmq.dom.servicespi.PublisherServiceUsingActiveMq.publish(PublisherServiceUsingActiveMq.java:150)
      	at org.apache.isis.core.runtime.services.publish.PublishingServiceInternalDefault.publishToPublisherServices(PublishingServiceInternalDefault.java:400)
      	at org.apache.isis.core.runtime.services.publish.PublishingServiceInternalDefault.publishAction(PublishingServiceInternalDefault.java:235)
      	at sun.reflect.GeneratedMethodAccessor517.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.lang.reflect.Method.invoke(Method.java:498)
      	at org.apache.isis.core.runtime.services.ServiceInstantiator$2.invoke(ServiceInstantiator.java:219)
      	at org.apache.isis.core.runtime.services.publish.PublishingServiceInternalDefault_$$_jvst45b_8.publishAction(PublishingServiceInternalDefault_$$_jvst45b_8.java)
      	at org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventAbstract.doInvoke(ActionInvocationFacetForDomainEventAbstract.java:343)
      	at org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventAbstract$1.execute(ActionInvocationFacetForDomainEventAbstract.java:164)
      	at org.apache.isis.core.runtime.system.transaction.IsisTransactionManager.executeWithinTransaction(IsisTransactionManager.java:142)
      	at org.apache.isis.core.runtime.system.transaction.IsisTransactionManager.executeWithinTransaction(IsisTransactionManager.java:132)
      	at org.apache.isis.core.runtime.services.persistsession.PersistenceSessionServiceInternalDefault.executeWithinTransaction(PersistenceSessionServiceInternalDefault.java:181)
      	at org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventAbstract.invoke(ActionInvocationFacetForDomainEventAbstract.java:160)
      	at org.apache.isis.core.metamodel.specloader.specimpl.ObjectActionDefault.executeInternal(ObjectActionDefault.java:400)
      	at org.apache.isis.core.metamodel.specloader.specimpl.ObjectActionDefault.execute(ObjectActionDefault.java:389)
      	at org.apache.isis.core.metamodel.specloader.specimpl.ObjectActionDefault.executeWithRuleChecking(ObjectActionDefault.java:370)
      	at org.apache.isis.viewer.wicket.model.models.ActionModel.executeAction(ActionModel.java:460)
      	at org.apache.isis.viewer.wicket.model.models.ActionModel.load(ActionModel.java:439)
      	at org.apache.isis.viewer.wicket.model.models.ActionModel.load(ActionModel.java:76)
      	at org.apache.wicket.model.LoadableDetachableModel.getObject(LoadableDetachableModel.java:135)
      	at org.apache.isis.viewer.wicket.model.models.ActionModel.execute(ActionModel.java:564)
      	at org.apache.isis.viewer.wicket.ui.components.actions.ActionFormExecutorStrategy.obtainResultAdapter(ActionFormExecutorStrategy.java:72)
      	at org.apache.isis.viewer.wicket.ui.panels.FormExecutorDefault.obtainResultAdapter(FormExecutorDefault.java:514)
      	at org.apache.isis.viewer.wicket.ui.panels.FormExecutorDefault.executeAndProcessResults(FormExecutorDefault.java:145)
      	at org.apache.isis.viewer.wicket.ui.panels.PromptFormAbstract.onOkSubmittedOf(PromptFormAbstract.java:228)
      	at org.apache.isis.viewer.wicket.ui.panels.PromptFormAbstract.access$000(PromptFormAbstract.java:60)
      	at org.apache.isis.viewer.wicket.ui.panels.PromptFormAbstract$1.onSubmit(PromptFormAbstract.java:122)
      	at org.apache.wicket.ajax.markup.html.form.AjaxButton$1.onSubmit(AjaxButton.java:113)
      	at org.apache.wicket.ajax.form.AjaxFormSubmitBehavior$AjaxFormSubmitter.onSubmit(AjaxFormSubmitBehavior.java:215)
      	at org.apache.wicket.markup.html.form.Form.delegateSubmit(Form.java:1307)
      	at org.apache.wicket.markup.html.form.Form.process(Form.java:976)
      	at org.apache.isis.viewer.wicket.ui.panels.FormAbstract.process(FormAbstract.java:77)
      	at org.apache.wicket.markup.html.form.Form.onFormSubmitted(Form.java:797)
      	at org.apache.wicket.ajax.form.AjaxFormSubmitBehavior.onEvent(AjaxFormSubmitBehavior.java:171)
      	at org.apache.wicket.ajax.AjaxEventBehavior.respond(AjaxEventBehavior.java:155)
      	at org.apache.wicket.ajax.AbstractDefaultAjaxBehavior.onRequest(AbstractDefaultAjaxBehavior.java:601)
      	at sun.reflect.GeneratedMethodAccessor481.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.lang.reflect.Method.invoke(Method.java:498)
      	at org.apache.wicket.RequestListenerInterface.internalInvoke(RequestListenerInterface.java:258)
      	at org.apache.wicket.RequestListenerInterface.invoke(RequestListenerInterface.java:241)
      	at org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler.invokeListener(ListenerInterfaceRequestHandler.java:248)
      	at org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler.respond(ListenerInterfaceRequestHandler.java:234)
      	at org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:895)
      	at org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)
      	at org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:265)
      	at org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:222)
      	at org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:293)
      	at org.apache.wicket.protocol.http.WicketFilter.processRequestCycle(WicketFilter.java:261)
      	at org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:203)
      	at org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:284)
      	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1621)
      	at org.apache.isis.core.webapp.diagnostics.IsisLogOnExceptionFilter.doFilter(IsisLogOnExceptionFilter.java:52)
      	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1621)
      	at org.togglz.servlet.TogglzFilter.doFilter(TogglzFilter.java:100)
      	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1621)
      	at org.apache.shiro.web.servlet.AbstractShiroFilter.executeChain(AbstractShiroFilter.java:449)
      	at org.apache.shiro.web.servlet.AbstractShiroFilter$1.call(AbstractShiroFilter.java:365)
      	at org.apache.shiro.subject.support.SubjectCallable.doCall(SubjectCallable.java:90)
      	at org.apache.shiro.subject.support.SubjectCallable.call(SubjectCallable.java:83)
      	at org.apache.shiro.subject.support.DelegatingSubject.execute(DelegatingSubject.java:383)
      	at org.apache.shiro.web.servlet.AbstractShiroFilter.doFilterInternal(AbstractShiroFilter.java:362)
      	at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125)
      	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1613)
      	at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:541)
      	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
      	at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548)
      	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
      	at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:190)
      	at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1593)
      	at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:188)
      	at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1239)
      	at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:168)
      	at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:481)
      	at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1562)
      	at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:166)
      	at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1141)
      	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
      	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
      	at org.eclipse.jetty.server.Server.handle(Server.java:564)
      	at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:320)
      	at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:251)
      	at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:279)
      	at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:110)
      	at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:124)
      	at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:672)
      	at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:590)
      	at java.lang.Thread.run(Thread.java:745)
      NestedThrowablesStackTrace:
      java.sql.SQLIntegrityConstraintViolationException: integrity constraint violation: unique constraint or index violation; "OrderItem_order_charge_UNQ" table: "OrderItem"
      	at org.hsqldb.jdbc.JDBCUtil.sqlException(Unknown Source)
      	at org.hsqldb.jdbc.JDBCUtil.sqlException(Unknown Source)
      	at org.hsqldb.jdbc.JDBCPreparedStatement.fetchResult(Unknown Source)
      	at org.hsqldb.jdbc.JDBCPreparedStatement.executeUpdate(Unknown Source)
      	at com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.executeUpdate(NewProxyPreparedStatement.java:105)
      	at org.datanucleus.store.rdbms.ParamLoggingPreparedStatement.executeUpdate(ParamLoggingPreparedStatement.java:393)
      	at org.datanucleus.store.rdbms.SQLController.executeStatementUpdate(SQLController.java:431)
      	at org.datanucleus.store.rdbms.request.UpdateRequest.execute(UpdateRequest.java:395)
      	at org.datanucleus.store.rdbms.RDBMSPersistenceHandler.updateObjectInTable(RDBMSPersistenceHandler.java:409)
      	at org.datanucleus.store.rdbms.RDBMSPersistenceHandler.updateObject(RDBMSPersistenceHandler.java:383)
      	at org.datanucleus.state.StateManagerImpl.flush(StateManagerImpl.java:4585)
      	at org.datanucleus.flush.FlushOrdered.execute(FlushOrdered.java:106)
      	at org.datanucleus.ExecutionContextImpl.flushInternal(ExecutionContextImpl.java:4054)
      	at org.datanucleus.store.query.Query.prepareDatastore(Query.java:1647)
      	at org.datanucleus.store.query.Query.executeQuery(Query.java:1832)
      	at org.datanucleus.store.query.Query.executeWithMap(Query.java:1762)
      	at org.datanucleus.api.jdo.JDOQuery.executeWithMap(JDOQuery.java:346)
      	at org.apache.isis.objectstore.jdo.datanucleus.persistence.queries.PersistenceQueryFindUsingApplibQueryProcessor.getResults(PersistenceQueryFindUsingApplibQueryProcessor.java:117)
      	at org.apache.isis.objectstore.jdo.datanucleus.persistence.queries.PersistenceQueryFindUsingApplibQueryProcessor.process(PersistenceQueryFindUsingApplibQueryProcessor.java:57)
      	at org.apache.isis.objectstore.jdo.datanucleus.persistence.queries.PersistenceQueryFindUsingApplibQueryProcessor.process(PersistenceQueryFindUsingApplibQueryProcessor.java:41)
      	at org.apache.isis.core.runtime.system.persistence.PersistenceSession.processPersistenceQuery(PersistenceSession.java:606)
      	at org.apache.isis.core.runtime.system.persistence.PersistenceSession.access$000(PersistenceSession.java:147)
      	at org.apache.isis.core.runtime.system.persistence.PersistenceSession$1.execute(PersistenceSession.java:567)
      	at org.apache.isis.core.runtime.system.persistence.PersistenceSession$1.execute(PersistenceSession.java:564)
      	at org.apache.isis.core.runtime.system.transaction.IsisTransactionManager.executeWithinTransaction(IsisTransactionManager.java:188)
      	at org.apache.isis.core.runtime.system.transaction.IsisTransactionManager.executeWithinTransaction(IsisTransactionManager.java:178)
      	at org.apache.isis.core.runtime.system.persistence.PersistenceSession.findInstancesInTransaction(PersistenceSession.java:563)
      	at org.apache.isis.core.runtime.system.persistence.PersistenceSession.allMatchingQuery(PersistenceSession.java:530)
      	at org.apache.isis.core.runtime.services.persistsession.PersistenceSessionServiceInternalDefault.allMatchingQuery(PersistenceSessionServiceInternalDefault.java:171)
      	at org.apache.isis.core.metamodel.services.repository.RepositoryServiceInternalDefault.submitQuery(RepositoryServiceInternalDefault.java:173)
      	at org.apache.isis.core.metamodel.services.repository.RepositoryServiceInternalDefault.allMatches(RepositoryServiceInternalDefault.java:169)
      	at org.apache.isis.core.metamodel.services.container.DomainObjectContainerDefault.allMatches(DomainObjectContainerDefault.java:495)
      	at org.apache.isis.applib.AbstractContainedObject.allMatches(AbstractContainedObject.java:289)
      	at org.estatio.dom.UdoDomainRepositoryAndFactory.allMatches(UdoDomainRepositoryAndFactory.java:69)
      	at org.estatio.capex.dom.orderinvoice.OrderItemInvoiceItemLinkRepository.findByOrderItem(OrderItemInvoiceItemLinkRepository.java:76)
      	at org.estatio.capex.dom.orderinvoice.OrderItemInvoiceItemLinkRepository.calculateNetAmountLinkedToOrderItem(OrderItemInvoiceItemLinkRepository.java:126)
      	at org.estatio.capex.dom.order.OrderItem.netAmountInvoiced(OrderItem.java:507)
      	at org.estatio.capex.dom.order.OrderItem.netAmountOutstanding(OrderItem.java:502)
      	at org.estatio.capex.dom.order.OrderItem.title(OrderItem.java:145)
      	at sun.reflect.GeneratedMethodAccessor457.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.lang.reflect.Method.invoke(Method.java:498)
      	at org.apache.isis.core.commons.lang.MethodExtensions.invoke(MethodExtensions.java:53)
      	at org.apache.isis.core.commons.lang.MethodExtensions.invoke(MethodExtensions.java:47)
      	at org.apache.isis.core.metamodel.adapter.ObjectAdapter$InvokeUtils.invoke(ObjectAdapter.java:373)
      	at org.apache.isis.core.metamodel.facets.object.title.methods.TitleFacetViaTitleMethod.title(TitleFacetViaTitleMethod.java:68)
      	at org.apache.isis.core.metamodel.facets.object.domainobjectlayout.TitleFacetViaDomainObjectLayoutAnnotationUsingTitleUiEvent.title(TitleFacetViaDomainObjectLayoutAnnotationUsingTitleUiEvent.java:108)
      	at org.apache.isis.core.metamodel.facets.object.title.TitleFacetAbstract.title(TitleFacetAbstract.java:42)
      	at org.apache.isis.core.metamodel.specloader.specimpl.ObjectSpecificationAbstract.getTitle(ObjectSpecificationAbstract.java:397)
      	at org.apache.isis.core.metamodel.specloader.specimpl.ObjectSpecificationAbstract.getTitle(ObjectSpecificationAbstract.java:389)
      	at org.apache.isis.core.metamodel.services.title.TitleServiceDefault.titleOf(TitleServiceDefault.java:42)
      	at org.isisaddons.module.publishmq.dom.jdo.spi.InteractionExecutionRepositoryJdo.buildTitle(InteractionExecutionRepositoryJdo.java:75)
      	at org.isisaddons.module.publishmq.dom.jdo.spi.InteractionExecutionRepositoryJdo.persist(InteractionExecutionRepositoryJdo.java:64)
      	at org.isisaddons.module.publishmq.dom.servicespi.PublisherServiceUsingActiveMq.persist(PublisherServiceUsingActiveMq.java:200)
      	at org.isisaddons.module.publishmq.dom.servicespi.PublisherServiceUsingActiveMq.publish(PublisherServiceUsingActiveMq.java:150)
      	at org.apache.isis.core.runtime.services.publish.PublishingServiceInternalDefault.publishToPublisherServices(PublishingServiceInternalDefault.java:400)
      	at org.apache.isis.core.runtime.services.publish.PublishingServiceInternalDefault.publishAction(PublishingServiceInternalDefault.java:235)
      	at sun.reflect.GeneratedMethodAccessor517.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.lang.reflect.Method.invoke(Method.java:498)
      	at org.apache.isis.core.runtime.services.ServiceInstantiator$2.invoke(ServiceInstantiator.java:219)
      	at org.apache.isis.core.runtime.services.publish.PublishingServiceInternalDefault_$$_jvst45b_8.publishAction(PublishingServiceInternalDefault_$$_jvst45b_8.java)
      	at org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventAbstract.doInvoke(ActionInvocationFacetForDomainEventAbstract.java:343)
      	at org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventAbstract$1.execute(ActionInvocationFacetForDomainEventAbstract.java:164)
      	at org.apache.isis.core.runtime.system.transaction.IsisTransactionManager.executeWithinTransaction(IsisTransactionManager.java:142)
      	at org.apache.isis.core.runtime.system.transaction.IsisTransactionManager.executeWithinTransaction(IsisTransactionManager.java:132)
      	at org.apache.isis.core.runtime.services.persistsession.PersistenceSessionServiceInternalDefault.executeWithinTransaction(PersistenceSessionServiceInternalDefault.java:181)
      	at org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventAbstract.invoke(ActionInvocationFacetForDomainEventAbstract.java:160)
      	at org.apache.isis.core.metamodel.specloader.specimpl.ObjectActionDefault.executeInternal(ObjectActionDefault.java:400)
      	at org.apache.isis.core.metamodel.specloader.specimpl.ObjectActionDefault.execute(ObjectActionDefault.java:389)
      	at org.apache.isis.core.metamodel.specloader.specimpl.ObjectActionDefault.executeWithRuleChecking(ObjectActionDefault.java:370)
      	at org.apache.isis.viewer.wicket.model.models.ActionModel.executeAction(ActionModel.java:460)
      	at org.apache.isis.viewer.wicket.model.models.ActionModel.load(ActionModel.java:439)
      	at org.apache.isis.viewer.wicket.model.models.ActionModel.load(ActionModel.java:76)
      	at org.apache.wicket.model.LoadableDetachableModel.getObject(LoadableDetachableModel.java:135)
      	at org.apache.isis.viewer.wicket.model.models.ActionModel.execute(ActionModel.java:564)
      	at org.apache.isis.viewer.wicket.ui.components.actions.ActionFormExecutorStrategy.obtainResultAdapter(ActionFormExecutorStrategy.java:72)
      	at org.apache.isis.viewer.wicket.ui.panels.FormExecutorDefault.obtainResultAdapter(FormExecutorDefault.java:514)
      	at org.apache.isis.viewer.wicket.ui.panels.FormExecutorDefault.executeAndProcessResults(FormExecutorDefault.java:145)
      	at org.apache.isis.viewer.wicket.ui.panels.PromptFormAbstract.onOkSubmittedOf(PromptFormAbstract.java:228)
      	at org.apache.isis.viewer.wicket.ui.panels.PromptFormAbstract.access$000(PromptFormAbstract.java:60)
      	at org.apache.isis.viewer.wicket.ui.panels.PromptFormAbstract$1.onSubmit(PromptFormAbstract.java:122)
      	at org.apache.wicket.ajax.markup.html.form.AjaxButton$1.onSubmit(AjaxButton.java:113)
      	at org.apache.wicket.ajax.form.AjaxFormSubmitBehavior$AjaxFormSubmitter.onSubmit(AjaxFormSubmitBehavior.java:215)
      	at org.apache.wicket.markup.html.form.Form.delegateSubmit(Form.java:1307)
      	at org.apache.wicket.markup.html.form.Form.process(Form.java:976)
      	at org.apache.isis.viewer.wicket.ui.panels.FormAbstract.process(FormAbstract.java:77)
      	at org.apache.wicket.markup.html.form.Form.onFormSubmitted(Form.java:797)
      	at org.apache.wicket.ajax.form.AjaxFormSubmitBehavior.onEvent(AjaxFormSubmitBehavior.java:171)
      	at org.apache.wicket.ajax.AjaxEventBehavior.respond(AjaxEventBehavior.java:155)
      	at org.apache.wicket.ajax.AbstractDefaultAjaxBehavior.onRequest(AbstractDefaultAjaxBehavior.java:601)
      	at sun.reflect.GeneratedMethodAccessor481.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.lang.reflect.Method.invoke(Method.java:498)
      	at org.apache.wicket.RequestListenerInterface.internalInvoke(RequestListenerInterface.java:258)
      	at org.apache.wicket.RequestListenerInterface.invoke(RequestListenerInterface.java:241)
      	at org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler.invokeListener(ListenerInterfaceRequestHandler.java:248)
      	at org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler.respond(ListenerInterfaceRequestHandler.java:234)
      	at org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:895)
      	at org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)
      	at org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:265)
      	at org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:222)
      	at org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:293)
      	at org.apache.wicket.protocol.http.WicketFilter.processRequestCycle(WicketFilter.java:261)
      	at org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:203)
      	at org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:284)
      	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1621)
      	at org.apache.isis.core.webapp.diagnostics.IsisLogOnExceptionFilter.doFilter(IsisLogOnExceptionFilter.java:52)
      	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1621)
      	at org.togglz.servlet.TogglzFilter.doFilter(TogglzFilter.java:100)
      	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1621)
      	at org.apache.shiro.web.servlet.AbstractShiroFilter.executeChain(AbstractShiroFilter.java:449)
      	at org.apache.shiro.web.servlet.AbstractShiroFilter$1.call(AbstractShiroFilter.java:365)
      	at org.apache.shiro.subject.support.SubjectCallable.doCall(SubjectCallable.java:90)
      	at org.apache.shiro.subject.support.SubjectCallable.call(SubjectCallable.java:83)
      	at org.apache.shiro.subject.support.DelegatingSubject.execute(DelegatingSubject.java:383)
      	at org.apache.shiro.web.servlet.AbstractShiroFilter.doFilterInternal(AbstractShiroFilter.java:362)
      	at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125)
      	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1613)
      	at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:541)
      	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
      	at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548)
      	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
      	at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:190)
      	at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1593)
      	at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:188)
      	at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1239)
      	at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:168)
      	at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:481)
      	at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1562)
      	at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:166)
      	at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1141)
      	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
      	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
      	at org.eclipse.jetty.server.Server.handle(Server.java:564)
      	at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:320)
      	at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:251)
      	at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:279)
      	at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:110)
      	at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:124)
      	at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:672)
      	at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:590)
      	at java.lang.Thread.run(Thread.java:745)
      Caused by: org.hsqldb.HsqlException: integrity constraint violation: unique constraint or index violation; "OrderItem_order_charge_UNQ" table: "OrderItem"
      	at org.hsqldb.error.Error.error(Unknown Source)
      	at org.hsqldb.Constraint.getException(Unknown Source)
      	at org.hsqldb.index.IndexAVLMemory.insert(Unknown Source)
      	at org.hsqldb.persist.RowStoreAVL.indexRow(Unknown Source)
      	at org.hsqldb.TransactionManager2PL.addInsertAction(Unknown Source)
      	at org.hsqldb.Session.addInsertAction(Unknown Source)
      	at org.hsqldb.Table.insertSingleRow(Unknown Source)
      	at org.hsqldb.StatementDML.update(Unknown Source)
      	at org.hsqldb.StatementDML.executeUpdateStatement(Unknown Source)
      	at org.hsqldb.StatementDML.getResult(Unknown Source)
      	at org.hsqldb.StatementDMQL.execute(Unknown Source)
      	at org.hsqldb.Session.executeCompiledStatement(Unknown Source)
      	at org.hsqldb.Session.execute(Unknown Source)
      	... 141 more
      14:09:37,960 [PublisherServiceUsingActiveMq ] Sending JMS message, id:ID:74b73571-0e66-4801-b82d-1d05a7d7a5cb.0; type:org.estatio.capex.dom.order.OrderItem#editCharge()
      14:09:38,112 [IsisTransaction               ] abort transaction IsisTransaction@19af19f9[state=MUST_ABORT,commands=0]
      14:09:38,113 [RequestCycleExtra             ] ********************************
      14:09:38,113 [RequestCycleExtra             ] Handling the following exception
      java.lang.IllegalStateException: Response is no longer buffering!
      	at org.apache.wicket.protocol.http.HeaderBufferingWebResponse.reset(HeaderBufferingWebResponse.java:210)
      	at org.apache.wicket.request.flow.ResetResponseException$ResponseResettingDecorator.respond(ResetResponseException.java:87)
      	at org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:895)
      	at org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)
      	at org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:265)
      	at org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:273)
      	at org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:222)
      	at org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:293)
      	at org.apache.wicket.protocol.http.WicketFilter.processRequestCycle(WicketFilter.java:261)
      	at org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:203)
      	at org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:284)
      	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1621)
      	at org.apache.isis.core.webapp.diagnostics.IsisLogOnExceptionFilter.doFilter(IsisLogOnExceptionFilter.java:52)
      	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1621)
      	at org.togglz.servlet.TogglzFilter.doFilter(TogglzFilter.java:100)
      	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1621)
      	at org.apache.shiro.web.servlet.AbstractShiroFilter.executeChain(AbstractShiroFilter.java:449)
      	at org.apache.shiro.web.servlet.AbstractShiroFilter$1.call(AbstractShiroFilter.java:365)
      	at org.apache.shiro.subject.support.SubjectCallable.doCall(SubjectCallable.java:90)
      	at org.apache.shiro.subject.support.SubjectCallable.call(SubjectCallable.java:83)
      	at org.apache.shiro.subject.support.DelegatingSubject.execute(DelegatingSubject.java:383)
      	at org.apache.shiro.web.servlet.AbstractShiroFilter.doFilterInternal(AbstractShiroFilter.java:362)
      	at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125)
      	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1613)
      	at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:541)
      	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
      	at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548)
      	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
      	at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:190)
      	at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1593)
      	at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:188)
      	at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1239)
      	at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:168)
      	at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:481)
      	at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1562)
      	at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:166)
      	at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1141)
      	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
      	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
      	at org.eclipse.jetty.server.Server.handle(Server.java:564)
      	at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:320)
      	at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:251)
      	at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:279)
      	at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:110)
      	at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:124)
      	at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:672)
      	at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:590)
      	at java.lang.Thread.run(Thread.java:745)
      14:09:38,115 [RequestCycleExtra             ] ********************************
      
      

        Attachments

          Activity

            People

            • Assignee:
              danhaywood Dan Haywood
              Reporter:
              danhaywood Dan Haywood
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: