Ticket #863 (closed Task: worksforme)
dm4-webservice: if module not present plugin developers loose provider classes
Reported by: | Malte | Owned by: | jri |
---|---|---|---|
Priority: | Major | Milestone: | Release 4.8 |
Component: | DeepaMehta Standard Distribution | Version: | 4.7 |
Keywords: | Cc: | ||
Complexity: | 3 | Area: | Application Framework / API |
Module: | deepamehta-webservice |
Description
Aim:
Deactivate all DM 4 Core REST endpoints provided through dm4-webservice to have full control over all RESTful I/O to my deepamehta4 application.
Problem:
Provider classes for de/serialization of POJOs to JSON Objects are missing, in example one cannot return a RelatedTopic? or Lists thereof in one custom endpoint.
Question:
Can 3rd-party developers simply create and register their own MessageBodyWriters? or is there another, better way?
Change History
comment:2 in reply to: ↑ description Changed 9 years ago by jri
Replying to Malte:
Aim:
Deactivate all DM 4 Core REST endpoints provided through dm4-webservice to have full control over all RESTful I/O to my deepamehta4 application.
Why would you want to deactivate the dm4-webservice module?
When it's about restricting access you should rather rely on DM's access control mechanisms.
Question:
Can 3rd-party developers simply create and register their own MessageBodyWriters? or is there another, better way?
Yes, plugin developers can provide their own JAX-RS provider classes just by putting them in the plugin's provider package (like dm4-webservice does). They are picked up by DM automatically.
comment:3 Changed 9 years ago by Malte
OK, thanks for the info!
When it's about restricting access you should rather rely on DM's access control mechanisms.
Yes, i am currently getting my hands on that too.
Since yesterday i have a slightly better idea on how i could divide the data of a quite complex application across several workspaces, one workspace for each "access scenario".
For the reason of completeness/clearness of thsi ticket-description. When i deactivate the dm4-webservice module via the gogo shell and reload my application the exception is: