una vecchia questione, ma forse questa informazione sarà utile a qualcun altro - ho faticato a trovare le informazioni documentate da nessuna parte (forse perché non è un parte formale delle specifiche linguistiche), e ha dovuto determinare attraverso la sperimentazione.
Se il problema non riguarda il SecurityManager, il problema più probabile è che la risoluzione del nome a livello di sistema operativo è in qualche modo rovinata.
Almeno su tutte le piattaforme Unix che ho provato su (OS X, Solaris, Linux), il processo utilizzato da Java è:
- Determinare nome host locale
- Resolve che tramite/etc/host per determinare l'indirizzo IP
ho visto questo rotto da mal configurati/etc/hosts, come ad esempio:
127.0.0.1 localhost myhost
1.2.3.4 myhost
per dare esattamente i sintomi sopra descritti.
Hai riavviato il servizio di rete? – Jeshurun
Grazie per la risposta @Jeshurun. Ho riavviato il server. – Jingwei