Hi Sergey,
Thank you very much for looking into this, I really appreciate it!
A snag is that JCS relies on ES6-compatible JSON serialization which is standard
in the JavaScript world (Browsers and Node.js), but not (yet) in Java.
Introducing yet another JSON parser/serializer [1] in the CXF package is
probably
not what people want so maybe I should start by creating JCS support for
"Jackson"?
For YASMIN integration I'm thinking of something like the following:
https://cyberphone.github.io/doc/web/yasmin.html#apimapping
How you could add signature support through annotations is not entirely clear.
Cheers,
Anders
PS I will use the issue you created
https://issues.apache.org/jira/browse/CXF-6532
for future discussions on basic JCS integration.
1]
https://cyberphone.github.io/doc/openkeystore/javaapi/org/webpki/json/package-summary.html
On 2017-02-01 14:07, Sergey Beryozkin wrote:
Hi Anders
Thanks for sharing the link to a new scheme :-)
FYI, as far as CXF is concerned, CXF users do all sort of services,
SOAP, pure REST, or simply HTTP with whatever communication scheme they
prefer :-).
As far as YASMIN is concerned from the prospect of having something like
that done in CXF, I'd like to consider it possibly done in 2 steps:
1. Support JCS - we'd let CXF users JCS-sign arbitrary JSON payloads,
they won't need to be YASMIN-bound. JCS allows for that, so we could
have a JAX-RS JCS filter or MessageBodyWriter which signs JSON.
2. Offer some YASMIN-specific model support etc with the implicit
conversion of the custom data to YASMIN payloads.
What do you think ? We can discuss 1. at
https://issues.apache.org/jira/browse/CXF-6532
FYI a CXF JCS empty module (not included in the Maven build) is already
available in the source
Thanks, Sergey
On 28/01/17 05:50, Anders Rundgren wrote:
This is a considerably updated version of the scheme I sent earlier.
Enjoy!
-------------------------------------------------------------
WebSocket [1] is claimed to be the most efficient communication method
for interactive Web applications.
REST [2] is essentially incompatible with WebSocket although some people
try to merge them. That's IMO fairly pointless, since they are building
on different concepts.
YASMIN [3], OTOH was designed from scratch to support both event-based
communication like WebSocket and postMessage(), as well as traditional
request/response schemes.
Anders
1] https://tools.ietf.org/rfc/rfc6455.txt
2] https://en.wikipedia.org/wiki/Representational_state_transfer
https://cyberphone.github.io/doc/web/REST-in-peace.html
3] https://cyberphone.github.io/doc/web/yasmin.html