XWPFTable table = doc.createTable(1,3); XWPFTableRow row = table.getRow(0); XWPFTableCell cell = row.getCell(1); cell = row.getCell(1); cell = row.getCell(1); cell = row.getCell(1); cell = row.getCell(1); cell = row.getCell(1); cell.setText("text"); The resulting cell will have mutltiple parapgraphs. But only one should be there with the specified text. The first cell of the table has a similar bug. createTable adds an unecessary paragraph too.
Patch in progress, coming soon.
Created attachment 26963 [details] Fix issues with "setText". Looking into the ECM-576 specification, an empty cell always comes with an empty paragraph. Or, to use Word as reference, create an empty Word DOCX document, add a table with 2 rows and 2 coloums, save the document and look into the XML. You'll see that Word creates an empty Paragraph for each Cell. What was wrong in the XWPFCell class was the "setText" method. Fixed this method and another bug in the contructor. There every row created was added to the "rows" field twice. Once in "createRow" method and afterwards in the constructor.
Thanks, applied with tweaks in r1128331.