Description
Hi guys.
I'm migrating from James 2 to 3.6.0 and I cannot find any way to make it work completely with PostgreSQL.
By following the documentation, I set the DB connection properties in the james-database.properties file but, somehow, in the logs I always get: 15:35:33.924 [INFO ] o.a.j.m.m.MemoryMailRepositoryStore - JamesMailStore init... org.apache.james.mailrepository.memory.MemoryMailRepositoryStore@33827b88
As a result, I don't see any data in the database at all. Unfortunately the documentation doesn't really help much more, so I don't know where else I should have a look at.
Moreover, in James 2 I had the possibility to specify my own datasource implementation. Is it possible with James 3 as well and, if it's so, how?
Finally, I would need to create the users on the fly if they don't exist. Is there something already available? I was trying by using an extension which defines a Guice module providing an interceptor:
public class CreateUserIfMissingModule extends AbstractModule { @Override protected void configure() { final CreateUserIfMissingInterceptor interceptor = new CreateUserIfMissingInterceptor(); requestInjection(interceptor); // Inject the repository bindInterceptor(subclassesOf(UsersRepository.class), returns(subclassesOf(Boolean.class)), interceptor); } }
but, also this one, is not picked up at all.