[ https://issues.apache.org/jira/browse/CXF-3168?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Sergey Beryozkin resolved CXF-3168. ----------------------------------- Resolution: Fixed Fix Version/s: 2.4 2.3.2 > Usage of whitespace in @Path regular expressions raises service deployment > errors > --------------------------------------------------------------------------------- > > Key: CXF-3168 > URL: https://issues.apache.org/jira/browse/CXF-3168 > Project: CXF > Issue Type: Bug > Components: JAX-RS > Affects Versions: 2.3.0 > Reporter: Glen Mazza > Assignee: Sergey Beryozkin > Priority: Minor > Fix For: 2.3.2, 2.4 > > > See: http://www.corneliadavis.com/blog/index.php/tag/rest-cxf-regex/ > The following regular expression works fine (for an elephant maintenance > system at a zoo): > @Path("/{id:\\d+}") > public Person getElephantSubresource(@PathParam("id") int id); > However, placing spaces around the colon delimiter as follows: > @Path("/{id : \\d+}") > public Person getElephantSubresource(@PathParam("id") int id); > ... causes these exceptions to occur at service deployment time: > org.springframework.beans.PropertyBatchUpdateException; nested > PropertyAccessExceptions (1) are: > PropertyAccessException 1: > org.springframework.beans.MethodInvocationException: Property 'serviceBeans' > threw exception; nested exception is java.util.regex.PatternSyntaxException: > Illegal repetition near index 0 > /{id : \d+}(/.*)? > ^ > at > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1361) > at > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1086) > at > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:517) > at > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456) > at > org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291) > at > org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:22 > .... > at org.codehaus.classworlds.Launcher.main(Launcher.java:375) > Caused by: java.util.regex.PatternSyntaxException: Illegal repetition near > index 0 > /{id : \d+}(/.*)? > ^ > at java.util.regex.Pattern.error(Pattern.java:1713) > at java.util.regex.Pattern.closure(Pattern.java:2775) > at java.util.regex.Pattern.sequence(Pattern.java:1889) > at java.util.regex.Pattern.expr(Pattern.java:1752) > at java.util.regex.Pattern.compile(Pattern.java:1460) > at java.util.regex.Pattern.<init>(Pattern.java:1133) > at java.util.regex.Pattern.compile(Pattern.java:823) > at org.apache.cxf.jaxrs.model.URITemplate.<init>(URITemplate.java:89) > at > org.apache.cxf.jaxrs.model.URITemplate.createTemplate(URITemplate.java:302) > at > org.apache.cxf.jaxrs.model.URITemplate.createTemplate(URITemplate.java:289) > at > org.apache.cxf.jaxrs.utils.ResourceUtils.createOperationInfo(ResourceUtils.java:328) > at > org.apache.cxf.jaxrs.utils.ResourceUtils.evaluateResourceClass(ResourceUtils.java:204) > The version with spaces is as shown on page 47 of Bill Burke's RESTFul Java > with JAX-RS book (O'Reilly). -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.