[
https://issues.apache.org/jira/browse/WINK-103?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jesse Ramos updated WINK-103:
-----------------------------
Attachment: WINK-103.patch
After talking with Bryant, I went ahead and took a look at implementing his
suggested fix. I don't see any issues changing MethodMetadata.getHttpMethod()
to return a String rather than a Set, since, as Bryant pointed out, it is not
possible to have more than one HttpMethod annotation on a resource method.
Attached is a patch with the changes.
> Method invoked but no HttpMethod
> --------------------------------
>
> Key: WINK-103
> URL: https://issues.apache.org/jira/browse/WINK-103
> Project: Wink
> Issue Type: Bug
> Components: Server
> Affects Versions: 0.1
> Reporter: Bryant Luk
> Fix For: 0.1
>
> Attachments: WINK-103.patch
>
>
> If a non-HttpMethod annotated annotation is not present but a JAX-RS regular
> annotation is present, then the method will get invoked for any matching
> method. wink-server/EncodedTest will fail one test because of this but ran
> into it during one of the integration tests.
> {code}
> @Path("/abcd")
> public class Resource {
> @Produces("text/plain")
> public Response invokeMeAnytime() {
> }
> }
> {code}
> Invoke a GET to /abcd with Accept header of text/plain.
> The problem is with a) Method metadata records are added to the root resource
> even if there isn't a HttpMethod (which is the easy if check fix) and b) the
> filtering HTTP method algorithm assumes that if you don't have a HttpMethod,
> you must be a subresource locator I think.
> The real fix to me is to get rid of the Set returned of HttpMethod since it
> is not possible with JAX-RS to have a method be annotated with greater than 1
> @HttpMethod annotated annotations.
> I consider this a must fix for 0.1 so I'll go ahead and mark it that way.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.