https://bz.apache.org/bugzilla/show_bug.cgi?id=65260
Bug ID: 65260
Summary: Issue
Product: POI
Version: 4.1.2-FINAL
Hardware: PC
OS: Linux
Status: NEW
Severity: normal
Priority: P2
Component: SXSSF
Assignee: [email protected]
Reporter: [email protected]
Target Milestone: ---
Good day.
We use Apache POI 4.1.2 for creation .xlsx file.
Our application starts inside Docker container.
We use open-jdk(11th version) without predefined fonts. We needs that for
security reason.
At firts time we used XSSFWorkbook/XSSFSheet. All worked correctly.
For reducing of memory usege we replaced XSSFWorkbook by SXSSFWorkbook.
After that we have next exception.
java.lang.InternalError: java.lang.reflect.InvocationTargetException
at
java.desktop/sun.font.FontManagerFactory$1.run(FontManagerFactory.java:86)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at
java.desktop/sun.font.FontManagerFactory.getInstance(FontManagerFactory.java:74)
at java.desktop/java.awt.Font.getFont2D(Font.java:497)
at java.desktop/java.awt.Font.canDisplayUpTo(Font.java:2250)
at java.desktop/java.awt.font.TextLayout.singleFont(TextLayout.java:469)
at java.desktop/java.awt.font.TextLayout.<init>(TextLayout.java:530)
at org.apache.poi.ss.util.SheetUtil.getDefaultCharWidth(SheetUtil.java:273)
at
org.apache.poi.xssf.streaming.AutoSizeColumnTracker.<init>(AutoSizeColumnTracker.java:117)
at org.apache.poi.xssf.streaming.SXSSFSheet.<init>(SXSSFSheet.java:82)
at
org.apache.poi.xssf.streaming.SXSSFWorkbook.createAndRegisterSXSSFSheet(SXSSFWorkbook.java:684)
at
org.apache.poi.xssf.streaming.SXSSFWorkbook.createSheet(SXSSFWorkbook.java:705)
at
How we understand that relates with missing fonts and AutoSizeColumnTracker in
SXSSFSheet.
public SXSSFSheet(SXSSFWorkbook workbook, XSSFSheet xSheet) throws IOException
{
this._workbook = workbook;
this._sh = xSheet;
this._writer = workbook.createSheetDataWriter();
this.setRandomAccessWindowSize(this._workbook.getRandomAccessWindowSize());
this._autoSizeColumnTracker = new AutoSizeColumnTracker(this);
}
This constructor has initialization of AutoSizeColumnTracker.
AutoSizeColumnTracker calculates defaultCharWidth.
Why does SXSSFWorkbook need in AutoSizeColumnTracker by default?
How can we disable that or maybe set custom defaultCharWidth without
calculation?
--
You are receiving this mail because:
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]