Invalid Character Causing Activity Stream Not Rendering Properly (Invalid white space character in text to output)

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

Summary

Symptoms

Activity Stream showing empty.

The following appears in the atlassian-jira.log:

1 2 3 4 5 2013-12-17 09:09:44,322 http-bio-127.0.0.1-8080-exec-25 ERROR sebastian.feldmann 549x123199x1 t7b277 192.168.109.7,127.0.0.1 /plugins/servlet/streams [streams.internal.servlet.StreamsActivityServlet] Error sending feed org.apache.abdera.parser.stax.FOMException: com.ctc.wstx.exc.WstxIOException: Invalid white space character (0xb) in text to output at org.apache.abdera.parser.stax.FOMElement.writeTo(FOMElement.java:348) at org.apache.abdera.parser.stax.FOMWriter.writeTo(FOMWriter.java:73) at org.apache.abdera.util.AbstractWriter.writeTo(AbstractWriter.java:80)

Diagnosis

You can try limit the item shown on activity stream and try to create more comment or actions to flush the affected issue to be off the list and check if activity stream restored it's functionality. Also you can try to view the activity stream of different projects to narrow down which project's issue is the one affected.

Cause

Referring to the Wiki Page, there is a list of valid characters in XML formatted documents and having the non valid characters will cause the XML not be able to parse correctly and therefore turning the error.

Solution

Resolution

There are several ways to address this issue, below is the two method which can be more easily implemented without third party applications to be installed

XML Backup, Clean, and Restore

By default we do provide a XML cleaner to remove the invalid characters, you can refer to the documentation Removing invalid characters from XML backups for the cleaner. This method is recommended for small to medium size instance where you can do a quick restoration after cleaning the backup.

  1. Generate a backup of your existing JIRA instance (Schedule down time to prevent further changes on the system is preferred)

  2. Extract the entities.xml from your backup and run the cleaner as per the instruction on the documentation

  3. Zip the cleaned entities.xml back to the zip (Remember to zip with the precise naming of the file, entities.xml , any other naming might result on failing the restoration)

  4. Perform a system restore on your JIRA instance

  5. Verify problem resolved

Finding the Invalid Character from the Backup XML and Remove the Character

For the case of larger instance where restoration might took a while (~1 day) to complete, the above steps might not be really appropriate to carry out as the down time is a lot. Therefore you can actually follow the method below to check which entry is giving this problem:

  1. Generate a backup of your existing JIRA instance

  2. Extract the entities.xml from your backup, run the cleaner and store into different file name (entities-cleaned.xml if referring to the documentation of Removing invalid characters from XML backups)

  3. Run the follow command to compare the result of both XML files:

    1 diff entities.xml entities-cleaned.xml

    ℹ️ Replace the file name according to your output, the diff command is available both Linux and Unix platform.

  4. You will get the result something like the one below:

    1 2 3 4 < <Issue id="10001" key="TEST-7" number="7" project="10101" reporter="someone" assignee="employee" type="3" summary="TEST1234 Linebreak invalid character" priority="3" resolution="1" status="6" created="2013-12-05 14:12:58.0" updated="2013-12-17 09:02:18.0" resolutiondate="2013-12-06 15:48:03.0" votes="0" watches="7" workflowId="10164"> --- > <Issue id="10001" key="TEST-7" number="7" project="10101" reporter="someone" assignee="employee" type="3" summary="TEST1234 Linebreak invalid character" priority="3" resolution="1" status="6" created="2013-12-05 14:12:58.0" updated="2013-12-17 09:02:18.0" resolutiondate="2013-12-06 15:48:03.0" votes="0" watches="7" workflowId="10164">

    ℹ️ The invalid character is caught between TEST1234 and Linebreak, so you know that issue key TEST-7 is giving this problem if referring to the result obtained above.

  5. Navigate to your issue TEST-7 and perform edit on the Summary field and remove the invalid character

  6. Verify issue resolved

Updated on April 2, 2025

Still need help?

The Atlassian Community is here for you.