Jerome,

I wrote a mailet to integrate James and Eyebrowse way back in 1.0 of 
Out-of-the-Box.  Unfortunately, the Eyebrowse perl scripts will not work on 
Windows, so we yanked it from our distribution.  I haven't seen much 
development on Eyebrowse recently so who know if they'll ever get away from 
their perl scripts.  Since we may not be adding Eyebrowse suppport anytime 
soon (we may put it back in as a Linux only project), we've decided to 
release this mailet under an Apache-style license.

See the attached jar for the .class file and source.

A write-up from 1.0 giving installation and configuration instructions is 
attached as well.  I know some of the eyebrowse fixes have been fixed in CVS.  
I haven't revisited these instructions in a while, but you should get the 
idea.

Let me know if you have any questions.

Eric Weidner
Out-of-the-Box Project Lead
http://www/ejbsolutions.com




On Tuesday 22 July 2003 02:34 am, Jerome Lacoste wrote:
> I sent a mail some days ago, but as it was on a different thread, it may
> not have add attention.
>
> Is there a way to integrate james and eyebrowse (or a similar tool). I
> picked eyebrowse as it's used by ASF.
>
> My understanding is that eyebrowse uses mbox, while james does not
> support it.
>
> Cheers,
>
> Jerome

Attachment: custom_mailets.jar
Description: application/jar

Installing the Software
    
Download
  Get the eyebrowse 1.1 binary distribution.

Extract
  Extract the eyebrowse distribution and change to the resulting directory.

Configuration changes
   Set the execute privileges on the perl scripts.

     chmod +x bin/*
      
Fix Errors
  Set the execute privileges on the Perl scripts.

    chmod +x bin/*
        
  Fix the header file so it will propertly reference the main style sheet.  Make the 
style import look as shown.

    vi eyebrowse/WEB-INF/classes/org/tigris/eyebrowse/Header.vm

      <style type="text/css">
        @import url(/eyebrowse/css/tigris.css);
      </style>
        
  Remove the <glossterm>servlet</glossterm> mapping to the root of the context.  This 
is blocking the server from 
  serving the <glossterm>CSS</glossterm> files correctly.

    vi eyebrowse/WEB-INF/web.xml
          
      Find the section shown and delete it.
      <servlet-mapping>
        <servlet-name>
          ViewLists
        </servlet-name>
        <url-pattern>
          /
        </url-pattern>
      </servlet-mapping> 
        

  Create an <filename>index.html</filename> file to forward to the main servlet.

    vi eyebrowse/index.html 

      ------START FILE-------    
      <html>
        <head>
          <script language=javascript>
            top.location="ViewLists";
          </script>
        </head>
        <body>
          Redirecting to content.
        </body>
      </html>
      ------START FILE-------
        

Install
  Edit the properties file (eyebrowse/WEB-INF/classes/eyebrowse.properties) and add 
the 
  eyebrowse dbuser password.

    org.tigris.eyebrowse.dbPassword=eyebrowse
          
  Copy the Eyebrowse webapp distribution to our Tomcat webapp directory.

    cp -R eyebrowse /opt/obox/tomcat/webapps/.
        

Database Install
  Create a user/host for Eyebrowse to connect as.  MySQL on linux sees many local users
  from applications as coming from 127.0.0.1 or even the hostname instead of localhost
  so we need to add [EMAIL PROTECTED] and eyebrowse@<hostname> as well.  Make sure you
  replace <hostname> with your actual hostname.

    mysql -u root -p
    mysql> CREATE DATABASE eyebrowse;
    mysql> GRANT ALL PRIVILEGES ON eyebrowse.* TO 'eyebrowse'@'localhost' IDENTIFIED 
BY 'eyebrowse';
    mysql> GRANT ALL PRIVILEGES ON eyebrowse.* TO 
'eyebrowse'@'127.0.0.1/255.255.255.255' IDENTIFIED BY 'eyebrowse';
    mysql> GRANT ALL PRIVILEGES ON eyebrowse.* TO 'eyebrowse'@'<hostname>' IDENTIFIED 
BY 'eyebrowse';
    mysql> exit
    
  Create the database tables needed by Eyebrowse.

    mysql -u eyebrowse -p eyebrowse < sql/eyebrowse-create.sql
            
  Check that the tables were created correctly.

    mysql -u eyebrowse -p eyebrowse
    mysql> show tables; 
    mysql> exit

Run
  Restart Tomcat.

    /etc/init.d/tomcat stop
    /etc/init.d/tomcat start

  Now use your browser to go view Eyebrowse.

    http://YourMachineIP/eyebrowse
          
Initial Archive Setup
  Copy the Eyebrowse build to <filename>/opt/obox</filename> so we can set up the non 
webapp functionality and mbox storage.

    cd ..
    cp -R eyebrowse-&eyebrowse-version; /opt/obox/.
    cd /opt/obox
    ln -s eyebrowse-&eyebrowse-version; eyebrowse
            
  Create a dummy mbox to read as a mailing list.

    mkdir /opt/obox/eyebrowse/data
    mkdir /opt/obox/eyebrowse/data/root-list-test
    cp /var/mail/root 
/opt/obox/tomcat/webapps/eyebrowse/WEB-INF/data/root-list-test/root.mbox
    cd /opt/obox/tomcat/webapps/eyebrowse/WEB-INF/classes
            
  Change back to the root eyebrowse directory.

    cd /opt/obox/eyebrowse
              
  Set the class path.
    export 
CLASSPATH=eyebrowse/WEB-INF/lib/activation.jar:eyebrowse/WEB-INF/lib/jakarta-oro.jar:eyebrowse/WEB-INF/lib/lucene-1.2.jar:eyebrowse/WEB-INF/lib/mm.mysql-2.0.11-bin.jar:eyebrowse/WEB-INF/lib/eyebrowse.jar:eyebrowse/WEB-INF/lib/log4j-1.1.3.jar:eyebrowse/WEB-INF/lib/mail.jar:eyebrowse/WEB-INF/lib/velocity-1.3-rc1.jar
 

  Execute the addlist command for eyebrowse using the Perl script.
    bin/eyebrowse --props=eyebrowse/WEB-INF/classes/eyebrowse.properties 
--command=addlist --listname=root-list-test --descr=Test_List-root.mbox 
--listfile=/opt/obox/eyebrowse/data/root-list-test/root.mbox 
--indexdir=/opt/obox/eyebrowse/data/root-list-test/index/

  Execute the update command for eyebrowse using the Perl script to read the mbox.
    bin/eyebrowse --props=eyebrowse/WEB-INF/classes/eyebrowse.properties 
--command=update

  Now hit the site to see your archive.

    http://YourMachineIP/eyebrowse




Eyebrowse Mailet Installation Procedures


  Unless you are using James 2.2.* the mailet MUST be packed into the
  james.sar file or it will not be picked up.

    mv custom_mailets.jar /opt/obox/james/apps/james/lib/.  
    cd /opt/obox/james/apps/james/
    jar -uvf ../james.sar lib/custom_mailets.jar 

  Create an entry in the config file that catch mail to a mailing list and use the 
mailet to
  write the mail to the archive file.  Note that only the middle entry where 
class="WriteToArchive"
  is a new section for the WriteToArchive mailet. Replace the list emails as necessary.

    vi /opt/obox/james/apps/james/conf/config.xml

      <!-- Mailing List support uses the next two blocks for a list named 
obox-userlist -->
      <mailet match="[EMAIL PROTECTED]"
        class="AvalonListservManager">
        <repositoryName>obox-userlist</repositoryName>
      </mailet>
              
      <mailet match="[EMAIL PROTECTED]" class="WriteToArchive">
        <archiveName>obox-userlist-archive.mbox</archiveName>
      </mailet>
              
      <mailet match="[EMAIL PROTECTED]" class="AvalonListserv">
        <membersonly> false </membersonly>
        <attachmentsallowed> true </attachmentsallowed>
        <replytolist> true </replytolist>
        <repositoryName>obox-userlist</repositoryName>
        <subjectprefix>Out of the Box User Mailing List</subjectprefix>
      </mailet>

  Tell eyebrowse to add the list to those that are read and indexed.

    cd /opt/obox/eyebrowse
    bin/eyebrowse --props=eyebrowse/WEB-INF/classes/eyebrowse.properties 
--command=addlist --listname=obox-devlist --descr="Out of the Box Developers List" 
--listfile=/opt/obox/james/archives/obox-devlist-archive.mbox 
--indexdir=/opt/obox/james/data/obox-devlist-archive/index/

  You'll have to place the eyebrowse update command listed below in a cron
  job (with the proper CLASSPATH settings) to get eyebrowse to continuously
  update.
    cd /opt/obox/eyebrowse;bin/eyebrowse 
--props=eyebrowse/WEB-INF/classes/eyebrowse.properties --command=update


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to