[ https://issues.apache.org/jira/browse/MYFACES-4107?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Bill Lucy updated MYFACES-4107: ------------------------------- Resolution: Fixed Fix Version/s: 2.3.0 2.2.13 2.1.19 2.0.25 Status: Resolved (was: Patch Available) > StringIndexOutOfBoundsException in getResourceVersion > ----------------------------------------------------- > > Key: MYFACES-4107 > URL: https://issues.apache.org/jira/browse/MYFACES-4107 > Project: MyFaces Core > Issue Type: Bug > Affects Versions: 2.0.24, 2.1.18, 2.2.12, 2.3.0 > Environment: WebSphere Liberty > Reporter: Bill Lucy > Assignee: Bill Lucy > Priority: Minor > Fix For: 2.0.25, 2.1.19, 2.2.13, 2.3.0 > > Attachments: MYFACES-4107.patch > > > I've run into a case where, given an incorrect context parameter, a > StringIndexOutOfBoundsException is thrown. This occurs in WebSphere Liberty > because the server normalizes the external context resource paths during app > initialization. > For example, this parameter: > <context-param> > <param-name>javax.faces.WEBAPP_RESOURCES_DIRECTORY</param-name> > <param-value>/META-INF/resources</param-value> > </context-param> > throws: > java.lang.StringIndexOutOfBoundsException: String index out of range: 35 > at java.lang.String.substring(String.java:1377) > at > org.apache.myfaces.shared.resource.ExternalContextResourceLoader.getResourceVersion(ExternalContextResourceLoader.java:81) > That parameter value is not allowed to have a leading slash. However, the > current exception is not very helpful, and can be easily avoided. > I'll attach a patch which avoids the StringIndexOutOfBoundsException in > getResourceVersion(); we already have this logic in getLibraryVersion(). -- This message was sent by Atlassian JIRA (v6.3.15#6346)