You are viewing a plain text version of this content. The canonical link for it is here.
Posted to site-dev@james.apache.org by Apache Wiki <wi...@apache.org> on 2010/06/10 22:05:10 UTC

[James Wiki] Update of "Compile and run James 3" by PatrickStricker

Dear Wiki user,

You have subscribed to a wiki page or wiki category on "James Wiki" for change notification.

The "Compile and run James 3" page has been changed by PatrickStricker.
The comment on this change is: added usage of jcr to store messages information.
http://wiki.apache.org/james/Compile%20and%20run%20James%203?action=diff&rev1=2&rev2=3

--------------------------------------------------

  ## page was renamed from Compil and run James 3
- Note : James V3 is still under developpement, so this notice is valuable for the last update of this document. 
+ Note : James V3 is still under developpement, so this notice is valuable for the last update of this document.
  
   * Check out a james fresh copy : svn co http://svn.apache.org/repos/asf/james/server/trunk james
   * go to the james directory and : mvn clean package
@@ -11, +11 @@

   * execute run.sh with root privilege (because pop3 try to open 10x port)
   * The first run will stop with an error (with this : java.io.FileNotFoundException: ../conf/sqlResources.xml (No such file or directory))
   * execute twice run.sh ... an it's work (end with this : IMAP Service connection backlog is: 5)
-  * now you can follow step 10, 11,... of the [[JamesQuickstart]] page
+  * now you can follow step 10, 11,... of the JamesQuickstart page
   * type ctrl + C for end
  
+ == Usage of embedded JCR to store (Imap-)Messages ==
+  * edit $SERV/conf/spring-beans.xml
+   * comment '''JPA implementation of IMAP Storage''' containing beans "sessionMapperFactory", "subscriper" and "mailboxmanager" out
+   * uncomment '''JCR implementation of IMAP Storage''' containing beans "imapCndLoader", "jcrUtils", "sessionJcrRepository", "sessionMapperFactory", "subscriper" and "mailboxmanager" and fix "sessionMapperFactory" to look like:
+ 
+ {{{
+     <bean id="sessionMapperFactory" class="org.apache.james.imap.jcr.JCRMailboxSessionMapperFactory">
+         <constructor-arg index="0" ref="sessionJcrRepository"/>
+         <constructor-arg index="1" ref="sessionMapperFactoryNodeLocker"/>
+     </bean>
+ }}}
+  * and add bean named "sessionMapperFactoryNodeLocker" looking like:
+ 
+ {{{
+     <bean id="sessionMapperFactoryNodeLocker" class="org.apache.james.imap.jcr.JCRVmNodeLocker">
+     </bean>
+ }}}
+ As in current version (10th of juni 2010) the code has changed but the default config does not contain the node locker.
+