我正在使用pdfbox示例签名CreateVisableSignature,我希望代码将签名的图像写入第三页上名为"ApplicantSignature"的签名字段.
有人可以提供一个线索,说明为什么它会在第一页的左上角写下签名吗?
这是代码:
public static void main(String[] args) throws KeyStoreException,
NoSuchAlgorithmException, CertificateException,
FileNotFoundException, IOException, COSVisitorException,
SignatureException {
if (args.length != 4) {
usage();
System.exit(1);
} else {
File ksFile = new File(args[0]);
KeyStore keystore = KeyStore.getInstance("PKCS12", provider);
char[] pin = args[1].toCharArray();
keystore.load(new FileInputStream(ksFile), pin);
File document = new File(args[2]);
CreateVisibleSignature signing = new CreateVisibleSignature(
keystore, pin.clone());
String jpgFile = CreateVisibleSignature.convertPngToJpeg( args[3] );
FileInputStream image = new FileInputStream( jpgFile );
PDVisibleSignDesigner visibleSig = new PDVisibleSignDesigner(
args[2], image, 1);
visibleSig.xAxis(0).yAxis(0).zoom(-75)
.signatureFieldName("ApplicantSignature");
PDVisibleSigProperties …Run Code Online (Sandbox Code Playgroud) 我有一个 springboot REST 控制器,其中包含所示的 PATCH 和 PUT 请求方法。由于某种原因,@RequestBody“公司”的字段/属性作为空值出现。我缺少什么?
\n\n我在前端使用 angular8,它正在执行 PATCH 调用。
\n\n我尝试过其他一些帖子的建议,但没有运气。如果这是一个重复的问题,请指出我的答案。
\n\nSpring Tool Suite 4 \nRun Code Online (Sandbox Code Playgroud)\n\n版本:4.1.0.RELEASE\n内部版本号:201812201347
\n\n版权所有 (c) 2007 - 2018 Pivotal, Inc.\n保留所有权利。访问http://spring.io/tools4
\n\n我正在使用 pgAdmin 4.12 作为 postgres。
\n\n这是我从 Angular 发出的电话:
\n\n this.companyService.patch$(this.currentId, this.appMenu.currentObject).subscribe(selectedCompany => {this.appMenu.currentObject = selectedCompany});\nRun Code Online (Sandbox Code Playgroud)\n\n这是如上所述调用的角度服务:
\n\n import { Injectable } from \'@angular/core\';\nimport { HttpClient } from \'@angular/common/http\';\nimport { Observable, BehaviorSubject } from \'rxjs\';\nimport { Company } from \'../models/company.model\';\n\n@Injectable({\n providedIn: \'root\'\n})\nexport class CompanyService {\n private …Run Code Online (Sandbox Code Playgroud) 有人可以帮我解决这个例外吗?这是否意味着我必须使用 1.5 的 Java 版本运行 keytool?
我以前有过它,但现在我明白了。
Exception in thread "main" java.lang.ExceptionInInitializerError
at com.itextpdf.text.pdf.security.CertificateInfo.getSubjectFields(CertificateInfo.java:356)
at com.itextpdf.text.pdf.PdfSignatureAppearance.getAppearance(PdfSignatureAppearance.java:884)
at com.itextpdf.text.pdf.PdfSignatureAppearance.preClose(PdfSignatureAppearance.java:1268)
at com.itextpdf.text.pdf.security.MakeSignature.signDetached(MakeSignature.java:140)
at org.deloitte.cms.efi.controller.signature.SignatureAppearance.sign4(SignatureAppearance.java:181)
at org.deloitte.cms.efi.controller.signature.SignatureAppearance.main(SignatureAppearance.java:208)
Run Code Online (Sandbox Code Playgroud)
引起:java.lang.SecurityException:类“org.bouncycastle.asn1.ASN1ObjectIdentifier”的签名者信息与同一包中其他类的签名者信息不匹配
这是我的代码:
public void sign4(String src, String name, String dest,
Certificate[] chain, PrivateKey pk,
String digestAlgorithm, String provider, CryptoStandard subfilter,
String reason, String location)
throws GeneralSecurityException, IOException, DocumentException {
// Creating the reader and the stamper
PdfReader reader = new PdfReader(src);
FileOutputStream os = new FileOutputStream(dest);
PdfStamper stamper = PdfStamper.createSignature(reader, os, '\0');
// Creating the appearance …Run Code Online (Sandbox Code Playgroud)