Continual server setup - [org.jivesoftware.util.JiveGlobals.loadSetupProperties(JiveGlobals.java:835) ]  java.io.IOException: Error on line 1 of document  : Content is not allowed in prolog. Nested exception: Content is not allowed in

After getting my LDAP / AD filters sorted out and resolving the nullpointerexception when trying to add admins, I keep getting redirected back to the server setup irrespective of stopping/starting the service or just continue before attempting a login.

ERROR 12452 [Jive-ERR] (): Error reading XML properties
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:482)
at org.dom4j.io.SAXReader.read(SAXReader.java:365)
at org.jivesoftware.util.XMLProperties.buildDoc(XMLProperties.java:471)
at org.jivesoftware.util.XMLProperties.(XMLProperties.java:114)
at org.jivesoftware.util.XMLProperties.(XMLProperties.java:63)
at org.jivesoftware.util.JiveGlobals.loadSetupProperties(JiveGlobals.java:832)
at org.jivesoftware.util.JiveGlobals.getXMLProperty(JiveGlobals.java:282)
at org.jivesoftware.util.Log.initLog(Log.java:77)
at org.jivesoftware.util.Log.(Log.java:65)
at org.jivesoftware.util.XMLProperties.buildDoc(XMLProperties.java:474)
at org.jivesoftware.util.XMLProperties.(XMLProperties.java:114)
at org.jivesoftware.util.XMLProperties.(XMLProperties.java:63)
at org.jivesoftware.util.JiveGlobals.loadSetupProperties(JiveGlobals.java:832)
at org.jivesoftware.util.JiveGlobals.getXMLProperty(JiveGlobals.java:282)
at org.jivesoftware.util.JiveGlobals.isSetupMode(JiveGlobals.java:791)
at org.jivesoftware.util.JiveGlobals.getProperty(JiveGlobals.java:529)
at org.jivesoftware.openfire.XMPPServer.initialize(XMPPServer.java:298)
at org.jivesoftware.openfire.XMPPServer.start(XMPPServer.java:415)
at org.jivesoftware.openfire.XMPPServer.(XMPPServer.java:161)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at java.lang.Class.newInstance0(Unknown Source)
at java.lang.Class.newInstance(Unknown Source)
at org.jivesoftware.openfire.starter.ServerStarter.start(ServerStarter.java:106)
at org.jivesoftware.openfire.starter.ServerStarter.main(ServerStarter.java:51)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.exe4j.runtime.LauncherEngine.launch(Unknown Source)
at com.exe4j.runtime.WinLauncher$1.run(Unknown Source)

The full error log is attached.

If anyone has any ideas it would be great. I thing it may be related to the user search filter as I was able to get it working with a normal filter.

filter being used

(&(objectClass=user)(memberOf:1.2.840.113556.1.4.1941:=CN=openfire_Users,OU=Appl ications,OU=Security Groups,OU=CompanyA,DC=Company,DC=local))

normal

(&(objectClass=user)(memberof=CN=openfire_Users,OU=Applications,OU=Security Groups,OU=CompanyA,DC=Company,DC=local))

Brian
error.log (405724 Bytes)

Hi,

I would say that you did use a Windows based editor which did attach an UTF-8 BOM header to openfire.xml. You could try to create a new text file with notepad and copy the contents of openfire.xml into it. Save it with “ANSI” encoding - it should then be 3 bytes smaller than your current openfire.xml file.

Notepad++ has an option to remove the BOM header (Format -> Convert to UTF-8 without BOM).

LG

I did not edit any files. The openfire settings were getting saved in the DB (MySQL 5). The only thing in the xml file is the DB connection info.

Brian

Even though I did not edit the file, I have since removed a blank line at the top of the file and it appears to work now.

Brian

After uninstall and reinstall it has not come back. Some bad setting somewhere. All working now.