2013-01-14 185 views
0

即時通訊使用XWIKI ENTERPRISE 2.5並且想升級到4.4或4.3(穩定) 我發現this upgrade documentation for XWiki。遵循指南,我備份了WEB-INF中的重要文件。 之後,我將新的.war的所有文件複製到我的wiki目錄(/var/lib/tomcat6/webapps/xwiki)。然後,我移回重要文件並覆蓋新文件。升級xwiki(2.5至4.4)

我收到此錯誤信息,當我訪問我的wiki頁面:

HTTP Status 404 - type Status report 
message description 
    The requested resource() is not available. 
Apache Tomcat/6.0.28 

這裏是日誌文件:

SCHWERWIEGEND: Exception sending context initialized event to listener instance of class org.xwiki.container.servlet.XWikiServletContextListener 
java.lang.RuntimeException: Failed to find the Observation Manager component 
    at org.xwiki.container.servlet.XWikiServletContextListener.contextInitialized(XWikiServletContextListener.java:101) 
    at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4135) 
    at org.apache.catalina.core.StandardContext.start(StandardContext.java:4630) 
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) 
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) 
    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:546) 
    at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1041) 
    at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:964) 
    at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:502) 
    at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1277) 
    at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:321) 
    at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119) 
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) 
    at org.apache.catalina.core.StandardHost.start(StandardHost.java:785) 
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) 
    at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:445) 
    at org.apache.catalina.core.StandardService.start(StandardService.java:519) 
    at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) 
    at org.apache.catalina.startup.Catalina.start(Catalina.java:581) 
    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.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289) 
    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414) 
Caused by: org.xwiki.component.manager.ComponentLookupException: Failed to lookup component [org.xwiki.observation.internal.DefaultObservationManager] identifier by [role = [interface org.xwiki.observation.ObservationManager] hint = [default]] 
    at org.xwiki.component.embed.EmbeddableComponentManager.getComponentInstance(EmbeddableComponentManager.java:348) 
    at org.xwiki.component.embed.EmbeddableComponentManager.getInstance(EmbeddableComponentManager.java:155) 
    at org.xwiki.container.servlet.XWikiServletContextListener.contextInitialized(XWikiServletContextListener.java:99) 
    ... 24 more 
Caused by: org.xwiki.component.phase.InitializationException: Failed to lookup Event Listeners 
    at org.xwiki.observation.internal.DefaultObservationManager.initialize(DefaultObservationManager.java:139) 
    at org.xwiki.component.embed.InitializableLifecycleHandler.handle(InitializableLifecycleHandler.java:39) 
    at org.xwiki.component.embed.EmbeddableComponentManager.createInstance(EmbeddableComponentManager.java:323) 
    at org.xwiki.component.embed.EmbeddableComponentManager.getComponentInstance(EmbeddableComponentManager.java:378) 
    at org.xwiki.component.embed.EmbeddableComponentManager.getComponentInstance(EmbeddableComponentManager.java:346) 
    ... 26 more 
Caused by: org.xwiki.component.manager.ComponentLookupException: Failed to lookup component [role = [interface org.xwiki.observation.EventListener] hint = [default]] 
    at org.xwiki.component.embed.EmbeddableComponentManager.getInstanceMap(EmbeddableComponentManager.java:187) 
    at org.xwiki.component.embed.EmbeddableComponentManager.getInstanceList(EmbeddableComponentManager.java:169) 
    at org.xwiki.observation.internal.DefaultObservationManager.initialize(DefaultObservationManager.java:135) 
    ... 30 more 
Caused by: org.xwiki.component.manager.ComponentLookupException: Failed to lookup component [org.xwiki.security.authorization.cache.internal.DefaultSecurityCache] identifier by [role = [interface org.xwiki.security.authorization.cache.SecurityCache] hint = [default]] 
    at org.xwiki.component.embed.EmbeddableComponentManager.getComponentInstance(EmbeddableComponentManager.java:348) 
    at org.xwiki.component.embed.EmbeddableComponentManager.getInstance(EmbeddableComponentManager.java:161) 
    at org.xwiki.component.embed.EmbeddableComponentManager.createInstance(EmbeddableComponentManager.java:312) 
    at org.xwiki.component.embed.EmbeddableComponentManager.getComponentInstance(EmbeddableComponentManager.java:378) 
    at org.xwiki.component.embed.EmbeddableComponentManager.getInstanceMap(EmbeddableComponentManager.java:185) 
    ... 32 more 
Caused by: org.xwiki.component.phase.InitializationException: Unable to create the security cache with a capacity of 500 
    at org.xwiki.security.authorization.cache.internal.DefaultSecurityCache.newCache(DefaultSecurityCache.java:104) 
    at org.xwiki.security.authorization.cache.internal.DefaultSecurityCache.initialize(DefaultSecurityCache.java:112) 
    at org.xwiki.component.embed.InitializableLifecycleHandler.handle(InitializableLifecycleHandler.java:39) 
    at org.xwiki.component.embed.EmbeddableComponentManager.createInstance(EmbeddableComponentManager.java:323) 
    at org.xwiki.component.embed.EmbeddableComponentManager.getComponentInstance(EmbeddableComponentManager.java:378) 
    at org.xwiki.component.embed.EmbeddableComponentManager.getComponentInstance(EmbeddableComponentManager.java:346) 
    ... 36 more 
Caused by: org.xwiki.cache.CacheException: Failed to get cache factory for role hint [infinispan] 
    at org.xwiki.cache.internal.DefaultCacheManager.createNewCache(DefaultCacheManager.java:109) 
    at org.xwiki.cache.internal.DefaultCacheManager.createNewCache(DefaultCacheManager.java:85) 
    at org.xwiki.security.authorization.cache.internal.DefaultSecurityCache.newCache(DefaultSecurityCache.java:102) 
    ... 41 more 
Caused by: org.xwiki.component.manager.ComponentLookupException: Failed to lookup component [org.xwiki.cache.infinispan.internal.InfinispanCacheFactory] identifier by [role = [interface org.xwiki.cache.CacheFactory] hint = [infinispan]] 
    at org.xwiki.component.embed.EmbeddableComponentManager.getComponentInstance(EmbeddableComponentManager.java:348) 
    at org.xwiki.component.embed.EmbeddableComponentManager.getInstance(EmbeddableComponentManager.java:161) 
    at org.xwiki.cache.internal.DefaultCacheManager.createNewCache(DefaultCacheManager.java:107) 
    ... 43 more 
Caused by: org.infinispan.jmx.JmxDomainConflictException: Domain already registered org.xwiki.infinispan 
    at org.infinispan.jmx.JmxUtil.buildJmxDomain(JmxUtil.java:73) 
    at org.infinispan.jmx.CacheManagerJmxRegistration.updateDomain(CacheManagerJmxRegistration.java:92) 
    at org.infinispan.jmx.CacheManagerJmxRegistration.buildRegistrar(CacheManagerJmxRegistration.java:86) 
    at org.infinispan.jmx.AbstractJmxRegistration.registerMBeans(AbstractJmxRegistration.java:46) 
    at org.infinispan.jmx.CacheManagerJmxRegistration.start(CacheManagerJmxRegistration.java:62) 
    at org.infinispan.manager.DefaultCacheManager.start(DefaultCacheManager.java:720) 
    at org.infinispan.manager.DefaultCacheManager.<init>(DefaultCacheManager.java:388) 
    at org.infinispan.manager.DefaultCacheManager.<init>(DefaultCacheManager.java:353) 
    at org.xwiki.cache.infinispan.internal.InfinispanCacheFactory.initialize(InfinispanCacheFactory.java:104) 
    at org.xwiki.component.embed.InitializableLifecycleHandler.handle(InitializableLifecycleHandler.java:39) 
    at org.xwiki.component.embed.EmbeddableComponentManager.createInstance(EmbeddableComponentManager.java:323) 
    at org.xwiki.component.embed.EmbeddableComponentManager.getComponentInstance(EmbeddableComponentManager.java:378) 
    at org.xwiki.component.embed.EmbeddableComponentManager.getComponentInstance(EmbeddableComponentManager.java:346) 
    ... 45 more 

回答

0

當你說

我複製了所有的從新的.war文件到我的wiki目錄

您是否將的新文件複製到的現有目錄中?您應該刪除舊版本中的所有內容,並僅使用新版本中的文件,並僅從備份中複製基本配置文件。此外,請注意,您不應只複製舊配置,但會將您的自定義設置合併爲到默認的新配置中。

在堆棧跟蹤根錯誤:

Caused by: org.infinispan.jmx.JmxDomainConflictException: Domain already registered org.xwiki.infinispan 

建議重複罐子。另一種情況是,如果在同一個容器中有多個XWiki實例,則應該編輯WEB-INF/cache/infinispan/config.xml,並用一個唯一值替換行jmxDomain="org.xwiki.infinispan",如jmxDomain="org.xwiki.infinispan.wiki1"jmxDomain="org.xwiki.infinispan.wiki2"這兩個實例。

+0

感謝您的回答。 我刪除/ var/lib/tomcat6/webapps/xwiki中的所有數據(或者它只是WEB-INF文件夾) 然後,我將新wiki文件複製到此目錄 然後,我用備份覆蓋配置文件。 我想,它的「hibernate.cfg.xml」,「xwiki.cfg」和「xwiki.properties」 是嗎? – Vince

+0

'WEB-INF/hibernate.cfg.xml(Hibernate配置)' 'WEB-INF/xwiki.cfg(舊的XWiki配置文件,但仍然使用)' 'WEB-INF/xwiki.properties(new XWiki Configuration文件)' 'WEB-INF/classes/logback.xml(_ **這個文件不存在!! **)' 'WEB-INF/observation/*(集羣配置)' – Vince

+0

是的,'hibernate.cfg .xml「,」xwiki.cfg「和」xwiki.properties「是配置文件。那麼,Tomcat中沒有多個XWiki實例,並且沒有'infinispan-core * .jar'或'xwiki-platform-cache-infinispan - *。jar'多個實例?您是否嘗試編輯'WEB-INF/cache/infinispan/config.xml'中的'jmxDomain'值? –

0

從4.0-rc-1升級到4.4或4.5時,我一直有同樣的問題。我沒有重複的罐子,也沒有運行XWiki的幾個實例。無論是在infinispan還是在XWiki的緩存實現中都可能存在問題。

暫時的解決辦法是明確允許重複域config.xml中:

<globalJmxStatistics 
    [...] 
    allowDuplicateDomains="true" />