Description of problem: When we have a project with space in the name, we are not able to edit the process form. Version-Release number of selected component (if applicable): How reproducible: Steps to Reproduce: 1. In a clean BPM Suite installation, create a new project with space in the name, let's say "My new project" 2. Create a new process in it, let's say "myProc" 3. Open this process using the web designer and go to the form button and choose the option to edit the process form and then click on the first option which is use the visual editor. Actual results: Error: Unable to complete your request. The following exception occurred: Illegal character in path at index 31: default://master@repository1/My New Project/src/main/resources/MyNewProject.myProc-taskform.form. Expected results: No error. Additional info:
The error is printed from class JbpmPreprocessingUnit at line 203: try { evaluateWorkDefinitions(workDefinitions, entry, asset.getAssetLocation(), repository, profile); } catch(Exception e) { _logger.error("Unable to parse a workitem definition: " + e.getMessage()); } With further debugging I found that the actually cause if the error is an URI parsing: java.net.URISyntaxException: Illegal character in path at index 33: default://master@repository1/With Space/src/main/resources/defaultemailicon.gif It is thrown when it is checked if the icon exists (line 362 of class JbpmPreprocessingUnit): ---- String absoluteIcon = createAbsoluteIconPath(assetLocation, icon); if (repository.assetExists(absoluteIcon)) { icon = absoluteIcon; iconFound = true; } ---- The method only receives a String so it probably fails with all Strings that contains spaces. The solution would be format the String accordingly, but I am not sure if using URI encoding is the proper way. Notice that simply replace the spaces will probably result in problems if the project has special characters. Should we document that projects should not contain space/special characters or format the icon name accordingly? In any case, I could workaround this issue by replacing the spaces in the name of the project by "%20", but I see that the assetLocation is used in a lot of other places. I hope this helps.
Fixed - see clone for details https://bugzilla.redhat.com/show_bug.cgi?id=1231365#c3
I followed the steps to reproduce the problem on 6.2.0.ER and there weren't any problems - Form Editor works fine in a process with a space in it's name, so I consider this verified.