Como migrar uma API
MuleSoft para o Java 17
Curitiba MuleSoft Meetup
February 12, 2025
6:00 PM (BRT)
#MuleSoftMeetup
Solution Architect
Guilherme Zasyeki Machado
Como migrar uma
API MuleSoft para
o Java 17
Curitiba MuleSoft Meetup
June 4, 2025
5:00 PM (BRT)
#MuleSoftMeetup
●Trabalho com MuleSoft há mais de 7 anos.
●Mais de 14 anos de experiencia na área de TI.
●Focada em desenvolvimento de APIs com MuleSoft.
●Atualmente trabalhando como Solution Architect na API
People.
Who I Am?
Integration Analyst
Elisa Nascimento
Como migrar uma
API MuleSoft para
o Java 17
Curitiba MuleSoft Meetup
Jun 4, 2025
5:00 PM (BRT)
#MuleSoftMeetup
●Trabalho com MuleSoft há mais de 6 anos.
●Mais de 25 anos de experiencia na área de TI.
●Focada em desenvolvimento de APIs com MuleSoft.
●Atualmente trabalhando como Integration Analyst na
Avenue Code.
Who I Am?
Our speakers & Moderator
Solution Architect
Guilherme Zasyeki Machado
Integration Analyst
Elisa Nascimento
Agenda
Introdução
Visão Geral
Aplicação
Demo
Dúvidas?
Referências
Por que migrar?
O MuleSoft tem que seguir regras de compliance, e com Java 8 perdendo suporte oficial,
não tem escolha se não atualizar para continuar recebendo patchs de segurança. Com
isso, novas versões não mais suportarão Java 8.
Java 17
A primeira versão a suportar Java 17 foi a 4.6. Com isso vários conectores padrão foram
migrados para Java 17 e podem ser usados com poucas ou nunhuma adaptação. Porém
conectores que não são oficialmente suportados pela MuleSoft, tiveram que ser
migrados pela comunidade. Entre eles, alguns comumente utilizados:
JSON Logger Plugin: recomendamos o uso do conector
https://github.com/anypointcloud/json-logger, ao inves do conector original.
Error Handler Plugin: o conector original foi migrado para suportar Java 17, e o link
para o repositório é: https://github.com/mulesoft-catalyst/error-handler-plugin
Connectors & Policies
Se você desenvolveu um custom connector ou uma custom policy, algumas bibliotecas
precisam ser atualizadas:
Bibliotecas externas precisam ser migradas para versões compativeis com Java 17.
O parent pom usado como referencia precisa ser atualizado.
Se o conector usa Java EE libs, a Mule mudou a forma como ele é exposto. Uma BOM
dependency deve ser adicionada ao projeto.
Error Handling
Old New
error.errorType.asString error.errorType.namespace ++ ":" ++ error.errorType.identifier
error.muleMessage error.errorMessage
error.errors error.childErrors
error.muleMessage.typedAttributes.statusCode error.errorMessage.attributes.statusCode
error.errorMessage.typedValue is used to get the http request connector response
payload incase the http request returns error like 500, 400 etc.
error.errorMessage.payload is used to get http request connector response payload
Error Handling
Demo
Walkthrough de um projeto migrado para Java 17.
Connectors
Error Handler
Parent Pom
Mule Maven plugin alterações no pipeline Java 17.
Dúvidas?
https://help.salesforce.com/s/articleView?id=000396936&type=1 (MuleSoft Java 17 Upgrade FAQ)
https://help.salesforce.com/s/articleView?id=002139151&type=1 (Upgrading MuleSoft to Java 17: A
Comprehensive Guide)
https://docs.mulesoft.com/general/customer-connector-upgrade
https://docs.mulesoft.com/general/upgrade-policies-proxies
Referências

MuleSoft Meetup Curitiba - Como migrar para o JAVA 17.pdf

  • 1.
    Como migrar umaAPI MuleSoft para o Java 17 Curitiba MuleSoft Meetup February 12, 2025 6:00 PM (BRT) #MuleSoftMeetup
  • 2.
    Solution Architect Guilherme ZasyekiMachado Como migrar uma API MuleSoft para o Java 17 Curitiba MuleSoft Meetup June 4, 2025 5:00 PM (BRT) #MuleSoftMeetup
  • 3.
    ●Trabalho com MuleSofthá mais de 7 anos. ●Mais de 14 anos de experiencia na área de TI. ●Focada em desenvolvimento de APIs com MuleSoft. ●Atualmente trabalhando como Solution Architect na API People. Who I Am?
  • 4.
    Integration Analyst Elisa Nascimento Comomigrar uma API MuleSoft para o Java 17 Curitiba MuleSoft Meetup Jun 4, 2025 5:00 PM (BRT) #MuleSoftMeetup
  • 5.
    ●Trabalho com MuleSofthá mais de 6 anos. ●Mais de 25 anos de experiencia na área de TI. ●Focada em desenvolvimento de APIs com MuleSoft. ●Atualmente trabalhando como Integration Analyst na Avenue Code. Who I Am?
  • 6.
    Our speakers &Moderator Solution Architect Guilherme Zasyeki Machado Integration Analyst Elisa Nascimento
  • 7.
  • 8.
    Por que migrar? OMuleSoft tem que seguir regras de compliance, e com Java 8 perdendo suporte oficial, não tem escolha se não atualizar para continuar recebendo patchs de segurança. Com isso, novas versões não mais suportarão Java 8.
  • 9.
    Java 17 A primeiraversão a suportar Java 17 foi a 4.6. Com isso vários conectores padrão foram migrados para Java 17 e podem ser usados com poucas ou nunhuma adaptação. Porém conectores que não são oficialmente suportados pela MuleSoft, tiveram que ser migrados pela comunidade. Entre eles, alguns comumente utilizados: JSON Logger Plugin: recomendamos o uso do conector https://github.com/anypointcloud/json-logger, ao inves do conector original. Error Handler Plugin: o conector original foi migrado para suportar Java 17, e o link para o repositório é: https://github.com/mulesoft-catalyst/error-handler-plugin
  • 10.
    Connectors & Policies Sevocê desenvolveu um custom connector ou uma custom policy, algumas bibliotecas precisam ser atualizadas: Bibliotecas externas precisam ser migradas para versões compativeis com Java 17. O parent pom usado como referencia precisa ser atualizado. Se o conector usa Java EE libs, a Mule mudou a forma como ele é exposto. Uma BOM dependency deve ser adicionada ao projeto.
  • 11.
  • 12.
    Old New error.errorType.asString error.errorType.namespace++ ":" ++ error.errorType.identifier error.muleMessage error.errorMessage error.errors error.childErrors error.muleMessage.typedAttributes.statusCode error.errorMessage.attributes.statusCode error.errorMessage.typedValue is used to get the http request connector response payload incase the http request returns error like 500, 400 etc. error.errorMessage.payload is used to get http request connector response payload Error Handling
  • 13.
    Demo Walkthrough de umprojeto migrado para Java 17. Connectors Error Handler Parent Pom Mule Maven plugin alterações no pipeline Java 17.
  • 14.
  • 15.
    https://help.salesforce.com/s/articleView?id=000396936&type=1 (MuleSoft Java17 Upgrade FAQ) https://help.salesforce.com/s/articleView?id=002139151&type=1 (Upgrading MuleSoft to Java 17: A Comprehensive Guide) https://docs.mulesoft.com/general/customer-connector-upgrade https://docs.mulesoft.com/general/upgrade-policies-proxies Referências