Upgraded to 9.9 - now recon is giving Invalid Message - The message could not be parsed

aamjohns
Contributor II
Finding extension attributes... Locating accounts... Locating applications... Locating package receipts... Locating software updates... Locating plugins... Searching path: /Applications Searching path: /Library/Internet Plug-Ins Locating printers... Locating hard drive information... Locating hardware information (Mac OS X 10.11.4)... Submitting data to https://in-mdep-casper.ads.iu.edu:8443/... There was an error. Invalid Message - The message could not be parsed.

I tried this on another system (OS 10.11.3). It got the 9.9 binary and now same error with recon.

Any suggestions on fixing this?

Thank you,
AJ.

1 ACCEPTED SOLUTION

tthurman
Contributor III

@aamjohns

Try this:

In regards to the
Invalid Message - The message could not be parsed.
issue on Windows 2012 R2.
What I did to fix the issue.
1. Copy the ROOT folder out of Webapps from the Tomcat Dir to a safe location.
2. Make sure there is a valid copy of the ROOT.war file in the Webapps folder. (if it's out of date, you can get one from the JSS Manual Installation set from 'My Assets')
3. Stop Tomcat Service.
4. Delete ROOT folder (NOT the war) from Webapps folder.
5. Start Tomcat.
6. Test sudo jamf recon

View solution in original post

32 REPLIES 32

aamjohns
Contributor II

I am seeing this in the JAMFSoftwareServer.log

[org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 1877; cvc-complex-type.2.4.a: Invalid content was found starting with element 'ns2:totalCoreCount'. One of '{"http://www.jamfsoftware.com/JAMFMessage":processorArchitecture}' is expected.]) for a request made by device: com.jamfsoftware.communication.beans.DeviceInformation@5370bddf

Followed by

2016-04-01 10:12:46,518 [ERROR] [Tomcat-8 ] [JAXBMessageMarshaller ] - Error parsing message 2016-04-01 10:12:46,518 [ERROR] [Tomcat-8 ] [JAXBMessageMarshaller ] - Exception javax.xml.bind.UnmarshalException - with linked exception: [org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 1879; cvc-complex-type.2.4.a: Invalid content was found starting with element 'ns2:totalCoreCount'. One of '{"http://www.jamfsoftware.com/JAMFMessage":processorArchitecture}' is expected.] at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.handleStreamException(UnmarshallerImpl.java:425)

Multiple instances of this message are appearing.

Here is a more verbose version of the log entries:

at java.lang.Thread.run(Unknown Source) Caused by: org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 1877; cvc-complex-type.2.4.a: Invalid content was found starting with element 'ns2:totalCoreCount'. One of '{"http://www.jamfsoftware.com/JAMFMessage":processorArchitecture}' is expected. at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(Unknown Source) at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.error(Unknown Source) at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(Unknown Source) at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(Unknown Source) at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(Unknown Source) at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator$XSIErrorReporter.reportError(Unknown Source) at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.reportSchemaError(Unknown Source) at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.handleStartElement(Unknown Source) at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.startElement(Unknown Source) at com.sun.org.apache.xerces.internal.jaxp.validation.ValidatorHandlerImpl.startElement(Unknown Source) at com.sun.xml.bind.v2.runtime.unmarshaller.ValidatingUnmarshaller.startElement(ValidatingUnmarshaller.java:89) at com.sun.xml.bind.v2.runtime.unmarshaller.StAXStreamConnector.handleStartElement(StAXStreamConnector.java:242) at com.sun.xml.bind.v2.runtime.unmarshaller.StAXStreamConnector.bridge(StAXStreamConnector.java:176) at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0(UnmarshallerImpl.java:360) ... 36 more 2016-04-01 10:11:42,588 [ERROR] [Tomcat-5 ] [JAMFHttpServlet ] - The JSS received an error (javax.xml.bind.UnmarshalException - with linked exception: [org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 1877; cvc-complex-type.2.4.a: Invalid content was found starting with element 'ns2:totalCoreCount'. One of '{"http://www.jamfsoftware.com/JAMFMessage":processorArchitecture}' is expected.]) for a request made by device: com.jamfsoftware.communication.beans.DeviceInformation@5370bddf 2016-04-01 10:12:46,518 [ERROR] [Tomcat-8 ] [JAXBMessageMarshaller ] - Error parsing message 2016-04-01 10:12:46,518 [ERROR] [Tomcat-8 ] [JAXBMessageMarshaller ] - Exception javax.xml.bind.UnmarshalException - with linked exception: [org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 1879; cvc-complex-type.2.4.a: Invalid content was found starting with element 'ns2:totalCoreCount'. One of '{"http://www.jamfsoftware.com/JAMFMessage":processorArchitecture}' is expected.]

jhalvorson
Valued Contributor

@aamjohns Is your JSS hosted on Windows?

aamjohns
Contributor II

Yes.

jhalvorson
Valued Contributor

@aamjohns There is a discussion taking place on Slack with a solution, but I suggest calling JAMF support.

cvgs
Contributor II

You could try to debug the recon output with

jamf recon -saveFormTo /path/to/output/directory

Perhaps the XML generated is malformed?

aamjohns
Contributor II

I will try that, thank you cvgs.

aamjohns
Contributor II

I checked the xml and I do not see anything in the area mentioned in the error malformed. The only thing I see is the inability to locate the schema xsd 'JAMFCommunicationSchema.xsd'. Not sure what these means though, this is not my area of expertise :)

aamjohns
Contributor II

My TomCat7 log is full of messages about unable to locate ESAPI.properties and validation.properties and then it goes into just repeating this:
SecurityConfiguration for Encryptor.CharacterEncoding not found in ESAPI.properties. Using default: UTF-8

I may try a reinstall.

tthurman
Contributor III

@aamjohns

Try this:

In regards to the
Invalid Message - The message could not be parsed.
issue on Windows 2012 R2.
What I did to fix the issue.
1. Copy the ROOT folder out of Webapps from the Tomcat Dir to a safe location.
2. Make sure there is a valid copy of the ROOT.war file in the Webapps folder. (if it's out of date, you can get one from the JSS Manual Installation set from 'My Assets')
3. Stop Tomcat Service.
4. Delete ROOT folder (NOT the war) from Webapps folder.
5. Start Tomcat.
6. Test sudo jamf recon

aamjohns
Contributor II

Will do. Thank you.

aamjohns
Contributor II

@tthurman,
I followed your instructions and recon is working again. Also, the recon'd info is showing up correctly in the JSS.

I am curious if this is a temp fix or permanent? I have communications going with JAMF Support on this issue but glad that I can utilize my smartgroups again - for now at least.

I appreciate your help and good job coming up with the solution.

AJ.

tthurman
Contributor III

@aamjohns

I believe this is the "interim workaround" right now. I gave this solution to JAMF support - I believe they are going to try to test it with other customers/clients.

There is still the issue of "-1" cores appearing in the inventory report. But that's just bad data - rather than no data at all.

(Don't forget to mark correct - if you believe the solution is correct.)

Regards,
TJ

aamjohns
Contributor II

Thanks for the additional information TJ. I marked for you. I appreciate your help today.

sepiemoini
Contributor III
Contributor III

@tthurman +1! I had the same issue crop up during my v9.9 upgrade this morning in my Test JSS running Windows Server 2012 R2 as well. The same steps that you highlighted (modified below in my own words) did the trick for me as well.

Issue: "Invalid Message - The message could not be parsed."
System: Windows Server 2012 R2

1. In your JSS, launch Services.msc and stop the Tomcat service (called Apache Tomcat 7.0 Tomcat7). 2. Navigate to C:Program FilesJSSTomcatwebapps and copy the ROOT folder to your Desktop. 3. Once copied, delete the ROOT folder from C:Program FilesJSSTomcatwebapps. 4. In a browser, navigate to https://my.jamfsoftware.com/products.html and expand the Show JSS installer downloads section. 5. Click on the download button next to JSS Manual Installation. 6. Navigate to the downloaded zip folder and extract all contents. 7. In the extracted folder, navigate to the JSSInstallation>JSS Components directory and copy the ROOT.war file to C:Program FilesJSSTomcatwebapps. 8. Restart the Tomcat service (called Apache Tomcat 7.0 Tomcat7) that was stopped in Step 1. 9. Verify that the ROOT has repopulated. 10. Launch a browser and navigate to your JSS URL and verify that this is starting back up. 11. Once confirmed, please run the "sudo jamf recon" command again from a machine enrolled in this JSS.

aamjohns
Contributor II

@jhalvorson,
Sorry I just saw your post. Thank you I will check it out. I didn't know if others were having this issue.

cvgs
Contributor II

I noticed a similar problem. On my two test JSSes, i could not navigate to the settings page (https://my.jss.url/settings.html?system). A "repair" installation using the Windows installer fixed the problem.

So it seems that you cannot trust the windows installer, even if if did finish successfully. Manual Installation might be the safer option.

HenryOzsoy
New Contributor III

I had the same problem after updating to 9.9 on a Windows Server 2008 R2. Followed @sepiemoini and @tthurman instructions and all works fine. Thanks guys

erikstam
New Contributor II

Thanks @sepiemoini and @tthurman, worked like a charm for me (Windows 2012 R2)

CasperSally
Valued Contributor II

support suggested when I test 9.9 to use manual install. 'yay'

jmartinez0837
New Contributor

thanks this got recon working for me too!

nadams
New Contributor III

I ran into this issue, which manifested itself during the imaging process. When imaging was complete the machine would get enrolled, but my configuration profiles and policies wouldn't get applied. Turns out this was because the recon during the imaging process was failing with this same message parsing error.

I removed the tomcat ROOT folder and recopied ROOT.war and that fixed it.

JAMF support says this - "What happened is during the upgrade files from both 9.82 and 9.9 remained in the ROOT folder causing this error message."

I also noticed that now processors are being reported as "1" instead of "2" for a dual-core processor.

mtward
New Contributor III

We are seeing the same Recon failures for ALL Macs (last inventory update was 2 days ago, the day we went to 9.9) and same errors in Jamf Server log.

JSS on Windows Server 2008 R2.

Do any others have same success with the fix if your JSS is Windows 2008 R2?

EDIT: I see there was one 2008 successful fix above - thanks

aamjohns
Contributor II

To be specific, I applied the fix to a Windows 2008R2 server. The fix that is marked as the solution in this thread. So yes, it worked for 2008R2.

mtward
New Contributor III

We just applied the fix as well with JSS on Win2008R2, 200 Macs have already updated inventory. Looking good. Thanks!

gccit
New Contributor

Had the same problem on 2012 R2 and the solution above worked for me also.

driggs
New Contributor

Ditto (*insert massive sigh here)

CasperSally
Valued Contributor II

I don't get why JAMF hasn't emailed all customers (or windows server customers if it has that info broken out) and told them not to use the installer and do a manual install instead. Not everyone follows every post on JN.

guidotti
Contributor II

This solution repaired our JSS also.
Windows 2008 R2 server.

whaking2k
New Contributor

So I follow the steps above and as soon as I try and connect back to my JSS for the web I get the following error. When I replace the ROOT folder with the original one I'm able to connect but I still get the same invalid message error.

6df09a64749f4537848029322d0a514a

shaunpbrowne
New Contributor

Hi all,

Thanks, this also resolved the error for our system too. The only extra thing I needed to do was copy the Database.xml file from within the ROOTWEB-INFxml directory. This contains the password required to connect to the database @whaking2k, I had the same error message. I think you can also get around it by clicking Edit Connection and re-entering the password...

whaking2k
New Contributor

Thanks @shaunpbrowne I was able to find that file after some poking around.

georgecm12
Contributor III

I just encountered this problem as well, and yes, the solution in this thread resolved it. I was starting to pull my hair out until I found this thread!