0

We have migrated SDL Tridion 2013 SP1 to Web 8.5 and while configuring AWS cloud search by taking jars from SDL.DXA.Search.Module.2.0\modules\Search\deployer\lib\si4t-cloudsearch

After that when published it failed with below error

Could not load SearchIndexer. Check your configuration.

Stack trace

2018-12-21 07:41:23,243 ERROR TridionCommitStep - Commit failed for execution id:tcm:0-2419420-66560
com.sdl.delivery.deployer.api.processing.exception.ProcessingException: Unable to commit transactions. ExecutionId:tcm:0-2419420-66560
    at com.sdl.delivery.deployer.steps.TridionTransactionalExecutableStep.commitTransaction(TridionTransactionalExecutableStep.java:78)
    at com.sdl.delivery.deployer.steps.TridionCommitStep.process(TridionCommitStep.java:28)
    at com.sdl.delivery.deployer.engine.pipeline.actor.StepActor.execute(StepActor.scala:72)
    at com.sdl.delivery.deployer.engine.pipeline.actor.StepActor.com$sdl$delivery$deployer$engine$pipeline$actor$StepActor$$processStep(StepActor.scala:57)
    at com.sdl.delivery.deployer.engine.pipeline.actor.StepActor$$anonfun$receive$1.applyOrElse(StepActor.scala:40)
    at akka.actor.Actor$class.aroundReceive(Actor.scala:480)
    at com.sdl.delivery.deployer.engine.pipeline.actor.StepActor.aroundReceive(StepActor.scala:26)
    at akka.actor.ActorCell.receiveMessage(ActorCell.scala:526)
    at akka.actor.ActorCell.invoke(ActorCell.scala:495)
    at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:257)
    at akka.dispatch.Mailbox.run(Mailbox.scala:224)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)
Caused by: com.tridion.broker.StorageException: Commit failed for transaction tcm:0-2419420-66560 because of com.tridion.storage.si4t.IndexingException: Could not load SearchIndexer. Check your configuration.
    at com.tridion.storage.management.TransactionManagerImpl.commitTransaction(TransactionManagerImpl.java:70)
    at com.tridion.storage.StorageManagerFactory.commitTransaction(StorageManagerFactory.java:226)
    at com.sdl.delivery.deployer.steps.TridionTransactionalExecutableStep.commitTransaction(TridionTransactionalExecutableStep.java:76)
    ... 13 common frames omitted
Caused by: com.tridion.broker.StorageException: com.tridion.storage.si4t.IndexingException: Could not load SearchIndexer. Check your configuration.
    at com.tridion.storage.si4t.JPASearchDAOFactory.commitTransaction(JPASearchDAOFactory.java:202)
    at com.tridion.storage.management.TransactionManagerImpl.commitTransaction(TransactionManagerImpl.java:65)
    ... 15 common frames omitted
Caused by: com.tridion.storage.si4t.IndexingException: Could not load SearchIndexer. Check your configuration.
    at com.tridion.storage.si4t.SearchIndexProcessor.triggerIndexing(SearchIndexProcessor.java:262)
    at com.tridion.storage.si4t.JPASearchDAOFactory.commitTransaction(JPASearchDAOFactory.java:189)
    ... 16 common frames omitted

I am using only single deployer service and configured storage node for publications which uses AWS Cloud Search Module and Other Storage for remaining publications as shown below.

<?xml version="1.0" encoding="UTF-8"?><Configuration xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" Version="8.5" xsi:noNamespaceSchemaLocation="schemas/cd_storage_conf.xsd">
    <Namespace default="tcm"/>
    <Global>
        <ObjectCache Enabled="false">
            <Policy Class="com.tridion.cache.LRUPolicy" Type="LRU">
                <Param Name="MemSize" Value="16mb"/>
            </Policy>
            <Features>
                <Feature Class="com.tridion.cache.DependencyTracker" Type="DependencyTracker"/>
            </Features>
        </ObjectCache>
        <Storages>
            <StorageBindings>
                <Bundle src="SearchDAOBundle.xml"/>
            </StorageBindings>
            <Storage Class="com.tridion.storage.si4t.JPASearchDAOFactory" Id="sqlServer" Type="persistence" dialect="MSSQL">
                <Pool CheckoutTimeout="120" IdleTimeout="120" MonitorInterval="60" Size="5" Type="jdbc"/>
                <DataSource Class="com.microsoft.sqlserver.jdbc.SQLServerDataSource">
                    <Property Name="serverName" Value="DEVAG02\SQL01"/>
                    <Property Name="portNumber" Value="9561"/>
                    <Property Name="databaseName" Value="Tridion"/>
                    <Property Name="user" Value="TridionBroker"/>
                    <Property Name="password" Value="Tridion"/>
                </DataSource>
                <Indexer Class="org.si4t.cloudsearch.CloudSearchIndexer" DocExtensions="pdf,docx,doc,xls,xlsx,pptx,ppt,xml,jpg,png" access_key_id="KEW6HC74334" authentication="explicit" documentEndpoint="doc-dev-live-le-5yist4ubp3pr2gq3pbwevm22uq.eu-west-1.cloudsearch.amazonaws.com" indexBatchSize="20" secret_access_key="QT5LDTKcg2tyVq9TP70k7fOqM9/pS"/>
            </Storage>
            <Storage Class="com.tridion.storage.persistence.JPADAOFactory" Id="defaultdb" Type="persistence" dialect="MSSQL">
                <Pool CheckoutTimeout="120" IdleTimeout="120" MonitorInterval="60" Size="5" Type="jdbc"/>
                <DataSource Class="com.microsoft.sqlserver.jdbc.SQLServerDataSource">
                    <Property Name="serverName" Value="DEVAG02\SQL01"/>
                    <Property Name="portNumber" Value="9561"/>
                    <Property Name="databaseName" Value="Tridion_Broker"/>
                    <Property Name="user" Value="Tridion"/>
                    <Property Name="password" Value="Tridion"/>
                </DataSource>
            </Storage>
            <Storage Class="com.tridion.storage.filesystem.FSDAOFactory" Id="defaultFile" Type="filesystem" defaultFilesystem="false">
                <Root Path="D:\DevLivePublic\live"/>
            </Storage>
            <Storage Class="com.tridion.storage.filesystem.FSDAOFactory" Id="cie_index_files" Type="filesystem" defaultFilesystem="false" defaultStorage="false">
                <Root Path="D:\DevLivePublic\live\CIE\SearchIndex\Resources"/>
            </Storage>
            <Storage Class="com.tridion.storage.filesystem.FSDAOFactory" Id="ocr_index_files" Type="filesystem" defaultFilesystem="false" defaultStorage="false">
                <Root Path="D:\DevLivePublic\live\OC\SearchIndex\Resources"/>
            </Storage>
            <Storage Class="com.tridion.storage.filesystem.FSDAOFactory" Id="ce_index_files" Type="filesystem" defaultFilesystem="false" defaultStorage="false">
                <Root Path="D:\DevLivePublic\live\ESOL\SearchIndex\Resources"/>
                <Indexer Class="org.si4t.cloudsearch.CloudSearchIndexer" DocExtensions="pdf,docx,doc,xls,xlsx,pptx,ppt,xml,jpg,png" access_key_id="AKIKEW6HC74" authentication="explicit" documentEndpoint="doc-dev-live-le-5yist4ubp3pr2gwevm22uq.eu-west-1.cloudsearch.amazonaws.com" indexBatchSize="20" secret_access_key="QT54AZNTLDTKcg2tyVq9TP70k7fOqM9/pS"/>
            </Storage>
        </Storages>
        <Transaction MonitorInterval="5000" Timeout="10000000"/>
    </Global>
    <ItemTypes cached="false" defaultStorageId="defaultdb">
        <Item cached="true" storageId="defaultFile" typeMapping="Page"/>
        <Item cached="true" storageId="defaultFile" typeMapping="Binary"/>
        <Publication Id="31" cached="true" defaultStorageId="defaultdb">
            <Item cached="true" storageId="defaultFile" typeMapping="Page"/>
            <Item cached="true" storageId="defaultFile" typeMapping="Binary"/>
            <Item cached="false" itemExtension=".xml" storageId="cie_index_files" typeMapping="ComponentPresentation"/>
        </Publication>
        <Publication Id="33" cached="true" defaultStorageId="defaultdb">
            <Item cached="true" storageId="defaultFile" typeMapping="Page"/>
            <Item cached="true" storageId="defaultFile" typeMapping="Binary"/>
            <Item cached="false" itemExtension=".xml" storageId="ocr_index_files" typeMapping="ComponentPresentation"/>
        </Publication>
        <Publication Id="32" cached="true" defaultStorageId="sqlServer">
            <Item cached="true" storageId="defaultFile" typeMapping="Page"/>
            <Item cached="true" storageId="defaultFile" typeMapping="Binary"/>
            <Item cached="false" itemExtension=".htm" storageId="sqlServer" typeMapping="Page"/>
            <Item cached="false" itemExtension=".xml" storageId="ce_index_files" typeMapping="ComponentPresentation"/>
        </Publication>
        <Publication Id="141" cached="true" defaultStorageId="defaultdb"/>
        <Publication Id="142" cached="true" defaultStorageId="defaultdb"/>
        <Publication Id="123" cached="true" defaultStorageId="defaultdb"/>
    </ItemTypes>
    <ConfigRepository CacheEnabled="true" CacheExpirationDuration="600" ClientId="registration" ClientSecret="encrypted:HzfQh9wYwAKShDxCm4DnnBnysAz9PtbDMFXMbPszSVY=" ConnectionTimeout="20000" ServiceMonitorPollDuration="10" ServiceUri="http://cdlive-dev:9082/discovery.svc" TokenServiceUrl="http://cdlive-dev:9082/token.svc">
        <Roles>
            <Role Name="DeployerCapability" Url="http://cdlive-dev:9084/httpupload">
                <Property Name="encoding" Value="UTF-8"/>
            </Role>
        </Roles>
    </ConfigRepository>
</Configuration>

Search DAO bundle

    <StorageDAOBundle type="filesystem">
        <StorageDAO typeMapping="Page" class="com.tridion.storage.si4t.dao.FSSearchPageDAO"/>
        <StorageDAO typeMapping="Binary" class="com.tridion.storage.si4t.dao.FSSearchBinaryContentDAO"/>
        <StorageDAO typeMapping="ComponentPresentation" class="com.tridion.storage.si4t.dao.FSSearchComponentPresentationDAO"/>
    </StorageDAOBundle>
<StorageDAOBundle type="persistence">
            <StorageDAO typeMapping="Page" class="com.tridion.storage.si4t.dao.JPASearchPageDAO"/>
            <StorageDAO typeMapping="Binary" class="com.tridion.storage.si4t.dao.JPASearchBinaryContentDAO"/>
            <StorageDAO typeMapping="ComponentPresentation" class="com.tridion.storage.si4t.dao.JPASearchComponentPresentationDAO"/>
        </StorageDAOBundle>

Deployed JAR files

aspectjrt.jar                                                                                 
aspectjweaver.jar                                                                             
aws-java-sdk-1.9.6.jar                                                                        
aws-java-sdk-autoscaling-1.9.6.jar                                                            
aws-java-sdk-cloudformation-1.9.6.jar                                                         
aws-java-sdk-cloudfront-1.9.6.jar                                                             
aws-java-sdk-cloudsearch-1.9.6.jar                                                            
aws-java-sdk-cloudtrail-1.9.6.jar                                                             
aws-java-sdk-cloudwatch-1.9.6.jar                                                             
aws-java-sdk-cloudwatchmetrics-1.9.6.jar                                                      
aws-java-sdk-codedeploy-1.9.6.jar                                                             
aws-java-sdk-cognitoidentity-1.9.6.jar                                                        
aws-java-sdk-cognitosync-1.9.6.jar                                                            
aws-java-sdk-config-1.9.6.jar                                                                 
aws-java-sdk-core-1.9.6.jar                                                                   
aws-java-sdk-datapipeline-1.9.6.jar                                                           
aws-java-sdk-directconnect-1.9.6.jar                                                          
aws-java-sdk-dynamodb-1.9.6.jar                                                               
aws-java-sdk-ec2-1.9.6.jar                                                                    
aws-java-sdk-elasticache-1.9.6.jar                                                            
aws-java-sdk-elasticbeanstalk-1.9.6.jar                                                       
aws-java-sdk-elasticloadbalancing-1.9.6.jar                                                   
aws-java-sdk-elastictranscoder-1.9.6.jar                                                      
aws-java-sdk-emr-1.9.6.jar                                                                    
aws-java-sdk-glacier-1.9.6.jar                                                                
aws-java-sdk-iam-1.9.6.jar                                                                    
aws-java-sdk-importexport-1.9.6.jar                                                           
aws-java-sdk-kinesis-1.9.6.jar                                                                
aws-java-sdk-kms-1.9.6.jar                                                                    
aws-java-sdk-lambda-1.9.6.jar                                                                 
aws-java-sdk-logs-1.9.6.jar                                                                   
aws-java-sdk-opsworks-1.9.6.jar                                                               
aws-java-sdk-rds-1.9.6.jar                                                                    
aws-java-sdk-redshift-1.9.6.jar                                                               
aws-java-sdk-route53-1.9.6.jar                                                                
aws-java-sdk-s3-1.9.6.jar                                                                     
aws-java-sdk-ses-1.9.6.jar                                                                    
aws-java-sdk-simpledb-1.9.6.jar                                                               
aws-java-sdk-simpleworkflow-1.9.6.jar                                                         
aws-java-sdk-sns-1.9.6.jar                                                                    
aws-java-sdk-sqs-1.9.6.jar                                                                    
aws-java-sdk-storagegateway-1.9.6.jar                                                         
aws-java-sdk-sts-1.9.6.jar                                                                    
aws-java-sdk-support-1.9.6.jar                                                                
aws-java-sdk-swf-libraries-1.9.6.jar                                                          
commons-codec-1.6.jar                                                                         
commons-logging-1.1.3.jar                                                                     
gson-2.2.2.jar                                                                                
httpclient-4.3.6.jar                                                                          
httpcore-4.3.3.jar                                                                            
jackson-annotations-2.5.0.jar                                                                 
jackson-core-2.5.3.jar                                                                        
jackson-databind-2.5.3.jar                                                                    
javax.mail-api-1.4.6.jar                                                                      
joda-time-2.8.1.jar                                                                           
si4t-1.0.jar                                                                                  
si4t-cloudsearch-1.0.jar

Apart from AWS cloud Search I need to configure Solr search also in same deployer, can I do that?

Can you please suggest me where i am doing mistake.

Additional Information:

New error log

2018-12-23 05:37:14,724 DEBUG StorageManagerImpl - Loading a non cached DAO for publicationId/typeMapping/itemExtension: 32 / Binary / .png
2018-12-23 05:37:14,724 ERROR ReflectionUtil - The constructor of the target class has thrown an exception
java.lang.reflect.InvocationTargetException: null
    at sun.reflect.GeneratedConstructorAccessor164.newInstance(Unknown Source)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
    at java.lang.reflect.Constructor.newInstance(Unknown Source)
    at com.tridion.util.ReflectionUtil.loadClassInstanceWithTypes(ReflectionUtil.java:63)
    at com.tridion.storage.filesystem.FSDAOFactory.getDAOForTypeMappingInTransaction(FSDAOFactory.java:106)
    at com.tridion.storage.management.StorageManagerImpl.getOriginalDAO(StorageManagerImpl.java:179)
    at com.tridion.storage.management.StorageManagerImpl.getDAO(StorageManagerImpl.java:151)
    at com.tridion.storage.StorageManagerFactory.getDAO(StorageManagerFactory.java:175)
    at com.tridion.storage.StorageManagerFactory.getDAOForTransaction(StorageManagerFactory.java:133)
    at com.tridion.storage.deploy.workers.BinaryWorker.doDeploy(BinaryWorker.java:97)
    at com.tridion.deployer.model.transaction.TransactionLogItemWorker.doWork(TransactionLogItemWorker.java:42)
    at com.sdl.delivery.deployer.steps.TridionPreCommitStep.process(TridionPreCommitStep.java:69)
    at com.sdl.delivery.deployer.engine.pipeline.actor.StepActor.execute(StepActor.scala:72)
    at com.sdl.delivery.deployer.engine.pipeline.actor.StepActor.com$sdl$delivery$deployer$engine$pipeline$actor$StepActor$$processStep(StepActor.scala:57)
    at com.sdl.delivery.deployer.engine.pipeline.actor.StepActor$$anonfun$receive$1.applyOrElse(StepActor.scala:40)
    at akka.actor.Actor$class.aroundReceive(Actor.scala:480)
    at com.sdl.delivery.deployer.engine.pipeline.actor.StepActor.aroundReceive(StepActor.scala:26)
    at akka.actor.ActorCell.receiveMessage(ActorCell.scala:526)
    at akka.actor.ActorCell.invoke(ActorCell.scala:495)
    at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:257)
    at akka.dispatch.Mailbox.run(Mailbox.scala:224)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)
Caused by: com.tridion.configuration.ConfigurationException: Indexable file extensions are not configured.
    at com.tridion.storage.si4t.dao.FSSearchBinaryContentDAO.setIndexableFileExtensions(FSSearchBinaryContentDAO.java:86)
    at com.tridion.storage.si4t.dao.FSSearchBinaryContentDAO.<init>(FSSearchBinaryContentDAO.java:57)
    ... 24 common frames omitted
2018-12-23 05:37:14,724 WARN  TridionTransactionalExecutableStep - Rollback transaction due to error. ExecutionId: tcm:0-2419616-66560 error: Unable to load the file system based binding within a transaction.

Error log after updating cd storage config

2018-12-23 15:59:00,374 DEBUG JDBCDataSourceBeanConfigurer - Registering JDBC data source
2018-12-23 15:59:00,374 DEBUG PooledDataSourceBeanConfigurer - Initializing Pooled data source
2018-12-23 15:59:00,374 DEBUG EntityManagerFactoryBeanConfigurer - Registering EntityManagerFactory to Spring Context
2018-12-23 15:59:00,436 DEBUG LocalThreadTransaction - Received a set on the new method with value: null
2018-12-23 15:59:00,436 WARN  StepActor - Step 'PageDeploy' for 'tcm:0-2419617-66560' failed with message: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'storageFactoryConfigurationLoader': Invocation of init method failed; nested exception is com.tridion.configuration.ConfigurationException: Could not load DAO Factory class: com.tridion.storage.si4t.JPADAOFactory
2018-12-23 15:59:00,452 DEBUG HybridStateStore - Found step entity for execution id: tcm:0-2419617-66560, pipeline id: Tridion-Process-Deploy and step id: PageDeploy
2018-12-23 15:59:00,467 ERROR StepActor - Step 'PageDeploy' for 'tcm:0-2419617-66560' can NOT retry
2018-12-23 15:59:00,467 ERROR StepActor - Step 'PageDeploy' for 'tcm:0-2419617-66560': 
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'storageFactoryConfigurationLoader': Invocation of init method failed; nested exception is com.tridion.configuration.ConfigurationException: Could not load DAO Factory class: com.tridion.storage.si4t.JPADAOFactory
    at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:136)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:408)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1575)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:545)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:482)
    at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306)
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302)
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197)
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:751)
    at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:861)
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:541)
    at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:139)
    at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:83)
    at com.tridion.cd.core.kernel.SpringContentDeliveryKernel.ensureInitialised(SpringContentDeliveryKernel.java:38)
    at com.tridion.cd.core.kernel.KernelFactory.registerKernel(KernelFactory.java:40)
    at com.tridion.cd.core.kernel.KernelFactory.getKernel(KernelFactory.java:27)
    at com.tridion.storage.StorageManagerFactory.getComponent(StorageManagerFactory.java:70)
    at com.tridion.storage.StorageManagerFactory.getStorageManager(StorageManagerFactory.java:49)
    at com.tridion.storage.StorageManagerFactory.getDAO(StorageManagerFactory.java:175)
    at com.tridion.storage.StorageManagerFactory.getDAO(StorageManagerFactory.java:121)
    at com.tridion.storage.deploy.PageHandler.deploy(PageHandler.java:64)
    at com.tridion.deployer.DeploymentHandler.deploy(DeploymentHandler.java:101)
    at com.tridion.deployer.modules.PageDeploy.processPage(PageDeploy.java:151)
    at com.tridion.deployer.modules.PageDeploy.processItem(PageDeploy.java:118)
    at com.tridion.deployer.SectionVisitor.processSection(SectionVisitor.java:74)
    at com.tridion.deployer.SectionVisitor.processSection(SectionVisitor.java:78)
    at com.tridion.deployer.SectionVisitor.processSection(SectionVisitor.java:78)
    at com.tridion.deployer.SectionVisitor.processSection(SectionVisitor.java:78)
    at com.tridion.deployer.SectionVisitor.process(SectionVisitor.java:51)
    at com.sdl.delivery.deployer.steps.TridionDeployerStepAdapter.process(TridionDeployerStepAdapter.java:91)
    at com.sdl.delivery.deployer.engine.pipeline.actor.StepActor.execute(StepActor.scala:72)
    at com.sdl.delivery.deployer.engine.pipeline.actor.StepActor.com$sdl$delivery$deployer$engine$pipeline$actor$StepActor$$processStep(StepActor.scala:57)
    at com.sdl.delivery.deployer.engine.pipeline.actor.StepActor$$anonfun$receive$1.applyOrElse(StepActor.scala:40)
    at akka.actor.Actor$class.aroundReceive(Actor.scala:480)
    at com.sdl.delivery.deployer.engine.pipeline.actor.StepActor.aroundReceive(StepActor.scala:26)
    at akka.actor.ActorCell.receiveMessage(ActorCell.scala:526)
    at akka.actor.ActorCell.invoke(ActorCell.scala:495)
    at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:257)
    at akka.dispatch.Mailbox.run(Mailbox.scala:224)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)
Caused by: com.tridion.configuration.ConfigurationException: Could not load DAO Factory class: com.tridion.storage.si4t.JPADAOFactory
    at com.tridion.storage.configuration.StorageFactoryConfigurationLoader.configureStorage(StorageFactoryConfigurationLoader.java:132)
    at com.tridion.storage.configuration.StorageFactoryConfigurationLoader.configure(StorageFactoryConfigurationLoader.java:73)
    at com.tridion.storage.configuration.StorageFactoryConfigurationLoader.initialize(StorageFactoryConfigurationLoader.java:53)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleElement.invoke(InitDestroyAnnotationBeanPostProcessor.java:365)
    at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleMetadata.invokeInitMethods(InitDestroyAnnotationBeanPostProcessor.java:310)
    at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:133)
    ... 42 common frames omitted
Caused by: java.lang.ClassNotFoundException: com.tridion.storage.si4t.JPADAOFactory
    at java.net.URLClassLoader.findClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at com.sdl.delivery.service.ParentLastClassLoader.loadClass(ParentLastClassLoader.java:45)
    at com.sdl.delivery.service.ParentLastClassLoader.loadClass(ParentLastClassLoader.java:31)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Unknown Source)
    at com.tridion.storage.configuration.StorageFactoryConfigurationLoader.configureStorage(StorageFactoryConfigurationLoader.java:123)
    ... 51 common frames omitted
10
  • Please provide the full ERROR trace logs?, also update your question and provide the ItemTypes mapping of your cd_storage config?
    – Velmurugan
    Dec 21, 2018 at 13:51
  • Thank you Velmurugan, for quick response, I updated my question. Dec 21, 2018 at 16:06
  • Also, update your cd_storage config ItemTypes section config too, since you have used multiple storage ids, want to see your publication id mapping in the ItemTypes
    – Velmurugan
    Dec 21, 2018 at 16:26
  • Updated item types section Dec 21, 2018 at 18:16
  • I can see there is no mapping for your Id sqlServer Storage, and defaultdb there is no mapping for SI4T Indexer, so clearly it's an issue with your cd_strorage_config ItemTypes mapping
    – Velmurugan
    Dec 21, 2018 at 18:44

1 Answer 1

2

Your cd_storage_config is not configured correctly as expected, noticed that si4t class is not called in your storage mapping for your filesystem.

Try this below-updated cd_storage_config

<?xml version="1.0" encoding="UTF-8"?><Configuration xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" Version="8.5" xsi:noNamespaceSchemaLocation="schemas/cd_storage_conf.xsd">
<Namespace default="tcm"/>
<Global>
    <ObjectCache Enabled="false">
        <Policy Class="com.tridion.cache.LRUPolicy" Type="LRU">
            <Param Name="MemSize" Value="16mb"/>
        </Policy>
        <Features>
            <Feature Class="com.tridion.cache.DependencyTracker" Type="DependencyTracker"/>
        </Features>
    </ObjectCache>
    <Storages>
        <StorageBindings>
            <Bundle src="SearchDAOBundle.xml"/>
        </StorageBindings>
        <Storage Class="com.tridion.storage.si4t.JPASearchDAOFactory" Id="defaultdb" Type="persistence" dialect="MSSQL">
            <Pool CheckoutTimeout="120" IdleTimeout="120" MonitorInterval="60" Size="5" Type="jdbc"/>
            <DataSource Class="com.microsoft.sqlserver.jdbc.SQLServerDataSource">
                <Property Name="serverName" Value="DEVAG02\SQL01"/>
                <Property Name="portNumber" Value="9561"/>
                <Property Name="databaseName" Value="Tridion_Broker"/>
                <Property Name="user" Value="Tridion"/>
                <Property Name="password" Value="Tridion"/>
            </DataSource>
            <Indexer Class="org.si4t.cloudsearch.CloudSearchIndexer" DocExtensions="txt" access_key_id="KEW6HC74334" authentication="explicit" documentEndpoint="doc-dev-live-le-5yist4ubp3pr2gq3pbwevm22uq.eu-west-1.cloudsearch.amazonaws.com" indexBatchSize="20" secret_access_key="QT5LDTKcg2tyVq9TP70k7fOqM9/pS"/>
        </Storage>
        <Storage Class="com.tridion.storage.si4t.FSSearchDAOFactory" Id="defaultFile" Type="filesystem" defaultFilesystem="false">
            <Root Path="D:\DevLivePublic\live"/>
            <Indexer Class="org.si4t.cloudsearch.CloudSearchIndexer" DocExtensions="txt" access_key_id="KEW6HC74334" authentication="explicit" documentEndpoint="doc-dev-live-le-5yist4ubp3pr2gq3pbwevm22uq.eu-west-1.cloudsearch.amazonaws.com" indexBatchSize="20" secret_access_key="QT5LDTKcg2tyVq9TP70k7fOqM9/pS"/>
        </Storage>
        <Storage Class="com.tridion.storage.filesystem.FSDAOFactory" Id="cie_index_files" Type="filesystem" defaultFilesystem="false" defaultStorage="false">
            <Root Path="D:\DevLivePublic\live\CIE\SearchIndex\Resources"/>
        </Storage>
        <Storage Class="com.tridion.storage.filesystem.FSDAOFactory" Id="ocr_index_files" Type="filesystem" defaultFilesystem="false" defaultStorage="false">
            <Root Path="D:\DevLivePublic\live\OC\SearchIndex\Resources"/>
        </Storage>
        <Storage Class="com.tridion.storage.si4t.FSSearchDAOFactory" Id="ce_index_files" Type="filesystem" defaultFilesystem="false" defaultStorage="false">
            <Root Path="D:\DevLivePublic\live\ESOL\SearchIndex\Resources"/>
            <Indexer Class="org.si4t.cloudsearch.CloudSearchIndexer" DocExtensions="txt" access_key_id="AKIKEW6HC74" authentication="explicit" documentEndpoint="doc-dev-live-le-5yist4ubp3pr2gwevm22uq.eu-west-1.cloudsearch.amazonaws.com" indexBatchSize="20" secret_access_key="QT54AZNTLDTKcg2tyVq9TP70k7fOqM9/pS"/>
        </Storage>
    </Storages>
    <Transaction MonitorInterval="5000" Timeout="10000000"/>
</Global>
<ItemTypes cached="false" defaultStorageId="defaultdb">
    <Item cached="true" storageId="defaultFile" typeMapping="Page"/>
    <Item cached="true" storageId="defaultFile" typeMapping="Binary"/>
    <Publication Id="31" cached="true" defaultStorageId="defaultdb">
        <Item cached="true" storageId="defaultFile" typeMapping="Page"/>
        <Item cached="true" storageId="defaultFile" typeMapping="Binary"/>
        <Item cached="false" itemExtension=".xml" storageId="cie_index_files" typeMapping="ComponentPresentation"/>
    </Publication>
    <Publication Id="33" cached="true" defaultStorageId="defaultdb">
        <Item cached="true" storageId="defaultFile" typeMapping="Page"/>
        <Item cached="true" storageId="defaultFile" typeMapping="Binary"/>
        <Item cached="false" itemExtension=".xml" storageId="ocr_index_files" typeMapping="ComponentPresentation"/>
    </Publication>
    <Publication Id="32" cached="true" defaultStorageId="defaultdb">
        <Item cached="true" storageId="defaultFile" typeMapping="Page"/>
        <Item cached="true" storageId="defaultFile" typeMapping="Binary"/>
        <Item cached="false" itemExtension=".htm" storageId="defaultdb" typeMapping="Page"/>
        <Item cached="false" itemExtension=".xml" storageId="ce_index_files" typeMapping="ComponentPresentation"/>
    </Publication>
    <Publication Id="141" cached="true" defaultStorageId="defaultdb"/>
    <Publication Id="142" cached="true" defaultStorageId="defaultdb"/>
    <Publication Id="123" cached="true" defaultStorageId="defaultdb"/>
</ItemTypes>
<ConfigRepository CacheEnabled="true" CacheExpirationDuration="600" ClientId="registration" ClientSecret="encrypted:HzfQh9wYwAKShDxCm4DnnBnysAz9PtbDMFXMbPszSVY=" ConnectionTimeout="20000" ServiceMonitorPollDuration="10" ServiceUri="http://cdlive-dev:9082/discovery.svc" TokenServiceUrl="http://cdlive-dev:9082/token.svc">
    <Roles>
        <Role Name="DeployerCapability" Url="http://cdlive-dev:9084/httpupload">
            <Property Name="encoding" Value="UTF-8"/>
        </Role>
    </Roles>
</ConfigRepository>

I hope it helps

5
  • after updating now i am getting the following error. java.lang.ClassNotFoundException: com.tridion.storage.si4t.JPADAOFactory, I have updated latest log in main question. Dec 23, 2018 at 16:13
  • Ah, sorry not JPADAOFactory it's com.tridion.storage.si4t.JPASearchDAOFactory and same it's not FSDAOFactory, It's com.tridion.storage.si4t.FSSearchDAOFactory, updated the answer with corrected config,
    – Velmurugan
    Dec 23, 2018 at 16:21
  • Even after updating new class name I am getting same error with new class name Dec 23, 2018 at 16:47
  • When I going through documentation, one thing i noticed is FS configuration in cloud search,once i removed FS configuration issue resolved, But not sure why my old team configured component presentation for same publication. Can we configure FS in cloud Search or not? Dec 23, 2018 at 17:42
  • Good to know it works, It depends if those DCP items also required to index then yes should be configured FS for cloud search if then not required.
    – Velmurugan
    Dec 23, 2018 at 17:45

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.