If "." is an valid IDN that comply to RFC 3490, IDN.toASCII() should be able to handle it; otherwise, IDN.toASCII() should throw IAE as the specification suggested. However, IDN.toASCII(".") throws StringIndexOutOfBoundsException, this behavior does not comply the the specification:
String host = IDN.toASCII(".", IDN.USE_STD3_ASCII_RULES);
Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: 0
at java.lang.StringBuffer.charAt(StringBuffer.java:204)
at java.net.IDN.toASCIIInternal(IDN.java:279)
at java.net.IDN.toASCII(IDN.java:118)
String host = IDN.toASCII(".", IDN.USE_STD3_ASCII_RULES);
Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: 0
at java.lang.StringBuffer.charAt(StringBuffer.java:204)
at java.net.IDN.toASCIIInternal(IDN.java:279)
at java.net.IDN.toASCII(IDN.java:118)
- duplicates
-
JDK-8020842 IDN do not throw IAE when hostname ends with a trailing dot
-
- Closed
-