Olá, Fluiger!
Atualmente, estou desenvolvendo um projeto Fluig integrado à uma API do SAP, para uma empresa da Colômbia. O primeiro passo para se comunicar com essa API, foi criar um serviço para guardar o Domínio, e depois só invocar esse serviço adicionando o endpoint, e as credenciais no corpo da requisição.

Mas, ao tentar fazer a primeira requisição, neste caso a de LOGIN,

retornou esse erro de segurança do Java “PKIX path validation failed: java.security.cert.CertPathValidatorException”.

Em uma busca rápida no Google, localizamos o motivo desse erro:
O erro acontece porque o servidor Java (JBoss/Wildfly) onde seu Fluig está rodando não confia no certificado SSL/TLS apresentado pela API HTTPS.
Isso geralmente ocorre por dois motivos:
- A API está usando um certificado autoassinado (self-signed).
- A API está usando um certificado assinado por uma Autoridade Certificadora (CA) interna ou privada, que não está na lista de CAs confiáveis padrão do Java.
Para resolver isso, é necessário “ensinar” o Java do seu Fluig a confiar neste certificado.
Ou seja, precisamos pegar o arquivo do certificado da API e dizer pro Java do Fluig confiar nele.
IMPORTANTE: As instruções abaixo só são aplicáveis, caso você tenha acesso total ao servidor Fluig da sua empresa (on premise), e se o servidor for Windows. Possa ser que em servidores Linux, as instruções sejam diferentes.
Mas antes de qualquer coisa, precisamos garantir que a variável de ambiente JAVA_HOME esteja configurada corretamente:
- No servidor do Fluig, acesse Painel de Controle > Sistema e Segurança > Sistema > Configurações avançadas do sistema
- Em Propriedades do Sistema > aba Avançado > Variáveis de Ambiente
- Em variáveis do sistema procure pela variável JAVA_HOME e edite a mesma. Deve ser algo como: C:\fluig\jdk-64. Caso não exista, é só criá-la.

Após cadastrado a variável JAVA_HOME, encontre a variável path. Dentro dela, deve existir a variável %JAVA_HOME%\bin Caso não exista, é só adicioná-la.

Agora sim, podemos seguir com os passos do Certificado da API:
- Acesse a URL da API HTTPS no seu navegador.
- Clique no cadeado ao lado da URL.
- Vá em “A conexão é segura” -> “O certificado é válido”.
- Vá na aba Detalhes.
- Clique em Exportar (ou “Copiar para Arquivo…”).
- Salve o certificado. Escolha o formato “Base-64 encoded X.509 (.CER)”.
Eu salvei na pasta de downloads
Em seguida, precisamos localizar o arquivo CACERTS que fica na pasta de instalação do Java (JDK/JRE) que o meu Fluig (JBoss/Wildfly) está usando. No meu caso, é C:\fluig\jdk-64\lib\security\cacerts. Salve esse caminho.

Agora, abra o Prompt de Comando (CMD) do seu Windows, navegue até a pasta BIN que fica na pasta de instalação do Java (JDK/JRE) que o meu Fluig (JBoss/Wildfly) está usando. Em seguida, digite o comando a seguir, substituindo api_sap pelo nome que você atribuiu ao seu arquivo de certificado, em seguida o caminho que você o salvou, e em seguida o caminho completo até a pasta CACERTS

keytool -import -alias “api_sap” -file “C:\Users\Administrator\Downloads\api_sap.crt” -keystore “C:\fluig\jdk-64\lib\security\cacerts”
Ao pressionar a tecla ENTER, o keytool pedirá a senha da keystore cacerts. A senha padrão de fábrica do Java é changeit
O keytool perguntará se você confia no certificado. Digite yes e pressione a tecla ENTER.
Se tudo der certo, será exibida uma mensagem que o certificado foi adicionado com sucesso à keystore.

Por último, será necessário reiniciar os serviços do Fluig.

E após a reinicialização, a API poderá ser acessada com sucesso!


E ai!? Você gostou do conteúdo de Fluig de hoje? Deixe o seu comentário!
Forte abraço!!!
Fluig é uma marca registrada da Totvs S.A.
Fontes que me ajudaram a chegar na solução deste problema:
- https://centraldeatendimento.totvs.com/hc/pt-br/articles/27662979027223-Fluig-Plataforma-DES-Ao-cadastrar-servi%C3%A7o-retorna-o-erro-PKIX-path-validation-failed
- https://centraldeatendimento.totvs.com/hc/pt-br/articles/27662302972567-Fluig-Plataforma-FDN-Configura%C3%A7%C3%A3o-de-certificado-para-consultar-servi%C3%A7o-com-conex%C3%A3o-HTTPS?utm_source=chatgpt.com
- ChatGPT
- Gemini

































