[2C] Erro de conexão no SQL SERVER para novos parâmetros sem valor default

Description

Erro encontrado ao tentar conectar a nova versão do 2C - 3.7.0

"O driver não pôde estabelecer uma conexão segura com o SQL Server usando a criptografia SSL. Erro: 'true'."

Falha

com.microsoft.sqlserver.jdbc.SQLServerException: O driver não pôde estabelecer uma conexão segura com o SQL Server usando a criptografia SSL. Erro: "true".Caused by: javax.net.ssl.SSLHandshakeException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

Logs

[2026-02-27 13:34:43.586] [INFO ] c.z.h.HikariDataSource -  pool=[f214a1aadcb0807e294ee4ec85829a8962c1858a][teste] - Starting... [2026-02-27 13:34:44.783] [ERROR] c.t.m.a.d.DatabasePoolImpl -  Error obtaining datasource for config = PoolConfigVO(jdbcUrl=jdbc:sqlserver://localhost:1433;databaseName=ProtheusSample;authentication=NotSpecified, databaseName=defaultDB, username=sa, dataSourceProperties={}) [2026-02-27 13:34:44.788] [WARN ] c.t.m.a.d.c.ConnectionService -  Error trying to test the database connection com.zaxxer.hikari.pool.HikariPool$PoolInitializationException: Failed to initialize pool: O driver não pôde estabelecer uma conexão segura com o SQL Server usando a criptografia SSL. Erro: "true". ClientConnectionId:8868d036-292c-4770-977d-3ef436dcf0c3	at com.zaxxer.hikari.pool.HikariPool.throwPoolInitializationException(HikariPool.java:610)	at com.zaxxer.hikari.pool.HikariPool.checkFailFast(HikariPool.java:597)	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:97)	at com.zaxxer.hikari.HikariDataSource.<init>(HikariDataSource.java:80)	at com.totvslabs.mdm.app.dbconnection.DatabasePoolImpl.activateDataSource(DatabasePoolImpl.java:116)	at com.totvslabs.mdm.app.domain.connection.ConnectionService.testDatabaseConnection(ConnectionService.java:435)	at com.totvslabs.mdm.app.domain.connection.ConnectionService.save(ConnectionService.java:341)	at com.totvslabs.mdm.app.domain.connection.ConnectionService.create(ConnectionService.java:111)	at com.totvslabs.mdm.app.api.v2.ConnectionController.createConnection(ConnectionController.java:148)	at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)	at java.base/java.lang.reflect.Method.invoke(Method.java:578)	at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:205)	at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150)	at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117)	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895)	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)	at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)	at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1072)	at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:965)	at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)	at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:909)	at javax.servlet.http.HttpServlet.service(HttpServlet.java:555)	at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)	at javax.servlet.http.HttpServlet.service(HttpServlet.java:623)	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:209)	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)	at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)	at com.totvslabs.mdm.app.security.TokenAuthenticationFilter.doFilter(TokenAuthenticationFilter.java:79)	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:337)	at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:115)	at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:81)	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)	at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:122)	at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:116)	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)	at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:126)	at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:81)	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)	at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:109)	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)	at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:149)	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)	at com.totvslabs.mdm.app.security.TokenAuthenticationFilter.doFilter(TokenAuthenticationFilter.java:79)	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)	at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103)	at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89)	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)	at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91)	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)	at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90)	at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75)	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)	at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:112)	at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:82)	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)	at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55)	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)	at org.springframework.security.web.session.DisableEncodeUrlFilter.doFilterInternal(DisableEncodeUrlFilter.java:42)	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)	at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221)	at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186)	at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354)	at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267)	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)	at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)	at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)	at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:168)	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90)	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:481)	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:130)	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93)	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)	at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:390)	at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63)	at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:928)	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1794)	at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52)	at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)	at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)	at java.base/java.lang.Thread.run(Thread.java:1623)Caused by: com.microsoft.sqlserver.jdbc.SQLServerException: O driver não pôde estabelecer uma conexão segura com o SQL Server usando a criptografia SSL. Erro: "true". ClientConnectionId:8868d036-292c-4770-977d-3ef436dcf0c3	at com.microsoft.sqlserver.jdbc.SQLServerConnection.terminate(SQLServerConnection.java:4708)	at com.microsoft.sqlserver.jdbc.TDSChannel.enableSSL(IOBuffer.java:1983)	at com.microsoft.sqlserver.jdbc.SQLServerConnection.connectHelper(SQLServerConnection.java:4230)	at com.microsoft.sqlserver.jdbc.SQLServerConnection.login(SQLServerConnection.java:3817)	at com.microsoft.sqlserver.jdbc.SQLServerConnection.connectInternal(SQLServerConnection.java:3591)	at com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(SQLServerConnection.java:2286)	at com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(SQLServerDriver.java:1371)	at com.zaxxer.hikari.util.DriverDataSource.getConnection(DriverDataSource.java:144)	at com.zaxxer.hikari.pool.PoolBase.newConnection(PoolBase.java:373)	at com.zaxxer.hikari.pool.PoolBase.newPoolEntry(PoolBase.java:210)	at com.zaxxer.hikari.pool.HikariPool.createPoolEntry(HikariPool.java:488)	at com.zaxxer.hikari.pool.HikariPool.checkFailFast(HikariPool.java:576)	... 99 common frames omittedCaused by: javax.net.ssl.SSLHandshakeException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target	at java.base/sun.security.ssl.Alert.createSSLException(Alert.java:130)	at java.base/sun.security.ssl.TransportContext.fatal(TransportContext.java:378)	at java.base/sun.security.ssl.TransportContext.fatal(TransportContext.java:321)	at java.base/sun.security.ssl.TransportContext.fatal(TransportContext.java:316)	at java.base/sun.security.ssl.CertificateMessage$T12CertificateConsumer.checkServerCerts(CertificateMessage.java:647)	at java.base/sun.security.ssl.CertificateMessage$T12CertificateConsumer.onCertificate(CertificateMessage.java:467)	at java.base/sun.security.ssl.CertificateMessage$T12CertificateConsumer.consume(CertificateMessage.java:363)	at java.base/sun.security.ssl.SSLHandshake.consume(SSLHandshake.java:393)	at java.base/sun.security.ssl.HandshakeContext.dispatch(HandshakeContext.java:469)	at java.base/sun.security.ssl.HandshakeContext.dispatch(HandshakeContext.java:447)	at java.base/sun.security.ssl.TransportContext.dispatch(TransportContext.java:201)	at java.base/sun.security.ssl.SSLTransport.decode(SSLTransport.java:172)	at java.base/sun.security.ssl.SSLSocketImpl.decode(SSLSocketImpl.java:1506)	at java.base/sun.security.ssl.SSLSocketImpl.readHandshakeRecord(SSLSocketImpl.java:1421)	at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:455)	at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:426)	at com.microsoft.sqlserver.jdbc.TDSChannel.enableSSL(IOBuffer.java:1872)	... 109 common frames omittedCaused by: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target	at java.base/sun.security.validator.PKIXValidator.doBuild(PKIXValidator.java:388)	at java.base/sun.security.validator.PKIXValidator.engineValidate(PKIXValidator.java:271)	at java.base/sun.security.validator.Validator.validate(Validator.java:256)	at java.base/sun.security.ssl.X509TrustManagerImpl.checkTrusted(X509TrustManagerImpl.java:241)	at java.base/sun.security.ssl.X509TrustManagerImpl.checkServerTrusted(X509TrustManagerImpl.java:113)	at com.microsoft.sqlserver.jdbc.HostNameOverrideX509TrustManager.checkServerTrusted(SQLServerTrustManager.java:88)	at java.base/sun.security.ssl.AbstractTrustManagerWrapper.checkServerTrusted(SSLContextImpl.java:1433)	at java.base/sun.security.ssl.CertificateMessage$T12CertificateConsumer.checkServerCerts(CertificateMessage.java:631)	... 121 common frames omittedCaused by: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target	at java.base/sun.security.provider.certpath.SunCertPathBuilder.build(SunCertPathBuilder.java:146)	at java.base/sun.security.provider.certpath.SunCertPathBuilder.engineBuild(SunCertPathBuilder.java:127)	at java.base/java.security.cert.CertPathBuilder.build(CertPathBuilder.java:297)	at java.base/sun.security.validator.PKIXValidator.doBuild(PKIXValidator.java:383)	... 128 common frames omitted