Home › Forum › Nuclos Bedienung › Administration und Installation › can’t read StateModelLayout
- Dieses Thema hat 4 Antworten und 2 Teilnehmer, und wurde zuletzt aktualisiert vor 12 Jahre, 3 Monaten von
Jan Giebels.
-
AutorBeiträge
-
21 Februar 2011 um 15:53 Uhr #3227
Jan Giebels
TeilnehmerDurch 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
22 Februar 2011 um 11:37 Uhr #3229Claudia Mangstl
TeilnehmerHallo 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,
Claudia22 Februar 2011 um 12:17 Uhr #3231Jan Giebels
TeilnehmerHallo,
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
22 Februar 2011 um 12:30 Uhr #3232Jan Giebels
TeilnehmerEs 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.
22 Februar 2011 um 15:57 Uhr #3233Jan Giebels
TeilnehmerHallo,
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
-
AutorBeiträge