| <?xml version="1.0" encoding="UTF-8"?> |
| <!-- |
| Licensed to the Apache Software Foundation (ASF) under one |
| or more contributor license agreements. See the NOTICE file |
| distributed with this work for additional information |
| regarding copyright ownership. The ASF licenses this file |
| to you under the Apache License, Version 2.0 (the |
| "License"); you may not use this file except in compliance |
| with the License. You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, |
| software distributed under the License is distributed on an |
| "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| KIND, either express or implied. See the License for the |
| specific language governing permissions and limitations |
| under the License. |
| --> |
| <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> |
| <!-- Generated by Apache Maven Doxia at Apr 17, 2012 --> |
| <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> |
| <title> |
| Apache James Server 3 - Server Wide Configuration</title> |
| <style type="text/css" media="all"> |
| @import url("./css/james.css"); |
| @import url("./css/maven-base.css"); |
| @import url("./css/maven-theme.css"); |
| @import url("./css/site.css"); |
| @import url("./js/jquery/css/custom-theme/jquery-ui-1.8.5.custom.css"); |
| @import url("./js/jquery/css/print.css"); |
| @import url("./js/fancybox/jquery.fancybox-1.3.4.css"); |
| </style> |
| <script type="text/javascript" src="./js/jquery/js/jquery-1.4.2.min.js"></script> |
| <script type="text/javascript" src="./js/jquery/js/jquery-ui-1.8.5.custom.min.js"></script> |
| <script type="text/javascript" src="./js/fancybox/jquery.fancybox-1.3.4.js"></script> |
| <link rel="stylesheet" href="./css/print.css" type="text/css" media="print" /> |
| <meta name="Date-Revision-yyyymmdd" content="20120417" /> |
| <meta http-equiv="Content-Language" content="en" /> |
| |
| <link title="DOAP" rel="meta" type="application/rdf+xml" href="http://james.apache.org//doap_james-project.rdf"/> |
| |
| <!-- Google Analytics --> |
| <script type="text/javascript"> |
| |
| var _gaq = _gaq || []; |
| _gaq.push(['_setAccount', 'UA-1384591-1']); |
| _gaq.push(['_trackPageview']); |
| |
| (function() { |
| var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true; |
| ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'; |
| var s = document.getElementsByTagName('script').item(0); s.parentNode.insertBefore(ga, s); |
| })(); |
| |
| </script> |
| </head> |
| <body class="composite"> |
| <div id="banner"> |
| <a href="../index.html" id="bannerLeft" title="james-server-logo.gif"> |
| |
| |
| <img src="images/logos/james-server-logo.gif" alt="Apache James Server 3.0" /> |
| </a> |
| <a href="http://www.apache.org/index.html" id="bannerRight"> |
| |
| |
| <img src="images/logos/asf-logo-reduced.gif" alt="The Apache Software Foundation" /> |
| </a> |
| <div class="clear"> |
| <hr/> |
| </div> |
| </div> |
| <div id="breadcrumbs"> |
| |
| |
| <div class="xleft"> |
| <span id="publishDate">Last Published: 2012-04-17</span> |
| </div> |
| <div class="xright"> <a href="../../index.html" title="Home">Home</a> |
| | |
| <a href="../index.html" title="Server">Server</a> |
| | |
| <a href="../../hupa/index.html" title="Hupa">Hupa</a> |
| | |
| <a href="../../protocols/index.html" title="Protocols">Protocols</a> |
| | |
| <a href="../../imap/index.html" title="IMAP">IMAP</a> |
| | |
| <a href="../../mailet/index.html" title="Mailets">Mailets</a> |
| | |
| <a href="../../mailbox/index.html" title="Mailbox">Mailbox</a> |
| | |
| <a href="../../mime4j/index.html" title="Mime4J">Mime4J</a> |
| | |
| <a href="../../jsieve/index.html" title="jSieve">jSieve</a> |
| | |
| <a href="../../jspf/index.html" title="jSPF">jSPF</a> |
| | |
| <a href="../../jdkim/index.html" title="jDKIM">jDKIM</a> |
| | |
| <a href="../../mpt/index.html" title="MPT">MPT</a> |
| | |
| <a href="../../postage/index.html" title="Postage">Postage</a> |
| |
| |
| </div> |
| <div class="clear"> |
| <hr/> |
| </div> |
| </div> |
| <div id="leftColumn"> |
| <div id="navcolumn"> |
| |
| |
| <h5>Overview</h5> |
| <ul> |
| <li class="none"> |
| <a href="index.html" title="Introduction">Introduction</a> |
| </li> |
| <li class="none"> |
| <a href="release-notes.html" title="Release Notes">Release Notes</a> |
| </li> |
| </ul> |
| <h5>Features</h5> |
| <ul> |
| <li class="none"> |
| <a href="feature-mailetcontainer.html" title="Mailet Container">Mailet Container</a> |
| </li> |
| <li class="none"> |
| <a href="feature-queue-priority.html" title="Queue Priority">Queue Priority</a> |
| </li> |
| <li class="none"> |
| <a href="feature-persistence.html" title="Persistence">Persistence</a> |
| </li> |
| <li class="none"> |
| <a href="feature-protocols.html" title="Protocols">Protocols</a> |
| </li> |
| <li class="none"> |
| <a href="feature-smtp-hooks.html" title="SMTP Hooks">SMTP Hooks</a> |
| </li> |
| <li class="none"> |
| <a href="feature-performance.html" title="Performance">Performance</a> |
| </li> |
| <li class="none"> |
| <a href="feature-security.html" title="Security">Security</a> |
| </li> |
| </ul> |
| <h5>User Manual</h5> |
| <ul> |
| <li class="none"> |
| <a href="quick-start.html" title="1. Quick Start">1. Quick Start</a> |
| </li> |
| <li class="none"> |
| <a href="install.html" title="2. Install James">2. Install James</a> |
| </li> |
| <li class="expanded"> |
| <a href="config.html" title="3. Configure James">3. Configure James</a> |
| <ul> |
| <li class="none"> |
| <strong>Server-wide</strong> |
| </li> |
| <li class="none"> |
| <a href="config-domainlist.html" title="Domain List">Domain List</a> |
| </li> |
| <li class="none"> |
| <a href="config-users.html" title="Users">Users</a> |
| </li> |
| <li class="none"> |
| <a href="config-recipientrewritetable.html" title="Recipient Rewrite">Recipient Rewrite</a> |
| </li> |
| <li class="none"> |
| <a href="config-mailbox.html" title="Mailbox">Mailbox</a> |
| </li> |
| <li class="none"> |
| <a href="config-mailrepositorystore.html" title="Mail Repository Stores">Mail Repository Stores</a> |
| </li> |
| <li class="none"> |
| <a href="config-dnsservice.html" title="DNS Service">DNS Service</a> |
| </li> |
| <li class="none"> |
| <a href="config-smtp-lmtp.html" title="SMTP LMTP">SMTP LMTP</a> |
| </li> |
| <li class="none"> |
| <a href="config-pop3.html" title="POP3">POP3</a> |
| </li> |
| <li class="none"> |
| <a href="config-imap4.html" title="IMAP4">IMAP4</a> |
| </li> |
| <li class="none"> |
| <a href="config-mailetcontainer.html" title="Mailet Container">Mailet Container</a> |
| </li> |
| <li class="none"> |
| <a href="config-fetchmail.html" title="FetchMail">FetchMail</a> |
| </li> |
| <li class="none"> |
| <a href="config-ssl-tls.html" title="SSL/TLS">SSL/TLS</a> |
| </li> |
| <li class="none"> |
| <a href="config-sieve.html" title="Sieve">Sieve</a> |
| </li> |
| <li class="none"> |
| <a href="config-antispam.html" title="Anti Spam">Anti Spam</a> |
| </li> |
| </ul> |
| </li> |
| <li class="collapsed"> |
| <a href="manage.html" title="4. Manage">4. Manage</a> |
| </li> |
| <li class="collapsed"> |
| <a href="monitor.html" title="5. Monitor">5. Monitor</a> |
| </li> |
| <li class="collapsed"> |
| <a href="upgrade.html" title="6. Upgrade">6. Upgrade</a> |
| </li> |
| </ul> |
| <h5>Developers Corner</h5> |
| <ul> |
| <li class="none"> |
| <a href="dev.html" title="Architecture">Architecture</a> |
| </li> |
| <li class="none"> |
| <a href="dev-build.html" title="Build from source">Build from source</a> |
| </li> |
| <li class="none"> |
| <a href="dev-database-schema.html" title="Database Schema">Database Schema</a> |
| </li> |
| <li class="collapsed"> |
| <a href="dev-extend.html" title="Develop Extensions">Develop Extensions</a> |
| </li> |
| <li class="collapsed"> |
| <a href="dev-provided.html" title="Provided Extensions">Provided Extensions</a> |
| </li> |
| <li class="none"> |
| <a href="https://repository.apache.org/content/repositories/snapshots/org/apache/james/apache-james/" title="Nightly builds">Nightly builds</a> |
| </li> |
| </ul> |
| <h5>References</h5> |
| <ul> |
| <li class="none"> |
| <a href="apidocs/index.html" title="Javadoc">Javadoc</a> |
| </li> |
| <li class="none"> |
| <a href="https://issues.apache.org/jira/browse/JAMES" title="Issue Tracker">Issue Tracker</a> |
| </li> |
| </ul> |
| <h5>About James</h5> |
| <ul> |
| <li class="none"> |
| <a href="../../index.html" title="Overview">Overview</a> |
| </li> |
| <li class="none"> |
| <a href="../../newsarchive.html" title="News">News</a> |
| </li> |
| <li class="none"> |
| <a href="../../mail.html" title="Mailing Lists">Mailing Lists</a> |
| </li> |
| <li class="none"> |
| <a href="../../contribute.html" title="Contributing">Contributing</a> |
| </li> |
| <li class="none"> |
| <a href="../../guidelines.html" title="Guidelines">Guidelines</a> |
| </li> |
| <li class="none"> |
| <a href="http://wiki.apache.org/james" title="Wiki">Wiki</a> |
| </li> |
| <li class="none"> |
| <a href="../../team-list.html" title="Who We Are">Who We Are</a> |
| </li> |
| <li class="none"> |
| <a href="../../license.html" title="License">License</a> |
| </li> |
| </ul> |
| <h5>Download</h5> |
| <ul> |
| <li class="none"> |
| <a href="../../download.cgi" title="Releases">Releases</a> |
| </li> |
| <li class="none"> |
| <a href="https://repository.apache.org/content/repositories/snapshots/org/apache/james/" title=""></a> |
| </li> |
| </ul> |
| <h5>Apache Software Foundation</h5> |
| <ul> |
| <li> |
| <strong> |
| <a title="ASF" href="http://www.apache.org/">ASF</a> |
| </strong> |
| </li> |
| <li> |
| <a title="Get Involved" href="http://www.apache.org/foundation/getinvolved.html">Get Involved</a> |
| </li> |
| <li> |
| <a title="FAQ" href="http://www.apache.org/foundation/faq.html">FAQ</a> |
| </li> |
| <li> |
| <a title="License" href="http://www.apache.org/licenses/" >License</a> |
| </li> |
| <li> |
| <a title="Sponsorship" href="http://www.apache.org/foundation/sponsorship.html">Sponsorship</a> |
| </li> |
| <li> |
| <a title="Thanks" href="http://www.apache.org/foundation/thanks.html">Thanks</a> |
| </li> |
| <li> |
| <a title="Security" href="http://www.apache.org/security/">Security</a> |
| </li> |
| </ul> |
| <a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy"> |
| <img class="poweredBy" alt="Built by Maven" src="./images/logos/maven-feather.png" /> |
| </a> |
| |
| |
| </div> |
| </div> |
| <div id="bodyColumn"> |
| <div id="contentBox"> |
| <!-- Licensed to the Apache Software Foundation (ASF) under one |
| or more contributor license agreements. See the NOTICE file |
| distributed with this work for additional information |
| regarding copyright ownership. The ASF licenses this file |
| to you under the Apache License, Version 2.0 (the |
| "License"); you may not use this file except in compliance |
| with the License. You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, |
| software distributed under the License is distributed on an |
| "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| KIND, either express or implied. See the License for the |
| specific language governing permissions and limitations |
| under the License. --> |
| |
| |
| |
| <div class="section"><h2>Server Wide Configuration<a name="Server_Wide_Configuration"></a></h2> |
| |
| <div class="section"><h3>Introduction<a name="Introduction"></a></h3> |
| |
| <p>There are a number of global configuration files that do not fall into any one |
| component. They have effects that are global in scope across the server.</p> |
| |
| <p>Some of these files are crucial, while others can be ignored by any but the most sophisticated |
| server administrators.</p> |
| |
| </div> |
| |
| <div class="section"><h3>spring-beans.xml<a name="spring-beans.xml"></a></h3> |
| |
| <p>In James distribution, the spring files are located under conf/context folder and splitted into a main |
| file (james-server-context.xml) which imports 4 other files (1 per mailbox type): james-mailbox-jcr-context.xml, james-mailbox-jpa-context.xml, |
| james-mailbox-maildir-context.xml, james-mailbox-memory-context.xml.</p> |
| |
| <p>Consult <a class="externalLink" href="http://svn.apache.org/repos/asf/james/server/trunk/app/src/main/resources/spring-beans.xml">spring-beans.xml</a> in SVN to |
| get some examples and hints.</p> |
| |
| <p>spring beans files are the place where the Apache James Server wiring is done. It should be modified only by expert-users.</p> |
| |
| </div> |
| |
| <div class="section"><h3>database.properties<a name="database.properties"></a></h3> |
| |
| <p>Consult <a class="externalLink" href="http://svn.apache.org/repos/asf/james/server/trunk/app/src/main/resources/database.properties">database.properties</a> in SVN to get some examples and hints.</p> |
| |
| <p>The database connection in database.properties</p> |
| |
| <p>James has the capacity to use a JDBC-compatible database for storage of both message and user |
| data. This section explains how to configure James to utilize a database for storage.</p> |
| |
| <p>To avoid vendor-specific issues, the JPA (Java Persistence Architecture) is used (using the Apache OpenJPA implementation).</p> |
| |
| <p>There must be a database instance accessible from the James server. An account with appropriate |
| privileges (select, insert, delete into tables, and on initial startup creation of tables) and |
| with sufficient quota for the data to be inserted into the database must be available.</p> |
| |
| <p>Also, since James will use JDBC to access the database, an appropriate JDBC driver must be |
| available for installation. You can place the JDBC driver jar in the conf/lib folder, it will |
| be automatically loaded.</p> |
| |
| <dl> |
| <dt><b>database.driverClassName</b></dt> |
| <dd>he class name of the database driver to be used.</dd> |
| <dt><b>database.url</b></dt> |
| <dd>The JDBC connection URL for your database/driver.</dd> |
| <dt><b>database.username</b></dt> |
| <dd>The user id of the database account to be used by this connection.</dd> |
| <dt><b>database.password</b></dt> |
| <dd>The password of the database account to be used by this connection.</dd> |
| <dt><b>vendorAdapter.database</b></dt> |
| <dd>Supported adapters are: DB2, DERBY, H2, HSQL, INFORMIX, MYSQL, ORACLE, POSTGRESQL, SQL_SERVER, SYBASE .</dd> |
| <dt><b>openjpa.streaming</b></dt> |
| <dd>true or false - Use streaming for Blobs. This is only supported on a limited set of databases atm. You |
| should check if its supported by your DB before enable it. See <a class="externalLink" href="http://openjpa.apache.org/builds/latest/docs/manual/ref_guide_mapping_jpa.html">http://openjpa.apache.org/builds/latest/docs/manual/ref_guide_mapping_jpa.html</a> (#7.11. LOB Streaming).</dd> |
| </dl> |
| |
| <p>Note for postgresql databases: Add standard_conforming_strings=off to your postgresql.xml, otherwise you |
| will get ""Invalid escape string Hint: Escape string must be empty or one character. {prepstmnt 174928937 |
| SELECT t0.mailbox_id, t0.mailbox_highest_modseq, t0.mailbox_last_uid, t0.mailbox_name, t0.mailbox_namespace, |
| t0.mailbox_uid_validity, t0.user_name FROM public.james_mailbox t0 WHERE (t0.mailbox_name LIKE ? |
| ESCAPE '\\' AND t0.user_name = ? AND t0.mailbox_namespace = ?) [params=?, ?, ?]} [code=0, state=22025]"</p> |
| |
| </div> |
| |
| <div class="section"><h3>META-INF/persistence.xml<a name="META-INFpersistence.xml"></a></h3> |
| |
| <p>Consult <a class="externalLink" href="http://svn.apache.org/repos/asf/james/server/trunk/app/src/main/resources/META-INF/persistence.xml">META-INF/persistence.xml</a> in SVN to get some examples and hints.</p> |
| |
| <p>The JPA mapping and properties are defined in the in META-INF/persistence.xml.</p> |
| |
| <p>You can override the definition in external file and importing the external file in the persistence.xml (see jpa-mappings.xml provided example in SVN)</p> |
| |
| <div class="source"><pre> |
| <mapping-file>META-INF/jpa-mappings.xml</mapping-file></pre></div> |
| |
| </div> |
| |
| <div class="section"><h3>jmx.properties<a name="jmx.properties"></a></h3> |
| |
| <p>Consult <a class="externalLink" href="http://svn.apache.org/repos/asf/james/server/trunk/app/src/main/resources/jmx.properties">jmx.properties</a> in SVN to get some examples and hints.</p> |
| |
| <p>This is used to configure the JMX MBean server via which all management is achieved (also used by via the james-cli).</p> |
| |
| <dl> |
| <dt><b>jmx.address</b></dt> |
| <dd>The IP address (host name) the MBean Server will bind/listen to.</dd> |
| <dt><b>jmx.port</b></dt> |
| <dd>The port number the MBean Server will bind/listen to.</dd> |
| </dl> |
| |
| </div> |
| |
| <div class="section"><h3>sqlResources.xml<a name="sqlResources.xml"></a></h3> |
| |
| <p>Consult <a class="externalLink" href="http://svn.apache.org/repos/asf/james/server/trunk/app/src/main/resources/sqlResources.xml">sqlResources.xml</a> in SVN to get some examples and hints.</p> |
| |
| <p>This file is deprecated but some mailets... still need it. The standard way to access database |
| is JPA, but some functionalities are not yet migrated and still need the sqlResources.xml resources.</p> |
| |
| <p>The precise SQL statements used by Apache James Server to modify and view data stored in the database |
| are specified in sqlResources.xml file.</p> |
| |
| <p>If you are using a SQL database with unusual SQL commands or data types, you may |
| need to add special entries to this file. The James team |
| does try to keep sqlResources.xml updated, so if you do run into a |
| special case, please let us know.</p> |
| |
| <p>Also, if the database tables are not created a priori, but rather are to be created by James |
| upon startup, special attention should be paid to the "create table" statements in this file. Such |
| statements tend to be both very database and very database instance specific.</p> |
| |
| </div> |
| |
| <div class="section"><h3>JCR Repository Configuration<a name="JCR_Repository_Configuration"></a></h3> |
| |
| <p>Consult <a class="externalLink" href="http://svn.apache.org/repos/asf/james/server/trunk/app/src/main/resources/jcr-repository.xml">jcr-repository.xml</a> in SVN to get some examples and hints.</p> |
| |
| <p>Used to configure the JCR mailbox (if configure in mailbox.xml).</p> |
| |
| </div> |
| |
| </div> |
| |
| |
| |
| |
| </div> |
| </div> |
| <div class="clear"> |
| <hr/> |
| </div> |
| <div id="footer"> |
| <div class="xright">Copyright © 2002-2012 |
| <a href="http://www.apache.org/">The Apache Software Foundation</a>. |
| All Rights Reserved. |
| |
| </div> |
| <div class="clear"> |
| <hr/> |
| </div> |
| </div> |
| </body> |
| </html> |