[ 
https://issues.apache.org/jira/browse/ISIS-494?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Dan Haywood updated ISIS-494:
-----------------------------
    Fix Version/s:     (was: 3.0.0)
                   2.0.0

> Provide formal API for IsisTransactionManager/PersistenceSession so that 
> other viewers can correctly handle such things as data integrity exceptions.
> -----------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: ISIS-494
>                 URL: https://issues.apache.org/jira/browse/ISIS-494
>             Project: Isis
>          Issue Type: Bug
>          Components: Core, Core: Objectstore: JDO, Core: Viewer: Wicket
>    Affects Versions: viewer-wicket-1.1.0, objectstore-jdo-1.1.0, core-1.2.0
>            Reporter: Dan Haywood
>            Priority: Major
>             Fix For: 2.0.0
>
>
> Raised by Oscar Bou on mailing list:
> We have tried to create a new persistent object on a Factory Method. 
> The object has a not-null field (called "name").
> By error (we have "unnamed" entities), we were not providing any value to 
> name (passing "null").
> The fact is that the wicket viewer showed: "No results"
> But on the log the following trace could be found.
> Trace:
>      [exec] 14:25:01,631  [sqlonly              qtp1236443008-29 DEBUG]   
> org.datanucleus.store.rdbms.datasource.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:105)
>      [exec] 2. INSERT INTO BUSINESSCONTINUITYMANAGEMENTSYSTEM 
> (UPDATEDBYUSER,DATECREATED,ID,DESCRIPTION,"NAME",SCOPE_BUSINESSCONTINUITYMANAGEMENTSYSTEMSCOPE_ID_OID,CREATEDBYUSER,TENANTID,DATEUPDATED)
>  
>      [exec] VALUES ('sven','06/13/2013 
> 14:25:01.288','081CF6E0-9329-42BC-AB00-2307266F1CE2',NULL,NULL,NULL,'sven','TENANT','06/13/2013
>  
>      [exec] 14:25:01.288') 
>      [exec] 14:25:01,634  [audit                qtp1236443008-29 ERROR]  2. 
> PreparedStatement.executeUpdate() INSERT INTO 
> BUSINESSCONTINUITYMANAGEMENTSYSTEM 
> (UPDATEDBYUSER,DATECREATED,ID,DESCRIPTION,"NAME",SCOPE_BUSINESSCONTINUITYMANAGEMENTSYSTEMSCOPE_ID_OID,CREATEDBYUSER,TENANTID,DATEUPDATED)
>  VALUES ('sven','06/13/2013 
> 14:25:01.288','081CF6E0-9329-42BC-AB00-2307266F1CE2',NULL,NULL,NULL,'sven','TENANT','06/13/2013
>  14:25:01.288')
>      [exec] java.sql.SQLIntegrityConstraintViolationException: violación del 
> restricción de integridad: restricción ('check') NOT NULL; SYS_CT_10482 
> table: BUSINESSCONTINUITYMANAGEMENTSYSTEM column: "NAME"
>      [exec]   at org.hsqldb.jdbc.Util.sqlException(Unknown Source)
>      [exec]   at org.hsqldb.jdbc.Util.sqlException(Unknown Source)
>      [exec]   at org.hsqldb.jdbc.JDBCPreparedStatement.fetchResult(Unknown 
> Source)
>      [exec]   at org.hsqldb.jdbc.JDBCPreparedStatement.executeUpdate(Unknown 
> Source)
>      [exec]   at 
> net.sf.log4jdbc.PreparedStatementSpy.executeUpdate(PreparedStatementSpy.java:1022)
>      [exec]   at 
> org.datanucleus.store.rdbms.datasource.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:105)
>      [exec]   at 
> org.datanucleus.store.rdbms.datasource.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:105)
>      [exec]   at 
> org.datanucleus.store.rdbms.ParamLoggingPreparedStatement.executeUpdate(ParamLoggingPreparedStatement.java:399)
>      [exec]   at 
> org.datanucleus.store.rdbms.SQLController.executeStatementUpdate(SQLController.java:439)
>      [exec]   at 
> org.datanucleus.store.rdbms.request.InsertRequest.execute(InsertRequest.java:409)
>      [exec]   at 
> org.datanucleus.store.rdbms.RDBMSPersistenceHandler.insertTable(RDBMSPersistenceHandler.java:167)
>      [exec]   at 
> org.datanucleus.store.rdbms.RDBMSPersistenceHandler.insertObject(RDBMSPersistenceHandler.java:143)
>      [exec]   at 
> org.datanucleus.state.JDOStateManager.internalMakePersistent(JDOStateManager.java:3774)
>      [exec]   at 
> org.datanucleus.state.JDOStateManager.makePersistent(JDOStateManager.java:3750)
>      [exec]   at 
> org.datanucleus.ExecutionContextImpl.persistObjectInternal(ExecutionContextImpl.java:2125)
>      [exec]   at 
> org.datanucleus.ExecutionContextImpl.persistObjectWork(ExecutionContextImpl.java:1973)
>      [exec]   at 
> org.datanucleus.ExecutionContextImpl.persistObject(ExecutionContextImpl.java:1821)
>      [exec]   at 
> org.datanucleus.api.jdo.JDOPersistenceManager.jdoMakePersistent(JDOPersistenceManager.java:727)
>      [exec]   at 
> org.datanucleus.api.jdo.JDOPersistenceManager.makePersistent(JDOPersistenceManager.java:752)
>      [exec]   at 
> org.apache.isis.objectstore.jdo.datanucleus.persistence.commands.DataNucleusCreateObjectCommand.execute(DataNucleusCreateObjectCommand.java:53)
>      [exec]   at 
> org.apache.isis.objectstore.jdo.datanucleus.DataNucleusObjectStore.executeCommands(DataNucleusObjectStore.java:360)
>      [exec]   at 
> org.apache.isis.objectstore.jdo.datanucleus.DataNucleusObjectStore.execute(DataNucleusObjectStore.java:354)
>      [exec]   at 
> org.apache.isis.core.runtime.system.transaction.IsisTransaction.doFlush(IsisTransaction.java:367)
>      [exec]   at 
> org.apache.isis.core.runtime.system.transaction.IsisTransaction.flush(IsisTransaction.java:333)
>      [exec]   at 
> org.apache.isis.core.runtime.system.transaction.IsisTransactionManager.flushTransaction(IsisTransactionManager.java:301)
>      [exec]   at 
> org.apache.isis.viewer.wicket.ui.components.actions.ActionPanel.executeActionOnTargetAndProcessResults(ActionPanel.java:182)
>      [exec]   at 
> org.apache.isis.viewer.wicket.ui.components.actions.ActionPanel.executeActionAndProcessResults(ActionPanel.java:138)
>      [exec]   at 
> org.apache.isis.viewer.wicket.ui.components.actions.ActionPanel.buildGui(ActionPanel.java:96)
>      [exec]   at 
> org.apache.isis.viewer.wicket.ui.components.actions.ActionPanel.<init>(ActionPanel.java:89)
>      [exec]   at 
> org.apache.isis.viewer.wicket.ui.components.actions.ActionPanelFactory.createComponent(ActionPanelFactory.java:49)
>      [exec]   at 
> org.apache.isis.viewer.wicket.ui.ComponentFactoryAbstract.createComponent(ComponentFactoryAbstract.java:82)
>      [exec]   at 
> org.apache.isis.viewer.wicket.viewer.registries.components.ComponentFactoryRegistryDefault.createComponent(ComponentFactoryRegistryDefault.java:120)
>      [exec]   at 
> org.apache.isis.viewer.wicket.viewer.registries.components.ComponentFactoryRegistryDefault.addOrReplaceComponent(ComponentFactoryRegistryDefault.java:105)
>      [exec]   at 
> org.apache.isis.viewer.wicket.ui.pages.PageAbstract.addComponent(PageAbstract.java:263)
>      [exec]   at 
> org.apache.isis.viewer.wicket.ui.pages.PageAbstract.addChildComponents(PageAbstract.java:258)
>      [exec]   at 
> org.apache.isis.viewer.wicket.ui.pages.action.ActionPage.<init>(ActionPage.java:54)
>      [exec]   at 
> sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
>      [exec]   at 
> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
>      [exec]   at 
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
>      [exec]   at 
> java.lang.reflect.Constructor.newInstance(Constructor.java:513)
>      [exec]   at 
> org.apache.wicket.session.DefaultPageFactory.newPage(DefaultPageFactory.java:170)
>      [exec]   at 
> org.apache.wicket.session.DefaultPageFactory.newPage(DefaultPageFactory.java:98)
>      [exec]   at 
> org.apache.wicket.DefaultMapperContext.newPageInstance(DefaultMapperContext.java:137)
>      [exec]   at 
> org.apache.wicket.core.request.handler.PageProvider.resolvePageInstance(PageProvider.java:268)
>      [exec]   at 
> org.apache.wicket.core.request.handler.PageProvider.getPageInstance(PageProvider.java:166)
>      [exec]   at 
> org.apache.wicket.request.handler.render.PageRenderer.getPage(PageRenderer.java:78)
>      [exec]   at 
> org.apache.wicket.request.handler.render.WebPageRenderer.renderPage(WebPageRenderer.java:94)
>      [exec]   at 
> org.apache.wicket.request.handler.render.WebPageRenderer.respond(WebPageRenderer.java:196)
>      [exec]   at 
> org.apache.wicket.core.request.handler.RenderPageRequestHandler.respond(RenderPageRequestHandler.java:165)
>      [exec]   at 
> org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:854)
>      [exec]   at 
> org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)
>      [exec]   at 
> org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:254)
>      [exec]   at 
> org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:211)
>      [exec]   at 
> org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:282)
>      [exec]   at 
> org.apache.wicket.protocol.http.WicketFilter.processRequestCycle(WicketFilter.java:259)
>      [exec]   at 
> org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:201)
>      [exec]   at 
> org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:282)
>      [exec]   at 
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1326)
>      [exec]   at 
> org.apache.shiro.web.servlet.AbstractShiroFilter.executeChain(AbstractShiroFilter.java:449)
>      [exec]   at 
> org.apache.shiro.web.servlet.AbstractShiroFilter$1.call(AbstractShiroFilter.java:365)
>      [exec]   at 
> org.apache.shiro.subject.support.SubjectCallable.doCall(SubjectCallable.java:90)
>      [exec]   at 
> org.apache.shiro.subject.support.SubjectCallable.call(SubjectCallable.java:83)
>      [exec]   at 
> org.apache.shiro.subject.support.DelegatingSubject.execute(DelegatingSubject.java:383)
>      [exec]   at 
> org.apache.shiro.web.servlet.AbstractShiroFilter.doFilterInternal(AbstractShiroFilter.java:362)
>      [exec]   at 
> org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125)
>      [exec]   at 
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1326)
>      [exec]   at 
> org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:479)
>      [exec]   at 
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:119)
>      [exec]   at 
> org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:520)
>      [exec]   at 
> org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:227)
>      [exec]   at 
> org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:940)
>      [exec]   at 
> org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:409)
>      [exec]   at 
> org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:186)
>      [exec]   at 
> org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:874)
>      [exec]   at 
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117)
>      [exec]   at 
> org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:250)
>      [exec]   at 
> org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:149)
>      [exec]   at 
> org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:110)
>      [exec]   at org.eclipse.jetty.server.Server.handle(Server.java:349)
>      [exec]   at 
> org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.java:441)
>      [exec]   at 
> org.eclipse.jetty.server.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:904)
>      [exec]   at 
> org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:565)
>      [exec]   at 
> org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:217)
>      [exec]   at 
> org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:46)
>      [exec]   at 
> org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:545)
>      [exec]   at 
> org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:43)
>      [exec]   at 
> org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:598)
>      [exec]   at 
> org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:533)
>      [exec]   at java.lang.Thread.run(Thread.java:680)
>      [exec] Caused by: org.hsqldb.HsqlException: violación del restricción de 
> integridad: restricción ('check') NOT NULL; SYS_CT_10482 table: 
> BUSINESSCONTINUITYMANAGEMENTSYSTEM column: "NAME"
>      [exec]   at org.hsqldb.error.Error.error(Unknown Source)
>      [exec]   at org.hsqldb.Table.enforceRowConstraints(Unknown Source)
>      [exec]   at org.hsqldb.Table.insertSingleRow(Unknown Source)
>      [exec]   at org.hsqldb.StatementDML.insertRowSet(Unknown Source)
>      [exec]   at org.hsqldb.StatementInsert.getResult(Unknown Source)
>      [exec]   at org.hsqldb.StatementDMQL.execute(Unknown Source)
>      [exec]   at org.hsqldb.Session.executeCompiledStatement(Unknown Source)
>      [exec]   at org.hsqldb.Session.execute(Unknown Source)
>      [exec]   ... 87 more
>      [exec] 14:25:01,640  [sqlonly              qtp1236443008-29 ERROR]   
> org.datanucleus.store.rdbms.datasource.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:105)
>      [exec] 2. INSERT INTO BUSINESSCONTINUITYMANAGEMENTSYSTEM 
> (UPDATEDBYUSER,DATECREATED,ID,DESCRIPTION,"NAME",SCOPE_BUSINESSCONTINUITYMANAGEMENTSYSTEMSCOPE_ID_OID,CREATEDBYUSER,TENANTID,DATEUPDATED)
>  VALUES ('sven','06/13/2013 
> 14:25:01.288','081CF6E0-9329-42BC-AB00-2307266F1CE2',NULL,NULL,NULL,'sven','TENANT','06/13/2013
>  14:25:01.288')
>      [exec] java.sql.SQLIntegrityConstraintViolationException: violación del 
> restricción de integridad: restricción ('check') NOT NULL; SYS_CT_10482 
> table: BUSINESSCONTINUITYMANAGEMENTSYSTEM column: "NAME"
>      [exec]   at org.hsqldb.jdbc.Util.sqlException(Unknown Source)
>      [exec]   at org.hsqldb.jdbc.Util.sqlException(Unknown Source)
>      [exec]   at org.hsqldb.jdbc.JDBCPreparedStatement.fetchResult(Unknown 
> Source)
>      [exec]   at org.hsqldb.jdbc.JDBCPreparedStatement.executeUpdate(Unknown 
> Source)
>      [exec]   at 
> net.sf.log4jdbc.PreparedStatementSpy.executeUpdate(PreparedStatementSpy.java:1022)
>      [exec]   at 
> org.datanucleus.store.rdbms.datasource.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:105)
>      [exec]   at 
> org.datanucleus.store.rdbms.datasource.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:105)
>      [exec]   at 
> org.datanucleus.store.rdbms.ParamLoggingPreparedStatement.executeUpdate(ParamLoggingPreparedStatement.java:399)
>      [exec]   at 
> org.datanucleus.store.rdbms.SQLController.executeStatementUpdate(SQLController.java:439)
>      [exec]   at 
> org.datanucleus.store.rdbms.request.InsertRequest.execute(InsertRequest.java:409)
>      [exec]   at 
> org.datanucleus.store.rdbms.RDBMSPersistenceHandler.insertTable(RDBMSPersistenceHandler.java:167)
>      [exec]   at 
> org.datanucleus.store.rdbms.RDBMSPersistenceHandler.insertObject(RDBMSPersistenceHandler.java:143)
>      [exec]   at 
> org.datanucleus.state.JDOStateManager.internalMakePersistent(JDOStateManager.java:3774)
>      [exec]   at 
> org.datanucleus.state.JDOStateManager.makePersistent(JDOStateManager.java:3750)
>      [exec]   at 
> org.datanucleus.ExecutionContextImpl.persistObjectInternal(ExecutionContextImpl.java:2125)
>      [exec]   at 
> org.datanucleus.ExecutionContextImpl.persistObjectWork(ExecutionContextImpl.java:1973)
>      [exec]   at 
> org.datanucleus.ExecutionContextImpl.persistObject(ExecutionContextImpl.java:1821)
>      [exec]   at 
> org.datanucleus.api.jdo.JDOPersistenceManager.jdoMakePersistent(JDOPersistenceManager.java:727)
>      [exec]   at 
> org.datanucleus.api.jdo.JDOPersistenceManager.makePersistent(JDOPersistenceManager.java:752)
>      [exec]   at 
> org.apache.isis.objectstore.jdo.datanucleus.persistence.commands.DataNucleusCreateObjectCommand.execute(DataNucleusCreateObjectCommand.java:53)
>      [exec]   at 
> org.apache.isis.objectstore.jdo.datanucleus.DataNucleusObjectStore.executeCommands(DataNucleusObjectStore.java:360)
>      [exec]   at 
> org.apache.isis.objectstore.jdo.datanucleus.DataNucleusObjectStore.execute(DataNucleusObjectStore.java:354)
>      [exec]   at 
> org.apache.isis.core.runtime.system.transaction.IsisTransaction.doFlush(IsisTransaction.java:367)
>      [exec]   at 
> org.apache.isis.core.runtime.system.transaction.IsisTransaction.flush(IsisTransaction.java:333)
>      [exec]   at 
> org.apache.isis.core.runtime.system.transaction.IsisTransactionManager.flushTransaction(IsisTransactionManager.java:301)
>      [exec]   at 
> org.apache.isis.viewer.wicket.ui.components.actions.ActionPanel.executeActionOnTargetAndProcessResults(ActionPanel.java:182)
>      [exec]   at 
> org.apache.isis.viewer.wicket.ui.components.actions.ActionPanel.executeActionAndProcessResults(ActionPanel.java:138)
>      [exec]   at 
> org.apache.isis.viewer.wicket.ui.components.actions.ActionPanel.buildGui(ActionPanel.java:96)
>      [exec]   at 
> org.apache.isis.viewer.wicket.ui.components.actions.ActionPanel.<init>(ActionPanel.java:89)
>      [exec]   at 
> org.apache.isis.viewer.wicket.ui.components.actions.ActionPanelFactory.createComponent(ActionPanelFactory.java:49)
>      [exec]   at 
> org.apache.isis.viewer.wicket.ui.ComponentFactoryAbstract.createComponent(ComponentFactoryAbstract.java:82)
>      [exec]   at 
> org.apache.isis.viewer.wicket.viewer.registries.components.ComponentFactoryRegistryDefault.createComponent(ComponentFactoryRegistryDefault.java:120)
>      [exec]   at 
> org.apache.isis.viewer.wicket.viewer.registries.components.ComponentFactoryRegistryDefault.addOrReplaceComponent(ComponentFactoryRegistryDefault.java:105)
>      [exec]   at 
> org.apache.isis.viewer.wicket.ui.pages.PageAbstract.addComponent(PageAbstract.java:263)
>      [exec]   at 
> org.apache.isis.viewer.wicket.ui.pages.PageAbstract.addChildComponents(PageAbstract.java:258)
>      [exec]   at 
> org.apache.isis.viewer.wicket.ui.pages.action.ActionPage.<init>(ActionPage.java:54)
>      [exec]   at 
> sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
>      [exec]   at 
> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
>      [exec]   at 
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
>      [exec]   at 
> java.lang.reflect.Constructor.newInstance(Constructor.java:513)
>      [exec]   at 
> org.apache.wicket.session.DefaultPageFactory.newPage(DefaultPageFactory.java:170)
>      [exec]   at 
> org.apache.wicket.session.DefaultPageFactory.newPage(DefaultPageFactory.java:98)
>      [exec]   at 
> org.apache.wicket.DefaultMapperContext.newPageInstance(DefaultMapperContext.java:137)
>      [exec]   at 
> org.apache.wicket.core.request.handler.PageProvider.resolvePageInstance(PageProvider.java:268)
>      [exec]   at 
> org.apache.wicket.core.request.handler.PageProvider.getPageInstance(PageProvider.java:166)
>      [exec]   at 
> org.apache.wicket.request.handler.render.PageRenderer.getPage(PageRenderer.java:78)
>      [exec]   at 
> org.apache.wicket.request.handler.render.WebPageRenderer.renderPage(WebPageRenderer.java:94)
>      [exec]   at 
> org.apache.wicket.request.handler.render.WebPageRenderer.respond(WebPageRenderer.java:196)
>      [exec]   at 
> org.apache.wicket.core.request.handler.RenderPageRequestHandler.respond(RenderPageRequestHandler.java:165)
>      [exec]   at 
> org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:854)
>      [exec]   at 
> org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)
>      [exec]   at 
> org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:254)
>      [exec]   at 
> org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:211)
>      [exec]   at 
> org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:282)
>      [exec]   at 
> org.apache.wicket.protocol.http.WicketFilter.processRequestCycle(WicketFilter.java:259)
>      [exec]   at 
> org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:201)
>      [exec]   at 
> org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:282)
>      [exec]   at 
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1326)
>      [exec]   at 
> org.apache.shiro.web.servlet.AbstractShiroFilter.executeChain(AbstractShiroFilter.java:449)
>      [exec]   at 
> org.apache.shiro.web.servlet.AbstractShiroFilter$1.call(AbstractShiroFilter.java:365)
>      [exec]   at 
> org.apache.shiro.subject.support.SubjectCallable.doCall(SubjectCallable.java:90)
>      [exec]   at 
> org.apache.shiro.subject.support.SubjectCallable.call(SubjectCallable.java:83)
>      [exec]   at 
> org.apache.shiro.subject.support.DelegatingSubject.execute(DelegatingSubject.java:383)
>      [exec]   at 
> org.apache.shiro.web.servlet.AbstractShiroFilter.doFilterInternal(AbstractShiroFilter.java:362)
>      [exec]   at 
> org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125)
>      [exec]   at 
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1326)
>      [exec]   at 
> org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:479)
>      [exec]   at 
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:119)
>      [exec]   at 
> org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:520)
>      [exec]   at 
> org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:227)
>      [exec]   at 
> org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:940)
>      [exec]   at 
> org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:409)
>      [exec]   at 
> org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:186)
>      [exec]   at 
> org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:874)
>      [exec]   at 
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117)
>      [exec]   at 
> org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:250)
>      [exec]   at 
> org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:149)
>      [exec]   at 
> org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:110)
>      [exec]   at org.eclipse.jetty.server.Server.handle(Server.java:349)
>      [exec]   at 
> org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.java:441)
>      [exec]   at 
> org.eclipse.jetty.server.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:904)
>      [exec]   at 
> org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:565)
>      [exec]   at 
> org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:217)
>      [exec]   at 
> org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:46)
>      [exec]   at 
> org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:545)
>      [exec]   at 
> org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:43)
>      [exec]   at 
> org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:598)
>      [exec]   at 
> org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:533)
>      [exec]   at java.lang.Thread.run(Thread.java:680)
>      [exec] Caused by: org.hsqldb.HsqlException: violación del restricción de 
> integridad: restricción ('check') NOT NULL; SYS_CT_10482 table: 
> BUSINESSCONTINUITYMANAGEMENTSYSTEM column: "NAME"
>      [exec]   at org.hsqldb.error.Error.error(Unknown Source)
>      [exec]   at org.hsqldb.Table.enforceRowConstraints(Unknown Source)
>      [exec]   at org.hsqldb.Table.insertSingleRow(Unknown Source)
>      [exec]   at org.hsqldb.StatementDML.insertRowSet(Unknown Source)
>      [exec]   at org.hsqldb.StatementInsert.getResult(Unknown Source)
>      [exec]   at org.hsqldb.StatementDMQL.execute(Unknown Source)
>      [exec]   at org.hsqldb.Session.executeCompiledStatement(Unknown Source)
>      [exec]   at org.hsqldb.Session.execute(Unknown Source)
>      [exec]   ... 87 more
>      [exec] 14:25:01,644  [Persist              qtp1236443008-29 WARN ]  
> Persistencia del objeto 
> "com.xms.framework.risk.domain.model.continuity.BusinessContinuityManagementSystem@47febf99"
>  con SQL "INSERT INTO BUSINESSCONTINUITYMANAGEMENTSYSTEM 
> (UPDATEDBYUSER,DATECREATED,ID,DESCRIPTION,"NAME",SCOPE_BUSINESSCONTINUITYMANAGEMENTSYSTEMSCOPE_ID_OID,CREATEDBYUSER,TENANTID,DATEUPDATED)
>  VALUES (?,?,?,?,?,?,?,?,?)" ha tirado un error : violación del restricción 
> de integridad: restricción ('check') NOT NULL; SYS_CT_10482 table: 
> BUSINESSCONTINUITYMANAGEMENTSYSTEM column: "NAME"
>      [exec] 14:25:05,540  [sqlonly              qtp1236443008-31 DEBUG]   
> org.datanucleus.store.rdbms.datasource.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:96)
>      [exec] 2. SELECT 
> 'com.xms.framework.risk.domain.model.continuity.BusinessContinuityManagementSystem'
>  
>      [exec] FROM BUSINESSCONTINUITYMANAGEMENTSYSTEM A0 WHERE A0.TENANTID = 
> 'n/a' 
>      [exec] 14:25:05,542  [resultsettable       qtp1236443008-31 INFO ]  |---|
>      [exec] 14:25:05,542  [resultsettable       qtp1236443008-31 INFO ]  |C1 |
>      [exec] 14:25:05,542  [resultsettable       qtp1236443008-31 INFO ]  |---|
>      [exec] 14:25:05,542  [resultsettable       qtp1236443008-31 INFO ]  |---|
>      [exec] 14:25:05,546  [sqlonly              qtp1236443008-31 DEBUG]   
> org.datanucleus.store.rdbms.datasource.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:105)
>      [exec] 2. INSERT INTO BUSINESSCONTINUITYMANAGEMENTSYSTEM 
> (UPDATEDBYUSER,DATECREATED,ID,DESCRIPTION,"NAME",SCOPE_BUSINESSCONTINUITYMANAGEMENTSYSTEMSCOPE_ID_OID,CREATEDBYUSER,TENANTID,DATEUPDATED)
>  
>      [exec] VALUES ('sven','06/13/2013 
> 14:25:05.543','29F3CC48-0253-4E27-B487-F509E038F5E0',NULL,NULL,NULL,'sven','TENANT','06/13/2013
>  
>      [exec] 14:25:05.543') 
>      [exec] 14:25:05,546  [audit                qtp1236443008-31 ERROR]  2. 
> PreparedStatement.executeUpdate() INSERT INTO 
> BUSINESSCONTINUITYMANAGEMENTSYSTEM 
> (UPDATEDBYUSER,DATECREATED,ID,DESCRIPTION,"NAME",SCOPE_BUSINESSCONTINUITYMANAGEMENTSYSTEMSCOPE_ID_OID,CREATEDBYUSER,TENANTID,DATEUPDATED)
>  VALUES ('sven','06/13/2013 
> 14:25:05.543','29F3CC48-0253-4E27-B487-F509E038F5E0',NULL,NULL,NULL,'sven','TENANT','06/13/2013
>  14:25:05.543')
>      [exec] java.sql.SQLIntegrityConstraintViolationException: violación del 
> restricción de integridad: restricción ('check') NOT NULL; SYS_CT_10482 
> table: BUSINESSCONTINUITYMANAGEMENTSYSTEM column: "NAME"
>      [exec]   at org.hsqldb.jdbc.Util.sqlException(Unknown Source)
>      [exec]   at org.hsqldb.jdbc.Util.sqlException(Unknown Source)
>      [exec]   at org.hsqldb.jdbc.JDBCPreparedStatement.fetchResult(Unknown 
> Source)
>      [exec]   at org.hsqldb.jdbc.JDBCPreparedStatement.executeUpdate(Unknown 
> Source)
>      [exec]   at 
> net.sf.log4jdbc.PreparedStatementSpy.executeUpdate(PreparedStatementSpy.java:1022)
>      [exec]   at 
> org.datanucleus.store.rdbms.datasource.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:105)
>      [exec]   at 
> org.datanucleus.store.rdbms.datasource.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:105)
>      [exec]   at 
> org.datanucleus.store.rdbms.ParamLoggingPreparedStatement.executeUpdate(ParamLoggingPreparedStatement.java:399)
>      [exec]   at 
> org.datanucleus.store.rdbms.SQLController.executeStatementUpdate(SQLController.java:439)
>      [exec]   at 
> org.datanucleus.store.rdbms.request.InsertRequest.execute(InsertRequest.java:409)
>      [exec]   at 
> org.datanucleus.store.rdbms.RDBMSPersistenceHandler.insertTable(RDBMSPersistenceHandler.java:167)
>      [exec]   at 
> org.datanucleus.store.rdbms.RDBMSPersistenceHandler.insertObject(RDBMSPersistenceHandler.java:143)
>      [exec]   at 
> org.datanucleus.state.JDOStateManager.internalMakePersistent(JDOStateManager.java:3774)
>      [exec]   at 
> org.datanucleus.state.JDOStateManager.makePersistent(JDOStateManager.java:3750)
>      [exec]   at 
> org.datanucleus.ExecutionContextImpl.persistObjectInternal(ExecutionContextImpl.java:2125)
>      [exec]   at 
> org.datanucleus.ExecutionContextImpl.persistObjectWork(ExecutionContextImpl.java:1973)
>      [exec]   at 
> org.datanucleus.ExecutionContextImpl.persistObject(ExecutionContextImpl.java:1821)
>      [exec]   at 
> org.datanucleus.api.jdo.JDOPersistenceManager.jdoMakePersistent(JDOPersistenceManager.java:727)
>      [exec]   at 
> org.datanucleus.api.jdo.JDOPersistenceManager.makePersistent(JDOPersistenceManager.java:752)
>      [exec]   at 
> org.apache.isis.objectstore.jdo.datanucleus.persistence.commands.DataNucleusCreateObjectCommand.execute(DataNucleusCreateObjectCommand.java:53)
>      [exec]   at 
> org.apache.isis.objectstore.jdo.datanucleus.DataNucleusObjectStore.executeCommands(DataNucleusObjectStore.java:360)
>      [exec]   at 
> org.apache.isis.objectstore.jdo.datanucleus.DataNucleusObjectStore.execute(DataNucleusObjectStore.java:354)
>      [exec]   at 
> org.apache.isis.core.runtime.system.transaction.IsisTransaction.doFlush(IsisTransaction.java:367)
>      [exec]   at 
> org.apache.isis.core.runtime.system.transaction.IsisTransaction.flush(IsisTransaction.java:333)
>      [exec]   at 
> org.apache.isis.core.runtime.system.transaction.IsisTransactionManager.flushTransaction(IsisTransactionManager.java:301)
>      [exec]   at 
> org.apache.isis.viewer.wicket.ui.components.actions.ActionPanel.executeActionOnTargetAndProcessResults(ActionPanel.java:182)
>      [exec]   at 
> org.apache.isis.viewer.wicket.ui.components.actions.ActionPanel.executeActionAndProcessResults(ActionPanel.java:138)
>      [exec]   at 
> org.apache.isis.viewer.wicket.ui.components.actions.ActionPanel.buildGui(ActionPanel.java:96)
>      [exec]   at 
> org.apache.isis.viewer.wicket.ui.components.actions.ActionPanel.<init>(ActionPanel.java:89)
>      [exec]   at 
> org.apache.isis.viewer.wicket.ui.components.actions.ActionPanelFactory.createComponent(ActionPanelFactory.java:49)
>      [exec]   at 
> org.apache.isis.viewer.wicket.ui.ComponentFactoryAbstract.createComponent(ComponentFactoryAbstract.java:82)
>      [exec]   at 
> org.apache.isis.viewer.wicket.viewer.registries.components.ComponentFactoryRegistryDefault.createComponent(ComponentFactoryRegistryDefault.java:120)
>      [exec]   at 
> org.apache.isis.viewer.wicket.viewer.registries.components.ComponentFactoryRegistryDefault.addOrReplaceComponent(ComponentFactoryRegistryDefault.java:105)
>      [exec]   at 
> org.apache.isis.viewer.wicket.ui.pages.PageAbstract.addComponent(PageAbstract.java:263)
>      [exec]   at 
> org.apache.isis.viewer.wicket.ui.pages.PageAbstract.addChildComponents(PageAbstract.java:258)
>      [exec]   at 
> org.apache.isis.viewer.wicket.ui.pages.action.ActionPage.<init>(ActionPage.java:54)
>      [exec]   at 
> sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
>      [exec]   at 
> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
>      [exec]   at 
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
>      [exec]   at 
> java.lang.reflect.Constructor.newInstance(Constructor.java:513)
>      [exec]   at 
> org.apache.wicket.session.DefaultPageFactory.newPage(DefaultPageFactory.java:170)
>      [exec]   at 
> org.apache.wicket.session.DefaultPageFactory.newPage(DefaultPageFactory.java:98)
>      [exec]   at 
> org.apache.wicket.DefaultMapperContext.newPageInstance(DefaultMapperContext.java:137)
>      [exec]   at 
> org.apache.wicket.core.request.handler.PageProvider.resolvePageInstance(PageProvider.java:268)
>      [exec]   at 
> org.apache.wicket.core.request.handler.PageProvider.getPageInstance(PageProvider.java:166)
>      [exec]   at 
> org.apache.wicket.request.handler.render.PageRenderer.getPage(PageRenderer.java:78)
>      [exec]   at 
> org.apache.wicket.request.handler.render.WebPageRenderer.renderPage(WebPageRenderer.java:94)
>      [exec]   at 
> org.apache.wicket.request.handler.render.WebPageRenderer.respond(WebPageRenderer.java:196)
>      [exec]   at 
> org.apache.wicket.core.request.handler.RenderPageRequestHandler.respond(RenderPageRequestHandler.java:165)
>      [exec]   at 
> org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:854)
>      [exec]   at 
> org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)
>      [exec]   at 
> org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:254)
>      [exec]   at 
> org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:211)
>      [exec]   at 
> org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:282)
>      [exec]   at 
> org.apache.wicket.protocol.http.WicketFilter.processRequestCycle(WicketFilter.java:259)
>      [exec]   at 
> org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:201)
>      [exec]   at 
> org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:282)
>      [exec]   at 
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1326)
>      [exec]   at 
> org.apache.shiro.web.servlet.AbstractShiroFilter.executeChain(AbstractShiroFilter.java:449)
>      [exec]   at 
> org.apache.shiro.web.servlet.AbstractShiroFilter$1.call(AbstractShiroFilter.java:365)
>      [exec]   at 
> org.apache.shiro.subject.support.SubjectCallable.doCall(SubjectCallable.java:90)
>      [exec]   at 
> org.apache.shiro.subject.support.SubjectCallable.call(SubjectCallable.java:83)
>      [exec]   at 
> org.apache.shiro.subject.support.DelegatingSubject.execute(DelegatingSubject.java:383)
>      [exec]   at 
> org.apache.shiro.web.servlet.AbstractShiroFilter.doFilterInternal(AbstractShiroFilter.java:362)
>      [exec]   at 
> org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125)
>      [exec]   at 
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1326)
>      [exec]   at 
> org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:479)
>      [exec]   at 
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:119)
>      [exec]   at 
> org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:520)
>      [exec]   at 
> org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:227)
>      [exec]   at 
> org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:940)
>      [exec]   at 
> org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:409)
>      [exec]   at 
> org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:186)
>      [exec]   at 
> org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:874)
>      [exec]   at 
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117)
>      [exec]   at 
> org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:250)
>      [exec]   at 
> org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:149)
>      [exec]   at 
> org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:110)
>      [exec]   at org.eclipse.jetty.server.Server.handle(Server.java:349)
>      [exec]   at 
> org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.java:441)
>      [exec]   at 
> org.eclipse.jetty.server.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:904)
>      [exec]   at 
> org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:565)
>      [exec]   at 
> org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:217)
>      [exec]   at 
> org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:46)
>      [exec]   at 
> org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:545)
>      [exec]   at 
> org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:43)
>      [exec]   at 
> org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:598)
>      [exec]   at 
> org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:533)
>      [exec]   at java.lang.Thread.run(Thread.java:680)
>      [exec] Caused by: org.hsqldb.HsqlException: violación del restricción de 
> integridad: restricción ('check') NOT NULL; SYS_CT_10482 table: 
> BUSINESSCONTINUITYMANAGEMENTSYSTEM column: "NAME"
>      [exec]   at org.hsqldb.error.Error.error(Unknown Source)
>      [exec]   at org.hsqldb.Table.enforceRowConstraints(Unknown Source)
>      [exec]   at org.hsqldb.Table.insertSingleRow(Unknown Source)
>      [exec]   at org.hsqldb.StatementDML.insertRowSet(Unknown Source)
>      [exec]   at org.hsqldb.StatementInsert.getResult(Unknown Source)
>      [exec]   at org.hsqldb.StatementDMQL.execute(Unknown Source)
>      [exec]   at org.hsqldb.Session.executeCompiledStatement(Unknown Source)
>      [exec]   at org.hsqldb.Session.execute(Unknown Source)
>      [exec]   ... 87 more
>      [exec] 14:25:05,550  [sqlonly              qtp1236443008-31 ERROR]   
> org.datanucleus.store.rdbms.datasource.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:105)
>      [exec] 2. INSERT INTO BUSINESSCONTINUITYMANAGEMENTSYSTEM 
> (UPDATEDBYUSER,DATECREATED,ID,DESCRIPTION,"NAME",SCOPE_BUSINESSCONTINUITYMANAGEMENTSYSTEMSCOPE_ID_OID,CREATEDBYUSER,TENANTID,DATEUPDATED)
>  VALUES ('sven','06/13/2013 
> 14:25:05.543','29F3CC48-0253-4E27-B487-F509E038F5E0',NULL,NULL,NULL,'sven','TENANT','06/13/2013
>  14:25:05.543')
>      [exec] java.sql.SQLIntegrityConstraintViolationException: violación del 
> restricción de integridad: restricción ('check') NOT NULL; SYS_CT_10482 
> table: BUSINESSCONTINUITYMANAGEMENTSYSTEM column: "NAME"
>      [exec]   at org.hsqldb.jdbc.Util.sqlException(Unknown Source)
>      [exec]   at org.hsqldb.jdbc.Util.sqlException(Unknown Source)
>      [exec]   at org.hsqldb.jdbc.JDBCPreparedStatement.fetchResult(Unknown 
> Source)
>      [exec]   at org.hsqldb.jdbc.JDBCPreparedStatement.executeUpdate(Unknown 
> Source)
>      [exec]   at 
> net.sf.log4jdbc.PreparedStatementSpy.executeUpdate(PreparedStatementSpy.java:1022)
>      [exec]   at 
> org.datanucleus.store.rdbms.datasource.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:105)
>      [exec]   at 
> org.datanucleus.store.rdbms.datasource.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:105)
>      [exec]   at 
> org.datanucleus.store.rdbms.ParamLoggingPreparedStatement.executeUpdate(ParamLoggingPreparedStatement.java:399)
>      [exec]   at 
> org.datanucleus.store.rdbms.SQLController.executeStatementUpdate(SQLController.java:439)
>      [exec]   at 
> org.datanucleus.store.rdbms.request.InsertRequest.execute(InsertRequest.java:409)
>      [exec]   at 
> org.datanucleus.store.rdbms.RDBMSPersistenceHandler.insertTable(RDBMSPersistenceHandler.java:167)
>      [exec]   at 
> org.datanucleus.store.rdbms.RDBMSPersistenceHandler.insertObject(RDBMSPersistenceHandler.java:143)
>      [exec]   at 
> org.datanucleus.state.JDOStateManager.internalMakePersistent(JDOStateManager.java:3774)
>      [exec]   at 
> org.datanucleus.state.JDOStateManager.makePersistent(JDOStateManager.java:3750)
>      [exec]   at 
> org.datanucleus.ExecutionContextImpl.persistObjectInternal(ExecutionContextImpl.java:2125)
>      [exec]   at 
> org.datanucleus.ExecutionContextImpl.persistObjectWork(ExecutionContextImpl.java:1973)
>      [exec]   at 
> org.datanucleus.ExecutionContextImpl.persistObject(ExecutionContextImpl.java:1821)
>      [exec]   at 
> org.datanucleus.api.jdo.JDOPersistenceManager.jdoMakePersistent(JDOPersistenceManager.java:727)
>      [exec]   at 
> org.datanucleus.api.jdo.JDOPersistenceManager.makePersistent(JDOPersistenceManager.java:752)
>      [exec]   at 
> org.apache.isis.objectstore.jdo.datanucleus.persistence.commands.DataNucleusCreateObjectCommand.execute(DataNucleusCreateObjectCommand.java:53)
>      [exec]   at 
> org.apache.isis.objectstore.jdo.datanucleus.DataNucleusObjectStore.executeCommands(DataNucleusObjectStore.java:360)
>      [exec]   at 
> org.apache.isis.objectstore.jdo.datanucleus.DataNucleusObjectStore.execute(DataNucleusObjectStore.java:354)
>      [exec]   at 
> org.apache.isis.core.runtime.system.transaction.IsisTransaction.doFlush(IsisTransaction.java:367)
>      [exec]   at 
> org.apache.isis.core.runtime.system.transaction.IsisTransaction.flush(IsisTransaction.java:333)
>      [exec]   at 
> org.apache.isis.core.runtime.system.transaction.IsisTransactionManager.flushTransaction(IsisTransactionManager.java:301)
>      [exec]   at 
> org.apache.isis.viewer.wicket.ui.components.actions.ActionPanel.executeActionOnTargetAndProcessResults(ActionPanel.java:182)
>      [exec]   at 
> org.apache.isis.viewer.wicket.ui.components.actions.ActionPanel.executeActionAndProcessResults(ActionPanel.java:138)
>      [exec]   at 
> org.apache.isis.viewer.wicket.ui.components.actions.ActionPanel.buildGui(ActionPanel.java:96)
>      [exec]   at 
> org.apache.isis.viewer.wicket.ui.components.actions.ActionPanel.<init>(ActionPanel.java:89)
>      [exec]   at 
> org.apache.isis.viewer.wicket.ui.components.actions.ActionPanelFactory.createComponent(ActionPanelFactory.java:49)
>      [exec]   at 
> org.apache.isis.viewer.wicket.ui.ComponentFactoryAbstract.createComponent(ComponentFactoryAbstract.java:82)
>      [exec]   at 
> org.apache.isis.viewer.wicket.viewer.registries.components.ComponentFactoryRegistryDefault.createComponent(ComponentFactoryRegistryDefault.java:120)
>      [exec]   at 
> org.apache.isis.viewer.wicket.viewer.registries.components.ComponentFactoryRegistryDefault.addOrReplaceComponent(ComponentFactoryRegistryDefault.java:105)
>      [exec]   at 
> org.apache.isis.viewer.wicket.ui.pages.PageAbstract.addComponent(PageAbstract.java:263)
>      [exec]   at 
> org.apache.isis.viewer.wicket.ui.pages.PageAbstract.addChildComponents(PageAbstract.java:258)
>      [exec]   at 
> org.apache.isis.viewer.wicket.ui.pages.action.ActionPage.<init>(ActionPage.java:54)
>      [exec]   at 
> sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
>      [exec]   at 
> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
>      [exec]   at 
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
>      [exec]   at 
> java.lang.reflect.Constructor.newInstance(Constructor.java:513)
>      [exec]   at 
> org.apache.wicket.session.DefaultPageFactory.newPage(DefaultPageFactory.java:170)
>      [exec]   at 
> org.apache.wicket.session.DefaultPageFactory.newPage(DefaultPageFactory.java:98)
>      [exec]   at 
> org.apache.wicket.DefaultMapperContext.newPageInstance(DefaultMapperContext.java:137)
>      [exec]   at 
> org.apache.wicket.core.request.handler.PageProvider.resolvePageInstance(PageProvider.java:268)
>      [exec]   at 
> org.apache.wicket.core.request.handler.PageProvider.getPageInstance(PageProvider.java:166)
>      [exec]   at 
> org.apache.wicket.request.handler.render.PageRenderer.getPage(PageRenderer.java:78)
>      [exec]   at 
> org.apache.wicket.request.handler.render.WebPageRenderer.renderPage(WebPageRenderer.java:94)
>      [exec]   at 
> org.apache.wicket.request.handler.render.WebPageRenderer.respond(WebPageRenderer.java:196)
>      [exec]   at 
> org.apache.wicket.core.request.handler.RenderPageRequestHandler.respond(RenderPageRequestHandler.java:165)
>      [exec]   at 
> org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:854)
>      [exec]   at 
> org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)
>      [exec]   at 
> org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:254)
>      [exec]   at 
> org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:211)
>      [exec]   at 
> org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:282)
>      [exec]   at 
> org.apache.wicket.protocol.http.WicketFilter.processRequestCycle(WicketFilter.java:259)
>      [exec]   at 
> org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:201)
>      [exec]   at 
> org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:282)
>      [exec]   at 
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1326)
>      [exec]   at 
> org.apache.shiro.web.servlet.AbstractShiroFilter.executeChain(AbstractShiroFilter.java:449)
>      [exec]   at 
> org.apache.shiro.web.servlet.AbstractShiroFilter$1.call(AbstractShiroFilter.java:365)
>      [exec]   at 
> org.apache.shiro.subject.support.SubjectCallable.doCall(SubjectCallable.java:90)
>      [exec]   at 
> org.apache.shiro.subject.support.SubjectCallable.call(SubjectCallable.java:83)
>      [exec]   at 
> org.apache.shiro.subject.support.DelegatingSubject.execute(DelegatingSubject.java:383)
>      [exec]   at 
> org.apache.shiro.web.servlet.AbstractShiroFilter.doFilterInternal(AbstractShiroFilter.java:362)
>      [exec]   at 
> org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125)
>      [exec]   at 
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1326)
>      [exec]   at 
> org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:479)
>      [exec]   at 
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:119)
>      [exec]   at 
> org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:520)
>      [exec]   at 
> org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:227)
>      [exec]   at 
> org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:940)
>      [exec]   at 
> org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:409)
>      [exec]   at 
> org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:186)
>      [exec]   at 
> org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:874)
>      [exec]   at 
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117)
>      [exec]   at 
> org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:250)
>      [exec]   at 
> org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:149)
>      [exec]   at 
> org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:110)
>      [exec]   at org.eclipse.jetty.server.Server.handle(Server.java:349)
>      [exec]   at 
> org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.java:441)
>      [exec]   at 
> org.eclipse.jetty.server.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:904)
>      [exec]   at 
> org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:565)
>      [exec]   at 
> org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:217)
>      [exec]   at 
> org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:46)
>      [exec]   at 
> org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:545)
>      [exec]   at 
> org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:43)
>      [exec]   at 
> org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:598)
>      [exec]   at 
> org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:533)
>      [exec]   at java.lang.Thread.run(Thread.java:680)
>      [exec] Caused by: org.hsqldb.HsqlException: violación del restricción de 
> integridad: restricción ('check') NOT NULL; SYS_CT_10482 table: 
> BUSINESSCONTINUITYMANAGEMENTSYSTEM column: "NAME"
>      [exec]   at org.hsqldb.error.Error.error(Unknown Source)
>      [exec]   at org.hsqldb.Table.enforceRowConstraints(Unknown Source)
>      [exec]   at org.hsqldb.Table.insertSingleRow(Unknown Source)
>      [exec]   at org.hsqldb.StatementDML.insertRowSet(Unknown Source)
>      [exec]   at org.hsqldb.StatementInsert.getResult(Unknown Source)
>      [exec]   at org.hsqldb.StatementDMQL.execute(Unknown Source)
>      [exec]   at org.hsqldb.Session.executeCompiledStatement(Unknown Source)
>      [exec]   at org.hsqldb.Session.execute(Unknown Source)
>      [exec]   ... 87 more
>      [exec] 14:25:05,553  [Persist              qtp1236443008-31 WARN ]  
> Persistencia del objeto 
> "com.xms.framework.risk.domain.model.continuity.BusinessContinuityManagementSystem@34940a15"
>  con SQL "INSERT INTO BUSINESSCONTINUITYMANAGEMENTSYSTEM 
> (UPDATEDBYUSER,DATECREATED,ID,DESCRIPTION,"NAME",SCOPE_BUSINESSCONTINUITYMANAGEMENTSYSTEMSCOPE_ID_OID,CREATEDBYUSER,TENANTID,DATEUPDATED)
>  VALUES (?,?,?,?,?,?,?,?,?)" ha tirado un error : violación del restricción 
> de integridad: restricción ('check') NOT NULL; SYS_CT_10482 table: 
> BUSINESSCONTINUITYMANAGEMENTSYSTEM column: "NAME"
> So seems that Isis is "eating" this exception. In this case is due to an 
> error by ourselves, but the fact is that in other cases it could originate 
> "bad business logic", as the object "seems to be persisted".
> The only thing we have made is annotate the "name" property with 
> @Column(allowsNull = "false")
> But, if I modify the Quickstart archetype "ToDoItem.java" from this:
>     @Column(allowsNull = "false", scale = 2)
>     @Optional
>     @MemberOrder(sequence = "4.1")
>     public BigDecimal getCost() {
>         return cost;
>     }
> to this:
>     @Column(scale = 2)
>     @Optional
>     @MemberOrder(sequence = "4.1")
>     public BigDecimal getCost() {
>         return cost;
>     }
> And try to create a new instance with the newToDoItem action, it detects it 
> properly showing, as per attached screenshot.
> What can be have not properly configured?
> On isis.services we are including the 
> "org.apache.isis.objectstore.jdo.applib.service.exceprecog.ExceptionRecognizerCompositeForJdoObjectStore"
> isis.services = 
> org.apache.isis.objectstore.jdo.datanucleus.service.support.IsisJdoSupportImpl,
>  \
>                 
> org.apache.isis.core.metamodel.services.bookmarks.BookmarkServiceDefault,\
>                 org.apache.isis.objectstore.jdo.service.RegisterEntities,\
>                 
> org.apache.isis.objectstore.jdo.applib.service.exceprecog.ExceptionRecognizerCompositeForJdoObjectStore,\
>                 
> org.apache.isis.viewer.restfulobjects.rendering.eventserializer.RestfulObjectsSpecEventSerializer,\
>                 org.apache.isis.applib.services.audit.AuditingService$Stderr,\
>                 
> org.apache.isis.applib.services.publish.PublishingService$Stderr ,\
>       ....



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to