Author: berndf
Date: Tue Jul 31 14:05:06 2007
New Revision: 561535
URL: http://svn.apache.org/viewvc?view=rev&rev=561535
Log:
use more current config files
Modified:
james/server/sandbox/spring-integration/build.xml
james/server/sandbox/spring-integration/src/main/config/james-config.xml
james/server/sandbox/spring-integration/src/main/config/james-fetchmail.xml
james/server/sandbox/spring-integration/src/main/config/james-smtphandlerchain.xml
james/server/sandbox/spring-integration/src/main/config/sqlResources.xml
Modified: james/server/sandbox/spring-integration/build.xml
URL:
http://svn.apache.org/viewvc/james/server/sandbox/spring-integration/build.xml?view=diff&rev=561535&r1=561534&r2=561535
==============================================================================
--- james/server/sandbox/spring-integration/build.xml (original)
+++ james/server/sandbox/spring-integration/build.xml Tue Jul 31 14:05:06 2007
@@ -68,6 +68,7 @@
<pathelement location="${basedir}/lib/commons-beanutils.jar"/>
<pathelement location="${basedir}/lib/commons-codec.jar"/>
<pathelement location="${basedir}/lib/commons-collections.jar"/>
+ <pathelement location="${basedir}/lib/commons-configuration-1.1.jar"/>
<pathelement location="${basedir}/lib/commons-dbcp-1.2.1.jar"/>
<pathelement location="${basedir}/lib/commons-digester.jar"/>
<pathelement location="${basedir}/lib/commons-discovery.jar"/>
@@ -93,7 +94,7 @@
<pathelement
location="${basedir}/lib/cornerstone-threads-api-2.1.jar"/>
<pathelement
location="${basedir}/lib/cornerstone-threads-impl-2.1.jar"/>
<pathelement location="${basedir}/lib/derby.jar"/>
- <pathelement location="${basedir}/lib/dnsjava-2.0.1.jar"/>
+ <pathelement location="${basedir}/lib/dnsjava-2.0.3.jar"/>
<pathelement location="${basedir}/lib/excalibur-cli-1.0.jar"/>
<pathelement location="${basedir}/lib/excalibur-datasource-2.1.jar"/>
<pathelement location="${basedir}/lib/excalibur-extension-1.0a.jar"/>
@@ -135,6 +136,7 @@
<pathelement location="${basedir}/lib/spice-salt-0.8.jar"/>
<pathelement location="${basedir}/lib/spice-xmlpolicy-1.0.jar"/>
<pathelement location="${basedir}/lib/spring.jar"/>
+ <pathelement location="${basedir}/lib/torque-3.3-RC1.jar"/>
<pathelement location="${basedir}/lib/xstream-1.2.jar"/>
</path>
Modified:
james/server/sandbox/spring-integration/src/main/config/james-config.xml
URL:
http://svn.apache.org/viewvc/james/server/sandbox/spring-integration/src/main/config/james-config.xml?view=diff&rev=561535&r1=561534&r2=561535
==============================================================================
--- james/server/sandbox/spring-integration/src/main/config/james-config.xml
(original)
+++ james/server/sandbox/spring-integration/src/main/config/james-config.xml
Tue Jul 31 14:05:06 2007
@@ -19,10 +19,10 @@
<!-- In case the defaults do not suit you, the items you are most likely to
need to change -->
<!-- are preceded by a CHECKME! or CONFIRM? comment in the left margin. -->
-<!-- For production use you will probably n"src/conf/james-assembly.xml"eed to
make more extensive changes, see -->
-<!-- http://james.apache.org/documentation_2_1.html -->
+<!-- For production use you will probably need to make more extensive changes,
see -->
+<!-- http://james.apache.org/server/2.3.0/ -->
-<!-- $Revision: 419618 $ Committed on $Date: 2006-07-06 18:54:33 +0200 (Thu,
06 Jul 2006) $ by: $Author: bago $ -->
+<!-- $Revision: 481870 $ Committed on $Date: 2006-12-03 19:59:18 +0000 (So, 03
Dez 2006) $ by: $Author: joachim $ -->
<config>
<James>
@@ -34,38 +34,28 @@
<!-- will still function, but will generate a warning on startup. -->
<postmaster>[EMAIL PROTECTED]</postmaster>
- <!-- servernames identifies the DNS namespace served by this instance of
James. -->
- <!-- These servernames are used for both matcher/mailet processing and
SMTP auth -->
- <!-- to determine when a mail is intended for local delivery. -->
- <!-- -->
- <!-- If autodetect is TRUE, James wil attempt to discover its own host
name AND -->
- <!-- use any explicitly specified servernames. -->
- <!-- If autodetect is FALSE, James will use only the specified
servernames. -->
- <!-- -->
- <!-- If autodetectIP is not FALSE, James will also allow add the IP
address for each servername. -->
- <!-- The automatic IP detection is to support RFC 2821, Sec 4.1.3,
address literals. -->
- <!-- -->
- <!-- To override autodetected server names simply add explicit
servername elements. -->
- <!-- In most cases this will be necessary. -->
- <!-- By default, the servername 'localhost' is specified. This can be
removed, if required. -->
- <!-- -->
- <!-- Warning: If you are using fetchmail it is important to include the
-->
- <!-- fetched domains in the server name list to prevent looping.
-->
+ <!-- DEPRECATED: servernames should be configured in the DomainList
instance. See the domainlist -->
+ <!-- block configuration -->
+ <!--
<servernames autodetect="true" autodetectIP="true">
-<!-- CONFIRM? -->
- <servername>mail.james.local</servername>
+ <servername>localhost</servername>
</servernames>
-
- <!-- Set whether user names are case sensitive or case insensitive -->
- <!-- Set whether to enable local aliases -->
- <!-- Set whether to enable forwarding -->
+ -->
+
+ <!-- DEPRECATED: ignoreCase, enableAliases and enableForwarding should
-->
+ <!-- be configured in the UsersRepository instance: see the users-store
-->
+ <!-- block configuration -->
+ <!--
<usernames ignoreCase="true" enableAliases="true"
enableForwarding="true"/>
+ -->
<!-- The inbox repository is the location for users inboxes -->
<!-- Default setting: file based repository - enter path ( use
"file:///" for absolute) -->
+ <!--
<inboxRepository>
<repository destinationURL="file://var/mail/inboxes/" type="MAIL"/>
</inboxRepository>
+ -->
<!-- Alternative inbox repository definition for DB use. -->
<!-- The format for the destinationURL is "db://<data-source>/<table>"
-->
@@ -80,11 +70,12 @@
<!-- Alternative inbox repository definition for DB use. -->
<!-- Stores message body in file system, rest in database -->
- <!--
+ <!-- TEMPORARY DEFAULT: dbfile using Derby -->
<inboxRepository>
<repository destinationURL="dbfile://maildb/inbox/" type="MAIL"/>
</inboxRepository>
- -->
+
+ <!-- TEMPORARY DEFAULT: dbfile using Derby -->
<!-- Alternative inbox repository definition for mbox use. -->
<!-- This method uses UNIX standard mbox files and is meant for people
using mbox files -->
@@ -97,8 +88,113 @@
<repository destinationURL="mbox:///var/mail/" type="MAIL"/>
</inboxRepository>
-->
+ <!-- Experimental IMAP support
+ <inboxRepository>
+ <repository destinationURL="mailboxmanager://#mail/"
+ postfix=".INBOX" translateDelimiters="true" type="MAIL" />
+ </inboxRepository>
+ -->
+ <!-- Set to true to support virtualHosting. If virtualHosting support is
enabled the server will accept thread every user independ on -->
+ <!-- domain level. -->
+ <enableVirtualHosting> false </enableVirtualHosting>
+
+ <!-- Set the default domain which will be used if an email is send to a
recipient without a domain part -->
+ <!-- If not defaultdomain is set the first domain of the DomainList get
used -->
+ <defaultDomain> localhost </defaultDomain>
+
</James>
+ <!--
+ Don't forget to activate mailboxmanager inboxRepository in the
+ James block, if you want to receive mail in your IMAP mailbox
+ -->
+ <mailboxmanager>
+ <namespaces>
+ <usernamespace name="#mail" delimiter="."/>
+ </namespaces>
+ <factory
+
class="org.apache.james.mailboxmanager.impl.VirtualMailboxManagerFactory">
+ <mounts>
+ <mount>
+ <point point="#mail"/>
+ <target
class="org.apache.james.mailboxmanager.torque.TorqueMailboxManagerFactory">
+ <torque-properties>
+ <property name="torque.database.default"
+ value="mailboxmanager"/>
+ <property
+ name="torque.database.mailboxmanager.adapter"
+ value="derby"/>
+ <property
+ name="torque.dsfactory.mailboxmanager.factory"
+
value="org.apache.torque.dsfactory.SharedPoolDataSourceFactory"/>
+ <property
+
name="torque.dsfactory.mailboxmanager.connection.driver"
+ value="org.apache.derby.jdbc.EmbeddedDriver"/>
+ <property
+
name="torque.dsfactory.mailboxmanager.connection.url"
+
value="jdbc:derby:../apps/james/var/mailboxmanager-derbydb;create=true"/>
+ <property
+
name="torque.dsfactory.mailboxmanager.connection.user"
+ value="app"/>
+ <property
+
name="torque.dsfactory.mailboxmanager.connection.password"
+ value="app"/>
+ <property
+
name="torque.dsfactory.mailboxmanager.pool.maxActive"
+ value="100"/>
+ </torque-properties>
+ </target>
+ </mount>
+ <!-- You could configure your local-address-error processor
with
+ the repositoryPath
mailboxmanager://#system.address-error/
+ -->
+ <mount>
+ <point point="#system"/>
+ <target
+
class="org.apache.james.mailboxmanager.mailstore.MailStoreMailboxManagerFactory">
+ <repository destinationURL="file://var/mail/system/"
+ type="MAIL"/>
+ </target>
+ </mount>
+ <!-- Mail to user1 goes to a file repository
+ <mount>
+ <point point="#mail.user1"/>
+ <target
+
class="org.apache.james.mailboxmanager.mailstore.MailStoreMailboxManagerFactory">
+ <repository
destinationURL="file://var/mail/inboxes/user1"
+ type="MAIL"/>
+ </target>
+ </mount>
+ -->
+ </mounts>
+ </factory>
+ </mailboxmanager>
+
+ <!-- Experimental IMAP support
+
+ Don't forget to activate mailboxmanager inboxRepository in the
+ James block, if you want to receive mail in your IMAP mailbox
+ -->
+ <imap-connections>
+ <!-- RFC 3501 requires a minimum timeout of 30 minutes -->
+ <idle-timeout>1800000</idle-timeout>
+ <max-connections>100</max-connections>
+ <!--
+ <max-connections-per-ip>0</max-connections-per-ip>
+ -->
+ </imap-connections>
+
+ <imapserver enabled="true">
+ <!-- port 993 is the well-known/IANA registered port for IMAPs ie over
SSL/TLS -->
+ <!-- port 143 is the well-known/IANA registered port for Standard IMAP4
-->
+ <port>10143</port>
+ <handler>
+ <!-- RFC 3501 requires a minimum timeout of 30 minutes -->
+ <connectiontimeout>1800000</connectiontimeout>
+ <streamdump enabled="true" directory="../apps/james/streamdump" />
+ </handler>
+ </imapserver>
+
<!-- This is an example configuration for FetchMail, a JavaMail based
gateway -->
<!-- service that pulls messages from other sources, and inserts them into
the -->
<!-- spool. They are then processed normally, although FetchMail generally
-->
@@ -347,7 +443,7 @@
-->
<!-- People on this list agree to pay a penalty if they send spam -->
- <mailet match="InSpammerBlacklist=query.bondedsender.org"
+ <mailet match="InSpammerBlacklist=query.bondedsender.org."
class="ToProcessor">
<processor> transport </processor>
</mailet>
@@ -373,13 +469,13 @@
<!-- This set of matchers/mailets redirect all emails from known -->
<!-- black holes, open relays, and spam servers to the spam processor
-->
<!-- For this set to function properly, the spam processor must be
configured. -->
- <mailet match="InSpammerBlacklist=dnsbl.njabl.org"
+ <mailet match="InSpammerBlacklist=dnsbl.njabl.org."
class="ToProcessor">
<processor> spam </processor>
<notice>550 Requested action not taken: rejected - see
http://njabl.org/ </notice>
</mailet>
- <mailet match="InSpammerBlacklist=relays.ordb.org"
+ <mailet match="InSpammerBlacklist=relays.ordb.org."
class="ToProcessor">
<processor> spam </processor>
<notice>550 Requested action not taken: rejected - see
http://www.ordb.org/ </notice>
@@ -560,12 +656,16 @@
<delayTime> 3 hours </delayTime>
<delayTime> 6 hours </delayTime>
<maxRetries> 25 </maxRetries>
+
+ <!-- The max reties which will used if no A or MX record for the
domain was found. -->
+ <!-- If 0 it will fail on first time -->
+ <maxDnsProblemRetries> 0 </maxDnsProblemRetries>
<!-- The number of threads that should be trying to deliver
outgoing messages -->
<deliveryThreads> 1 </deliveryThreads>
<!-- If false the message will not be sent to given server if any
recipients fail -->
- <sendpartial>false</sendpartial>
+ <sendpartial>true</sendpartial>
<!-- By default we send bounces to the "bounce" processor -->
<!-- By removing this configuration James will fallback to
hardcoded bounce -->
@@ -586,8 +686,10 @@
<!-- multiple gateway elements, each of which may also have a port
-->
<!-- e.g., mygateway:2525 -->
<!-- the gatewayPort element is used as a default -->
- <gateway> 127.0.0.1 </gateway>
- <gatewayPort>2525</gatewayPort>
+ <!--
+ <gateway> otherserver.mydomain.com </gateway>
+ <gatewayPort>25</gatewayPort>
+ -->
</mailet>
</processor>
@@ -749,24 +851,61 @@
<servers>
<!--Enter ip address of your DNS server, one IP address per server -->
<!-- element. -->
- <!--
- <server>127.0.0.1</server>
- -->
+ <server>169.254.11.1</server>
</servers>
<!-- Change autodiscover to false if you would like to turn off
autodiscovery -->
<!-- and set the DNS servers manually in the <servers> section -->
- <autodiscover>true</autodiscover>
+ <autodiscover>false</autodiscover>
<authoritative>false</authoritative>
<!-- Maximum number of entries to maintain in the DNS cache -->
- <maxcachesize>50000</maxcachesize>
+ <maxcachesize>0</maxcachesize>
+
+ <!-- Uncomment this if you want James to try a single server for each -->
+ <!-- multihomed mx host. -->
+ <!--
+ <singleIPperMX> true </singleIPperMX>
+ -->
</dnsserver>
+
+ <domainlist>
+ <!-- Domainnames identifies the DNS namespace served by this instance of
James. -->
+ <!-- These domainnames are used for both matcher/mailet processing and
SMTP auth -->
+ <!-- to determine when a mail is intended for local delivery. -->
+ <!-- -->
+ <!-- If autodetect is TRUE, James wil attempt to discover its own host
name AND -->
+ <!-- use any explicitly specified servernames. -->
+ <!-- If autodetect is FALSE, James will use only the specified
domainnames. -->
+ <!-- -->
+ <!-- If autodetectIP is not FALSE, James will also allow add the IP
address for each servername. -->
+ <!-- The automatic IP detection is to support RFC 2821, Sec 4.1.3,
address literals. -->
+ <!-- -->
+ <!-- To override autodetected domainames names simply add explicit
domainname elements. -->
+ <!-- In most cases this will be necessary. -->
+ <!-- By default, the domainname 'localhost' is specified. This can be
removed, if required. -->
+ <!-- -->
+ <!-- Warning: If you are using fetchmail it is important to include the
-->
+ <!-- fetched domains in the server name list to prevent looping.
-->
+ <domainnames>
+ <domainname>127.0.0.1</domainname>
+ </domainnames>
+ <autodetect>true</autodetect>
+ <autodetectIP>true</autodetectIP>
+ </domainlist>
+
+
+ <!-- Uncommment this block to enable the BayesianAnalyserManagement. -->
+ <!-- This is needed by the RemoteManager to enable the
BayesianAnaylyzerManagement commands -->
+ <bayesiananalyzermanagement>
+ <repositoryPath> db://maildb </repositoryPath>
+ </bayesiananalyzermanagement>
+
<!-- The RemoteManager server is enabled by default -->
<!-- Disabling blocks will stop them from listening, -->
<!-- but does not free as many resources as removing them would -->
<remotemanager enabled="true">
- <port>4565</port>
+ <port>4555</port>
<!-- Uncomment this if you want to bind to a specific inetaddress -->
<!--
<bind> </bind>
@@ -781,7 +920,7 @@
<!-- own host name and use that in the protocol. If discovery fails,
-->
<!-- the value of 'localhost' is used. If autodetect is FALSE, James
-->
<!-- will use the specified value. -->
- <helloName autodetect="true">myMailServer</helloName>
+ <helloName autodetect="false">myMailServer</helloName>
<administrator_accounts>
<!-- CHECKME! -->
<!-- Change the default login/password. -->
@@ -794,7 +933,7 @@
-->
</handler>
</remotemanager>
-
+
<!-- The POP3 server is enabled by default -->
<!-- Disabling blocks will stop them from listening, -->
<!-- but does not free as many resources as removing them would -->
@@ -818,7 +957,7 @@
<!-- own host name and use that in the protocol. If discovery fails,
-->
<!-- the value of 'localhost' is used. If autodetect is FALSE, James
-->
<!-- will use the specified value. -->
- <helloName autodetect="true">myMailServer</helloName>
+ <helloName autodetect="false">myMailServer</helloName>
<connectiontimeout>120000</connectiontimeout>
</handler>
</pop3server>
@@ -847,7 +986,7 @@
<!-- own host name and use that in the protocol. If discovery fails,
-->
<!-- the value of 'localhost' is used. If autodetect is FALSE, James
-->
<!-- will use the specified value. -->
- <helloName autodetect="true">myMailServer</helloName>
+ <helloName autodetect="false">myMailServer</helloName>
<connectiontimeout>360000</connectiontimeout>
<!-- Uncomment this if you want to require SMTP authentication.
@@ -899,14 +1038,20 @@
<!--
<heloEhloEnforcement>true</heloEhloEnforcement>
-->
-
- <!-- SMTP Handler Chain customization -->
- <!-- Uncomment this and edit james-smtphandlerchain.xml configuration
file to -->
- <!-- enable the experimental fastfail features. Look at the
james-smtphandlerchain.xml -->
- <!-- for further informations -->
- <!--
- &smtphandlerchainConfig;
+
+ <!-- WARNING: This is Non-RFC compliant (default value: true) -->
+ <!-- See: http://wiki.apache.org/james/StandardsComplianceStatement
-->
+ <!-- TODO: CHANGE TO OFFICIAL URL LATER -->
+ <addressBracketsEnforcement>true</addressBracketsEnforcement>
+
+ <!-- This sets the SMTPGreeting which will be used when connect to
the smtpserver -->
+ <!-- If none is specified a default is generated -->
+ <!--
+ <smtpGreeting> JAMES SMTP Server </smtpGreeting>
-->
+
+ <!-- The configuration handler chain -->
+ &smtphandlerchainConfig;
</handler>
</smtpserver>
@@ -939,7 +1084,7 @@
<!-- own host name and use that in the protocol. If discovery fails,
-->
<!-- the value of 'localhost' is used. If autodetect is FALSE, James
-->
<!-- will use the specified value. -->
- <helloName autodetect="true">myMailServer</helloName>
+ <helloName autodetect="false">myMailServer</helloName>
<connectiontimeout>120000</connectiontimeout>
<!-- Set the authRequired value to true to enable authenticated NNTP
-->
<authRequired>false</authRequired>
@@ -981,7 +1126,9 @@
<!-- Spool repository configuration -->
<!-- The spool repository is the location where incoming mails are
temporarily stored -->
<!-- before being processed. -->
+ <!--
<spoolrepository destinationURL="file://var/mail/spool/" type="SPOOL"/>
+ -->
<!-- Alternative spool repository definition for JDBC use -->
<!--
@@ -990,14 +1137,24 @@
<!-- Alternative spool repository definition for JDBC use -->
<!-- Stores message body in file system, rest in database -->
- <!--
+ <!-- TEMPORARY DEFAULT: dbfile using Derby -->
<spoolrepository destinationURL="dbfile://maildb/spool/spool" type="SPOOL"/>
- -->
+ <!-- TEMPORARY DEFAULT: dbfile using Derby -->
<!-- The Mailstore block -->
<mailstore>
<repositories>
-
+ <repository
class="org.apache.james.mailboxmanager.repository.MailboxManagerMailRepository">
+ <protocols>
+ <protocol>mailboxmanager</protocol>
+ </protocols>
+ <types>
+ <type>MAIL</type>
+ </types>
+ <config>
+ <sqlFile>file://conf/mailboxManagerSqlResources.xml</sqlFile>
+ </config>
+ </repository>
<!-- File based repositories. These repositories store all message
data -->
<!-- in the file system. -->
<repository
class="org.apache.james.mailrepository.AvalonMailRepository">
@@ -1007,6 +1164,8 @@
<types>
<type>MAIL</type>
</types>
+ <!-- Set if the messages should be listed sorted. False by default
-->
+ <config FIFO="false"/>
</repository>
<repository
class="org.apache.james.mailrepository.AvalonSpoolRepository">
<protocols>
@@ -1031,7 +1190,7 @@
<!-- Set the size threshold for in memory handling of storing
operations -->
<!-- Default is currently 409600000 due to a bug with mysql and
binary stream -->
<!-- currently under investigation. Please change this only if
you know what -->
- <!-- you do, this is EXPERIMENTAL -->
+ <!-- you do. -->
<!--
<inMemorySizeLimit>4096</inMemorySizeLimit>
-->
@@ -1048,16 +1207,151 @@
<config>
<sqlFile>file://conf/sqlResources.xml</sqlFile>
<maxcache>1000</maxcache>
+ </config>
+ </repository>
+
+ <!-- These repositories store message delivery and headers in the DB,
and the body to the filesystem -->
+ <repository
class="org.apache.james.mailrepository.JDBCMailRepository">
+ <protocols>
+ <protocol>dbfile</protocol>
+ </protocols>
+ <types>
+ <type>MAIL</type>
+ </types>
+ <config>
+ <sqlFile>file://conf/sqlResources.xml</sqlFile>
+ <filestore>file://var/dbmail</filestore>
+ </config>
+ </repository>
+
+ <repository
class="org.apache.james.mailrepository.JDBCSpoolRepository">
+ <protocols>
+ <protocol>dbfile</protocol>
+ </protocols>
+ <types>
+ <type>SPOOL</type>
+ </types>
+ <config>
+ <sqlFile>file://conf/sqlResources.xml</sqlFile>
+ <filestore>file://var/dbmail</filestore>
+ <maxcache>1000</maxcache>
+ </config>
+ </repository>
+
+ <!-- The mbox repository is designed for MAIL only; SPOOL performance
would be less than ideal-->
+ <repository
class="org.apache.james.mailrepository.MBoxMailRepository">
+ <protocols>
+ <protocol>mbox</protocol>
+ </protocols>
+ <types>
+ <type>MAIL</type>
+ </types>
+ <!-- Set if the messages should be listed sorted. False by default
-->
+ <config FIFO="false"/>
+ </repository>
+
+ <repository
class="org.apache.james.mailrepository.filepair.File_Persistent_Object_Repository">
+ <protocols>
+ <protocol>file</protocol>
+ </protocols>
+ <types>
+ <type>OBJECT</type>
+ </types>
+ <models>
+ <model>SYNCHRONOUS</model>
+ <model>ASYNCHRONOUS</model>
+ <model>CACHE</model>
+ </models>
+ </repository>
+
+ <repository
class="org.apache.james.mailrepository.filepair.File_Persistent_Stream_Repository">
+ <protocols>
+ <protocol>file</protocol>
+ </protocols>
+ <types>
+ <type>STREAM</type>
+ </types>
+ <models>
+ <model>SYNCHRONOUS</model>
+ <model>ASYNCHRONOUS</model>
+ <model>CACHE</model>
+ </models>
+ </repository>
+ </repositories>
+
+ </mailstore>
+
+
+ <!-- The Mailstore block used by mailboxmanager -->
+
+ <mailboxmanager-mailstore>
+ <repositories>
+ <repository
class="org.apache.james.mailboxmanager.repository.MailboxManagerMailRepository">
+ <protocols>
+ <protocol>mailboxmanager</protocol>
+ </protocols>
+ <types>
+ <type>MAIL</type>
+ </types>
+ <config>
+ <sqlFile>file://conf/mailboxManagerSqlResources.xml</sqlFile>
+ </config>
+ </repository>
+ <!-- File based repositories. These repositories store all message
data -->
+ <!-- in the file system. -->
+ <repository
class="org.apache.james.mailrepository.AvalonMailRepository">
+ <protocols>
+ <protocol>file</protocol>
+ </protocols>
+ <types>
+ <type>MAIL</type>
+ </types>
+ <!-- Set if the messages should be listed sorted. False by default
-->
+ <config FIFO="false"/>
+ </repository>
+ <repository
class="org.apache.james.mailrepository.AvalonSpoolRepository">
+ <protocols>
+ <protocol>file</protocol>
+ </protocols>
+ <types>
+ <type>SPOOL</type>
+ </types>
+ </repository>
+
+ <!-- JDBC based repositories. These repositories store all message
data -->
+ <!-- in the database. -->
+ <repository
class="org.apache.james.mailrepository.JDBCMailRepository">
+ <protocols>
+ <protocol>db</protocol>
+ </protocols>
+ <types>
+ <type>MAIL</type>
+ </types>
+ <config>
+ <sqlFile>file://conf/sqlResources.xml</sqlFile>
<!-- Set the size threshold for in memory handling of storing
operations -->
<!-- Default is currently 409600000 due to a bug with mysql and
binary stream -->
<!-- currently under investigation. Please change this only if
you know what -->
- <!-- you do, this is EXPERIMENTAL -->
+ <!-- you do. -->
<!--
<inMemorySizeLimit>4096</inMemorySizeLimit>
-->
</config>
</repository>
+ <repository
class="org.apache.james.mailrepository.JDBCSpoolRepository">
+ <protocols>
+ <protocol>db</protocol>
+ </protocols>
+ <types>
+ <type>SPOOL</type>
+ </types>
+ <config>
+ <sqlFile>file://conf/sqlResources.xml</sqlFile>
+ <maxcache>1000</maxcache>
+ </config>
+ </repository>
+
<!-- These repositories store message delivery and headers in the DB,
and the body to the filesystem -->
<repository
class="org.apache.james.mailrepository.JDBCMailRepository">
<protocols>
@@ -1094,6 +1388,8 @@
<types>
<type>MAIL</type>
</types>
+ <!-- Set if the messages should be listed sorted. False by default
-->
+ <config FIFO="false"/>
</repository>
<repository
class="org.apache.james.mailrepository.filepair.File_Persistent_Object_Repository">
@@ -1124,10 +1420,10 @@
</models>
</repository>
</repositories>
+
+ </mailboxmanager-mailstore>
- </mailstore>
-
-
+
<!-- The User Storage block -->
<users-store>
<!-- Configure User Repositories here. -->
@@ -1148,10 +1444,14 @@
<!-- Default: File-based user repositories Use these configurations to
store user info in the filesystem -->
<!-- The LocalUsers repository, for storing James' User info. -->
+ <!--
<repository name="LocalUsers"
class="org.apache.james.userrepository.UsersFileRepository">
<destination URL="file://var/users/"/>
+ <ignoreCase>true</ignoreCase>
+ <enableAliases>true</enableAliases>
+ <enableForwarding>true</enableForwarding>
</repository>
-
+ -->
<!-- Database backed user repositories -->
<!-- -->
@@ -1160,11 +1460,17 @@
<!-- in the <database-connections> configuration section. -->
<!-- The LocalUsers repository, for storing James' User info. -->
- <!--
+ <!-- TEMPORARY DEFAULT: db using Derby -->
<repository name="LocalUsers"
class="org.apache.james.userrepository.JamesUsersJdbcRepository"
destinationURL="db://maildb/users">
<sqlFile>file://conf/sqlResources.xml</sqlFile>
+ <!-- Set whether user names are case sensitive or case insensitive -->
+ <ignoreCase>true</ignoreCase>
+ <!-- Set whether to enable local aliases -->
+ <enableAliases>true</enableAliases>
+ <!-- Set whether to enable forwarding -->
+ <enableForwarding>true</enableForwarding>
</repository>
- -->
+ <!-- TEMPORARY DEFAULT: db using Derby -->
<!-- This is an example configuration including configuration for a list
server. -->
<!-- CHECKME: before uncommenting this, edit the configuration file's
contents -->
@@ -1173,6 +1479,29 @@
-->
</users-store>
+
+ <!-- The VirtualUserTable Store block -->
+ <virtualusertable-store>
+
+ <!-- The DefaultVirtualUserTable for storing James' VirtualUserTable
mappings. -->
+ <!--
+ <table name="DefaultVirtualUserTable"
class="org.apache.james.vut.XMLVirtualUserTable">
+ <mapping> [EMAIL PROTECTED] </mapping>
+ </table>
+ -->
+
+ <!-- Database backed VirtualUsertable -->
+ <!-- -->
+ <!-- Use these configurations to store the VirtualUserTable in a
database. -->
+ <!-- Note: The <data-source> element must refer to a connection
configured -->
+ <!-- in the <database-connections> configuration section. -->
+
+ <!-- The DefaultVirtualUserTable for storing James' VirtualUserTable
mappings. -->
+ <!-- TEMPORARY DEFAULT: db using Derby -->
+ <table name="DefaultVirtualUserTable"
class="org.apache.james.vut.JDBCVirtualUserTable"
destinationURL="db://maildb/VirtualUserTable">
+ <sqlFile>file://conf/sqlResources.xml</sqlFile>
+ </table>
+ </virtualusertable-store>
<!-- The database-connections block -->
<database-connections>
@@ -1193,19 +1522,19 @@
This, alone, may be reason for you to give it a try.
-->
- <!-- Default James distribution includes Apache Derby database, -->
- <!-- which is easy to embed - but we support all the major SQL -->
- <!-- databases - just reconfigure your JDBC configuration -->
- <!--
+ <!-- Out of the box default configuration uses Apache Derby as the
default -->
+ <!-- database, which is easy to embed - but we support all the major SQL
-->
+ <!-- databases - just reconfigure your JDBC configuration
-->
+ <!-- -->
<data-source name="maildb"
class="org.apache.james.util.dbcp.JdbcDataSource">
<driver>org.apache.derby.jdbc.EmbeddedDriver</driver>
- <dburl>jdbc:derby:../apps/james/var/derbydb;create=true</dburl>
+ <dburl>jdbc:derby:derbydb;create=true</dburl>
<user></user>
<password></password>
<poolPreparedStatements>true</poolPreparedStatements>
<max>20</max>
</data-source>
- -->
+ <!-- -->
<!-- JDBC driver .jar libraries for other RDBMS can be placed in
~james/lib/ -->
@@ -1288,9 +1617,17 @@
<!-- Resource limitations imposed by other components (i.e. max # of
threads) may -->
<!-- serve to limit the number of open connections. -->
<!-- -->
+ <!-- The max-connections-per-ip parameter specifies the default maximum
number of client -->
+ <!-- connections per ip that this connection manager will allow per managed
server socket. -->
+ <!-- This value can be overridden by each individual service. -->
+ <!-- If no value is specified, the value defaults to 0 ( disabled) . -->
+ <!-- -->
<connections>
<idle-timeout>300000</idle-timeout>
<max-connections>30</max-connections>
+ <!--
+ <max-connections-per-ip>0</max-connections-per-ip>
+ -->
</connections>
<!-- The Socket Manager block -->
@@ -1368,4 +1705,5 @@
<min-spare-threads>20</min-spare-threads>
</thread-group>
</thread-manager>
+
</config>
Modified:
james/server/sandbox/spring-integration/src/main/config/james-fetchmail.xml
URL:
http://svn.apache.org/viewvc/james/server/sandbox/spring-integration/src/main/config/james-fetchmail.xml?view=diff&rev=561535&r1=561534&r2=561535
==============================================================================
--- james/server/sandbox/spring-integration/src/main/config/james-fetchmail.xml
(original)
+++ james/server/sandbox/spring-integration/src/main/config/james-fetchmail.xml
Tue Jul 31 14:05:06 2007
@@ -3,7 +3,7 @@
<!-- fetched domains in the <servernames> section of the <James> block
-->
<!-- above. This block is disabled by default.
-->
- <!-- See http://james.apache.org/fetchmail_configuration_2_2.html for
detailed -->
+ <!-- See http://james.apache.org/server/2.3.0/fetchmail_configuration.html
for detailed -->
<!-- configuration instructions and examples.
-->
<!-- I M P O R T A N T -->
@@ -46,7 +46,7 @@
<!-- When a message server supports BOTH delivery for a single
user to a specific INBOX and access to all mail -->
<!-- for a domain through a single INBOX, you can use <alllocal>
and <account> together to guarantee that all -->
<!-- local mail gets delivered to the correct user and all
unwanted mail is deleted from the message -->
- <!-- server. See
http://james.apache.org/fetchmail_configuration_2_2.html for details. -->
+ <!-- server. See
http://james.apache.org/server/2.3.0/fetchmail_configuration.html for details.
-->
<!-- Limitations and Future Directions -->
<!-- 1) <alllocal> requires the password for all accounts for a
domain on the message server be the same. True -->
Modified:
james/server/sandbox/spring-integration/src/main/config/james-smtphandlerchain.xml
URL:
http://svn.apache.org/viewvc/james/server/sandbox/spring-integration/src/main/config/james-smtphandlerchain.xml?view=diff&rev=561535&r1=561534&r2=561535
==============================================================================
---
james/server/sandbox/spring-integration/src/main/config/james-smtphandlerchain.xml
(original)
+++
james/server/sandbox/spring-integration/src/main/config/james-smtphandlerchain.xml
Tue Jul 31 14:05:06 2007
@@ -41,6 +41,7 @@
-->
<!--
<handler
class="org.apache.james.smtpserver.core.filter.fastfail.DNSRBLHandler"
command="RCPT">
+ <action> reject </action>
<getDetail> false </getDetail>
<rblservers>
<whitelist> query.bondedsender.org. </whitelist>
@@ -58,6 +59,7 @@
<!-- are allowed to relay. Default is false. -->
<!--
<handler
class="org.apache.james.smtpserver.core.filter.fastfail.SPFHandler"
command="MAIL,RCPT">
+ <action> reject </action>
<checkAuthNetworks> false </checkAuthNetworks>
<blockSoftFail> false </blockSoftFail>
<blockPermError> true </blockPermError>
@@ -72,6 +74,7 @@
<!-- are allowed to relay. Default is false. -->
<!--
<handler
class="org.apache.james.smtpserver.core.filter.fastfail.ResolvableEhloHeloHandler"
command="EHLO,HELO,RCPT">
+ <action> reject </action>
<checkAuthNetworks> false </checkAuthNetworks>
<checkAuthUsers> false </checkAuthUsers>
</handler>
@@ -82,7 +85,9 @@
<!-- are allowed to relay. Default is false. -->
<!--
<handler
class="org.apache.james.smtpserver.core.filter.fastfail.ReverseEqualsEhloHeloHandler"
command="EHLO,HELO">
+ <action> reject </action>
<checkAuthClients> false </checkAuthClients>
+ <checkAuthUsers> false </checkAuthUsers>
</handler>
-->
@@ -92,34 +97,12 @@
<!-- are allowed to relay. Default is false. -->
<!--
<handler
class="org.apache.james.smtpserver.core.filter.fastfail.ValidSenderDomainHandler"
command="MAIL">
+ <action> reject </action>
<checkAuthClients> false </checkAuthClients>
+ <checkAuthUsers> false </checkAuthUsers>
</handler>
-->
- <!-- IF you want to use the ValidRcptHandler you can set virtual user
which will accepted here.-->
- <!--
- <handler
class="org.apache.james.smtpserver.core.filter.fastfail.XMLVirtualUserTableHandler"
command="RCPT">
- <!- 1:1 mapping ->
- <mapping>[EMAIL PROTECTED]@mordor</mapping>
- <!- 1:n mapping ->
- <mapping>[EMAIL PROTECTED]@isengard;radigast;gandalf</mapping>
- <!- regex based mapping ->
- <mapping>[EMAIL PROTECTED]:(.*)@osgilliath:[EMAIL PROTECTED]</mapping>
- <!- both standard and regex mapping ->
- <mapping>[EMAIL PROTECTED]@mordor;regex:ring@(.*):[EMAIL
PROTECTED]</mapping>
- <!- conditional regex mapping example ->
- <mapping>[EMAIL PROTECTED]:(.*)[EMAIL PROTECTED]:[EMAIL PROTECTED];
- regex:(.*)[EMAIL PROTECTED]:[EMAIL PROTECTED]
- </mapping>
- </handler>
- -->
-
- <!-- IF you want to use the ValidRcptHandler you can set virtual user
which will accepted here.-->
- <!--
- <handler
class="org.apache.james.smtpserver.core.filter.fastfail.JDBCVirtualUserTableHandler"
command="RCPT">
- <table> db://maildb/VirtualUserTable </table>
- </handler>
- -->
<!-- If activated all email will get rejected which has no valid user -->
<!-- You need to add the recipient to the validRecipient list if you want
-->
@@ -135,6 +118,7 @@
<!-- If activated you can limit the maximal recipients -->
<!--
<handler
class="org.apache.james.smtpserver.core.filter.fastfail.MaxRcptHandler"
command="RCPT">
+ <action> reject </action>
<maxRcpt> 10 </maxRcpt>
</handler>
-->
@@ -191,11 +175,12 @@
<!-- The message get rejected if a domain matched . -->
<!--
<handler
class="org.apache.james.smtpserver.core.filter.fastfail.URIRBLHandler">
+ <action> reject </action>
+ <getDetail> true </getDetail>
+ <checkAuthNetworks> false </checkAuthNetworks>
<uriRblServers>
<server> multi.surbl.org</server>
</uriRblServers>
- <getDetail> true </getDetail>
- <checkAuthNetworks> false </checkAuthNetworks>
</handler>
-->
Modified:
james/server/sandbox/spring-integration/src/main/config/sqlResources.xml
URL:
http://svn.apache.org/viewvc/james/server/sandbox/spring-integration/src/main/config/sqlResources.xml?view=diff&rev=561535&r1=561534&r2=561535
==============================================================================
--- james/server/sandbox/spring-integration/src/main/config/sqlResources.xml
(original)
+++ james/server/sandbox/spring-integration/src/main/config/sqlResources.xml
Tue Jul 31 14:05:06 2007
@@ -984,7 +984,177 @@
PRIMARY KEY (ipaddress,sender,recip)
)
</sql>
+</sqlDefs>
+<!-- SQL statements for the JdbcVirtualUserTable -->
+<sqlDefs name="org.apache.james.vut.JDBCVirtualUserTable">
+
+ <!-- Statements used to check whether a particular message exists in this
repository. -->
+ <sql name="selectMappings" db="derby">select
VirtualUserTable.target_address,(VirtualUserTable."user" || '@'
||VirtualUserTable.domain) from VirtualUserTable, VirtualUserTable as
VUTDomains where ((VirtualUserTable."user") like ? or (VirtualUserTable."user")
like '%') and (VirtualUserTable.domain like ? or (VirtualUserTable.domain like
'%' and VUTDomains.domain like ?)) order by 2 desc</sql>
+ <sql name="selectMappings">select VirtualUserTable.target_address from
VirtualUserTable, VirtualUserTable as VUTDomains where (VirtualUserTable.user
like ? or VirtualUserTable.user like '%') and (VirtualUserTable.domain like ?
or (VirtualUserTable.domain like '%' and VUTDomains.domain like ?)) order by
concat(VirtualUserTable.user,'@',VirtualUserTable.domain) desc limit 1" </sql>
+
+ <sql name="selectUserDomainMapping" db="derby">select
VirtualUserTable.target_address from VirtualUserTable where
VirtualUserTable."user" = ? and VirtualUserTable.domain = ? </sql>
+ <sql name="selectUserDomainMapping">select VirtualUserTable.target_address
from VirtualUserTable where VirtualUserTable.user = ? and
VirtualUserTable.domain = ? </sql>
+
+ <sql name="deleteMapping">delete from VirtualUserTable where
VirtualUserTable."user" = ? and VirtualUserTable.domain = ? and
VirtualUserTable.target_address = ?</sql>
+
+ <sql name="updateMapping">update VirtualUserTable set
VirtualUserTable.target_address = ? where VirtualUserTable."user" = ? and
VirtualUserTable.domain = ? </sql>
+
+ <sql name="addMapping">insert into VirtualUserTable values(?,?,?) </sql>
+
+ <sql name="selectAllMappings">select * from VirtualUserTable </sql>
+
+ <sql name="selectDomains">select distinct domain from
VirtualUserTable</sql>
+
+ <sql name="selectDomain">select distinct domain from VirtualUserTable
where domain = ? </sql>
+
+ <!-- Statements used to create the table associated with this class. -->
+ <sql name="createTable" db="mysql">
+ CREATE TABLE VirtualUserTable (
+ user varchar(64) NOT NULL default '',
+ domain varchar(255) NOT NULL default '',
+ target_address varchar(255) NOT NULL default '',
+ PRIMARY KEY (user,domain)
+ )
+ </sql>
+ <!-- TEMPORARY DISABLED -->
+ <!--
+ <sql name="createTable" db="hypersonic">
+ CREATE CACHED TABLE VirtualUserTable (
+ user varchar(64) NOT NULL default '',
+ domain varchar(255) NOT NULL default '',
+ target_address varchar(255) NOT NULL default '',
+ PRIMARY KEY (user,domain)
+ )
+ </sql>
+ <sql name="createTable" db="hsqldb">
+ CREATE CACHED TABLE VirtualUserTable (
+ user varchar(64) NOT NULL default '',
+ domain varchar(255) NOT NULL default '',
+ target_address varchar(255) NOT NULL default '',
+ PRIMARY KEY (user,domain)
+ )
+ </sql>
+ <sql name="createTable" db="mssql">
+ CREATE TABLE [VirtualUserTable] (
+ [user] [varchar] (64) NOT NULL default '',
+ [domain] [varchar] (255) NOT NULL default '',
+ [target_address] [varchar] (255) NOT NULL default '',
+ PRIMARY KEY (user,domain)
+ )
+ </sql>
+ <sql name="createTable" db="oracle">
+ CREATE TABLE VirtualUserTable (
+ user varchar2(64) NOT NULL default '',
+ domain varchar2(255) NOT NULL default '',
+ target_address varchar2(255) NOT NULL default '',
+ PRIMARY KEY (user,domain)
+ )
+ </sql>
+ <sql name="createTable" db="postgresql">
+ CREATE TABLE VirtualUserTable (
+ user varchar(64) NOT NULL default '',
+ domain varchar(255) NOT NULL default '',
+ target_address varchar(255) NOT NULL default '',
+ PRIMARY KEY (user,domain)
+ )
+ </sql>
+ <sql name="createTable" db="sapdb">
+ CREATE TABLE VirtualUserTable (
+ user varchar(64) NOT NULL default '',
+ domain varchar(255) NOT NULL default '',
+ target_address varchar(255) NOT NULL default '',
+ PRIMARY KEY (user,domain)
+ )
+ </sql>
+ <sql name="createTable" db="db2">
+ CREATE TABLE VirtualUserTable (
+ user varchar(64) NOT NULL default '',
+ domain varchar(255) NOT NULL default '',
+ target_address varchar(255) NOT NULL default '',
+ PRIMARY KEY (user,domain)
+ )
+ </sql>
+ <sql name="createTable" db="ingres">
+ CREATE TABLE VirtualUserTable (
+ user varchar(64) NOT NULL default '',
+ domain varchar(255) NOT NULL default '',
+ target_address varchar(255) NOT NULL default '',
+ PRIMARY KEY (user,domain)
+ )
+ </sql>
+ -->
+ <sql name="createTable" db="derby">
+ CREATE TABLE VirtualUserTable (
+ "user" varchar (64) NOT NULL default '',
+ domain varchar (255) NOT NULL default '',
+ target_address varchar (255) NOT NULL default '',
+ PRIMARY KEY ("user",domain)
+ )
+ </sql>
+</sqlDefs>
+
+<!-- SQL statements for the JDBCDomainList -->
+<sqlDefs name="org.apache.james.domain.JDBCDomainList">
+ <sql name="selectDomains">select distinct domain from ${table} </sql>
+
+ <sql name="selectDomain">select distinct domain from ${table} where domain
= ? </sql>
+
+ <sql name="addDomain">insert into ${table} values (?) </sql>
+
+ <sql name="removeDomain">delete from ${table} where domain = ? </sql>
+
+ <!-- Statements used to create the table associated with this class.
-->
+ <sql name="createTable" db="mysql">
+ CREATE TABLE ${table} (
+ domain varchar(100) NOT NULL default ''
+ )
+ </sql>
+ <sql name="createTable" db="hypersonic">
+ CREATE CACHED TABLE ${table} (
+ user varchar(100) NOT NULL default ''
+ )
+ </sql>
+ <sql name="createTable" db="hsqldb">
+ CREATE CACHED TABLE ${table} (
+ domain varchar(100) NOT NULL default ''
+ )
+ </sql>
+ <sql name="createTable" db="mssql">
+ CREATE TABLE [${table}] (
+ [user] [domain] (100) NOT NULL default ''
+ )
+ </sql>
+ <sql name="createTable" db="oracle">
+ CREATE TABLE ${table} (
+ domain varchar2(100) NOT NULL default ''
+ )
+ </sql>
+ <sql name="createTable" db="postgresql">
+ CREATE TABLE ${table} (
+ domain varchar(64) NOT NULL default ''
+ )
+ </sql>
+ <sql name="createTable" db="sapdb">
+ CREATE TABLE ${table} (
+ domain varchar(100) NOT NULL default '',
+ )
+ </sql>
+ <sql name="createTable" db="db2">
+ CREATE TABLE ${table} (
+ domain varchar(100) NOT NULL default ''
+ )
+ </sql>
+ <sql name="createTable" db="ingres">
+ CREATE TABLE ${table} (
+ domain varchar(100) NOT NULL default ''
+ )
+ </sql>
+ <sql name="createTable" db="derby">
+ CREATE TABLE ${table} (
+ domain varchar (100) NOT NULL default ''
+ )
+ </sql>
</sqlDefs>
</sqlResources>
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]