首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >XWiki + MySQL数据库:错误

XWiki + MySQL数据库:错误
EN

Stack Overflow用户
提问于 2013-10-24 10:59:08
回答 3查看 4.5K关注 0票数 1

我已经(据我所知)正确地遵循了xwiki.org上的所有指令,我还到处寻找错误的答案,但不幸的是,我无法自己解决这些错误。

我以两种不同的格式下载了XWiki。第一个是.exe安装程序,第二个是建议的.xar包,这两个包都用于Windows 8,64位计算机上。

第一个程序在“独立”模式下完美地运行,但是一旦将hibernate.cfg.xml文件更改为预设的MySQL设置(这对我的数据库是准确的),我就会得到一个很长的HTTP 500错误。(这是在我添加了MySQL Connection文件,并根据MySQL上的说明创建了一个xwiki.org数据库之后),主要问题似乎是它找不到com.mysql.jdbc.Driver,而且在页面后面我收到一个错误,说它不能创建数据库连接池。

与错误相关的代码如下:

代码语言:javascript
复制
<!-- DBCP Connection Pooling configuration
-->
<property name="dbcp.defaultAutoCommit">false</property>
<property name="dbcp.maxActive">50</property>
<property name="dbcp.maxIdle">5</property>
<property name="dbcp.maxWait">30000</property>
<property name="dbcp.whenExhaustedAction">1</property>
<property name="dbcp.ps.whenExhaustedAction">1</property>
<property name="dbcp.ps.maxWait">120000</property>
<property name="dbcp.ps.maxIdle">20</property>
<property name="connection.provider_class">com.xpn.xwiki.store.DBCPConnectionProvider</property>

还有这个

代码语言:javascript
复制
<!-- MySQL configuration.
Uncomment if you want to use MySQL and comment out other database configurations.
-->
<property name="connection.url">jdbc:mysql://localhost/xwiki</property>
<property name="connection.username">xwiki</property>
<property name="connection.password">xwiki</property>
<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="dialect">org.hibernate.dialect.MySQL5InnoDBDialect</property>
<property name="dbcp.ps.maxActive">20</property>
<mapping resource="xwiki.hbm.xml"/>
<mapping resource="feeds.hbm.xml"/>
<mapping resource="activitystream.hbm.xml"/>
<mapping resource="instance.hbm.xml"/>

错误本身看起来是这样的:

代码语言:javascript
复制
HTTP ERROR 500 

Problem accessing /xwiki/bin/view/Main/. Reason: 

Error number 3 in 0: Could not initialize main XWiki context 

Caused by: 

com.xpn.xwiki.XWikiException: Error number 3 in 0: Could not initialize main XWiki context 
at com.xpn.xwiki.XWiki.getMainXWiki(XWiki.java:422) 
at com.xpn.xwiki.XWiki.getXWiki(XWiki.java:491) 
at com.xpn.xwiki.web.XWikiAction.execute(XWikiAction.java:152) 
at com.xpn.xwiki.web.XWikiAction.execute(XWikiAction.java:128) 
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431) 
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236) 
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196) 
at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414) 
at javax.servlet.http.HttpServlet.service(HttpServlet.java:735) 
at javax.servlet.http.HttpServlet.service(HttpServlet.java:848) 
at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:669) 
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1448) 
at com.xpn.xwiki.web.ActionFilter.doFilter(ActionFilter.java:121) 
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1419) 
at org.xwiki.wysiwyg.server.filter.ConversionFilter.doFilter(ConversionFilter.java:144) 
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1419) 
at com.xpn.xwiki.plugin.webdav.XWikiDavFilter.doFilter(XWikiDavFilter.java:66) 
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1419) 
at org.xwiki.container.servlet.filters.internal.SavedRequestRestorerFilter.doFilter
(SavedRequestRestorerFilter.java:208) 
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1419) 
at org.xwiki.container.servlet.filters.internal.SetCharacterEncodingFilter.doFilter
(SetCharacterEncodingFilter.java:111) 
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1419) 
at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:455) 
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:137) 
at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:557) 
at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:231) 
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1075) 
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:384) 
at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193) 
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1009) 
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135) 
at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle
(ContextHandlerCollection.java:255) 
at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:154) 
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116) 
at org.eclipse.jetty.server.Server.handle(Server.java:368) 
at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest
(AbstractHttpConnection.java:488) 
at org.eclipse.jetty.server.AbstractHttpConnection.headerComplete  
(AbstractHttpConnection.java:932) 
at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.headerComplete 
(AbstractHttpConnection.java:994) 
at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:640) 
at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:235) 
at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:82) 
at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:628) 
at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:52) 
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:608) 
at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543) 
at java.lang.Thread.run(Unknown Source) 
Caused by: com.xpn.xwiki.XWikiException: Error number 3202 in 3: Exception while reading  
document [xwiki:XWiki.XWikiServerClass] 
at com.xpn.xwiki.store.XWikiHibernateStore.loadXWikiDoc(XWikiHibernateStore.java:916) 
at com.xpn.xwiki.store.XWikiCacheStore.loadXWikiDoc(XWikiCacheStore.java:290) 
at com.xpn.xwiki.XWiki.getDocument(XWiki.java:1515) 
at com.xpn.xwiki.XWiki.getDocument(XWiki.java:1558) 
at com.xpn.xwiki.XWiki.initializeMandatoryClasses(XWiki.java:885) 
at com.xpn.xwiki.XWiki.initXWiki(XWiki.java:855) 
at com.xpn.xwiki.XWiki.<init>(XWiki.java:792) 
at com.xpn.xwiki.XWiki.getMainXWiki(XWiki.java:402) 
... 45 more 
Caused by: org.hibernate.HibernateException: Could not create a DBCP pool. There is an error     
in the hibernate configuration file, please review it. 
at com.xpn.xwiki.store.DBCPConnectionProvider.configure(DBCPConnectionProvider.java:215) 
at org.hibernate.connection.ConnectionProviderFactory.newConnectionProvider
(ConnectionProviderFactory.java:143) 
at org.hibernate.connection.ConnectionProviderFactory.newConnectionProvider  
(ConnectionProviderFactory.java:84) 
at org.hibernate.cfg.SettingsFactory.createConnectionProvider(SettingsFactory.java:459) 
at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:90) 
at org.hibernate.cfg.Configuration.buildSettingsInternal(Configuration.java:2863) 
at org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2859) 
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1870) 
at com.xpn.xwiki.store.XWikiHibernateBaseStore.initHibernate(XWikiHibernateBaseStore.java:223) 
at com.xpn.xwiki.store.XWikiHibernateBaseStore.checkHibernate(XWikiHibernateBaseStore.java:640) 
at com.xpn.xwiki.store.XWikiHibernateStore.loadXWikiDoc(XWikiHibernateStore.java:789) 
... 52 more 
Caused by: org.apache.commons.dbcp.SQLNestedException: Cannot load JDBC driver 
class 'com.mysql.jdbc.Driver' 
at org.apache.commons.dbcp.BasicDataSource.createConnectionFactory(BasicDataSource.java:1429) 
at org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1371) 
at org.apache.commons.dbcp.BasicDataSource.getConnection(BasicDataSource.java:1044) 
at com.xpn.xwiki.store.DBCPConnectionProvider.configure(DBCPConnectionProvider.java:197) 
... 62 more 
Caused by: java.lang.ClassNotFoundException: com.mysql.jdbc.Driver 
at java.net.URLClassLoader$1.run(Unknown Source) 
at java.net.URLClassLoader$1.run(Unknown Source) 
at java.security.AccessController.doPrivileged(Native Method) 
at java.net.URLClassLoader.findClass(Unknown Source) 
at java.lang.ClassLoader.loadClass(Unknown Source) 
at java.lang.ClassLoader.loadClass(Unknown Source) 
at org.eclipse.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:430) 
at org.eclipse.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:383) 
at org.apache.commons.dbcp.BasicDataSource.createConnectionFactory(BasicDataSource.java:1420) 
... 65 more 

Caused by: 

com.xpn.xwiki.XWikiException: Error number 3202 in 3: Exception while reading document   
[xwiki:XWiki.XWikiServerClass] 
at com.xpn.xwiki.store.XWikiHibernateStore.loadXWikiDoc(XWikiHibernateStore.java:916) 
at com.xpn.xwiki.store.XWikiCacheStore.loadXWikiDoc(XWikiCacheStore.java:290) 
at com.xpn.xwiki.XWiki.getDocument(XWiki.java:1515) 
at com.xpn.xwiki.XWiki.getDocument(XWiki.java:1558) 
at com.xpn.xwiki.XWiki.initializeMandatoryClasses(XWiki.java:885) 
at com.xpn.xwiki.XWiki.initXWiki(XWiki.java:855) 
at com.xpn.xwiki.XWiki.<init>(XWiki.java:792) 
at com.xpn.xwiki.XWiki.getMainXWiki(XWiki.java:402) 
at com.xpn.xwiki.XWiki.getXWiki(XWiki.java:491) 
at com.xpn.xwiki.web.XWikiAction.execute(XWikiAction.java:152) 
at com.xpn.xwiki.web.XWikiAction.execute(XWikiAction.java:128) 
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431) 
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236) 
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196) 
at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414) 
at javax.servlet.http.HttpServlet.service(HttpServlet.java:735) 
at javax.servlet.http.HttpServlet.service(HttpServlet.java:848) 
at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:669) 
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1448) 
at com.xpn.xwiki.web.ActionFilter.doFilter(ActionFilter.java:121) 
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1419) 
at org.xwiki.wysiwyg.server.filter.ConversionFilter.doFilter(ConversionFilter.java:144) 
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1419) 
at com.xpn.xwiki.plugin.webdav.XWikiDavFilter.doFilter(XWikiDavFilter.java:66) 
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1419) 
at org.xwiki.container.servlet.filters.internal.SavedRequestRestorerFilter.doFilter
(SavedRequestRestorerFilter.java:208) 
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1419) 
at org.xwiki.container.servlet.filters.internal.SetCharacterEncodingFilter.doFilter
(SetCharacterEncodingFilter.java:111) 
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1419) 
at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:455) 
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:137) 
at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:557) 
at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:231) 
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1075) 
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:384) 
at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193) 
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1009) 
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135) 
at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle
(ContextHandlerCollection.java:255) 
at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:154) 
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116) 
at org.eclipse.jetty.server.Server.handle(Server.java:368) 
at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest
(AbstractHttpConnection.java:488) 
at org.eclipse.jetty.server.AbstractHttpConnection.headerComplete
(AbstractHttpConnection.java:932) 
at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.headerComplete
(AbstractHttpConnection.java:994) 
at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:640) 
at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:235) 
at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:82) 
at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:628) 
at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:52) 
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:608) 
at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543) 
at java.lang.Thread.run(Unknown Source) 
Caused by: org.hibernate.HibernateException: Could not create a DBCP pool. There is an error     
in the hibernate configuration file, please review it. 
at com.xpn.xwiki.store.DBCPConnectionProvider.configure(DBCPConnectionProvider.java:215) 
at org.hibernate.connection.ConnectionProviderFactory.newConnectionProvider
(ConnectionProviderFactory.java:143) 
at org.hibernate.connection.ConnectionProviderFactory.newConnectionProvider  
(ConnectionProviderFactory.java:84) 
at org.hibernate.cfg.SettingsFactory.createConnectionProvider(SettingsFactory.java:459) 
at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:90) 
at org.hibernate.cfg.Configuration.buildSettingsInternal(Configuration.java:2863) 
at org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2859) 
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1870) 
at com.xpn.xwiki.store.XWikiHibernateBaseStore.initHibernate(XWikiHibernateBaseStore.java:223) 
at com.xpn.xwiki.store.XWikiHibernateBaseStore.checkHibernate
(XWikiHibernateBaseStore.java:640) 
at com.xpn.xwiki.store.XWikiHibernateStore.loadXWikiDoc(XWikiHibernateStore.java:789) 
... 52 more 
Caused by: org.apache.commons.dbcp.SQLNestedException: Cannot load JDBC driver   
class 'com.mysql.jdbc.Driver' 
at org.apache.commons.dbcp.BasicDataSource.createConnectionFactory   
(BasicDataSource.java:1429) 
at org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1371) 
at org.apache.commons.dbcp.BasicDataSource.getConnection(BasicDataSource.java:1044) 
at com.xpn.xwiki.store.DBCPConnectionProvider.configure(DBCPConnectionProvider.java:197) 
... 62 more 
Caused by: java.lang.ClassNotFoundException: com.mysql.jdbc.Driver 
at java.net.URLClassLoader$1.run(Unknown Source) 
at java.net.URLClassLoader$1.run(Unknown Source) 
at java.security.AccessController.doPrivileged(Native Method) 
at java.net.URLClassLoader.findClass(Unknown Source) 
at java.lang.ClassLoader.loadClass(Unknown Source) 
at java.lang.ClassLoader.loadClass(Unknown Source) 
at org.eclipse.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:430) 
at org.eclipse.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:383) 
at org.apache.commons.dbcp.BasicDataSource.createConnectionFactory 
(BasicDataSource.java:1420) 
... 65 more 

是否必须使用.xar安装版本才能正确连接到数据库?我也尝试过,用Xampp和Tomcat。Tomcat安装得很好,我可以通过localhost:(port)轻松地访问它。但是,当我试图访问我的xwiki时,我会收到一个HTTP 404错误,它说找不到引用,这很奇怪,因为它显示在Tomcat中的部署列表中的其他文件中,并且显示在那里的Tomcat示例文件(位于同一个目录中)工作得很好.

我有点担心,即使我能够通过Tomcat使XWiki正常工作,我在试图连接MySQL数据库时仍然会得到我稍后提到的第一个错误。

边注:我怀疑在XWiki中发现的和Tomcat中的文件之间可能有冲突,因为我在玩和尝试让事情正常运行的时候看到了其他错误.但我可能错了,因为我目前对Java知之甚少。我看到了几个servlet错误,并且找不到类/文件错误,根据我发现的一个论坛,这是属于jasper.jarjsp-api.jar__的常见错误,都是在Tomcat中找到的。

无论如何,我愿意尝试安装选项,不管这些选项是否涉及Tomcat。如果有人成功地在XWiki上安装了MySQL数据库,您的帮助将是非常感谢的!

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2014-03-16 16:04:51

这是几个月前解决的。我在设置中遗漏了一些重要的信息,但现在一切正常。

票数 -6
EN

Stack Overflow用户

发布于 2013-10-25 07:37:02

看来你错过了mysql驱动程序。由于您将默认发行版转换为使用mysql,因此需要下载一个mysql驱动jar并将其部署到‘webapp\xwiki\webapps\lib’目录中。

关于第二个问题,数据库驱动程序错误、xar和tomcat 404之间可能没有联系。xar只是用于导入或导出内容和功能的页面集合,但通常不处理诸如数据库一致性之类的低级内容。Tomcat中的404可能是因为您访问了一个无效的url。可能需要更多关于那个的细节。

票数 1
EN

Stack Overflow用户

发布于 2013-10-25 07:38:57

首先,关于与Tomcat的潜在冲突,我可以向您保证,这是不可能的,因为Tomcat一直是XWiki团队在生产中使用的。

现在对于MySQL来说,错误是非常清楚的,如果您真的放置了MySQL连接器,那么您就没有将它放在正确的位置。你放的是什么版本的?在#xwiki folder#/WEB-INF/lib/里吗?

XAR包并不是安装XWiki的不同方式,它是一个包含wiki页面的包,在运行时可以在XWiki中导入。也许你是说战争包?

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19564054

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档