I am facing a issue when try to remove a XSSF Table after creating one. Here is my test case with manual print out result. Create 3 tables on a single sheet. [java] Create Table Name: /xl/tables/table1.xml - Content Type: application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml [java] Create Table Name: /xl/tables/table2.xml - Content Type: application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml [java] Create Table Name: /xl/tables/table3.xml - Content Type: application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml Delete table2 [java] Tables before deletion Name: /xl/tables/table1.xml - Content Type: application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml [java] Tables before deletion Name: /xl/tables/table2.xml - Content Type: application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml [java] Tables before deletion Name: /xl/tables/table3.xml - Content Type: application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml [java] Tables after deletion Name: /xl/tables/table1.xml - Content Type: application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml [java] Tables after deletion Name: /xl/tables/table3.xml - Content Type: application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml Create a new table table and it throws exception as below org.apache.poi.openxml4j.exceptions.PartAlreadyExistsException: A part with the name '/xl/tables/table3.xml' already exists : Packages shall not contain equivalent part names and package implementers shall neither create nor recognize packages with equivalent part names. [M1.12] Looks like it tries to re-use table3.xml which already exists. When I look into the code, this line. XSSFSheet line 3971 int tableNumber = getPackagePart().getPackage().getPartsByContentType(XSSFRelation.TABLE.getContentType()).size() + 1;
Please state which exact version of POI you are using and please try to put your steps into a self-sufficient unit-test so we can actually try to reproduce the problem on our end.
Seems to be related to bug 57165 where we fixed this for sheets in workbooks. Probably a similar fix is necessary here to not always use "size()-1" as id for new table-parts
Should be fixed via r1819773.