We're updating the issue view to help you get more done. 

Repository id with '@' causes error in workbench on update/file upload/clear operations

Description

A repository ID can optionally include special chars like '@' (I don't think we ever actually restricted the allowed chars, explicitly). Such a repository ID can be created by the workbench, and the repository can be accessed and queried.

However, when executing a modification (such as a file upload , or a clear operation), A tomcat error page appears with the following error:

1 2 3 4 5 6 7 8 9 java.lang.StringIndexOutOfBoundsException: String index out of range: -1 java.lang.AbstractStringBuilder.setLength(AbstractStringBuilder.java:173) java.lang.StringBuffer.setLength(StringBuffer.java:170) org.openrdf.workbench.proxy.WorkbenchGateway.getDefaultServer(WorkbenchGateway.java:289) org.openrdf.workbench.proxy.WorkbenchGateway.findServer(WorkbenchGateway.java:225) org.openrdf.workbench.proxy.WorkbenchGateway.findWorkbenchServlet(WorkbenchGateway.java:246) org.openrdf.workbench.proxy.WorkbenchGateway.service(WorkbenchGateway.java:121) org.openrdf.workbench.base.BaseServlet.service(BaseServlet.java:137) org.openrdf.workbench.proxy.CookieCacheControlFilter.doFilter(CookieCacheControlFilter.java:63)

This error seems to be in the part of the workbench app that processes the server's response. As far as I can tell, the actual operation is executed correctly, but Workbench won't swallow the server response.

I have only tested with '@' (repository id: "jeen@example.org"), but this may be a broader issue with characters that need special treatment in URLs...

Environment

None

Status

Assignee

Dale W. Visser

Reporter

JeenB

Labels

None

Components

Fix versions

Affects versions

2.7.0-beta2

Priority

Major