If the *indexUrlString* that is used in _JandexIndexBeanArchiveHandler {{JandexIndexBeanArchiveHandler .loadJandexIndex(String s) _ }} contains a '%' sign, an IllegalArgumentException is thrown.
Having a '%' in an URL that is not meant to escape some character (like %20 for space) is totally fine both on Windows and Unix machines. Executing the openStream method of a _java.net.URL_, as it happens in the _JandexIndexBeanArchiveHandler.loadJandexIndex(String s)_,leads to execution of _sun.net.www.ParseUtil.decode(String s)_ which expects an encoded URL string. If the URL is not encoded, a _NumberFormatException_ {{NumberFormatException}} is catched by _sun.net.www.ParseUtil_ and an _IllegalArgumentException_ is thrown.
Therefore, the URL should be encoded (possibly by using the _java.net.URLEncoder_) before trying to call the openStream method.
I found another Issue with a similar title but missing description: https://issues.jboss.org/browse/WELD-1987
|