spreadsheet icon indicating copy to clipboard operation
spreadsheet copied to clipboard

Refresh Cells cause IllegalArgumentException

Open leotu opened this issue 7 years ago • 0 comments

version: 2.1.0.alpha1 method: sheet. refreshCells(Collection<Cell> cells)

java.lang.IllegalArgumentException: Cell index must be >= 0
	at org.apache.poi.xssf.usermodel.XSSFRow.getCell(XSSFRow.java:270)
	at org.apache.poi.xssf.usermodel.XSSFRow.getCell(XSSFRow.java:259)
	at org.apache.poi.xssf.usermodel.XSSFRow.getCell(XSSFRow.java:45)
	at com.vaadin.addon.spreadsheet.Spreadsheet.loadHyperLinks(Spreadsheet.java:3214)
	at com.vaadin.addon.spreadsheet.Spreadsheet.loadHyperLinks(Spreadsheet.java:3201)
	at com.vaadin.addon.spreadsheet.Spreadsheet.updateRowAndColumnRangeCellData(Spreadsheet.java:3044)
	at com.vaadin.addon.spreadsheet.Spreadsheet.reloadVisibleCellContents(Spreadsheet.java:2676)
	at com.vaadin.addon.spreadsheet.Spreadsheet.updateMarkedCells(Spreadsheet.java:1597)
	at com.vaadin.addon.spreadsheet.Spreadsheet.refreshCells(Spreadsheet.java:1537)

trace code: firstColumn(c1) is "-1" & lastColumn(c2) is "-1" for (int c = c1 - 1; c < c2; c++)
--> c is "-2" and c2 is "-1", "-2" < "-1" then run into loop "row.getCell(c);"

    private void loadHyperLinks(int r1, int c1, int r2, int c2) {
        for (int r = r1 - 1; r < r2; r++) {
            final Row row = getActiveSheet().getRow(r);
            if (row != null) {
                for (int c = c1 - 1; c < c2; c++) {
                    Cell cell = row.getCell(c);
                    if (cell != null) {
                        try {
                            Hyperlink link = cell.getHyperlink();

Same error: com.vaadin.addon.spreadsheet.CellValueManager.loadCellDataForRowAndColumnRange

java.lang.IllegalArgumentException: Cell index must be >= 0
	at org.apache.poi.xssf.usermodel.XSSFRow.getCell(XSSFRow.java:270)
	at org.apache.poi.xssf.usermodel.XSSFRow.getCell(XSSFRow.java:259)
	at org.apache.poi.xssf.usermodel.XSSFRow.getCell(XSSFRow.java:45)
	at com.vaadin.addon.spreadsheet.CellValueManager.loadCellDataForRowAndColumnRange(CellValueManager.java:1105)
	at com.vaadin.addon.spreadsheet.CellValueManager.loadCellData(CellValueManager.java:1045)
	at com.vaadin.addon.spreadsheet.Spreadsheet.updateRowAndColumnRangeCellData(Spreadsheet.java:3050)
	at com.vaadin.addon.spreadsheet.Spreadsheet.reloadVisibleCellContents(Spreadsheet.java:2676)
	at com.vaadin.addon.spreadsheet.Spreadsheet.updateMarkedCells(Spreadsheet.java:1597)
	at com.vaadin.addon.spreadsheet.Spreadsheet.refreshCells(Spreadsheet.java:1537)

leotu avatar May 06 '18 23:05 leotu