Hi Dumah, 1) Yes sure, you would be very welcome. Don't hesitate. No, the Web API do not demands much knowledge of James code. I believe it is some easy way of getting started with contributions to James.
In fact, depending on the actions you want to implement, you can just use some well defined James APIs. The way it works : - The webAdmin server is built with Inversion of Control, with Guice. - You define your Routes in WebAdminServerModule - Then you implement a Route. A route defines your REST endpoints, and call a service for performing the job. - You write a service which interact with James internal APIs. I can point you to the right James API depending on what you want to implement. I already implemented (for the sake of Gatling testing) the following commands : - User management (adding a user, changing his password, deleting him, listing users) - Domain management (testing if a domain is handled by James, adding a domain, removing a domain, listing the domains) - Mailboxes (Creating a mailbox, deleting a mailbox, removing all mailboxes from a user) Here are the class you can have a look to to get started : - WebAdminServerModule - DomainRoutes, UserRoutes, UserMailboxesRoutes - UserService, UserMailboxesService 2) The only common point is that it uses the same internal API's, under the hood. (WebAdmin do not need some proxying logic ;-) ) 3) Already answered ;-) 4) I'm working on Linux. I know some peoples on Dev have corrected some issues for starting James on windows. Some issues exists with maildir on windows (so please don't use it). For running James, we use some docker containers. With such an isolation layer, starting James on windows should be possible. So, it's not something I am used to, but some people did it. And if you have any trouble we are at your disposal ;-) Bonus) - Here is the project on github : https://github.com/apache/james-project . You can get the sources by cloning it. - We use maven. It should be supported by your IDE (our team is both working with IntelliJ and Eclipse) - If you want to launch james, use the docker container as stated in the README. You need to use the Guice one to see the web admin. - Here is the path to the webadmin project : server/protocols/webadmin - You can register on server-...@james.apache.org Enjoy coding on James ^^ Best regards, Benoit Le 25/11/2016 à 03:51, Dumah 7 a écrit : > OK. > I could try to help on that, although I am afraid that with my little time it > will take me many days just to setup the development environment (working > with Java is not something I do often), but we will see. > > Some questions: > > 1) Do you want me to help on the REST API or the admin UI that will be > utilizing it? I guess the REST API will require knowledge of James' code, > which I don't have any. Although the code might be more understandable than I > imagine. > > 2) I guess the REST API has something to do with this JMX url: > service:jmx:rmi:///jndi/rmi://localhost:9999/jmxrmi ? I found it here : > https://james.apache.org/server/3/manage-users.html and I have just tried it > out with jmanange. I had no idea what JMX was so far (didn't know it even > existed), but seems interesting! Does this expose a REST API somehow? > > 3) Is any portion of the Admin UI implemented or you have not started that > yet? Generally, I have not used Jetty (which, I guess, will be serving the > admin web pages - if we are to make something similar to Solr's admin UI > which apparently uses Jetty as an HTTP server) before, but if I figure that > part out there will be no problems. The client-part of the admin webpage will > be the easiest for me. Especially if you have not started working on it. We > could use AngularJS which makes things clean and easy on the browser side. > > 4) I generally work on Windows (I only have Linux Mint on VMs), so I hope > Windows does the job for James development and I am not trying unexplored > paths here... > > Best Regards. > > > > > -----Original Message----- > From: Matthieu Baechler [mailto:mbaech...@linagora.com] > Sent: Tuesday, November 22, 2016 11:22 PM > To: server-user@james.apache.org > Subject: Re: James 3.0 release date > > Hi, > > > Le 22/11/2016 à 19:07, Dumah 7 a écrit : >> I don't know what kind of tasks you are talking about getting help with, and >> I don't have much (or any) free time, but MAYBE I could help if there is >> something I could handle. >> >> I am a developer (coding anything except Apple-related stuff), but I am not >> such a huge fan of Java, although it is very portable and cross platform, >> which is a good thing. >> >> I have yesterday gotten the `apache-james-3.0-beta4-app`, set it up on a >> dynamic IP domain, and let it run. Soon I will make it use TLS as well. I >> still need to make it use a DB instead of the filesystem, so hopefully I >> will manage to make it use SQL Server soon (hopefully it works - I have no >> idea if you have tested James with SQL Server, but anyway). > Please use beta5 instead, there's something like 2 years of development > between these to versions. >> So, since I am torturing myself with all these configurations, and reading >> the documentation on your site seems like riddle-solving, maybe I could do >> something related to that... I am not promising anything, since my schedule >> is crazy and my mind already about to explode, but maybe I can do >> something... >> Definitely, I could make a long list of questions for someone to answer >> which you can post as FAQ in your site... > We are definitely working on the website but a fresh view is always welcome. > Could you write that list of question ? We'll make sure there's clear answer > to them. >> Irrelevant: I know that this is too early to have, but I think that having a >> management UI tool that updates the configs based on the user interaction >> and also manages the mail server would help a lot the users. Although, >> having used other Apache software in the past (Solr), it seems to me that >> helping newbie users out is not a high priority in your list. >> > Every Apache project is different, because people are different. We > definitely want a webadmin UI for james. > We started an admin module that talks REST for that exact purpose. > It's not a goal in 3.0 but if you want to work on such a feature, you > are very welcome ! > > Regards, > --------------------------------------------------------------------- To unsubscribe, e-mail: server-user-unsubscr...@james.apache.org For additional commands, e-mail: server-user-h...@james.apache.org