尝试从Web服务输出对象恢复的字节数组创建PDF时出现以下问题。
所以我有以下情况:
OutFat outFat = callServizioContabRighe(dataEM, esercizio, importo, bolla, numDoc, oda, pIva, contratto);
byte[] pdfByteArray = outFat.getPDF();
ByteArrayOutputStream osPdf = new ByteArrayOutputStream();
if(pdfByteArray != null) {
InputStream is = new ByteArrayInputStream(pdfByteArray);
sun.misc.BASE64Decoder base64Decoder = new BASE64Decoder();
byte[] byteArray64DecodePdf = null;
try {
byteArray64DecodePdf = base64Decoder.decodeBuffer(is);
} catch (IOException e) {
e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates.
}
try {
osPdf.write(byteArray64DecodePdf);
} catch (IOException e) {
e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates.
}
}
if(osPdf != null && pdfByteArray != null){
req.getSession().setAttribute("PdfEM", osPdf); // Usa il PDF recuperato dal WS
}
else {
req.getSession().setAttribute("PdfEM", createPdfEM.createPdf()); // Crea il PDF
}
if(osPdf != null && pdfByteArray != null){
this.baos = osPdf;
}
else {
this.baos = createPdfEM.createPdf(); // CREA IL PDF
}
好的,我有 pdfByteArray ,它是从outFat对象(webservice输出对象)检索到的字节数组,代表我的PDF。
现在我必须使用它来构建PDF并将其显示在视图中。
因此,要创建PDF,请执行以下步骤:
然后,如果前面的步骤成功,我将它放入我的视图中(否则我以另一种方式创建我的PDF,但这与此问题无关)。
问题在于,在我看来,我无法看到我的PDF内容,但我只看到一个灰色方块而不是它。
可能是什么问题?
如何保存我的PDF的本地副本以尝试在我的本地系统上看到它而不是浏览器?所以我可以理解问题是在转换中还是其他地方
TNX