JIRA Fails to Start with Error parsing database configuration file

Platform Notice: Data Center Only - This article only applies to Atlassian products on the Data Center platform.

Note that this KB was created for the Data Center version of the product. Data Center KBs for non-Data-Center-specific features may also work for Server versions of the product, however they have not been tested. Support for Server* products ended on February 15th 2024. If you are running a Server product, you can visit the Atlassian Server end of support announcement to review your migration options.

*Except Fisheye and Crucible

Symptoms

Upon trying to startup JIRA, your browser shows a 404 error.

The following appears in the tomcat server logs:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 2012-12-28 09:54:47 Commons Daemon procrun stdout initialized2012-12-28 09:55:10,636 main INFO [jira.config.database.SystemTenantDatabaseConfigurationLoader] Reading database configuration from C:\Program Files\Atlassian\Application Data\JIRA\dbconfig.xml 2012-12-28 09:55:11,948 main ERROR [atlassian.jira.startup.LauncherContextListener] Unable to start JIRA. java.lang.RuntimeException: Error parsing database configuration file. at com.atlassian.jira.config.database.AbstractJiraHomeDatabaseConfigurationLoader.loadDatabaseConfiguration(AbstractJiraHomeDatabaseConfigurationLoader.java:61) at com.atlassian.jira.startup.SystemTenantProvider.getSystemDatabaseConfig(SystemTenantProvider.java:52) at com.atlassian.jira.startup.SystemTenantProvider.getSystemTenant(SystemTenantProvider.java:36) at com.atlassian.multitenant.MultiTenantContext.getSystemTenant(MultiTenantContext.java:473) at com.atlassian.multitenant.MultiTenantContext.defaultInit(MultiTenantContext.java:112) at com.atlassian.jira.startup.LauncherContextListener.initMultiTenantSystem(LauncherContextListener.java:129) at com.atlassian.jira.startup.LauncherContextListener.contextInitialized(LauncherContextListener.java:59) at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4205) at org.apache.catalina.core.StandardContext.start(StandardContext.java:4704) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) at org.apache.catalina.core.StandardHost.start(StandardHost.java:840) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:463) at org.apache.catalina.core.StandardService.start(StandardService.java:525) at org.apache.catalina.core.StandardServer.start(StandardServer.java:754) at org.apache.catalina.startup.Catalina.start(Catalina.java:595) 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.dom4j.DocumentException: Error on line 1 of document : Content is not allowed in prolog. Nested exception: Content is not allowed in prolog. at org.dom4j.io.SAXReader.read(SAXReader.java:355) at org.dom4j.io.SAXReader.read(SAXReader.java:271) at com.atlassian.jira.config.database.AbstractJiraHomeDatabaseConfigurationLoader.loadDatabaseConfiguration(AbstractJiraHomeDatabaseConfigurationLoader.java:56) ... 21 more

Cause

JIRA is unable to properly read/parse the database configuration file. This is either due to file corruption or modification to the file.

Resolution

  • Shutdown JIRA

  • Navigate to the location of the database configuration (dbconfig.xml)

    • In the above stacktrace, we see the path as C:\Program Files\Atlassian\Application Data\JIRA\dbconfig.xml

  • Open the file within a text editor and check for any odd characters

Updated on April 8, 2025

Still need help?

The Atlassian Community is here for you.