Home Forum Nuclos Bedienung Administration und Installation can’t read StateModelLayout

Ansicht von 5 Beiträgen - 1 bis 5 (von insgesamt 5)
  • Autor
    Beiträge
  • #3227
    Jan Giebels
    Teilnehmer

    Durch den Datenbankrestore der bei uns schiefgelaufen ist, hat es scheinbar noch andere BLOBs gehimmelt.

    Folgender Fehler tritt auf, wenn die Statusmodelle aufgerufen werden sollen (Administration -> Statusmodell). In der Tabelle t_md_statusmodel sind BLOBs, die den restore scheinbar nicht überlebt haben.

    Wie können wir dieses Problem beheben, ohne alle Statusmodell neu anzulegen?

    Danke und Gruß

    Jan


    Fehlerklasse: org.nuclos.common2.exception.CommonFatalException
    Fehlermeldung: can't read StateModelLayout
    Stack Trace:
    org.nuclos.common2.exception.CommonFatalException: can't read StateModelLayout
    at org.nuclos.client.statemodel.StateDelegate.getAllStateModels(St ateDelegate.java:186)
    at org.nuclos.client.statemodel.admin.StateModelCollectController. search(StateModelCollectController.java:245)
    at org.nuclos.client.ui.collect.CollectController.search(CollectCo ntroller.java:3953)
    at org.nuclos.client.ui.collect.CollectController$36.run(CollectCo ntroller.java:3983)
    at org.nuclos.common2.CommonRunnableAdapter.run(CommonRunnableAdap ter.java:38)
    at org.nuclos.client.ui.UIUtils.runCommand(UIUtils.java:704)
    at org.nuclos.client.ui.UIUtils.runCommand(UIUtils.java:679)
    at org.nuclos.client.ui.UIUtils.runCommand(UIUtils.java:726)
    at org.nuclos.client.ui.collect.CollectController.cmdSearchSingleT hreaded(CollectController.java:3967)
    at org.nuclos.client.ui.collect.CollectController.cmdSearch(Collec tController.java:3860)
    at org.nuclos.client.ui.collect.CollectController.cmdRefreshResult (CollectController.java:3796)
    at org.nuclos.client.common.NuclosCollectController.refreshResult( NuclosCollectController.java:673)
    at org.nuclos.client.common.NuclosCollectController.viewAll(Nuclos CollectController.java:685)
    at org.nuclos.client.ui.collect.CollectController.runViewAll(Colle ctController.java:1977)
    at org.nuclos.client.common.NuclosCollectController.run(NuclosColl ectController.java:618)
    at org.nuclos.client.common.NuclosCollectController.run(NuclosColl ectController.java:606)
    at org.nuclos.client.main.MainController$42.run(MainController.jav a:1633)
    at org.nuclos.common2.CommonRunnableAdapter.run(CommonRunnableAdap ter.java:38)
    at org.nuclos.client.ui.UIUtils.runCommand(UIUtils.java:704)
    at org.nuclos.client.ui.UIUtils.runCommand(UIUtils.java:679)
    at org.nuclos.client.ui.UIUtils.runCommand(UIUtils.java:726)
    at org.nuclos.client.main.MainController.cmdCollectMasterData(Main Controller.java:1627)
    at org.nuclos.client.main.MainController.access$12(MainController. java:1626)
    at org.nuclos.client.main.MainController$40.actionPerformed(MainCo ntroller.java:1282)
    at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.j ava:2028)
    at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButt on.java:2351)
    at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButto nModel.java:387)
    at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.ja va:242)
    at javax.swing.AbstractButton.doClick(AbstractButton.java:389)
    at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI. java:1223)
    at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(Ba sicMenuItemUI.java:1264)
    at java.awt.Component.processMouseEvent(Component.java:6352)
    at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
    at java.awt.Component.processEvent(Component.java:6117)
    at java.awt.Container.processEvent(Container.java:2085)
    at java.awt.Component.dispatchEventImpl(Component.java:4714)
    at java.awt.Container.dispatchEventImpl(Container.java:2143)
    at java.awt.Component.dispatchEvent(Component.java:4544)
    at java.awt.LightweightDispatcher.retargetMouseEvent(Container.jav a:4621)
    at java.awt.LightweightDispatcher.processMouseEvent(Container.java :4282)
    at java.awt.LightweightDispatcher.dispatchEvent(Container.java: 4212)
    at java.awt.Container.dispatchEventImpl(Container.java:2129)
    at java.awt.Window.dispatchEventImpl(Window.java:2478)
    at java.awt.Component.dispatchEvent(Component.java:4544)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:635)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispat chThread.java:296)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchT hread.java:211)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispat chThread.java:201)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.jav a:196)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.jav a:188)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
    Caused by: org.nuclos.common.NuclosFatalException: can't read StateModelLayout
    at org.nuclos.server.masterdata.MasterDataWrapper.getStateModelVO( MasterDataWrapper.java:349)
    at org.nuclos.server.statemodel.ejb3.StateFacadeBean.getStateModel s(StateFacadeBean.java:750)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccesso rImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMetho dAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.springframework.aop.support.AopUtils.invokeJoinpointUsingRe flection(AopUtils.java:309)
    at org.springframework.aop.framework.ReflectiveMethodInvocation.in vokeJoinpoint(ReflectiveMethodInvocation.java:183)
    at org.springframework.aop.framework.ReflectiveMethodInvocation.pr oceed(ReflectiveMethodInvocation.java:150)
    at org.springframework.security.access.intercept.aopalliance.Metho dSecurityInterceptor.invoke(MethodSecurityInterceptor.java:67)
    at org.springframework.aop.framework.ReflectiveMethodInvocation.pr oceed(ReflectiveMethodInvocation.java:172)
    at org.springframework.transaction.interceptor.TransactionIntercep tor.invoke(TransactionInterceptor.java:110)
    at org.springframework.aop.framework.ReflectiveMethodInvocation.pr oceed(ReflectiveMethodInvocation.java:172)
    at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(Jdk DynamicAopProxy.java:202)
    at $Proxy14.getStateModels(Unknown Source)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccesso rImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMetho dAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.springframework.aop.support.AopUtils.invokeJoinpointUsingRe flection(AopUtils.java:309)
    at org.springframework.aop.framework.ReflectiveMethodInvocation.in vokeJoinpoint(ReflectiveMethodInvocation.java:183)
    at org.springframework.aop.framework.ReflectiveMethodInvocation.pr oceed(ReflectiveMethodInvocation.java:150)
    at org.nuclos.server.common.NuclosRemoteRollbackInterceptor.invoke (NuclosRemoteRollbackInterceptor.java:56)
    at org.springframework.aop.framework.ReflectiveMethodInvocation.pr oceed(ReflectiveMethodInvocation.java:172)
    at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(Jdk DynamicAopProxy.java:202)
    at $Proxy86.getStateModels(Unknown Source)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccesso rImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMetho dAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.springframework.remoting.support.RemoteInvocation.invoke(Re moteInvocation.java:205)
    at org.nuclos.server.common.NuclosRemoteInvocationExecutor.invoke( NuclosRemoteInvocationExecutor.java:30)
    at org.springframework.remoting.support.RemoteInvocationBasedExpor ter.invoke(RemoteInvocationBasedExporter.java:78)
    at org.springframework.remoting.support.RemoteInvocationBasedExpor ter.invokeAndCreateResult(RemoteInvocationBasedExporter.java:114)
    at org.springframework.remoting.httpinvoker.HttpInvokerServiceExpo rter.handleRequest(HttpInvokerServiceExporter.java:73)
    at org.springframework.web.servlet.mvc.HttpRequestHandlerAdapter.h andle(HttpRequestHandlerAdapter.java:49)
    at org.springframework.web.servlet.DispatcherServlet.doDispatch(Di spatcherServlet.java:790)
    at org.springframework.web.servlet.DispatcherServlet.doService(Dis patcherServlet.java:719)
    at org.springframework.web.servlet.FrameworkServlet.processRequest (FrameworkServlet.java:644)
    at org.springframework.web.servlet.FrameworkServlet.doPost(Framewo rkServlet.java:560)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilte r(ApplicationFilterChain.java:290)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(Applic ationFilterChain.java:206)
    at org.springframework.security.web.FilterChainProxy$VirtualFilter Chain.doFilter(FilterChainProxy.java:366)
    at org.springframework.security.web.access.intercept.FilterSecurit yInterceptor.invoke(FilterSecurityInterceptor.java:109)
    at org.springframework.security.web.access.intercept.FilterSecurit yInterceptor.doFilter(FilterSecurityInterceptor.java:83)
    at org.springframework.security.web.FilterChainProxy$VirtualFilter Chain.doFilter(FilterChainProxy.java:378)
    at org.springframework.security.web.access.ExceptionTranslationFil ter.doFilter(ExceptionTranslationFilter.java:97)
    at org.springframework.security.web.FilterChainProxy$VirtualFilter Chain.doFilter(FilterChainProxy.java:378)
    at org.springframework.security.web.session.SessionManagementFilte r.doFilter(SessionManagementFilter.java:100)
    at org.springframework.security.web.FilterChainProxy$VirtualFilter Chain.doFilter(FilterChainProxy.java:378)
    at org.springframework.security.web.authentication.AnonymousAuthen ticationFilter.doFilter(AnonymousAuthenticationFilter.java:78)
    at org.springframework.security.web.FilterChainProxy$VirtualFilter Chain.doFilter(FilterChainProxy.java:378)
    at org.springframework.security.web.servletapi.SecurityContextHold erAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter. java:54)
    at org.springframework.security.web.FilterChainProxy$VirtualFilter Chain.doFilter(FilterChainProxy.java:378)
    at org.springframework.security.web.savedrequest.RequestCacheAware Filter.doFilter(RequestCacheAwareFilter.java:35)
    at org.springframework.security.web.FilterChainProxy$VirtualFilter Chain.doFilter(FilterChainProxy.java:378)
    at org.springframework.security.web.authentication.www.BasicAuthen ticationFilter.doFilter(BasicAuthenticationFilter.java:177)
    at org.springframework.security.web.FilterChainProxy$VirtualFilter Chain.doFilter(FilterChainProxy.java:378)
    at org.springframework.security.web.context.SecurityContextPersist enceFilter.doFilter(SecurityContextPersistenceFilter.java:79)
    at org.springframework.security.web.FilterChainProxy$VirtualFilter Chain.doFilter(FilterChainProxy.java:378)
    at org.springframework.security.web.FilterChainProxy.doFilter(Filt erChainProxy.java:167)
    at org.springframework.web.filter.DelegatingFilterProxy.invokeDele gate(DelegatingFilterProxy.java:237)
    at org.springframework.web.filter.DelegatingFilterProxy.doFilter(D elegatingFilterProxy.java:167)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilte r(ApplicationFilterChain.java:235)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(Applic ationFilterChain.java:206)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWr apperValve.java:233)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardCo ntextValve.java:191)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostV alve.java:127)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportV alve.java:102)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEng ineValve.java:109)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapt er.java:298)
    at org.apache.coyote.http11.Http11Processor.process(Http11Processo r.java:857)
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler .process(Http11Protocol.java:588)
    at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.j ava:489)
    at java.lang.Thread.run(Thread.java:662)
    at org.springframework.remoting.support.RemoteInvocationUtils.fill InClientStackTraceIfPossible(RemoteInvocationUtils.java:47)
    at org.springframework.remoting.support.RemoteInvocationResult.rec reate(RemoteInvocationResult.java:115)
    at org.springframework.remoting.support.RemoteInvocationBasedAcces sor.recreateRemoteInvocationResult(RemoteInvocationBasedAccessor.java: 85)
    at org.springframework.remoting.httpinvoker.HttpInvokerClientInter ceptor.invoke(HttpInvokerClientInterceptor.java:148)
    at org.springframework.aop.framework.ReflectiveMethodInvocation.pr oceed(ReflectiveMethodInvocation.java:172)
    at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(Jdk DynamicAopProxy.java:202)
    at $Proxy27.getStateModels(Unknown Source)
    at org.nuclos.client.statemodel.StateDelegate.getAllStateModels(St ateDelegate.java:183)
    ... 50 more

    #3229
    Claudia Mangstl
    Teilnehmer

    Hallo Jan,

    wir sehen uns das mal an, ob man was machen kann, kann es aber nicht versprechen. Mit dieser Fehlermeldung ist es auch schwer zu sagen, wo genau das Problem ist. Scheinbar war hier wirklich der DB-Dump auch noch an anderen Stellen fehlerhaft.
    Können Sie denn neue Statusmodelle anlegen ?

    Viele Grüße,
    Claudia

    #3231
    Jan Giebels
    Teilnehmer

    Hallo,
    habe gestern Nacht das Problem noch etwas eingrenzen können.

    Es ist definitiv der BLOB der nicht korrekt zurück gespielt wurde.

    Neue Statusmodelle kann ich anlegen, diese dann aber nicht mehr öffnen, da andere Einträge in der t_md_statemodel defekt sind und somit in der Maske keine Datensätze angezeigt werden. Auch eine Suchmaske erscheint dort nicht mehr.

    Leider ist schon sehr viel Arbeit in diese Statusmodelle geflossen und wir würden nur ungern alle neu aufsetzen.

    Wenn aber daran kein Weg vorbeiführt haben wir ein Problem, da ja bereits Daten mit Status existieren müssten diese alle auf neue Statusmodelle „migriert“ werden. Wie könnte man das am geschicktesten anstellen?

    Dazu müsste aber auch die Maske „Statusmodell“ funktionieren um neu angelegte Modell bearbeiten zu können.

    Gruss

    Jan

    #3232
    Jan Giebels
    Teilnehmer

    Es müsste sowas wie einen Dummy BLOB geben, damit die Suchmaske und das Aufrufen der Einträge zumindest wieder möglich währe.
    Soweit ich die Abhängigkeiten überblicken kann, ist das BLOB auch nur für die grafische Darstellung im Editor von Nöten.

    Die existierenden Statusmodelle lassen sich auch noch, wie angelegt, fehlerfrei verwenden.

    #3233
    Jan Giebels
    Teilnehmer

    Hallo,
    dieses Problem brauchen Sie nicht weiter zu analysieren.
    Die zerstörten BLOBs sind zu individuell, als das es dafür eine Lösung geben würde.

    Wir haben nun in den sauren Apfel gebissen und die Statusmodell neu angelegt und korrigieren die State Ids händisch in der DB. Ein erster Test hat ergeben, das dies problemlos möglich ist, viel Arbeit, aber es funktioniert und wir haben gelernt ….

    ALWAYS TEST YOUR BACKUP ! 😉

    Danke und Gruß

    Jan

Ansicht von 5 Beiträgen - 1 bis 5 (von insgesamt 5)