Spring

Métricas do Feign sumiram após upgrade para Spring Boot 3 e Spring Cloud 2022.0.1 – Bug?

Após uma atualização do Spring Boot para a versão 3.0 e do Spring Cloud 2022.0.1, notamos que as métricas do Spring Cloud OpenFeign geradas sumiram do endpoint do Prometheus, devidamente configurado com o Micrometer Registry Prometheus. A solução paleativa para esse problema foi prover uma Bean do feign no qual registramos o MeterRegistry do micrometer. […]

Spring Sleuth com Jersey / Jax-rs

O Spring sleuth é uma biblioteca fantástica para ajudar nos logs de requests, adicionando um traceId na requisição e repassando ela para as demais, assim, é possível realizar um trace por log dentro de todas as chamadas internas de uma API. Para quem usa o spring-boot-starter-jersey pode ter grandes problemas na entrada de requests, já […]

Como fazer o Quarkus identificar os Headers do Spring Sleuth

Por padrão, Quarkus usa a implementação do Jaeger para o OpenTracing. O Jaeger está usando cabeçalhos de propagação “Uber“, que são diferentes dos usados por Spring Sleuth (B3). Mas você pode configurar o Quarkus para usar a propagação B3 para torna-lo compatível com Spring Sleuth com a propriedade: Referência: https://quarkus.io/guides/opentracing#quarkus-jaeger_quarkus.jaeger.propagation

Spring Boot – Erro ao executar o jar: !/BOOT-INF/lib/ no such file – jersey-server

Ao executar um jar de um projeto Spring boot com a dependência do Jersey ( spring-boot-starter-jersey ) estava me deparando com o seguinte erro: Encontrei a salvação em um post no StackOverFlow que diz: The problem is that Jersey cannot scan classes in the new “fat boot jar”. This occurs when you try to use […]

Spring – @Valid não funciona após atualização do Spring 2.3.X ?

Após a versão 2.3.X do Spring Boot Framework podemos notar que o recurso de validação do javax.validation ( ex: @ Valid, @ NotNull, @ Min, @ Max ) podem ter parado de funcionar, normalmente porque eles utilizavam o hibernate-validator como implementação da especificação, porém apartir dessa versão foi retirado das dependências diretas do web-starter . […]

Spring Boot – Caching

Em qualquer sistema o Cache é algo muito importante e muito utilizado, ao adicionar um sistema de cache em nossos sistemas, garantimos uma melhor performance evitando vários processamentos desnecessários, o Spring Boot fornece uma ferramenta incrível deixando a configuração e uso muito simples, usando apenas anotations. O exemplo a seguir irei seguir os passos da […]

Spring Boot – Carregando as propriedades do Gradle no application.yml (Automatic Property Expansion Using Gradle)

Normalmente quando utilizamos o Spring Boot e queremos carregar uma propriedade do pom.xml nos arquivos de resources utilizamos o delimitador @, isso atualmente funciona de maneira automática. Recentemente tive que implementar essa funcionalidade com o Gradle, e diferente do Maven isso não funciona de forma automática e a maneira de acesso as propriedades é diferente. […]

[Java] Desabilitando paliativamente o SSL de uma conexão com o MySQL para evitar o seguinte erro: Jdbc javax.net.ssl.SSLException: closing inbound before receiving peer’s close_notify

** BEGIN NESTED EXCEPTION ** javax.net.ssl.SSLException MESSAGE: closing inbound before receiving peer’s close_notify STACKTRACE: javax.net.ssl.SSLException: closing inbound before receiving peer’s close_notify at java.base/sun.security.ssl.Alert.createSSLException(Alert.java:133) at java.base/sun.security.ssl.Alert.createSSLException(Alert.java:117) at java.base/sun.security.ssl.TransportContext.fatal(TransportContext.java:308) at java.base/sun.security.ssl.TransportContext.fatal(TransportContext.java:264) at java.base/sun.security.ssl.TransportContext.fatal(TransportContext.java:255) at java.base/sun.security.ssl.SSLSocketImpl.shutdownInput(SSLSocketImpl.java:645) at java.base/sun.security.ssl.SSLSocketImpl.shutdownInput(SSLSocketImpl.java:624) at com.mysql.jdbc.MysqlIO.quit(MysqlIO.java:2249) at com.mysql.jdbc.ConnectionImpl.realClose(ConnectionImpl.java:4221) at com.mysql.jdbc.ConnectionImpl.close(ConnectionImpl.java:1464) at com.zaxxer.hikari.pool.PoolBase.quietlyCloseConnection(PoolBase.java:135) at com.zaxxer.hikari.pool.HikariPool.lambda$closeConnection$1(HikariPool.java:441) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:834) ** END NESTED EXCEPTION […]

[TomCat] [Spring] Como definir o ‘spring.profiles.active’ de uma aplicação Spring no Tomcat

Quando trabalhamos com aplicações desenvolvidas com o Framework Spring Boot é normal utilizarmos os ‘profiles‘ para definir o ambiente que estamos trabalhando, os profiles são muito utilizados para carregar os resources utilizados na aplicação, permitindo uma variedade de ambientes, como testes, desenvolvimento, produção, etc. O Spring Boot permite que implementemos uma solução já com um servidor de aplicação […]

[SPRING] Agendando tarefas com Scheduled do Spring (Scheduling Tasks with Spring)

Excelente post no blog do Alura: https://blog.alura.com.br/agendando-tarefas-com-scheduled-do-spring/ Link da documentação: https://spring.io/guides/gs/scheduling-tasks/

Rolar para o topo