You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Orbeon Forms配置SQL Server报错,Tomcat启动失败求助

Orbeon Forms切换SQL Server配置问题及Tomcat启动故障排查

一、Orbeon数据库配置错误

错误日志

2024-07-01T18:53:45,482 ERROR relational - Data source sqlite not configured
2024-07-01T18:53:45,484 ERROR XFormsServer - The following Orbeon Forms configurations are incomplete:
The database configuration is missing or incomplete.

配置冲突分析

你同时混用了容器管理数据源(orbeon.xml+web.xml的jdbc/sqlserver配置)和直接JDBC配置(properties-local.xml里的oxf.fr.persistence.sqlserver.*参数),两种配置方式冲突,导致Orbeon无法正确识别SQL Server数据源,反而默认查找SQLite配置。

修复方案

方案1:使用容器管理数据源(生产环境推荐)

  1. 修改properties-local.xml,移除直接JDBC参数,添加容器数据源的JNDI引用:
<properties>
    <property as="xs:string" name="oxf.fr.persistence.provider" value="sqlserver"/>
    <!-- 指定Tomcat中配置的数据源JNDI名称 -->
    <property as="xs:string" name="oxf.fr.persistence.sqlserver.datasource" value="jdbc/sqlserver"/>
</properties>
  1. 删除orbeon.properties中的oxf.fr.persistence.provider=sqlserver(properties-local.xml优先级更高,重复配置易引发冲突)
  2. 确认orbeon.xml的Resource配置与web.xml的res-ref-name完全一致(均为jdbc/sqlserver)

方案2:直接使用JDBC配置(测试场景可选)

  1. 删除orbeon.xml中的<Resource>配置,以及web.xml中的<resource-ref>配置
  2. 补全properties-local.xml的JDBC URL参数,添加SSL信任配置(避免连接失败):
<property as="xs:string" name="oxf.fr.persistence.sqlserver.url" value="jdbc:sqlserver://192.168.2.235;databaseName=OrbeonDB;trustServerCertificate=true"/>
  1. 移除OrbeonWEB-INF/lib下的JDBC驱动,只保留Tomcatlib目录中的驱动(避免类加载冲突)

二、Tomcat启动故障(tomcat-users.xml格式错误)

错误日志

01-Jul-2024 23:24:04.429 SEVERE [Catalina-utility-2] org.apache.catalina.users.MemoryUserDatabase.backgroundProcess Error reloading memory user database [UserDatabase] from updated source [file:/C:/Program%20Files/Apache%20Software%20Foundation/Tomcat%209.0/conf/tomcat-users.xml]
org.xml.sax.SAXParseException; lineNumber: 11; columnNumber: 2; The markup in the document following the root element must be well-formed.

修复步骤

  1. 打开Tomcatconf/tomcat-users.xml文件,定位到第11行
  2. 检查XML格式问题:
    • 确保文件只有一个根元素(必须是<tomcat-users>)
    • 排查是否存在未闭合的标签、多余字符或标签嵌套错误
    • 确认根元素外没有任何额外内容(比如注释或标签)
  3. 修复后保存文件,重启Tomcat

额外验证项

  • 确认SQL Server服务已启动,1433端口对外开放
  • 用数据库客户端测试orbeon_user对OrbeonDB的读写权限
  • 清理Tomcat的work和temp目录,避免旧配置缓存干扰

内容的提问来源于stack exchange,提问作者Georgiana Iuliana

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.21 04:57:32