Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

139
Visualizações
El controlador MongoDB 4.4.0 lanza UnsupportedAddressTypeException con Java 17

Tengo problemas con el último controlador mongodb 4.4.0 en mi máquina Linux con Java 17. Lanza la siguiente excepción:

 Exception java.io.UncheckedIOException: java.net.SocketException: Unsupported address type at DatagramSocketAdaptor.connect (DatagramSocketAdaptor.java:120) at DatagramSocket.connect (DatagramSocket.java:474) at DnsClient.doUdpQuery (DnsClient.java:408) at DnsClient.query (DnsClient.java:214) at Resolver.query (Resolver.java:81) at DnsContext.c_getAttributes (DnsContext.java:434) at ComponentDirContext.p_getAttributes (ComponentDirContext.java:235) at PartialCompositeDirContext.getAttributes (PartialCompositeDirContext.java:141) at PartialCompositeDirContext.getAttributes (PartialCompositeDirContext.java:129) at InitialDirContext.getAttributes (InitialDirContext.java:171) at DefaultDnsResolver.resolveAdditionalQueryParametersFromTxtRecords (DefaultDnsResolver.java:114) at ConnectionString.<init> (ConnectionString.java:388) at (#5:1) Caused by: java.net.SocketException: Unsupported address type at Net.translateToSocketException (Net.java:187) at DatagramSocketAdaptor.connectInternal (DatagramSocketAdaptor.java:95) at DatagramSocketAdaptor.connect (DatagramSocketAdaptor.java:118) ... Caused by: java.nio.channels.UnsupportedAddressTypeException at Net.checkAddress (Net.java:161) at DatagramChannelImpl.connect (DatagramChannelImpl.java:1217) at DatagramSocketAdaptor.connectInternal (DatagramSocketAdaptor.java:91) ...

Funciona como se esperaba en mi Windows con Java 17 y también en ese Linux con Java 11.

Como lo pruebo:

 $ jshell --class-path mongodb-driver-core-4.4.0.jar jshell> import com.mongodb.ConnectionString; jshell> ConnectionString cs = new ConnectionString("mongodb+srv://xyz.mongodb.net/");

El resultado esperado es javax.naming.NameNotFoundException: DNS name not found , sin embargo, el resultado real es java.nio.channels.UnsupportedAddressTypeException .

¿Alguna idea de cómo hacer que funcione?

over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Después de mucho "jdbing", descubrí que puedo hacer que funcione con una implementación anterior de DatagramSocketImpl como se indica aquí https://docs.oracle.com/en/java/javase/17/docs/api/java. base/java/net/DatagramSocketImpl.html

Es decir, si configuro la propiedad del sistema jdk.net.usePlainDatagramSocketImpl en "true" , entonces funciona.

Aunque no conozco la solución adecuada o la causa real del problema, puedo vivir con la solución alternativa y funciona para mí.

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda