Align to JAX-RS deployment model.
----------------------------------
Key: WEB-282
URL: https://jira.nuxeo.org/browse/WEB-282
Project: Nuxeo Web Engine
Issue Type: Improvement
Reporter: Bogdan Stefanescu
Assignee: Bogdan Stefanescu
Priority: Major
Use the JAX-RS Application logic to deploy jAX-RS applications.
This way any pure JAX-RS application can be deployed in Nuxeo.
Also, it deprecates the resteasy adapter since using the jax-rs deployment
model you can deploy webengine modules and JAX-RS apps on any jax-rs backend
without the need of an adapter.
Specific resteasy adapter feaures like guard and tx annotations on methods
will be lost (anyway for now these features are not used by WE modules)
Per resource tx annotation will be possible to be implemented later in a
portable way using @TransactionAttribute on resource class.
Also, the hot reloading mechanism will be deprecated (no more usable) since it
requires full control over the JAX-RS engine which is not portable between
backends. A new hot reload mechanism will be provided (with less granularity on
the scope of the reload than the former one) more portable.
The hot reload will be available only for jersey (at least in a first step)
The task will be done in several steps:
1. cleanup/prepare existing code to the JAX-RS deployment model.
2. Implement JAX-RS deployment
3. Modify webengine-base to use the JAX-RS application deployment model.
3. Deprecate resteasy adapter and switch to jersey which will become the
default backend (since it is closer to the specs than resteasy, solves some
important bugs existing on resteasy and also provides nice features like the
possibility to plug-in IOC engines like guice)
4. Update existing JAX-RS code that use the old and dirty way of declaring root
resources or body message reader/writers (though static blocks) to switch to
new deployment model.
5. As the hot reloading mechanism will be deprecated a new one will be added
that works with jersey.
6. switch to jersey
5. Update eclipse plugins to use the new reload mechanism. (notification will
change)
Note that regular WebEngine modules are not affected since they are completely
managed by webengine ...
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://jira.nuxeo.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
_______________________________________________
ECM-tickets mailing list
[email protected]
http://lists.nuxeo.com/mailman/listinfo/ecm-tickets