You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cxf.apache.org by "Dan Diephouse (JIRA)" <ji...@apache.org> on 2007/07/25 15:22:31 UTC

[jira] Commented: (CXF-800) Resouce matching in jra seems incorrect

    [ https://issues.apache.org/jira/browse/CXF-800?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12515291 ] 

Dan Diephouse commented on CXF-800:
-----------------------------------

Just an update: I've take a look into this. unfortunately your proposed fix doesn't solve things. I am still working on a fix though and will keep you posted when one is available.

> Resouce matching in jra seems incorrect
> ---------------------------------------
>
>                 Key: CXF-800
>                 URL: https://issues.apache.org/jira/browse/CXF-800
>             Project: CXF
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 2.0
>         Environment: Windows XP, Java 1.5
>            Reporter: Derek Shaw
>            Assignee: Dan Diephouse
>
> For me, this resource
> 	@Get
> 	@HttpResource(location = "/player/most/comments/{maxCount}")
> 	@WebResult(name = "PlayerList")
> 	public List<Integer> getMostCommented(@WebParam(name = "maxCount") int maxCount);
> Is matching this resource
> 	@Get
> 	@HttpResource(location = "/player/{ID}")
> 	@WebResult(name = "Player")
> 	public Player getPlayer(@WebParam(name = "ID") int ID) throws PlayerNotFoundFault;
> The reason is that in ResourceUtil.java on line 38
>   if (i == resource.length()) {
>                         // if } is the last part of the resource, assume the
>                         // rest of the request uri matches
>                         return reqUri.length();
>                     }
> This seems incorrect to me ( could easily be wrong here ) seem like since you are assuming '}' to be the end, then you should return resource.length() and not the request lenght. 
> Later when the correct resource ( the one that matches reqUri) is sent in, we already have a bestMatch = reqUri.lenth and the the check in URIMapper.java at line 46 does a  > test so does not use the correct match.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.