Hi Erandi,

as you might have seen Hyracks (the runtime system underlying VXQuery) has it’s own servlet-like framework [1] that is based on the Netty NIO framework
[2].
One of the reasons why this framework was adopted is that the licenses for the servlet API and corresponding frameworks like Jersey (CDDL and GPL with classpath exception) are not ideal for downstream reuse of the project. The
Apache Software foundation categorizes the CDDL as "category B" [3]
(acceptable with appropriate labeling) and the GPL with classpath exception
as "category X" [4] (not acceptable).
As hyracks-http framework is available and as it makes downstream
consumption easy, I think that your implementation of the HTTP API for
VXQuery should be based on it.

Cheers,
Till

[1] https://github.com/apache/asterixdb/tree/master/hyracks-fullstack/hyracks/hyracks-http
[2] https://netty.io/
[3] https://www.apache.org/legal/resolved.html#category-b
[4] https://www.apache.org/legal/resolved.html#category-x

On 25 May 2017, at 1:06, Erandi Ganepola wrote:

Hi Ian and Preston,

I would be really grateful if you can look into my previous email in which I suggested few possible alternatives for the REST API implementation and
kindly give your opinions on that.

Thanks and Regards,

*Erandi Ganepola*
Undergraduate
BSc. Management and Information Technology (IT Sp.)
University of Kelaniya, Sri Lanka

<https://www.linkedin.com/in/erandiganepola/>
<https://github.com/erandiganepola> <https://twitter.com/erandiganepola>

On Sat, May 13, 2017 at 10:22 PM, Erandi Ganepola <[email protected]>
wrote:

Hi Ian and Preston,

As we discussed, I went through the AsterixDB's REST API implementation. They have written the REST API from scratch using servlet basics [1]. What I feel is that it won't be efficient to put such effort to write servlets from scratch since we have more easy to use, yet stable implementations like jersey [2]. Therefore, my opinion is that using jersey[2] will make the VXQuery REST API implementation much easier and easily understandable.

However, I'm fine to continue on the REST server implementation with any of those two methods (pure servlet based or Jersey & JAX-RS based). Please let me know your opinion on these two methods and which method you think
will be better.

[1] https://github.com/apache/asterixdb/tree/master/asterixd
b/asterix-app/src/main/java/org/apache/asterix/api/http/server
<https://www.google.com/url?q=https%3A%2F%2Fgithub.com%2Fapache%2Fasterixdb%2Ftree%2Fmaster%2Fasterixdb%2Fasterix-app%2Fsrc%2Fmain%2Fjava%2Forg%2Fapache%2Fasterix%2Fapi%2Fhttp%2Fserver&sa=D&sntz=1&usg=AFQjCNGUlYltQj2h-sheau2X44kyNc0O7g>
[2] https://jersey.java.net
<https://www.google.com/url?q=https%3A%2F%2Fjersey.java.net&sa=D&sntz=1&usg=AFQjCNGnWT2V5YQbw8EuNfRlHPkxgNQ3uQ>

Thanks and Regards,

*Erandi Ganepola*
Undergraduate
BSc. Management and Information Technology (IT Sp.)
University of Kelaniya, Sri Lanka

<https://www.linkedin.com/in/erandiganepola/>
<https://github.com/erandiganepola> <https://twitter.com/erandiganepola>

Reply via email to