We have 2 CDA websites (publication targets), Preview and Live.
As per the question here, we should have single DB for XPM and Preview Broker. I have HTTPUpload WebService (deployed in IIS as a website) - for preview, where I have deployed odata.svc as well - to reduce the number of IIS web services.
Below is the storages configuration in cd_storage.conf file on my preview cum experience manager website/web-service:
<Storages>
<Wrappers>
<Wrapper Name="SessionWrapper">
<Storage Id="sessionDB" Class="com.tridion.storage.persistence.JPADAOFactory" Type="persistence" dialect="MSSQL">
<Pool Type="jdbc" Size="5" MonitorInterval="60" IdleTimeout="120" CheckoutTimeout="120" />
<DataSource Class="com.microsoft.sqlserver.jdbc.SQLServerDataSource">
<Property Name="serverName" Value="MYDBSERVERNAME" />
<Property Name="portNumber" Value="1433" />
<Property Name="databaseName" Value="Tridion_ExperienceManager_Dev" />
<Property Name="user" Value="adminUser" />
<Property Name="password" Value="adminPass" />
</DataSource>
</Storage>
</Wrapper>
</Wrappers>
<Storage Type="persistence" Id="defaultdb" dialect="MSSQL" Class="com.tridion.storage.persistence.JPADAOFactory">
<Pool Type="jdbc" Size="5" MonitorInterval="60" IdleTimeout="120" CheckoutTimeout="120"/>
<DataSource Class="com.microsoft.sqlserver.jdbc.SQLServerDataSource">
<Property Name="serverName" Value="MYDBSERVERNAME"/>
<Property Name="portNumber" Value="1433"/>
<Property Name="databaseName" Value="Tridion_ExperienceManager_Dev"/>
<Property Name="user" Value="adminUser"/>
<Property Name="password" Value="adminPass"/>
</DataSource>
</Storage>
</Storages>
Please let me know if this is correct.
However, XPM and publishing to preview is working fine.
Also let me know where do we use "sessionDB" - coz at present, its not being used anywhere.
Thanks.