JAVA API to administer Mailman

Hello, I am happily using Mailman. So first of all a big thanks to all of you developers!!
I am currently developing a community platform for a peergroup. There I would like to integrate mailman for list management. So my question is, whether there already is a liabrary written in Java that connects to Mailman? This way I would save development effort.
The Version I am using is 2.1.4.
Thanks and regards, Alex

Alexander Hachmann writes:
For Mailman 2, there probably is no specific library in any language, because Mailman 2 is a Web 1.0 application that just presents HTML to clients (presumably browsers). So any language that can deal with HTTP, parse HTML, and "scrape the screens" could be used. But it could be annoying if it needs to deal with multiple Mailman versions or multiple languages, as there is no provision for introspection, so you would need to prepare for each version or language separately.
For Mailman 3, there is the REST API which can be used, and there are several Python applications that provide alternative APIs and UIs in development. It's possible that those can be run on the JVM using the Jython implementation of Python, but I don't know if Jython can be embedded in a Java application. (It is possible for Jython to call other Java libraries, though, so if you're lucky you might be able to translate your main program to Python and do most development in Java.)
The Version I am using is 2.1.4.
Really? That is very old (close to a decade), has security and other flaws, and does not address recent problems with Internet mail (specifically "DMARC") at all. You would be well-advised to upgrade to 2.1.18-1, if you are not going to make the jump to Mailman 3 (which is still in beta).
Steve

On Sep 07, 2014, at 09:02 AM, Stephen J. Turnbull wrote:
Of course, the whole point to exposing a REST API is that bindings can be easily written in any language, since it's just HTTP and JSON.
One caveat though is that the core's REST API is an unauthenticated "administrative" API that should only ever be exposed on localhost. The idea is that Postorius or other equivalent would proxy the admin API through an authentication layer.
Cheers, -Barry

Alexander Hachmann writes:
For Mailman 2, there probably is no specific library in any language, because Mailman 2 is a Web 1.0 application that just presents HTML to clients (presumably browsers). So any language that can deal with HTTP, parse HTML, and "scrape the screens" could be used. But it could be annoying if it needs to deal with multiple Mailman versions or multiple languages, as there is no provision for introspection, so you would need to prepare for each version or language separately.
For Mailman 3, there is the REST API which can be used, and there are several Python applications that provide alternative APIs and UIs in development. It's possible that those can be run on the JVM using the Jython implementation of Python, but I don't know if Jython can be embedded in a Java application. (It is possible for Jython to call other Java libraries, though, so if you're lucky you might be able to translate your main program to Python and do most development in Java.)
The Version I am using is 2.1.4.
Really? That is very old (close to a decade), has security and other flaws, and does not address recent problems with Internet mail (specifically "DMARC") at all. You would be well-advised to upgrade to 2.1.18-1, if you are not going to make the jump to Mailman 3 (which is still in beta).
Steve

On Sep 07, 2014, at 09:02 AM, Stephen J. Turnbull wrote:
Of course, the whole point to exposing a REST API is that bindings can be easily written in any language, since it's just HTTP and JSON.
One caveat though is that the core's REST API is an unauthenticated "administrative" API that should only ever be exposed on localhost. The idea is that Postorius or other equivalent would proxy the admin API through an authentication layer.
Cheers, -Barry
participants (3)
-
Alexander Hachmann
-
Barry Warsaw
-
Stephen J. Turnbull