Home › Forum › Nuclos Konfiguration › Maskenlayouts › Subform einer Entität mit Statusmodell
- Dieses Thema hat 4 Antworten und 4 Teilnehmer, und wurde zuletzt aktualisiert vor 11 Jahre, 10 Monaten von
Daniel Hammerschmidt.
-
AutorBeiträge
-
8 November 2010 um 15:00 Uhr #2725
Carsten Hof
TeilnehmerHallo,
ich habe eine Entität A mit Statusmodell angelegt. Diese will ich über ein Subform in einer anderen Entität B anzeigen lassen. Die nötigen Referenzfelder dafür existieren und ich kann die Entität A und den Fremdschlüssel auf B im Layout von B angeben.
Beim Bestätigen mit OK erscheint jedoch „A must be a masterdata entity“.Ich habe hier im Forum etwas über die Zweiteilung der Entitäten in MasterData und GenericObject gelesen, hat das was damit zu tun? Leider finde ich den Forumeintrag nicht mehr.
Und wenn ja, gibt es einen Weg A dennoch in B einzubetten?
Vielen Dank
Bettina Sieber8 November 2010 um 15:39 Uhr #2727Claudia Mangstl
TeilnehmerHallo Frau Sieber,
es ist in der Tat nicht möglich Entitäten, die ein Statusmodell besitzen, als Subform Datensätze zu behandeln. Diese Entitäten enthalten zusätzliche Funktionen wie Prozesse oder eben auch das Statusmodell. Man könnte einen Statuswechsel über eine Subformzeile nicht abbilden.
Wie genau soll sich denn der Geschäftsprozess in Ihrem Fall darstellen ? Sie hätten die Möglichkeiten– Entität A ohne Statusmodell zu definieren
– die Daten von Entität A als dynamische Entität in B einzubetten
– in einer Zwischenentität als Subform in B auf schon bestehende Datensätze von Entität A verweisen.In den letzten beiden Fällen müssten Sie auf das Statusmodell in A nicht verzichten.
Viele Grüße,
Claudia M.22 November 2010 um 20:11 Uhr #2763Carsten Hof
TeilnehmerHallo Frau M.,
vielen Dank für Ihre Antwort.
Leider passt jedoch keine der drei Lösungsmöglichkeiten so richtig zu meinem Geschäftsprozess.Möglichkeit 1:
Das Statusmodell kann ich leider nicht rausnehmen. Ich benötige für die Entität A ein Logbuch und folglich auch das Statusmodell. Das Statusmodell an sich wäre für die Abbildung des Geschäftsprozesses nicht notwendig. (Ist eigentlich eine Trennung von Statusmodell und Logbuch geplant?)Möglichkeit 2:
In dem Subform soll man später editieren können, weswegen eine Lösung über eine dynamische Entität ausscheidet.Möglichkeit 3:
Entität A ist bereits eine Zwischenentität zwischen B und C um eine m-n-Zuordnung abzubilden. Ich denke, damit fällt diese Option auch weg, allerdings bin ich mir da nicht ganz sicher. Vielleicht könnten Sie mir diesen dritten Weg nochmal genauer erläutern.Oder gibt es noch einen weiteren Weg den ich versuchen könnte?
Viele Dank und viele Grüße,
Bettina Sieber8 Juli 2011 um 18:08 Uhr #3953Jan Giebels
TeilnehmerSoweit ich im Onlinetraining zu Neuerungen zu 3.x erfahren habe, soll es nun möglich sein, Entitäten mit Statusmodell als Sub-Entität in einer Entität ebenfalls mit Statusmodell zu nutzen.
Dadurch könnten ja dann auch Dokumentenanhänge und Bemerkungen in „Sub-Entitäten“ verwendet werden.
Dies ist sehr nützlich.Leider scheint es ein Problem zu geben mit dem nachträglichen hinzufügen eines Statusmodells zu einer bereits bestehenden und mit Daten gefüllten Entität.
Im Entitätenwizard gibt es folgenden Fehler, wenn ich die Checkbox „mit Statusmodell“ aktiviere und die Entität im Anschluss speichern will.
Fehlerklasse: org.nuclos.common2.exception.CommonFatalException
Fehlermeldung: Entität Lieferantenartikel konnte nicht verändert werden. Grund: ALTER TABLE nuclos.T_EO_LIEFERANTENARTIKEL ADD BLNNUCLOSDELETED BOOLEAN NOT NULL
Stack Trace:
org.nuclos.common2.exception.CommonFatalException: Entität Lieferantenartikel konnte nicht verändert werden.
Grund:
ALTER TABLE nuclos.T_EO_LIEFERANTENARTIKEL ADD BLNNUCLOSDELETED BOOLEAN NOT NULL
at org.nuclos.client.wizard.steps.NuclosEntitySQLLayoutStep.createOrModifyEntity(NuclosEntitySQLLayoutStep.java:713)
at org.nuclos.client.wizard.steps.NuclosEntitySQLLayoutStep.applyState(NuclosEntitySQLLayoutStep.java:432)
at org.nuclos.client.wizard.NuclosWizardButtonBar$1$1.run(NuclosWizardButtonBar.java:87)
at java.lang.Thread.run(Thread.java:680)
Im Log gibt es folgenden Stacktrace:
ERROR [org.nuclos.server.dblayer.impl.DataSourceExecutor] - SQL exception
org.postgresql.util.PSQLException: ERROR: column "blnnuclosdeleted" contains null values
at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2102)
at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1835)
at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:257)
at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:500)
at org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:388)
at org.postgresql.jdbc2.AbstractJdbc2Statement.executeUpdate(AbstractJdbc2Statement.java:334)
at org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:105)
at org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:105)
at org.nuclos.server.dblayer.impl.postgresql.PostgreSQLDBAccess$PostgreSQLStatementVisitor$1.performImpl(PostgreSQLDBAccess.java:326)
at org.nuclos.server.dblayer.impl.postgresql.PostgreSQLDBAccess$PostgreSQLStatementVisitor$1.perform(PostgreSQLDBAccess.java:308)
at org.nuclos.server.dblayer.impl.postgresql.PostgreSQLDBAccess$PostgreSQLStatementVisitor$1.perform(PostgreSQLDBAccess.java:295)
at org.nuclos.server.dblayer.impl.DataSourceExecutor.execute(DataSourceExecutor.java:55)
at org.nuclos.server.dblayer.impl.postgresql.PostgreSQLDBAccess$PostgreSQLStatementVisitor.executePreparedStatement(PostgreSQLDBAccess.java:295)
at org.nuclos.server.dblayer.impl.standard.StandardSqlDBAccess$StatementVisitor.executePreparedStatements(StandardSqlDBAccess.java:715)
at org.nuclos.server.dblayer.impl.standard.StandardSqlDBAccess$StatementVisitor.visitStructureChange(StandardSqlDBAccess.java:696)
at org.nuclos.server.dblayer.impl.standard.StandardSqlDBAccess$StatementVisitor.visitStructureChange(StandardSqlDBAccess.java:674)
at org.nuclos.server.dblayer.statements.DbStructureChange.accept(DbStructureChange.java:75)
at org.nuclos.server.dblayer.impl.standard.StandardSqlDBAccess.execute(StandardSqlDBAccess.java:123)
at org.nuclos.server.dblayer.DbAccess.execute(DbAccess.java:164)
at org.nuclos.server.masterdata.ejb3.MetaDataFacadeBean.createOrModifyEntity(MetaDataFacadeBean.java:661)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:309)
at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
at org.springframework.security.access.intercept.aopalliance.MethodSecurityInterceptor.invoke(MethodSecurityInterceptor.java:67)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:110)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)
at $Proxy20.createOrModifyEntity(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:309)
at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
at org.nuclos.server.common.NuclosRemoteRollbackInterceptor.invoke(NuclosRemoteRollbackInterceptor.java:56)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)
at $Proxy70.createOrModifyEntity(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.springframework.remoting.support.RemoteInvocation.invoke(RemoteInvocation.java:205)
at org.nuclos.server.common.NuclosRemoteInvocationExecutor.invoke(NuclosRemoteInvocationExecutor.java:30)
at org.springframework.remoting.support.RemoteInvocationBasedExporter.invoke(RemoteInvocationBasedExporter.java:78)
at org.springframework.remoting.support.RemoteInvocationBasedExporter.invokeAndCreateResult(RemoteInvocationBasedExporter.java:114)
at org.springframework.remoting.httpinvoker.HttpInvokerServiceExporter.handleRequest(HttpInvokerServiceExporter.java:73)
at org.springframework.web.servlet.mvc.HttpRequestHandlerAdapter.handle(HttpRequestHandlerAdapter.java:49)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:790)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:719)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:644)
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:560)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:366)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:109)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:378)
at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:97)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:378)
at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:100)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:378)
at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:78)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:378)
at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:54)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:378)
at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:35)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:378)
at org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilter(BasicAuthenticationFilter.java:177)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:378)
at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:79)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:378)
at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:167)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:237)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:240)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:164)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:462)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:563)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:399)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:317)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:204)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:311)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)
2011-07-08 17:59:52,426 ERROR [org.nuclos.server.dblayer.impl.DataSourceExecutor] - SQL exception
org.postgresql.util.PSQLException: ERROR: column t.blnnuclosdeleted does not exist
Position: 780
at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2102)
at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1835)
at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:257)
at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:500)
at org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:388)
at org.postgresql.jdbc2.AbstractJdbc2Statement.executeUpdate(AbstractJdbc2Statement.java:334)
at org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:105)
at org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:105)
at org.nuclos.server.dblayer.impl.postgresql.PostgreSQLDBAccess$PostgreSQLStatementVisitor$1.performImpl(PostgreSQLDBAccess.java:326)
at org.nuclos.server.dblayer.impl.postgresql.PostgreSQLDBAccess$PostgreSQLStatementVisitor$1.perform(PostgreSQLDBAccess.java:308)
at org.nuclos.server.dblayer.impl.postgresql.PostgreSQLDBAccess$PostgreSQLStatementVisitor$1.perform(PostgreSQLDBAccess.java:295)
at org.nuclos.server.dblayer.impl.DataSourceExecutor.execute(DataSourceExecutor.java:55)
at org.nuclos.server.dblayer.impl.postgresql.PostgreSQLDBAccess$PostgreSQLStatementVisitor.executePreparedStatement(PostgreSQLDBAccess.java:295)
at org.nuclos.server.dblayer.impl.standard.StandardSqlDBAccess$StatementVisitor.executePreparedStatements(StandardSqlDBAccess.java:715)
at org.nuclos.server.dblayer.impl.standard.StandardSqlDBAccess$StatementVisitor.visitStructureChange(StandardSqlDBAccess.java:696)
at org.nuclos.server.dblayer.impl.standard.StandardSqlDBAccess$StatementVisitor.visitStructureChange(StandardSqlDBAccess.java:674)
at org.nuclos.server.dblayer.statements.DbStructureChange.accept(DbStructureChange.java:75)
at org.nuclos.server.dblayer.impl.standard.StandardSqlDBAccess.execute(StandardSqlDBAccess.java:123)
at org.nuclos.server.dblayer.DbAccess.execute(DbAccess.java:164)
at org.nuclos.server.masterdata.ejb3.MetaDataFacadeBean.createOrModifyEntity(MetaDataFacadeBean.java:661)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:309)
at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
at org.springframework.security.access.intercept.aopalliance.MethodSecurityInterceptor.invoke(MethodSecurityInterceptor.java:67)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:110)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)
at $Proxy20.createOrModifyEntity(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:309)
at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
at org.nuclos.server.common.NuclosRemoteRollbackInterceptor.invoke(NuclosRemoteRollbackInterceptor.java:56)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)
at $Proxy70.createOrModifyEntity(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.springframework.remoting.support.RemoteInvocation.invoke(RemoteInvocation.java:205)
at org.nuclos.server.common.NuclosRemoteInvocationExecutor.invoke(NuclosRemoteInvocationExecutor.java:30)
at org.springframework.remoting.support.RemoteInvocationBasedExporter.invoke(RemoteInvocationBasedExporter.java:78)
at org.springframework.remoting.support.RemoteInvocationBasedExporter.invokeAndCreateResult(RemoteInvocationBasedExporter.java:114)
at org.springframework.remoting.httpinvoker.HttpInvokerServiceExporter.handleRequest(HttpInvokerServiceExporter.java:73)
at org.springframework.web.servlet.mvc.HttpRequestHandlerAdapter.handle(HttpRequestHandlerAdapter.java:49)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:790)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:719)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:644)
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:560)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:366)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:109)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:378)
at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:97)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:378)
at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:100)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:378)
at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:78)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:378)
at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:54)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:378)
at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:35)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:378)
at org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilter(BasicAuthenticationFilter.java:177)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:378)
at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:79)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:378)
at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:167)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:237)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:240)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:164)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:462)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:563)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:399)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:317)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:204)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:311)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)
2011-07-08 17:59:52,430 ERROR [org.nuclos.server.dblayer.impl.DataSourceExecutor] - SQL exception
org.postgresql.util.PSQLException: ERROR: view "v_eo_lieferantenartikel" does not exist
at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2102)
at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1835)
at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:257)
at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:500)
at org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:388)
at org.postgresql.jdbc2.AbstractJdbc2Statement.executeUpdate(AbstractJdbc2Statement.java:334)
at org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:105)
at org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:105)
at org.nuclos.server.dblayer.impl.postgresql.PostgreSQLDBAccess$PostgreSQLStatementVisitor$1.performImpl(PostgreSQLDBAccess.java:326)
at org.nuclos.server.dblayer.impl.postgresql.PostgreSQLDBAccess$PostgreSQLStatementVisitor$1.perform(PostgreSQLDBAccess.java:308)
at org.nuclos.server.dblayer.impl.postgresql.PostgreSQLDBAccess$PostgreSQLStatementVisitor$1.perform(PostgreSQLDBAccess.java:295)
at org.nuclos.server.dblayer.impl.DataSourceExecutor.execute(DataSourceExecutor.java:55)
at org.nuclos.server.dblayer.impl.postgresql.PostgreSQLDBAccess$PostgreSQLStatementVisitor.executePreparedStatement(PostgreSQLDBAccess.java:295)
at org.nuclos.server.dblayer.impl.standard.StandardSqlDBAccess$StatementVisitor.executePreparedStatements(StandardSqlDBAccess.java:715)
at org.nuclos.server.dblayer.impl.standard.StandardSqlDBAccess$StatementVisitor.visitStructureChange(StandardSqlDBAccess.java:696)
at org.nuclos.server.dblayer.impl.standard.StandardSqlDBAccess$StatementVisitor.visitStructureChange(StandardSqlDBAccess.java:674)
at org.nuclos.server.dblayer.statements.DbStructureChange.accept(DbStructureChange.java:75)
at org.nuclos.server.dblayer.impl.standard.StandardSqlDBAccess.execute(StandardSqlDBAccess.java:123)
at org.nuclos.server.dblayer.DbAccess.execute(DbAccess.java:164)
at org.nuclos.server.masterdata.ejb3.MetaDataFacadeBean.rollBackDBChanges(MetaDataFacadeBean.java:918)
at org.nuclos.server.masterdata.ejb3.MetaDataFacadeBean.createOrModifyEntity(MetaDataFacadeBean.java:672)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:309)
at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
at org.springframework.security.access.intercept.aopalliance.MethodSecurityInterceptor.invoke(MethodSecurityInterceptor.java:67)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:110)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)
at $Proxy20.createOrModifyEntity(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:309)
at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
at org.nuclos.server.common.NuclosRemoteRollbackInterceptor.invoke(NuclosRemoteRollbackInterceptor.java:56)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)
at $Proxy70.createOrModifyEntity(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.springframework.remoting.support.RemoteInvocation.invoke(RemoteInvocation.java:205)
at org.nuclos.server.common.NuclosRemoteInvocationExecutor.invoke(NuclosRemoteInvocationExecutor.java:30)
at org.springframework.remoting.support.RemoteInvocationBasedExporter.invoke(RemoteInvocationBasedExporter.java:78)
at org.springframework.remoting.support.RemoteInvocationBasedExporter.invokeAndCreateResult(RemoteInvocationBasedExporter.java:114)
at org.springframework.remoting.httpinvoker.HttpInvokerServiceExporter.handleRequest(HttpInvokerServiceExporter.java:73)
at org.springframework.web.servlet.mvc.HttpRequestHandlerAdapter.handle(HttpRequestHandlerAdapter.java:49)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:790)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:719)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:644)
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:560)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:366)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:109)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:378)
at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:97)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:378)
at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:100)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:378)
at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:78)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:378)
at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:54)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:378)
at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:35)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:378)
at org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilter(BasicAuthenticationFilter.java:177)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:378)
at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:79)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:378)
at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:167)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:237)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:240)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:164)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:462)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:563)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:399)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:317)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:204)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:311)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)
2011-07-08 17:59:52,438 ERROR [org.nuclos.server.dblayer.impl.DataSourceExecutor] - SQL exception
org.postgresql.util.PSQLException: ERROR: column "blnnuclosdeleted" of relation "t_eo_lieferantenartikel" does not exist
at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2102)
at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1835)
at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:257)
at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:500)
at org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:388)
at org.postgresql.jdbc2.AbstractJdbc2Statement.executeUpdate(AbstractJdbc2Statement.java:334)
at org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:105)
at org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:105)
at org.nuclos.server.dblayer.impl.postgresql.PostgreSQLDBAccess$PostgreSQLStatementVisitor$1.performImpl(PostgreSQLDBAccess.java:326)
at org.nuclos.server.dblayer.impl.postgresql.PostgreSQLDBAccess$PostgreSQLStatementVisitor$1.perform(PostgreSQLDBAccess.java:308)
at org.nuclos.server.dblayer.impl.postgresql.PostgreSQLDBAccess$PostgreSQLStatementVisitor$1.perform(PostgreSQLDBAccess.java:295)
at org.nuclos.server.dblayer.impl.DataSourceExecutor.execute(DataSourceExecutor.java:55)
at org.nuclos.server.dblayer.impl.postgresql.PostgreSQLDBAccess$PostgreSQLStatementVisitor.executePreparedStatement(PostgreSQLDBAccess.java:295)
at org.nuclos.server.dblayer.impl.standard.StandardSqlDBAccess$StatementVisitor.executePreparedStatements(StandardSqlDBAccess.java:715)
at org.nuclos.server.dblayer.impl.standard.StandardSqlDBAccess$StatementVisitor.visitStructureChange(StandardSqlDBAccess.java:696)
at org.nuclos.server.dblayer.impl.standard.StandardSqlDBAccess$StatementVisitor.visitStructureChange(StandardSqlDBAccess.java:674)
at org.nuclos.server.dblayer.statements.DbStructureChange.accept(DbStructureChange.java:75)
at org.nuclos.server.dblayer.impl.standard.StandardSqlDBAccess.execute(StandardSqlDBAccess.java:123)
at org.nuclos.server.dblayer.DbAccess.execute(DbAccess.java:164)
at org.nuclos.server.masterdata.ejb3.MetaDataFacadeBean.rollBackDBChanges(MetaDataFacadeBean.java:918)
at org.nuclos.server.masterdata.ejb3.MetaDataFacadeBean.createOrModifyEntity(MetaDataFacadeBean.java:672)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:309)
at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
at org.springframework.security.access.intercept.aopalliance.MethodSecurityInterceptor.invoke(MethodSecurityInterceptor.java:67)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:110)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)
at $Proxy20.createOrModifyEntity(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:309)
at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
at org.nuclos.server.common.NuclosRemoteRollbackInterceptor.invoke(NuclosRemoteRollbackInterceptor.java:56)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)
at $Proxy70.createOrModifyEntity(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.springframework.remoting.support.RemoteInvocation.invoke(RemoteInvocation.java:205)
at org.nuclos.server.common.NuclosRemoteInvocationExecutor.invoke(NuclosRemoteInvocationExecutor.java:30)
at org.springframework.remoting.support.RemoteInvocationBasedExporter.invoke(RemoteInvocationBasedExporter.java:78)
at org.springframework.remoting.support.RemoteInvocationBasedExporter.invokeAndCreateResult(RemoteInvocationBasedExporter.java:114)
at org.springframework.remoting.httpinvoker.HttpInvokerServiceExporter.handleRequest(HttpInvokerServiceExporter.java:73)
at org.springframework.web.servlet.mvc.HttpRequestHandlerAdapter.handle(HttpRequestHandlerAdapter.java:49)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:790)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:719)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:644)
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:560)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:366)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:109)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:378)
at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:97)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:378)
at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:100)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:378)
at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:78)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:378)
at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:54)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:378)
at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:35)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:378)
at org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilter(BasicAuthenticationFilter.java:177)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:378)
at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:79)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:378)
at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:167)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:237)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:240)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:164)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:462)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:563)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:399)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:317)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:204)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:311)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)
Das es generell nicht unbedingt möglich ist, ein Statusmodell bei bestehenden Daten zu übergeben scheint mir auch logisch, da ich im Statusmodell ja eine Verwendung angeben muss und dazu vorher eine Entität erstellt werden muss. Das Henne-Ei Problem.
gibt es dafür eine Lösung oder liege ich falsch und es handelt sich um einen Bug ?
Danke.
8 Juli 2011 um 21:42 Uhr #3954Daniel Hammerschmidt
TeilnehmerHallo,
das Problem ist, dass zu einer bestehenden Tabelle, die bereits Daten enthaelt eine Spalte mit dem Constraint „NOT NULL“ hinzugefuegt werden soll.
ALTER TABLE nuclos.T_EO_LIEFERANTENARTIKEL ADD BLNNUCLOSDELETED BOOLEAN NOT NULL
Das funktioniert nicht. (Im Wiki wird auch darauf hingewiesen.) Zunaechst sollten die Datensaetze der Tabelle (mit einem externen Tool) exportiert, dann muss die Tabelle geleert, im Anschluss das Statusmodell hinzugefuegt und darauf hin die Daten wieder importiert werden.
Sobald aber Fremsschluessel mit ins Spiel kommen (was bei Lieferantenartikeln sehr wahrscheinlich ist), wird es haariger. Die Datensaetze, auf die von Datensaetzen aus anderen Tabellen verwiesen wird, lassen sich nicht loeschen und ein kaskadiertes Loeschen wuerde sicherlich zu weit gehen. An dieser stelle wuerde ich die Fremdschluessel voruebergehend loeschen, exportieren, dann die Tabelle leeren, Statusmodell hinzufuegen, importieren, Fremdschluessel setzen.
ALTER TABLE ... DROP CONSTAINT ...
[color=#880000]
Vorher unbedingt ein Backup der gesamten Datenbank machen. Am besten mit einem Snapshot vorher mal ueben. Waehrend Import, Export und Strukturaenderungen Nuclus (Server) beenden.Ich bin weder Mitarbeiter von Novabit noch handle ich in deren Auftrag. Falls dieser Eingriff zu Datenverlust fuehrt, kann Novabit nicht dafuer haftbar gemacht werden.
[/color]UPDATE:
Ich hab das mal erfolgreich getestet. Ich werde den folgenden Code nur spaerlich kommentieren und keine weiteren Aussagen dazu machen. Wer ihn nicht versteht, sollte die Finger davon lassen und einen Fachmann zu Rate ziehen.Viel Spass beim Nachmachen
Daniel
UPDATE2:
Zwei Fremdschluessel und SQL-Anweisungen ueberarbeitet.
Sicherung der Daten in temporaerer Tabelle anstatt externer Datei.Daniel
Nuclos 3.0.9, PostgrSQL 8.4.5
Drei Entitaeten: „Container“, „Item1“ und „Item2“, alle ohne Statusmodell. „Item1“ und „Item2“ haben ein Referenzfeld auf „Container“, „Container“ soll ein Statusmodell erhalten. Der initiale Status heisst „container_initial_status“ und ist ueber alle Statusmodelle eindeutig (kann spaeter geaendert werden)
Nuclos-Server anhalten, psql starten. Zur Uebersicht Tabellendefinition und Beispieldaten.
~> pg_dump -U nuclos nuclosdb-dev > dumpdb-current-`date +"%F-%H%M%S".sql
~> psql nuclosdb-dev nuclosnuclosdb-dev=> d+ t_eo_(container|item1|item2)
Table "public.t_eo_container"
Column | Type | Modifiers | Storage | Description
------------------+-----------------------------+-----------+----------+-------------
intid | numeric(20,0) | not null | main |
strcontainertext | character varying(255) | not null | extended |
datchanged | timestamp without time zone | not null | plain |
strchanged | character varying(30) | not null | extended |
datcreated | timestamp without time zone | not null | plain |
strcreated | character varying(30) | not null | extended |
intversion | numeric(9,0) | not null | main |
Indexes:
"pk_t_eo_container" PRIMARY KEY, btree (intid)
"xak_t_eo_container_3lkrif" UNIQUE, btree (strcontainertext)
Referenced by:
TABLE "t_eo_item1" CONSTRAINT "xr_t_eo_item1_jk62oz" FOREIGN KEY (intid_strcontainer) REFERENCES t_eo_container(intid)
TABLE "t_eo_item2" CONSTRAINT "xr_t_eo_item2_m6f3hh" FOREIGN KEY (intid_strcontainer) REFERENCES t_eo_container(intid)
Has OIDs: noTable "public.t_eo_item1"
Column | Type | Modifiers | Storage | Description
--------------------+-----------------------------+-----------+----------+-------------
intid | numeric(20,0) | not null | main |
stritem1text | character varying(255) | not null | extended |
intid_strcontainer | numeric(20,0) | not null | main |
datchanged | timestamp without time zone | not null | plain |
strchanged | character varying(30) | not null | extended |
datcreated | timestamp without time zone | not null | plain |
strcreated | character varying(30) | not null | extended |
intversion | numeric(9,0) | not null | main |
Indexes:
"pk_t_eo_item1" PRIMARY KEY, btree (intid)
"xak_t_eo_item1_iybv7a" UNIQUE, btree (stritem1text)
"xie_t_eo_item1_wohf7o" btree (intid_strcontainer)
Foreign-key constraints:
"xr_t_eo_item1_jk62oz" FOREIGN KEY (intid_strcontainer) REFERENCES t_eo_container(intid)
Has OIDs: noTable "public.t_eo_item2"
Column | Type | Modifiers | Storage | Description
--------------------+-----------------------------+-----------+----------+-------------
intid | numeric(20,0) | not null | main |
intid_strcontainer | numeric(20,0) | not null | main |
stritem1text | character varying(255) | not null | extended |
datchanged | timestamp without time zone | not null | plain |
strchanged | character varying(30) | not null | extended |
datcreated | timestamp without time zone | not null | plain |
strcreated | character varying(30) | not null | extended |
intversion | numeric(9,0) | not null | main |
Indexes:
"pk_t_eo_item2" PRIMARY KEY, btree (intid)
"xak_t_eo_item2_smpnqr" UNIQUE, btree (stritem1text)
"xie_t_eo_item2_7ui6cw" btree (intid_strcontainer)
Foreign-key constraints:
"xr_t_eo_item2_m6f3hh" FOREIGN KEY (intid_strcontainer) REFERENCES t_eo_container(intid)
Has OIDs: nonuclosdb-dev=> select intid, 'Container' as entity, strcontainertext as "str...text", null::numeric as intid_strcontainer from t_eo_container
union all select intid, 'Item1', stritem1text, intid_strcontainer from t_eo_item1
union all select intid, 'Item2', stritem1text, intid_strcontainer from t_eo_item2;
intid | entity | str...text | intid_strcontainer
----------+-----------+---------------+--------------------
40000097 | Container | Container One |
40000098 | Container | Container Two |
40000099 | Item1 | Item One | 40000097
40000100 | Item2 | Item Two | 40000098
(4 rows)nuclosdb-dev=> select c.conname
from information_schema.constraint_table_usage i
inner join pg_catalog.pg_constraint c on i.constraint_name = c.conname
where i.table_name = 't_eo_container' and c.contype ='f';
conname
----------------------
xr_t_eo_item1_jk62oz
xr_t_eo_item2_m6f3hh
(2 rows)
Los gehts…
nuclosdb-dev=> select * into table tmp_container from t_eo_container;
nuclosdb-dev=> alter table t_eo_item1 drop constraint xr_t_eo_item1_jk62oz;
nuclosdb-dev=> alter table t_eo_item2 drop constraint xr_t_eo_item2_m6f3hh;
nuclosdb-dev=> truncate t_eo_container;
Nuclos starten, Entitaet aendern und Statusmodell hinzufuegen, Nuclos stoppen.
nuclosdb-dev=> alter table t_eo_container alter column blnnuclosdeleted drop not null;
nuclosdb-dev=> insert into t_eo_container select * from tmp_container;
nuclosdb-dev=> alter table t_eo_item1 add constraint xr_t_eo_item1_jk62oz foreign key (intid_strcontainer) references t_eo_container(intid);
nuclosdb-dev=> alter table t_eo_item2 add constraint xr_t_eo_item2_m6f3hh foreign key (intid_strcontainer) references t_eo_container(intid);nuclosdb-dev=> create temporary sequence container_system_id_sequ minvalue 0 start 0;
nuclosdb-dev=> insert into t_ud_genericobject (intid, intid_t_md_module, datcreated, strcreated, datchanged, strchanged, intversion)
select o.intid, e.intid, current_timestamp, 'redneck', current_timestamp, 'redneck', 1
from t_md_entity e, t_eo_container o
where e.strentity = 'Container';
nuclosdb-dev=> insert into t_ud_go_statehistory (intid, intid_t_md_state, intid_t_ud_genericobject, datcreated, strcreated, datchanged, strchanged, intversion)
select nextval('idfactory'), s.intid, o.intid, current_timestamp, 'redneck', current_timestamp, 'redneck', 1
from t_md_state s, t_eo_container o
where s.strstate = 'container_initial_status';
nuclosdb-dev=> update t_eo_container set
blnnuclosdeleted = false,
strnuclossystemid =
e.strsystemidprefix
|| to_char(current_timestamp, 'YYMM')
|| '#'
|| to_char(nextval('container_system_id_sequ'), 'FM00000'),
intid_nuclosstate = s.intid
from t_md_entity e, t_md_state s
where
e.strentity = 'Container'
and s.strstate = 'container_initial_status';
nuclosdb-dev=> alter table t_eo_container alter column blnnuclosdeleted set not null;
nuclosdb-dev=> drop table tmp_container;
-
AutorBeiträge