使用 UDJC 在 Pentaho 中读取受密码保护的 PDF
Read password protected PDF in Pentaho using UDJC
我正在尝试使用 bcprov-jdk15on-1.56.jar 和 itextpdf-5.5.[=30= 解锁受密码保护的 PDF ] 但我遇到以下异常。我正在使用 'User Defined Java Class' 转换任务。
异常:class"org.bouncycastle.asn1.ASN1Primitive"的签名者信息与同一包中其他class的签名者信息不匹配
这是我写的代码行,
String pdfFilePath = get(Fields.In, "PDFFilePath").getString(r);
String dest = pdfFilePath +"_unlocked.pdf";
try {
PdfReader reader = new PdfReader(pdfFilePath,owner_password.getBytes());
PdfStamper stamper = new PdfStamper(reader, new FileOutputStream(dest));
stamper.close();
reader.close();
}
catch(Exception e) {
logBasic("EXCEPTION WHILE UNLOCKING PDF = " + e.getMessage());
}
知道吗,这有什么问题吗?
谢谢,
尼勒什
您的类路径中似乎有多个 BouncyCastle jar。尝试使用版本 1.49
,它是 iText 5.5.10
的编译版本,如果它没有帮助,你将不得不弄清楚哪些 jar 恰好在你的类路径中并删除重复项。
我正在尝试使用 bcprov-jdk15on-1.56.jar 和 itextpdf-5.5.[=30= 解锁受密码保护的 PDF ] 但我遇到以下异常。我正在使用 'User Defined Java Class' 转换任务。
异常:class"org.bouncycastle.asn1.ASN1Primitive"的签名者信息与同一包中其他class的签名者信息不匹配
这是我写的代码行,
String pdfFilePath = get(Fields.In, "PDFFilePath").getString(r);
String dest = pdfFilePath +"_unlocked.pdf";
try {
PdfReader reader = new PdfReader(pdfFilePath,owner_password.getBytes());
PdfStamper stamper = new PdfStamper(reader, new FileOutputStream(dest));
stamper.close();
reader.close();
}
catch(Exception e) {
logBasic("EXCEPTION WHILE UNLOCKING PDF = " + e.getMessage());
}
知道吗,这有什么问题吗?
谢谢, 尼勒什
您的类路径中似乎有多个 BouncyCastle jar。尝试使用版本 1.49
,它是 iText 5.5.10
的编译版本,如果它没有帮助,你将不得不弄清楚哪些 jar 恰好在你的类路径中并删除重复项。