我为DFA报告开发了一个简单的HTML5客户端。为此,我使用了一个Google OAuth服务帐户,该帐户在客户端解决方案上运行良好。但是当我想在Webapplication-Backend中读取.p12-File时,我知道我遇到了麻烦。出现以下问题:
java.io.IOException: DerInputStream.getLength(): lengthTag=111, too big.
at sun.security.util.DerInputStream.getLength(DerInputStream.java:561)
应用程序在嵌入式Tomcat(Spring Boot)上运行,我使用以下方法读取文件:
File p12File = new java.io.File(this.getClass().getResource("/test-privatekey.p12").toURI());
this.httpTransport = GoogleNetHttpTransport.newTrustedTransport();
credential = new GoogleCredential.Builder().setTransport(httpTransport)
.setJsonFactory(JSON_FACTORY)
.setServiceAccountId(SERVICE_ACCOUNT_EMAIL)
.setServiceAccountScopes(SCOPES)
.setServiceAccountPrivateKeyFromP12File(p12File)
.build();
Client-Solutions读取p12-File,如下所示:
File p12File = new java.io.File("test-privatekey.p12");
对于这个问题,有没有人有解决方案或解决方案?
柏林的许多感谢和问候
答案 0 :(得分:0)
排除POM中的p12文件。
<build>
...
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<configuration>
<nonFilteredFileExtensions>
<nonFilteredFileExtension>p12</nonFilteredFileExtension>
</nonFilteredFileExtensions>
</configuration>
</plugin>
</plugins>
</build>