Storage Layer Global/Storages section
The Storages child section of the Global section in the Storage Layer configuration file, cd_storage_conf.xml, configures all available storage locations.
Overall structure of file
<Storages>
<StorageBindings>
<Bundle/>
...
</StorageBindings>
<Wrappers>
<Wrapper/>
...
</Wrappers>
<Storage/>
...
</Storages>
Storages element
The Storages element has one optional string attribute, TempFileSystemTransactionLocation, specifying where to temporarily store file system transactions for all file system storages. If omitted, this value defaults to whatever the java.io.tmpdir Java system property is set to.
Storages has the following child sections:
| Child section | Required? |
|---|---|
StorageBindings | |
Wrappers | |
Storage (one or more times) |
StorageBindings child section
If specified, this section overrides the default Tridion DAO bundles. It must have one or more Bundle child elements, each of which defines a storage bundle containing DAO definitions. Use the optional string src attribute of the Bundle element to specify the relative location of the storage bundle.
Wrappers child section
If specified, this section contains storage wrapper definitions. It must have one or more Wrapper child elements, each of which defines a storage wrapper. The Name attribute of the Wrapper element specifies the name of the defined wrapper source. Wrapper can have any number of child elements of any type.
Storage child section(s)
Storage child section configures a storage provider. The Storage element has the following attributes, all optional:
| Attribute name | Type | Description of value |
|---|---|---|
Type | string | The type of the storage provider used, such as File or Persistence |
Class | string | The class that implements the storage provider |
Id | string | The identifier of the storage provider, used to map item types and Publication storage configuration to it |
Username | string | The name of the user to use for database interaction |
Password | string | The password of the user to use for database interaction |
Url | string | The URL that the database driver should connect to |
Driver | string | The fully qualified classname for the driver to be used. |
JNDIName | string | The JNDI name of a data source to use. When used, No other attributes or a data source may be specified. |
dialect | string | The dialect used by this storage provider, if it is persistence-based |
FlushInterval | integer | If Type is set to Persistence, the maximum allowed amount of JPA EntityManager operations before they are actually flushed. Defaults to 100 if unspecified. No file system flush interval is implemented. |
defaultFilesystem | Boolean | Whether the file structure of the file system storage will be the default one |
defaultStorage | Boolean | Whether file system storage will be the default one |
NamespaceServiceBean | string | The NamespaceService bean used to resolve namespaces for this data source. If left unspecified, it defaults to NamespaceService. |
Storage child element has the following child elements or child sections, all optional:
Poolchild element-
The
Poolchild element defines pooling behavior through the following attribute:Attribute name Type Required? Description of value AcquireRetryAttemptsinteger The number of times a connection is retried in the event of a failure to connect. "5" would be a good value for this attribute. DataSourcechild section-
The
DataSourceelement has aClassattribute to specify its data source Java implementation class, which must be one of the following:Database type ClassvalueMicrosoft SQL Server com.microsoft.sqlserver.jdbc.SQLServerDataSource Oracle oracle.jdbc.pool.OracleDataSource Rootchild element-
When using a file system-based storage provider, include this element and set its
Pathattribute to the storage location to be used for the file system-based operations. QueryGeneratorchild element-
This element configures the storage provider used by the item types or publication storage mappings. It has a
Nameattribute for the property name, and aClassproperty for the Java class that implements the property.