I am in middle of installing Sites9 deployer on a Linux machine. I am using deployer-combined setup. With a State Store DB (installed already with PS script) I can succesfully work it out and my publishing happens succesfully. But when I try to use the same Broker DB info on setenv.sh for state store configuration, the deployer-combine does not install.
I get below errors:
2019-09-17 10:30:49,972 ERROR [main] SpringApplication - Application startup failed
org.springframework.beans.factory.UnsatisfiedDependencyException: Error
creating bean with name 'entityManagerFactory' defined in class path resource
[com/sdl/delivery/spring/configuration/StateStoreDBConfiguration.class]:
Unsatisfied dependency expressed through method 'entityManagerFactory' parameter 0; nested exception is
org.springframework.beans.factory.BeanCreationException:
Error creating bean with name 'dataSource' defined in class path resource
[com/sdl/delivery/spring/configuration/StateStoreDBConfiguration.class]:
Bean instantiation via factory method failed; nested exception is
org.springframework.beans.BeanInstantiationException: Failed to instantiate
[javax.sql.DataSource]: Factory method 'dataSource' threw exception; nested
exception is com.sdl.delivery.configuration.ConfigurationException:
Placeholder value is found. Please specify valid configuration for State Store database
What configuration option should be used in deployer-conf.xml for <State>
.
I have below configuration at the moment:
deployer-conf:
<State>
<Storage Adapter="mssql" driver="com.microsoft.sqlserver.jdbc.SQLServerDriver">
<Property Name="host" Value="xx.xxx.xx.xxx"/>
<Property Name="port" Value="1433"/>
<Property Name="database" Value="Sites9_Broker"/>
<Property Name="user" Value="xxxxxxx"/>
<Property Name="password" Value="********"/>
<Property Name="validationQuery" Value="SELECT 1"/>
</Storage>
</State>
cd_storage_conf:
<Storage Type="persistence" Id="defaultdb" dialect="MSSQL"
Class="com.tridion.storage.persistence.JPADAOFactory">
<Pool Type="jdbc" Size="10" MonitorInterval="60" IdleTimeout="120" CheckoutTimeout="120"/>
<DataSource Class="com.microsoft.sqlserver.jdbc.SQLServerDataSource">
<Property Name="serverName" Value="xx.xxx.xx.xxx" />
<Property Name="portNumber" Value="1433" />
<Property Name="databaseName" Value="Sites9_Broker" />
<Property Name="user" Value="xxxxxxx" />
<Property Name="password" Value="********"/>
</DataSource>
</Storage>
I have looked at doc and it tells - If you installed your State Store database tables in the same database as the Content Data Store (which is what happens by default), you can consult the Storage element for the Content Data Store as found in the Storage Layer configuration file, cd_storage_conf.xml. Note that that Storage element has a different definition than the present one.
After tryin this, I still get the same error.
I have 2 questions:
If I just use th Broker DB instead of State Store DB, whay it does not work? both the DBs has same tables?
What configurational changes are needed to use deployer-combined without any State Store DB?
Thanks a lot in advance!