[JBoss JIRA] (JBIDE-19051) Show warning in case of ambiguous RESTful web services path
by Xavier Coulon (JIRA)
[ https://issues.jboss.org/browse/JBIDE-19051?page=com.atlassian.jira.plugi... ]
Xavier Coulon updated JBIDE-19051:
----------------------------------
Fix Version/s: 4.4.x
(was: 4.3.x)
> Show warning in case of ambiguous RESTful web services path
> -----------------------------------------------------------
>
> Key: JBIDE-19051
> URL: https://issues.jboss.org/browse/JBIDE-19051
> Project: Tools (JBoss Tools)
> Issue Type: Feature Request
> Components: webservices
> Affects Versions: 4.2.2.Final
> Reporter: Marián Labuda
> Assignee: Xavier Coulon
> Priority: Minor
> Labels: jax-rs
> Fix For: 4.4.x
>
>
> If I have two classes which both follow same structure and there are some JAX-RS web services mapping to same path in JAX-RS Web Services node in Project Explorer, there should be warning on both such places where it occurs and in Problems view. Warning should be about ambigous path for JAX-RS web services.
> It's possible to have multiple items under JAX-RS Web Services node with same label.
> Even though there are strategies to resolve order of evaluating path, there could be some cases where it's not enough. And such solution could help developer to find out if there are such flaws in design.
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
10 years, 7 months
[JBoss JIRA] (JBIDE-13581) Generate DTO with @Xml annotations from given POJO for the XML/JSON Mediatypes
by Xavier Coulon (JIRA)
[ https://issues.jboss.org/browse/JBIDE-13581?page=com.atlassian.jira.plugi... ]
Xavier Coulon updated JBIDE-13581:
----------------------------------
Fix Version/s: 4.4.x
(was: 4.3.x)
> Generate DTO with @Xml annotations from given POJO for the XML/JSON Mediatypes
> ------------------------------------------------------------------------------
>
> Key: JBIDE-13581
> URL: https://issues.jboss.org/browse/JBIDE-13581
> Project: Tools (JBoss Tools)
> Issue Type: Feature Request
> Components: webservices
> Affects Versions: 4.0.0.Final
> Reporter: Xavier Coulon
> Assignee: Xavier Coulon
> Labels: jax-rs
> Fix For: 4.4.x
>
>
> use-case is:
> - if a user does not want to expose directly its entities, he needs to provide some DTOs with @javax.xml.bind.annotation.XmlRootElement annotation (so that the JAX-RS runtime can unmarshall/marshall the request and response bodies).
> These DTOs coding could be automated by a wizard which would let the user select the POJO fields and choose his prefered annotation style (field vs method) and output package
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
10 years, 7 months
[JBoss JIRA] (JBIDE-10239) Support JAX-RS Path/PathParam refactoring
by Xavier Coulon (JIRA)
[ https://issues.jboss.org/browse/JBIDE-10239?page=com.atlassian.jira.plugi... ]
Xavier Coulon updated JBIDE-10239:
----------------------------------
Fix Version/s: 4.4.x
(was: 4.3.x)
> Support JAX-RS Path/PathParam refactoring
> -----------------------------------------
>
> Key: JBIDE-10239
> URL: https://issues.jboss.org/browse/JBIDE-10239
> Project: Tools (JBoss Tools)
> Issue Type: Enhancement
> Components: webservices
> Affects Versions: 3.3.0.M4
> Reporter: Xavier Coulon
> Assignee: Xavier Coulon
> Priority: Minor
> Labels: jax-rs
> Fix For: 4.4.x
>
>
> When refactoring code like the one below:
> {code}
> @GET
> @Path("{id}")
> public Response getCustomer(@PathParam("id") Integer id, @Context UriInfo uriInfo) {
> ResponseBuilder responseBuilder = Response.ok().entity(null);
> return responseBuilder.build();
> }
> {code}
> If changing the 'id' name of the first parameter, the user may also want to rename the @PathParam and @Path values to keep the consistency.
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
10 years, 7 months
[JBoss JIRA] (JBIDE-13578) Provide quickfixes to existing JAX-RS Application
by Xavier Coulon (JIRA)
[ https://issues.jboss.org/browse/JBIDE-13578?page=com.atlassian.jira.plugi... ]
Xavier Coulon updated JBIDE-13578:
----------------------------------
Fix Version/s: 4.4.x
(was: 4.3.x)
> Provide quickfixes to existing JAX-RS Application
> -------------------------------------------------
>
> Key: JBIDE-13578
> URL: https://issues.jboss.org/browse/JBIDE-13578
> Project: Tools (JBoss Tools)
> Issue Type: Feature Request
> Components: webservices
> Affects Versions: 4.0.0.Final
> Reporter: Xavier Coulon
> Assignee: Xavier Coulon
> Labels: jax-rs
> Fix For: 4.4.x
>
>
> A quickfix to annotate the JAX-RS Application with javax.ws.rs.ApplicationPath should be provided if an error is detected.
> ----
> From JAX-RS 1.1 spec, chap 2.3.2:
> When using the pluggability mechanism the following conditions MUST be met:
> • If no Application subclass is present the added servlet MUST be named: javax.ws.rs.core.Application
> and all root resource classes and providers packaged in the web application MUST be included in the published JAX-RS application. The application MUST be packaged with a web.xml that specifies a servlet mapping for the added servlet.
> • If an Application subclass is present and there is already a servlet defined that has a servlet initial- ization parameter named:
> javax.ws.rs.Application
> whose value is the fully qualified name of the Application subclass then no new servlet should be added by the JAX-RS implementation’s ContainerInitializer since the application is already being handled by an existing servlet.
> • If an Application subclass is present that is not being handled by an existing servlet then the servlet added by the ContainerInitializer MUST be named with the fully qualified name of the Application subclass. If the Application subclass is annotated with @ApplicationPath and no servlet-mapping exists for the added servlet then a new servlet mapping is added with the value of the @ApplicationPath annotation with ”/*” appended otherwise the existing mapping is used. If the Application subclass is not annotated with @ApplicationPath then the application MUST be packaged with a web.xml that specifies a servlet mapping for the added servlet. It is an error for more than one application to be deployed at the same effective servlet mapping
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
10 years, 7 months
[JBoss JIRA] (JBIDE-17731) Improve the JAX-RS ParamConverterProvider validation
by Xavier Coulon (JIRA)
[ https://issues.jboss.org/browse/JBIDE-17731?page=com.atlassian.jira.plugi... ]
Xavier Coulon updated JBIDE-17731:
----------------------------------
Fix Version/s: 4.4.x
(was: 4.3.x)
> Improve the JAX-RS ParamConverterProvider validation
> ----------------------------------------------------
>
> Key: JBIDE-17731
> URL: https://issues.jboss.org/browse/JBIDE-17731
> Project: Tools (JBoss Tools)
> Issue Type: Enhancement
> Components: webservices
> Affects Versions: 4.2.0.Beta2
> Reporter: Xavier Coulon
> Assignee: Xavier Coulon
> Labels: jax-rs
> Fix For: 4.4.x
>
>
> The tooling could analyze a bit more the code for the ParamConverterProvider and find all nested/related ParamConverter types and retrieve the Parameter Type to see what "param bean" is supported by the ParamConverter.
> Eg:
> {code}
> @Provider
> public class Converter implements ParamConverterProvider {
> private ParamConverter<Car> carConverter = new ParamConverter<Car>() {
> @Override
> public Car fromString(String arg0) {
> Car car = new Car();
> car.setBrand(arg0);
> return car;
> }
> @Override
> public String toString(Car arg0) {
> return arg0.getBrand();
> }
> };
> @Override
> public <T> ParamConverter<T> getConverter(Class<T> arg0, Type arg1,
> Annotation[] arg2) {
> if(arg0.equals(Car.class)) {
> return (ParamConverter<T>) carConverter;
> }
> return null;
> }
> }
> {code}
> The tooling should retrieve the anonymous {{ParamConverter<Car>}}
> It should also work when the param converter is in its own class.
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
10 years, 7 months
[JBoss JIRA] (JBIDE-19014) JAX-RS Web Services in Project Explorer does not show properly inherited metadata (abstract class)
by Xavier Coulon (JIRA)
[ https://issues.jboss.org/browse/JBIDE-19014?page=com.atlassian.jira.plugi... ]
Xavier Coulon updated JBIDE-19014:
----------------------------------
Fix Version/s: 4.4.x
(was: 4.3.x)
> JAX-RS Web Services in Project Explorer does not show properly inherited metadata (abstract class)
> --------------------------------------------------------------------------------------------------
>
> Key: JBIDE-19014
> URL: https://issues.jboss.org/browse/JBIDE-19014
> 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.4.x
>
>
> I am having abstract class and it's descendant with following code.
> {code:title=AbstractResource.java}
> @Path("/resource")
> public abstract class AbstractResource {
> @GET
> public abstract void getSomeObject();
> }
> {code}
> {code:title=SpecificResource.java}
> public class SpecificResource extends AbstractResource {
> @GET
> @Path("specific-object")
> @Override
> public void getSomeObject() {
> // some code
> }
> }
> {code}
> Implementation of getSomeObject along with its path is used for evaluation of HTTP GET request, but in JAX-RS Web Services Explorer is shown only matching URL from abstract class _/resource_ instead of _/resource/specific-object_.
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
10 years, 7 months