小编P_W*_*999的帖子

格式错误的输入或输入包含不可映射的字符

在 Jenkins 管道中运行 Sonarqube maven 插件时,我的 Jenkins 服务器上的 Maven 项目遇到以下问题。

[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 01:54 min
[INFO] Finished at: 2017-11-14T11:42:51+00:00
[INFO] Final Memory: 74M/606M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.sonarsource.scanner.maven:sonar-maven-plugin:3.3.0.603:sonar (default-cli) on project pandora-parent-pom: Malformed input or input contains unmappable characters: src/main/webapp/images/D??rogations.ep
   at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:212)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:116)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:80)
    at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:51)
    at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128)
    at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:307)
    at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:193)
    at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:106)
    at org.apache.maven.cli.MavenCli.execute(MavenCli.java:863)
    at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:288)
    at org.apache.maven.cli.MavenCli.main(MavenCli.java:199)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at …
Run Code Online (Sandbox Code Playgroud)

java maven jenkins sonarqube jenkins-pipeline

5
推荐指数
0
解决办法
4742
查看次数

Keycloak 和 Spring SAML:SigAlg 为 null

我正在尝试使用 Spring Security、Spring Security SAML 和 Keycloak 设置 POC。为此,我使用 Spring SAML 核心项目提供的 simple-service-provider 示例。

只要 Keycloak 不需要客户端签名(“需要客户端签名”已禁用),我就设法使 SAML 设置正常工作。当我启用此选项时,我在 Keycloak 中收到以下错误和堆栈跟踪

07:07:40,385 WARN  [org.keycloak.events] (default task-8) type=LOGIN_ERROR, realmId=ea-localhost, clientId=null, userId=null, ipAddress=172.17.0.1, error=invalid_signature
07:07:44,961 ERROR [org.keycloak.protocol.saml.SamlService] (default task-7) request validation failed: org.keycloak.common.VerificationException: SigAlg was null
        at org.keycloak.protocol.saml.SamlProtocolUtils.verifyRedirectSignature(SamlProtocolUtils.java:135)
        at org.keycloak.protocol.saml.SamlService$RedirectBindingProtocol.verifySignature(SamlService.java:518)
        at org.keycloak.protocol.saml.SamlService$BindingProtocol.handleSamlRequest(SamlService.java:233)
        at org.keycloak.protocol.saml.SamlService$BindingProtocol.execute(SamlService.java:478)
        at org.keycloak.protocol.saml.SamlService.redirectBinding(SamlService.java:553)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
Run Code Online (Sandbox Code Playgroud)

Spring配置如下

spring:
  thymeleaf:
    cache: false
  security:
    saml2:
      service-provider:
        entity-id: spring-saml-test
        sign-metadata: false
        sign-requests: true
        want-assertions-signed: true
        keys:
          active:
            - name: key …
Run Code Online (Sandbox Code Playgroud)

spring spring-security saml-2.0 keycloak spring-security-saml2

5
推荐指数
1
解决办法
7189
查看次数

Spring boot 应用程序中的 Liquibase 保持 10 个连接打开

我正在使用与 Liquibase 集成的 Spring Boot 应用程序来设置数据库。我们使用不同的用户进行我们使用 application.properties 文件配置的数据库更改

liquibase.user=abc
liquibase.password=xyz
liquibase.url=jdbc:postgresql://something.eu-west-1.rds.amazonaws.com:5432/app?ApplicationName=${appName}-liquibase
liquibase.enabled=true
liquibase.contexts=dev,postgres
Run Code Online (Sandbox Code Playgroud)

目前我们部署了 3 个不同的微服务,我们注意到对于每个正在运行的实例,Liquibase 打开 10 个连接并且它永远不会关闭这些连接,除非我们停止应用程序。这基本上意味着在开发过程中,我们经常会遇到 Amazon RDS 实例的连接限制。

目前,在开发过程中,74 个活动连接中有 40 个被 Liquibase 占用。如果我们想将其投入生产,为所有微服务启用自动缩放,这意味着我们将不得不过度扩展数据库,以免达到任何连接限制。

有没有办法

  • 告诉 liquibase 不要使用 10 个连接的连接池
  • 告诉 liquibase 停止或关闭连接

到目前为止,我没有找到有关如何执行此操作的文档。

spring liquibase spring-boot

1
推荐指数
2
解决办法
4256
查看次数