Just realized my messages wouldn't show up correctly in some email clients, so 
I'm sending it again as attachments.

For the "How do I upgrade James", I used as a reference mostly the 
./UPGRADE.txt file and the pre existent entry on the FAQ.

For "How to configure a mailing list", I used as a reference mostly 
http://james.apache.org/server/2.3.1/mailing_lists.html, but also the FAQ 
entry, the mailet explanations on the documentation and a brief research on the 
mailing list.


By the way, while researching, I found an error at 
http://james.apache.org/server/2.3.1/provided_mailets.html#AvalonListservManager
 . What sould be <host> is lt;host> . In case it doesn't show up, I meant that 
lt;host] (but using XML tags instead of brackets) is showing up istead of 
[host].


So, what do you guys think of the documents?

Thanks, Alessandro

--DELGADO, Alessandro adelgado1313 [at] gmail [dot] comRio de Janeiro, RJ - 
BRASIL

_________________________________________________________________
Invite your mail contacts to join your friends list with Windows Live Spaces. 
It's easy!
http://spaces.live.com/spacesapi.aspx?wx_action=create&wx_url=/friends.aspx&mkt=en-us
How do I upgrade James?

        0. Stop the James server and rename the previous James directory to 
another name.

        1. Run phoenix to let the new james.sar to be deployed.

        2. Copy and modify config.xml:

        2.1 Remove fetchpop block, since fetchpop was removed in 2.3.

        2.2 Move <mailetpackages> and <matcherpackages> outside the 
<spoolmanager> block.

        2.3 Add the <mailet match="All" class="PostmasterAlias"/> as the first 
mailet of the "root" processor. This was hardcoded in 2.2.0 and previous, but 
it is now configurable.

        2.4 Move the spoolrepository out of the mailstore. It is also necessary 
to change the syntax. For example,
      <spoolRepository>
         <repository destinationURL="db://maildb/spool/spool" type="SPOOL"/>
      </spoolRepository>

      Must be changed to
      <spoolrepository destinationURL="db://maildb/spool/spool" type="SPOOL"/>

        2.5 Move the objectstore config into the mailstore config.

        2.6 To be able to use SSL you need to add this SSL config to the 
server-sockets block:
         <factory name="ssl" 
class="org.apache.avalon.cornerstone.blocks.sockets.TLSServerSocketFactory">
            <ssl-factory>
               <keystore>
                  <file>conf/keystore</file>
                  <password>secret</password>
                  <key-password>keysecret</key-password>
                  <type>JKS</type>
                  <protocol>TLS</protocol>
                  <algorithm>SunX509</algorithm>
                  <authenticate-client>false</authenticate-client>
               </keystore>
            </ssl-factory>
         </factory>

        3. Modify custom mailets if necessary. The following things were 
changed, so maybe it is necessary for you to change some stuff in your mailets:

        3.1 Avalon Updates:
                . avalon Component has been replaced by avalon Service
                . avalon Composable has been replaced by avalon Serviceable
                . avalon ComponentManager has been replaced by avalon 
ServiceManager

        3.2 Cornerstone updates:
                . MailStore interface has been removed: mailets looking up the 
MailStore should now lookup a Store 
(org.apache.avalon.cornerstone.services.store.Store)

        4. Replace the newly created apps/james/var directory by the old 
apps/james/var directory, so that user accounts, inboxes, spools and other 
things will be moved into James' new install.

        5. You should now be able to start JAMES without problems.
How to configure a mailing list?
 
The process of creating the mailing list is simple and consists in writing two 
mailets and a repository to your config.xml.
 
Note that in all the code shown here, you should replace LISTNAME by the name 
you want for the list, and DOMAIN by your domain name.
 
The first mailet you need to set is an instance of the [Avalon Listserv 
Manager|1] mailet; it will handle subscribing and unsubscribing. The 
[CommandForListserv|2] matcher is used to invoke match messages containing 
commands for the mailing list:

  <mailet match="[EMAIL PROTECTED]"
          class="AvalonListservManager">
    <repositoryName>LISTNAME</repositoryName>
  </mailet>
 
The commands to the mailing list would be given in the form of [EMAIL 
PROTECTED], to subscribe and [EMAIL PROTECTED], to unsubscribe the mailing list.
 

The second mailet is an instance of the [Avalon Listserv|3] mailet. It receives 
messages for the list and distributes them. The [RecipientIs|4] matcher is used 
to match messages intended for the mailing list.
 
  <mailet match="[EMAIL PROTECTED]" class="AvalonListserv">
        <repositoryName>LISTNAME</repositoryName>
  </mailet>
 
Asides from repositoryName, there are other possible configurations. All should 
be used as value, inside . You can find a list at 
http://james.apache.org/server/2.3.1/provided_mailets.html#AvalonListserv.
 
 
The mailing list mailets need a repository to store the subscriber list. There 
is a separate repository for each mailing list, and they are completely 
independent of the user repository used by James to manage e-mail accounts. 
This is configured in the  block of config.xml.
 
The following illustrates a file based repository, using the 
UsersFileRepository class.
  <repository name="LISTNAME"
                 class="org.apache.james.userrepository.UsersFileRepository">
    <destination URL="file://var/lists/LISTNAME/" /> 
  </repository>

 
The following illustrates a database based repository using JDBC with the 
ListUsersJdbcRepository class. Notice that there will be a single table, lists, 
created in the db://maildb resource defined elsewhere. There are currently two 
columns: the list name and the list subscriber.
 
    <repository name="LISTNAME"
                 class="org.apache.james.userrepository.ListUsersJdbcRepository"
                 destinationURL="db://maildb/lists/LISTNAME">
    <sqlFile>file://conf/sqlResources.xml</sqlFile>
  </repository>

Note that the destination URL is a child element when configuring a file based 
repository, but an attribute when configuring a database based repository. This 
inconsistency will be addressed in a future version of James.
 

P.S. I used [this|notation] for what should be links in a final version.

[1] 
http://james.apache.org/server/2.3.1/provided_mailets.html#AvalonListservManager
[2] 
http://james.apache.org/server/2.3.1/provided_matchers.html#CommandForListserv
[3] http://james.apache.org/server/2.3.1/provided_mailets.html#AvalonListserv
[4] http://james.apache.org/server/2.3.1/provided_matchers.html#RecipientIs
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to