'Merge Verticalli using Apache POI

I've tried to merge rows in Java using Apache POI. I can merge Horizontally but theres a format error with XML and CTVMerge. I've used this code and i get this error: XmlObject cannot be converted to CTVMerge. There are many post but it seems that this code works for everyone.

static void mergeCellVertically(XWPFTable table, int col, int fromRow, int toRow) {
    for(int rowIndex = fromRow; rowIndex <= toRow; rowIndex++) {
        XWPFTableCell cell = table.getRow(rowIndex).getCell(col);
        //I think here's the error
        CTVMerge vmerge = CTVMerge.Factory.newInstance();
        if(rowIndex == fromRow){
            // The first merged cell is set with RESTART merge value
            vmerge.setVal(STMerge.RESTART);
        } else {
            // Cells which join (merge) the first one, are set with CONTINUE
            vmerge.setVal(STMerge.CONTINUE);
            // and the content should be removed
            for (int i = cell.getParagraphs().size(); i > 0; i--) {
                cell.removeParagraph(0);
            }
            cell.addParagraph();
        }
        // Try getting the TcPr. Not simply setting an new one every time.
        CTTcPr tcPr = cell.getCTTc().getTcPr();
        if (tcPr == null) tcPr = cell.getCTTc().addNewTcPr();
        tcPr.setVMerge(vmerge);
    }
}


Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source