Domanda

che sto facendo quanto segue per cercare l'indirizzo Internet. Viene a mancare in particolare su macchine Solaris che hanno nameserver IPv6 nel resolv.conf. Funziona bene su macchine Windows che hanno nameserver IPv6 su IPv4 solo macchine Solaris. Da l'errore restituito sembra che la linea "getAttributes" Java sta fallendo internamente (da qualche parte in profondità) con un problema di analisi quando sono presentati con un nameserver IPv6. La mia domanda è: "c'è un modo per fare questo meglio che funziona correttamente su Solaris quando IPv6 è in uso?"

InetAddress localhost=InetAddress.getLocalHost();
ipAddress=localhost.getHostAddress();
env.put("java.naming.factory.initial", "com.sun.jndi.dns.DnsContextFactory");
DirContext ictx = new InitialDirContext(env);
Attributes attrs=ictx.getAttributes("blah.test.fakedomain", new String[] { "A" }); 
È stato utile?

Soluzione 2

Le nuove versioni di Java funzionano "meglio". Non viene più interrotto internamente come questo dopo l'aggiornamento a Java 7.

Altri suggerimenti

La base java.net.InetAddress ha avuto varianti IPv6 e < a href = rel = "nofollow"> noreferrer varianti "http://java.sun.com/javase/6/docs/api/java/net/Inet4Address.html" IPv4 dal Java 1.4 (per il javadoc ).

Suona come hai più di una domanda sul com.sun.jndi.dns.DnsContextFactory. Quale versione di Java?

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top