You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by da...@apache.org on 2013/02/15 11:32:03 UTC

svn commit: r1446499 - in /isis/site/trunk/content: core/about.md core/configuration-files.md core/deployment-type.md core/publishing-service.md documentation.md

Author: danhaywood
Date: Fri Feb 15 10:32:02 2013
New Revision: 1446499

URL: http://svn.apache.org/r1446499
Log:
isis site - configuration files

Added:
    isis/site/trunk/content/core/configuration-files.md
Modified:
    isis/site/trunk/content/core/about.md
    isis/site/trunk/content/core/deployment-type.md
    isis/site/trunk/content/core/publishing-service.md
    isis/site/trunk/content/documentation.md

Modified: isis/site/trunk/content/core/about.md
URL: http://svn.apache.org/viewvc/isis/site/trunk/content/core/about.md?rev=1446499&r1=1446498&r2=1446499&view=diff
==============================================================================
--- isis/site/trunk/content/core/about.md (original)
+++ isis/site/trunk/content/core/about.md Fri Feb 15 10:32:02 2013
@@ -4,27 +4,28 @@ Title: Core Modules
 
 ###  Applib
 
-- [Deployment Types](core/deployment-type.html)
-- [Applib](core/applib.html)
+- [Configuration Files](configuration-files.html)
+- [Deployment Types](deployment-type.html)
+- [Applib](applib.html)
 
 ###  Services
 
-- [Publishing Service](core/publishing-service.html) [not yet released]
+- [Publishing Service](publishing-service.html) [not yet released]
 
 ### Development
 
-- [Unit Test Support](core/unittestsupport.html) [stub]
-- [Integration Test Support](core/integtestsupport.html) [stub]
+- [Unit Test Support](unittestsupport.html) [stub]
+- [Integration Test Support](integtestsupport.html) [stub]
 
 ###  Programming Model
 
-- [Finetuning the Programming Model](core/metamodel-finetuning-the-programming-model.html)
+- [Finetuning the Programming Model](metamodel-finetuning-the-programming-model.html)
 
 
 ### Runtime
 
-- [Core Runtime](core/runtime.html) [stub]
-- [Webserver](core/webserver.html) [stub]
+- [Core Runtime](runtime.html) [stub]
+- [Webserver](webserver.html) [stub]
 
 ### Bundled Components
 

Added: isis/site/trunk/content/core/configuration-files.md
URL: http://svn.apache.org/viewvc/isis/site/trunk/content/core/configuration-files.md?rev=1446499&view=auto
==============================================================================
--- isis/site/trunk/content/core/configuration-files.md (added)
+++ isis/site/trunk/content/core/configuration-files.md Fri Feb 15 10:32:02 2013
@@ -0,0 +1,77 @@
+Title: Configuration Files
+
+Isis has one mandatory configuration file, `isis.properties`.  For the webapp viewers, this typically lives alongside the `web.xml` file in the `WEB-INF` directory.  If necessary, though, it can be configured to live outside this directory; this is discussed later on in this article.
+
+In addition to the `isis.properties` file, Isis will also read from a number of supplementary configuration files.  For example:
+
+* if the JDO (DataNucleus) objectstore is configured, then Isis will search for `persistor_datanucleus.proeprties`.
+
+* Or, if the Shiro authentication has been configured, it will search for `authentication_shiro.properties`.
+
+This approach allows configuration to be partitioned by component.  To restate though, this is not mandatory: you can just use `isis.properties` for all configuration if you wish.
+
+### Specifying Components
+
+A running Isis instance requires a persistor (aka objectstore), the authentication mechanism, the authorization mechanism, and a user profile store.  It also requires some sort of viewer or viewers.
+
+The persistor, authentication, authorization and profilestore are specified in the `isis.properties` file.  For example, this is the configuration of the [Wicket/Restful/JDO archetype](../getting-started/quickstart-archetype.html):
+
+<pre>
+isis.persistor=datanucleus
+isis.authentication=shiro
+isis.authorization=shiro
+isis.user-profile-store=in-memory
+</pre>
+
+The available values are registered in [installer-registry.properties](https://raw.github.com/apache/isis/master/core/runtime/src/main/resources/org/apache/isis/core/runtime/installer-registry.properties); alternatively the fully qualified class name can be specified.  In either case the appropriate component must also (of course) be added as a dependency to the `pom.xml` files.  
+
+The viewer is *not* specified in the `isis.properties` file; rather it is implied by the configuration of `WEB-INF/web.xml` file.  The archetypes are a good point of reference for the required servlet context listeners and servlets; every viewer has its own requirements.
+
+Some of the viewers have their own configuration properties.  These can also be moved out into their supplementary config files, provided that an additional entry is made in the `web.xml` file.  For example, to specify that the Wicket viewer and Restful Objects viewer config files should be read, add the following:
+
+<pre>
+&lt;context-param&gt;
+    &lt;param-name&gt;isis.viewers&lt;/param-name&gt;
+    &lt;param-value&gt;wicket,restfulobjects&lt;/param-value&gt;
+&lt;/context-param&gt;
+</pre>
+
+This will cause Isis to search and read for `viewer_wicket.properties` and `viewer_restfulobjects.properties`.
+
+(Note: this is only supported for the Wicket viewer for 1.2.0 on, see [ISIS-342](https://issues.apache.org/jira/browse/ISIS-342))
+
+### Specifying an external configuration directory
+
+As noted above, by default Isis will look for configuration files in the `WEB-INF` directory.  If you wish to vary the configuration by environment (eg systest vs production), then this can be altered by specifying the `isis.config.dir` context parameter.
+
+If the external configuration directory will change from one environment to another, then specify the context parameter according to the documentation of your chosen servlet container.  For example, if using Tomcat 7.0, the context parameter can be specified by adding the following to the parameter:
+
+<pre>
+&lt;Parameter name="isis.config.dir" value="/usr/local/tomcat/conf/"
+         override="true"/&gt;
+</pre>
+
+For more detail see the [Tomcat documentation](http://tomcat.apache.org/tomcat-7.0-doc/config/context.html#Context_Parameters).
+     
+If the external configuration directory is fixed for all environments, then you can specify within the `web.xml` itself:
+
+<pre>
+&lt;context-param&gt;
+    &lt;param-name&gt;isis.config.dir&lt;/param-name&gt;
+    &lt;param-value&gt;location of external config directory&lt;/param-value&gt;
+&lt;/context-param&gt;
+</pre>
+
+
+
+###Shiro
+
+If using Shiro authentication and/or authorization, note that it reads from the `shiro.ini` configuration file.  By default this also resides in `WEB-INF`.
+
+Similar to Isis, Shiro lets this configuration directory be altered, by specifying the `shiroConfigLocations` context parameter.
+
+You can therefore override the default location using the same technique as described above for Isis' `isis.config.dir` context parameter.
+
+
+
+

Modified: isis/site/trunk/content/core/deployment-type.md
URL: http://svn.apache.org/viewvc/isis/site/trunk/content/core/deployment-type.md?rev=1446499&r1=1446498&r2=1446499&view=diff
==============================================================================
--- isis/site/trunk/content/core/deployment-type.md (original)
+++ isis/site/trunk/content/core/deployment-type.md Fri Feb 15 10:32:02 2013
@@ -104,20 +104,3 @@ or using the long form:
 
 The default if not specified is `PROTOTYPE`.
 
-
-## Specifying components explicitly
-
-To specify the various components explicitly, add an entry to `isis.properties` config file (in the `WEB-INF` directory for the web viewers, or the `config` directory for the DnD viewer).
-
-For example:
-
-<pre>
-isis.authentication=ldap
-isis.authorization=file
-isis.persistor=datanucleus           # ie object store
-isis.user-profile-store=in-memory    # ie profile store
-</pre>
-
-The available values are registered in [installer-registry.properties](https://raw.github.com/apache/isis/master/core/runtime/src/main/resources/org/apache/isis/core/runtime/installer-registry.properties); alternatively the fully qualified class name can be specified.  
-
-In either case the appropriate component must of course be added as a dependency to the `pom.xml` file.  

Modified: isis/site/trunk/content/core/publishing-service.md
URL: http://svn.apache.org/viewvc/isis/site/trunk/content/core/publishing-service.md?rev=1446499&r1=1446498&r2=1446499&view=diff
==============================================================================
--- isis/site/trunk/content/core/publishing-service.md (original)
+++ isis/site/trunk/content/core/publishing-service.md Fri Feb 15 10:32:02 2013
@@ -145,7 +145,7 @@ isis.services=<i>...other services...</i
 In addition, the `baseUrl` to use in hyperlinks must be specified, also in `isis.properties`; for example:
 
 <pre>
-org.apache.isis.viewer.restfulobjects.rendering.eventserializer.RestfulObjectsSpecEventSerializer.baseUrl=https://myapp.mycompany.com:8080/restful/.
+isis.viewer.restfulobjects.RestfulObjectsSpecEventSerializer.baseUrl=https://myapp.mycompany.com:8080/restful/.
 </pre>
 
 If no `baseUrl` is specified, then the default URL is `http://localhost:8080/restful/`.

Modified: isis/site/trunk/content/documentation.md
URL: http://svn.apache.org/viewvc/isis/site/trunk/content/documentation.md?rev=1446499&r1=1446498&r2=1446499&view=diff
==============================================================================
--- isis/site/trunk/content/documentation.md (original)
+++ isis/site/trunk/content/documentation.md Fri Feb 15 10:32:02 2013
@@ -70,6 +70,7 @@ Title: Documentation
 
 ###  Applib
 
+- [Configuration Files](core/configuration-files.html)
 - [Deployment Types](core/deployment-type.html)
 - [Applib](core/applib.html)