]
Arun Gupta commented on JBIDE-17151:
------------------------------------
If a JAX-RS resource is created for the first time then JAX-RS Application (with
ApplicationPath) should be created by default, that is the recommended pattern as of
JAX-RS 1.1.
Is web.xml used to only override the URL or specify implementation-specific Servlet ? -1
if the app becomes non-portable.
There could be an explicit wizard to create a JAX-RS application. This would be useful for
cases when a project that has JAX-RS resources is imported but does not contain the
Application class.
Choice 1 seems more reasonable as that is a common use case. If developers don't want
Application class then they can explicitly remove it.
Improve the "New Restful Web Service" wizard
--------------------------------------------
Key: JBIDE-17151
URL:
https://issues.jboss.org/browse/JBIDE-17151
Project: Tools (JBoss Tools)
Issue Type: Enhancement
Components: webservices
Affects Versions: 4.2.0.Beta1
Reporter: Xavier Coulon
Assignee: Xavier Coulon
Fix For: 4.2.0.Beta2
Attachments: current wizard.png, Mockup for new JAX-RS Wizard.bmml, Mockup for
new JAX-RS Wizard.bmml, Mockup for new JAX-RS Wizard.bmml, Mockup for new JAX-RS
Wizard.png
The current wizard could be improved after feedback on JBIDE-13309, JBIDE-13310 and
internal discussion:
{quote}
- Choosing the first wizard shows an option to edit "Web Service" and
"Application Class Name" and have the same values. Why this value need to be
entered twice and how is it used ?
- web.xml is generated even though "Update web.xml" was not selected. Why
can't ApplicationPath be used instead of web.xml anyway ?
- Even in the generated web.xml, the mapped path is {{/*}}. This is not the recommended
practice as none of the Servlets or other resources in the application would then be
resolved correctly. The recommendation is to use something like {{/webresources}},
{{/resources}}, or {{/rest}} and have all the resources be accessed from there.
- The generation of REST resource did not added JAX-RS facet to my project. Does it have
to be manually added ? If yes, then why ?
- Adding JAX-RS facet shows "Further configuration required" and require me to
specify "JAX-RS Servlet class name". How is the user expected to know the class
name ? This should not even be required for a Java EE 6 application.
- In pure Java EE 6, there should be no need to ask that information anyway. Instead use
{{@ApplicationPath}} to specify the base path of JAX-RS.
{quote}