How To Return As File Document Object from JavaAction to Mendix?

0
Hello Experts.   I am working with JavaAction to Convert PDF To Word conversion, Actually I have passing the file from Mendix to Eclipse which is converting properly, but I don't know how to return the converted file from Eclipse.    Can anybody help with this?                   
asked
1 answers
2

for me i use

 

import org.apache.pdfbox.pdmodel.PDDocument;
import org.apache.pdfbox.text.PDFTextStripper;
import org.apache.poi.xwpf.usermodel.XWPFDocument;
import org.apache.poi.xwpf.usermodel.XWPFParagraph;
import system.proxies.FileDocument;

import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.InputStream;

String extractedText;
try (InputStream pdfInputStream = Core.getFileDocumentContent(context, your_pdf);
         PDDocument pdfDocument = PDDocument.load(pdfInputStream)) {
        PDFTextStripper stripper = new PDFTextStripper();
        extractedText = stripper.getText(pdfDocument);
}

//Create docx with extracted text
XWPFDocument docxDocument = new XWPFDocument();
XWPFParagraph paragraph = docxDocument.createParagraph();
 paragraph.createRun().setText(extractedText);

 ByteArrayOutputStream docxOutputStream = new ByteArrayOutputStream();
 docxDocument.write(docxOutputStream);
 ByteArrayInputStream docxInputStream = new ByteArrayInputStream(docxOutputStream.toByteArray());


//Create new mendix obj

IMendixObject docxFileDocumentObject = Core.instantiate(context, FileDocument.entityName);
docxFileDocumentObject.setValue(context, "Name", "ConvertedDocument.docx");
docxFileDocumentObject.setValue(context, "HasContents", true);

Core.storeFileDocumentContent(context, docxFileDocumentObject, docxInputStream);
Core.commit(context, docxFileDocumentObject);

return docxFileDocumentObject;

 

answered