Solid App development in Java (JVM) or other ecosystems?


#1

I would like to know if there is any attempt or project to develop a Solid pod in the Java or JVM ecosystem (Scala or similar languages).

Looking at some old references like this paper: http://ds.qcri.org/publications/2016-mansour-www.pdf, it seems that there was a project called meccano which was implemented in Java+Jena, but the link: https://meccano.io/ is not working.

Are there other attempts?
If there aren’t, would people be interested in such a project?

I would also like to know if there are other attempts in other ecosystems like Python, at this moment, I think most of the current projects are in NodeJs, and maybe in Go with Gold.


#2

See Solid backend examples/reference implementations


#3

As indicated in the link above, the TrellisLDP project is JVM-based and aims to be fully compliant with SOLID as a data POD. The code is all written in Java, but I should add that the core of it is just a collection of interfaces and JAX-RS resource matchers. The idea is that this is a flexible platform for developing a linked data/SOLID application in whatever backend technology you want. There are full implementations of these interfaces using Jena (i.e. TDB2 or a remote triplestore) as well as a relational database. And work is currently underway to build a Cassandra-based persistence layer. The two features that still need to be implemented for SOLID compliance are WebID-TLS authentication and WebSocket notifications.

At one point, some of the code for this was written in Clojure, but I converted it back to Java just to make the build environment a little more consistent – that said, parts of this could easily be written in any JVM language. If you are interested in collaborating on this, you’d be most welcome.


#4

I think I have for you something interesting. This article contains some successful stories about Scala development I thought that with Scala we can’t create so cool projects, but people recently have done amazing things with this language


#5

I am actually working on this right now - implementing a Solid Server in Java for hosting solid pods.

It’s within the context of my MSc, but once the grading is over, i’m happy to open source it and continue working on it.


#6

We are working on this right now. Cloud-Native Applications in Java


#7

Yes, indeed, Scala is a very cool and productive language with a huge potential. I’m working in Scala projects since some years and I was tempt to implement a Solid server in Scala, but I think we should not reinvent the wheel and instead try to joint forces as a community as much as possible.

That said I think I would consider contributing to the TrellisLDP which has made big progress and has a good open and scalable architecture based on the JVM.

Bests
Antonio.