[jbosstools-issues] [JBoss JIRA] (JBIDE-18954) JAX-RS Web Services in Project Explorer does not show properly inherited metadata
Marián Labuda (JIRA)
issues at jboss.org
Thu Jan 8 09:19:30 EST 2015
[ https://issues.jboss.org/browse/JBIDE-18954?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Marián Labuda updated JBIDE-18954:
----------------------------------
Description:
I have an interface with annotated JAX-RS methods (HTTP method type, path, consumes...) CarResourceInterface and implementation of this interface CarResourceImpl. Inheriting all metadata related to one method should affect processing of this JAX-RS web services - new values from Impl should be used and probably it would be good to show it also in JAX-RS Web Services node in Project Explorer view. Currently there are shown only interface JAX-RS web services and any change in Impl is ignored in this view.
There are chunk of codes for interface and implementation. At first I was having only interface and it's web service has been shown in JAX-RS Web Services. Then I have added implementation and overrode interface but still in JAX-RS Web Services the interface is shown.
{code:title=CarResource.java}
@Path("car")
public interface CarResource {
@GET
@Path("/{id:[0-9][0-9]*}")
@Produces({ "application/xml", "application/json" })
public Response findById(@PathParam("id") final Long id);
}
{code}
{code:title=CarResourceImpl.java}
public class CarResourceImpl implements CarResource {
@GET
@Path("/{carid:a[0-9]*}")
@Produces({ "text", "application/json" })
public Response findById(@PathParam("carid") final Long id) {
//TODO: retrieve the car
return null;
}
}
{code}
Same behaviours is spotted with abstract classes. In JAX-RS Web Services is shown only abstract class and specific implementation is ignored.
was:
I have an interface with annotated JAX-RS methods (HTTP method type, path, consumes...) CarResourceInterface and implementation of this interface CarResourceImpl. Inheriting all metadata related to one method should affect processing of this JAX-RS web services - new values from Impl should be used and probably it would be good to show it also in JAX-RS Web Services node in Project Explorer view. Currently there are shown only interface JAX-RS web services and any change in Impl is ignored in this view.
There are chunk of codes for interface and implementation. At first I was having only interface and it's web service has been shown in JAX-RS Web Services. Then I have added implementation and overrode interface but still in JAX-RS Web Services the interface is shown.
{code:title=CarResource.java}
@Path("car")
public interface CarResource {
@GET
@Path("/{id:[0-9][0-9]*}")
@Produces({ "application/xml", "application/json" })
public Response findById(@PathParam("id") final Long id);
}
{code}
{code:title=CarResourceImpl.java}
public class CarResourceImpl implements CarResource {
@GET
@Path("/{carid:a[0-9]*}")
@Produces({ "text", "application/json" })
public Response findById(@PathParam("carid") final Long id) {
//TODO: retrieve the car
return null;
}
}
{code}
> JAX-RS Web Services in Project Explorer does not show properly inherited metadata
> ---------------------------------------------------------------------------------
>
> Key: JBIDE-18954
> URL: https://issues.jboss.org/browse/JBIDE-18954
> Project: Tools (JBoss Tools)
> Issue Type: Bug
> Components: webservices
> Affects Versions: 4.2.1.Final
> Reporter: Marián Labuda
> Assignee: Xavier Coulon
> Labels: jax-rs
> Fix For: 4.3.x
>
>
> I have an interface with annotated JAX-RS methods (HTTP method type, path, consumes...) CarResourceInterface and implementation of this interface CarResourceImpl. Inheriting all metadata related to one method should affect processing of this JAX-RS web services - new values from Impl should be used and probably it would be good to show it also in JAX-RS Web Services node in Project Explorer view. Currently there are shown only interface JAX-RS web services and any change in Impl is ignored in this view.
> There are chunk of codes for interface and implementation. At first I was having only interface and it's web service has been shown in JAX-RS Web Services. Then I have added implementation and overrode interface but still in JAX-RS Web Services the interface is shown.
> {code:title=CarResource.java}
> @Path("car")
> public interface CarResource {
>
> @GET
> @Path("/{id:[0-9][0-9]*}")
> @Produces({ "application/xml", "application/json" })
> public Response findById(@PathParam("id") final Long id);
> }
> {code}
> {code:title=CarResourceImpl.java}
> public class CarResourceImpl implements CarResource {
> @GET
> @Path("/{carid:a[0-9]*}")
> @Produces({ "text", "application/json" })
> public Response findById(@PathParam("carid") final Long id) {
> //TODO: retrieve the car
> return null;
> }
> }
> {code}
> Same behaviours is spotted with abstract classes. In JAX-RS Web Services is shown only abstract class and specific implementation is ignored.
--
This message was sent by Atlassian JIRA
(v6.3.11#6341)
More information about the jbosstools-issues
mailing list