How can I stop Confluence from crashing when viewing an Excel file?
目的
Confluence can sometimes have trouble rendering certain Excel files. The effects can range from the page being slow to load, not render at all, or for the entire site to become unresponsive and need to be rebooted.
You'll generally see entries like this in either the catalina.out
or atlassian-confluence.log
:
at java.lang.Thread.run(Unknown Source)
UIDefaults.getUI() failed: no ComponentUI class for: com.jxcell.HB[,0,0,0x0,invalid,alignmentX=0.0,alignmentY=0.0,border=,flags=4194304,maximumSize=,minimumSize=,preferredSize=,blockIncrement=10,orientation=VERTICAL,unitIncrement=1] java.lang.Error
at javax.swing.UIDefaults.getUIError(Unknown Source)
at javax.swing.MultiUIDefaults.getUIError(Unknown Source)
at javax.swing.UIDefaults.getUI(Unknown Source)
at javax.swing.UIManager.getUI(Unknown Source)
at javax.swing.JScrollBar.updateUI(Unknown Source)
at javax.swing.JScrollBar.<init>(Unknown Source)
at javax.swing.JScrollBar.<init>(Unknown Source)
at com.jxcell.HB.<init>(EYFN)
at com.jxcell.Adapter_2_0.createScrollbar(EYFN)
at com.jxcell.mvc.Viewview.<init>(EYFN)
at com.jxcell.ssView.<init>(EYFN)
at com.jxcell.View.append(EYFN)
at com.jxcell.View.<init>(EYFN)
at com.jxcell.View.<init>(EYFN)
at com.benryan.conversion.SpreadsheetConverter.convert(SpreadsheetConverter.java:476)
at com.benryan.conversion.XlsConverter$1.doConversion(XlsConverter.java:45)
at com.benryan.conversion.DocConverter.execute(DocConverter.java:61)
at com.benryan.conversion.macro.ConverterMacro.execute(ConverterMacro.java:250)
ソリューション
While later versions of the Office Connector do make improvements, occasionally a file can still cause problems.
There's a few potential causes relating to Excel file content:
- Specific cell formatting
- セルを結合する
- Too many sheets/empty cells
A good test is to try restricting the sheet and columns/rows that are displayed. If this doesn't help, try saving the format as .xls
rather than .xlsx
file; .xlsx
files use a lot more system resources than standard .xls
files and often this will resolve the problem. In later versions of Confluence, .xlsx
files are restricted to 2mb.