Some entities have String keys that are currently accepted without any specific bound (schema, resources, config parameters).
When, for example, a value like as an URL is provided, nothing special happens during creation (because such value is embedded into a transfer object); however, any subsequent read or delete, which would require passing the entity key as part of the REST URL, will fail either with Spring MVC and CXF.
For example, as reported in mailing list , a user schema with name 'http://schemas.examples.org/security/authorization/organizationUnit' can be created but will then be impossible to read or even delete since the REST URL would be something like as
After some search, it seems that it is neither Spring MVC nor CXF problem, but instead the JEE container (like as Tomcat, for example) that needs some special configuration for handling such URLs (see
CXF-4207 for more details).
The most logical and straightforward solution seems to be just setting some limits for the characters admitted; at a first glance, alphanumeric plus some special characters (space, _, -, @, .) should be fine.