TransWikia.com

Tridion 9.1 deployer Worker Installing issue

Tridion Asked by CAP_SDLWEB on October 1, 2021

I am trying to install Tridion 9.1 Deployer as 2x Endpoints and 3x Workers. Deployer endpoint is running fine I can browse the httpuplaod but when I’m install Worker, getting below error. Any suggestion on this issue.

2020-02-20 13:21:30,659 ERROR [main] LoggingFailureAnalysisReporter –

*************************** APPLICATION FAILED TO START


Description:

Field storageSelector in
com.sdl.delivery.deployer.state.StepDataMapperFactory required a bean
of type ‘com.sdl.delivery.deployer.api.binarystorage.StorageSelector’
that could not be found.

The injection point has the following annotations:
– @org.springframework.beans.factory.annotation.Autowired(required=true)

Action:

Consider defining a bean of type
‘com.sdl.delivery.deployer.api.binarystorage.StorageSelector’ in your
configuration.

2020-02-20 13:21:30,662 ERROR [main] LoggingFailureAnalysisReporter –

*************************** APPLICATION FAILED TO START


Description:

Field storageSelector in
com.sdl.delivery.deployer.state.StepDataMapperFactory required a bean
of type ‘com.sdl.delivery.deployer.api.binarystorage.StorageSelector’
that could not be found.

The injection point has the following annotations:
– @org.springframework.beans.factory.annotation.Autowired(required=true)

Action:

Consider defining a bean of type
‘com.sdl.delivery.deployer.api.binarystorage.StorageSelector’ in your
configuration.

2020-02-20 13:21:30,671 ERROR [main] ServiceContainer – Could not
start ServiceContainer java.lang.reflect.InvocationTargetException:
null at
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native
Method) at
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown
Source) at
java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown
Source) at java.base/java.lang.reflect.Method.invoke(Unknown Source)
at
com.sdl.delivery.service.ServiceContainer.main(ServiceContainer.java:92)
at
com.sdl.delivery.service.WinServiceContainer.start(WinServiceContainer.java:24)
at
com.sdl.delivery.service.WinServiceContainer.main(WinServiceContainer.java:41)
Caused by:
org.springframework.beans.factory.UnsatisfiedDependencyException:
Error creating bean with name ‘stateMapperFactory’: Unsatisfied
dependency expressed through field ‘mapperFactory’; nested exception
is org.springframework.beans.factory.UnsatisfiedDependencyException:
Error creating bean with name ‘stepDataMapperFactory’: Unsatisfied
dependency expressed through field ‘storageSelector’; nested exception
is org.springframework.beans.factory.NoSuchBeanDefinitionException: No
qualifying bean of type
‘com.sdl.delivery.deployer.api.binarystorage.StorageSelector’
available: expected at least 1 bean which qualifies as autowire
candidate. Dependency annotations:
{@org.springframework.beans.factory.annotation.Autowired(required=true)}
at
org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:596)
at
org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:90)
at
org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:374)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1411)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:592)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:515)
at
org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:320)
at
org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
at
org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:318)
at
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199)
at
org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:845)
at
org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:877)
at
org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:549)
at
org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:140)
at
org.springframework.boot.SpringApplication.refresh(SpringApplication.java:742)
at
org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:389)
at
org.springframework.boot.SpringApplication.run(SpringApplication.java:311)
… 7 common frames omitted

Cd_storage

<?xml version="1.0" encoding="UTF-8"?><Configuration xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" Version="11.1" xsi:noNamespaceSchemaLocation="schemas/cd_storage_conf.xsd">
    <!--Optional:-->
    <!--
        Default Namespace Configuration
        The parameter to determine the default namespace
        'tcm' - Tridion Sites
    -->
    <Namespace default="${namespaceprefix:-tcm}"/>
    <Global>
        <!--Optional:-->
        <ObjectCache Enabled="${objectcacheenabled:-false}">
            <!--Optional:-->
            <Policy Class="com.tridion.cache.LRUPolicy" Type="LRU">
                <!--
                    The maximum size of memory used by the cache. The string must consist a number
                    followed by units: "k" or "kb" for kilobytes; "m" or "mb" for megabytes (case insensitive)
                -->
                <Param Name="MemSize" Value="${cachesize:-16mb}"/>
            </Policy>
            <!--Optional:-->
            <!-- The Features element specifies classes that add additional functionality to the cache. -->
            <Features>
                <Feature Class="com.tridion.cache.DependencyTracker" Type="DependencyTracker"/>
            </Features>

        </ObjectCache>

        <Storages>

            <Storage Class="com.tridion.storage.persistence.JPADAOFactory" Id="defaultdb" Type="persistence" dialect="MSSQL">
                <Pool CheckoutTimeout="120" IdleTimeout="120" MonitorInterval="60" Size="10" Type="jdbc"/>
                <DataSource Class="com.microsoft.sqlserver.jdbc.SQLServerDataSource">
                    <Property Name="serverName" Value="localhost"/>
                    <Property Name="portNumber" Value="1433"/>
                    <Property Name="databaseName" Value="Tridion_Broker"/>
                    <Property Name="user" Value="TridionBrokerUser"/>
                    <Property Name="password" Value="xxxxx"/>
                </DataSource>
            </Storage>

        </Storages>
        <!--
            This configures the taxonomy reference count for keywords,
            if CountEnabled is set to False the reference count for keywords will not get updated.
            The default setting if this configuration is not present - keyword counts are enabled.
        -->
        <Taxonomies CountEnabled="${taxonomiescountenabled:-true}"/>
        <!--
            Configures transaction storage settings:
                 how long before a transaction gets rolled back (default is 600000 ms) and
                 interval to monitor for outstanding transactions (default is 5000ms).
        -->
        <Transaction MonitorInterval="${transactionmonitorinterval:-5000}" Timeout="${transactiontimeout:-600000}"/>
    </Global>
    <ItemTypes cached="false" defaultStorageId="defaultdb">

    </ItemTypes>
    <ConfigRepository CacheEnabled="true" CacheExpirationDuration="600" ClientId="registration" ClientSecret="${registrationpassword:-encrypted:HzfQh9wYwAKShDxCm4DnnBnysAz9PtbDMFXMbPszSVY=}" ConnectionTimeout="10000" ServiceMonitorPollDuration="10" ServiceUri="${discoveryurl:-http://localhost:8082/discovery.svc}" TokenServiceUrl="${tokenurl:-http://localhost:8082/token.svc}"/>
</Configuration>

Deployer config

<?xml version="1.0" encoding="UTF-8"?>
<Deployer xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" Version="11.1" xsi:noNamespaceSchemaLocation="schemas/deployer-conf.xsd">
<Pipelines>
        <Pipeline Action="TridionBootstrap" Id="Tridion-Bootstrap" Verb="Content,Prepare,Commit,Rollback">
            <Steps>
                <Step Id="TridionUnzipStep"/>
            </Steps>
        </Pipeline>
        <Pipeline Action="Deploy,Undeploy" Id="Tridion-Wait" Verb="Wait">
            <Steps>
                <Step Id="TridionWaitStep"/>
            </Steps>
        </Pipeline>

        <Pipeline Action="Deploy,Undeploy" Id="Tridion-ContentData-Deploy" Verb="Process">
            <Steps>
                <Step Id="TridionContentDataStep"/>
            </Steps>
        </Pipeline>
        <Pipeline Action="Deploy,Undeploy" Id="Tridion-PreCommit-TX" Verb="PreCommit">
            <Steps>
                <Step Id="TridionPreCommitStep"/>
            </Steps>
        </Pipeline>
        <Pipeline Action="Deploy,Undeploy" Id="Tridion-Commit-TX" Verb="Commit">
            <Steps>
                <Step Id="TridionCommitStep">
                    <RetryPoint PipelineId="Tridion-PreCommit-TX" StepId="TridionPreCommitStep"/>
                </Step>
            </Steps>
        </Pipeline>
        <Pipeline Action="Deploy,Undeploy" Id="Tridion-Rollback-TX" Verb="Rollback">
            <Steps>
                <Step Id="TridionRollbackStep"/>
            </Steps>
        </Pipeline>
        <Pipeline Action="Deploy,Undeploy" Finalize="true" Id="Tridion-Cleanup" Verb="*">
            <Steps>
                <Step Id="TridionCleanupStep"/>
            </Steps>
        </Pipeline>
    </Pipelines>

    <BinaryStorage Id="RedisStorage" Adapter="RedisBlobStorage">
        <Property Name="Host" Value="localhost"/>
        <Property Name="Port" Value="6379"/>
        <Property Name="Password" Value="encrypted:HzfQh9wYwAKShDxCm4DnnBnysAz9PtbDMFXMbPszSVY="/>
        <Property Name="Timeout" Value="20000"/>
    </BinaryStorage>


    <State>
        <Storage Adapter="mssql" driver="com.microsoft.sqlserver.jdbc.SQLServerDriver" >
            <Property Name="host" Value="localhost"/>
            <Property Name="port" Value="1433"/>
            <Property Name="database" Value="Tridion_State_Store"/>
            <Property Name="user" Value="TridionStateStore"/>
            <Property Name="password" Value="xxxx"/>
        </Storage>
    </State>

    <Queues>

        <Queue Default="true" Verbs="Content" Adapter="JMS" Id="ContentQueue">

             <Property Name="Workers" Value="11"/> 
        </Queue>
        <Queue Verbs="Commit,Rollback" Adapter="JMS" Id="CommitQueue">

            <Property Name="Workers" Value="11"/>
        </Queue>
        <Queue Verbs="Prepare" Adapter="JMS" Id="PrepareQueue">

             <Property Name="Workers" Value="11"/> 
        </Queue>

        <Adapter Id="JMS">
            <Property Name="JMSConnectionFactoryBuilderClass"
                      Value="com.sdl.delivery.spring.configuration.jms.ActiveMQConnectionFactoryBuilder" />
            <Property Name="JMSUri" Value="http://localhost:8161/" />

            <Property Name="Username" Value="admin"/>
            <Property Name="Password" Value="admin"/>
        </Adapter>


        <Workers>
            <!-- Optional configuration properties -->
            <!--  <Property Name="QueuePollingInterval" Value="2s"/> -->
           <!--   <Property Name="RetriesInterval" Value="100ms"/> -->
           <!--  <Property Name="MaxRetries" Value="11"/> -->
           <!--   <Property Name="Cleanup" Value="true"/> -->
        </Workers>
    </Queues>

</Deployer>

One Answer

Deployer-conf.xml is missing the Tridion-Process-Deploy and Undeploy steps. Please go through the below lines which may help you out.

<Pipelines>
    <Pipeline Id="Tridion-Bootstrap" Action="TridionBootstrap" Verb="Content,Prepare,Commit,Rollback">
        <Steps>
            <Step Id="TridionUnzipStep"/>
        </Steps>
    </Pipeline>
    <Pipeline Id="Tridion-Wait" Action="Deploy,Undeploy" Verb="Wait">
        <Steps>
            <Step Id="TridionWaitStep"/>
        </Steps>
    </Pipeline>
    <Pipeline Id="Tridion-Process-Deploy" Action="Deploy" Verb="Process">
        <Steps>
            <Step Id="SchemaDeploy" Factory="com.sdl.delivery.deployer.steps.TridionExecutableStepFactory">
                <Module Class="com.tridion.deployer.modules.SchemaDeploy" Type="SchemaDeploy"/>
            </Step>
            <Step Id="PageDeploy" Factory="com.sdl.delivery.deployer.steps.TridionExecutableStepFactory">
                <Module Class="com.tridion.deployer.modules.PageDeploy" Type="PageDeploy">
                    <Transformer Class="com.tridion.transformer.TCDLDefaultTransformer"/>
                </Module>
            </Step>
            <Step Id="BinaryDeploy" Factory="com.sdl.delivery.deployer.steps.TridionExecutableStepFactory">
                <Module Class="com.tridion.deployer.modules.BinaryDeploy" Type="BinaryDeploy"/>
            </Step>
            <Step Id="ComponentDeploy" Factory="com.sdl.delivery.deployer.steps.TridionExecutableStepFactory">
                <Module Class="com.tridion.deployer.modules.ComponentDeploy" Type="ComponentDeploy"/>
            </Step>
            <Step Id="TemplateDeploy" Factory="com.sdl.delivery.deployer.steps.TridionExecutableStepFactory">
                <Module Class="com.tridion.deployer.modules.TemplateDeploy" Type="TemplateDeploy"/>
            </Step>
            <Step Id="PublicationDeploy" Factory="com.sdl.delivery.deployer.steps.TridionExecutableStepFactory">
                <Module Class="com.tridion.deployer.modules.PublicationDeploy" Type="PublicationDeploy"/>
            </Step>
            <Step Id="TaxonomyDeploy" Factory="com.sdl.delivery.deployer.steps.TridionExecutableStepFactory">
                <Module Class="com.tridion.deployer.modules.TaxonomyDeploy" Type="TaxonomyDeploy"/>
            </Step>
            <Step Id="ComponentPresentationDeploy" Factory="com.sdl.delivery.deployer.steps.TridionExecutableStepFactory">
                <Module Class="com.tridion.deployer.modules.ComponentPresentationDeploy" Type="ComponentPresentationDeploy">
                    <Transformer Class="com.tridion.transformer.TCDLDefaultTransformer"/>
                </Module>
            </Step>
            <Step Id="StructureGroupDeploy" Factory="com.sdl.delivery.deployer.steps.TridionExecutableStepFactory">
                <Module Class="com.tridion.deployer.modules.StructureGroupDeploy" Type="StructureGroupDeploy"/>
            </Step>
        </Steps>
    </Pipeline>
    <Pipeline Id="Tridion-Process-Undeploy" Action="Undeploy" Verb="Process">
        <Steps>
            <Step Id="PageUndeploy" Factory="com.sdl.delivery.deployer.steps.TridionExecutableStepFactory">
                <Module Class="com.tridion.deployer.modules.PageUndeploy" Type="PageUndeploy"/>
            </Step>
            <Step Id="ComponentPresentationUndeploy" Factory="com.sdl.delivery.deployer.steps.TridionExecutableStepFactory">
                <Module Class="com.tridion.deployer.modules.ComponentPresentationUndeploy" Type="ComponentPresentationUndeploy"/>
            </Step>
            <Step Id="TaxonomyUndeploy" Factory="com.sdl.delivery.deployer.steps.TridionExecutableStepFactory">
                <Module Class="com.tridion.deployer.modules.TaxonomyUndeploy" Type="TaxonomyUndeploy"/>
            </Step>
            <Step Id="StructureGroupUndeploy" Factory="com.sdl.delivery.deployer.steps.TridionExecutableStepFactory">
                <Module Class="com.tridion.deployer.modules.StructureGroupUndeploy" Type="StructureGroupUndeploy"/>
            </Step>
        </Steps>
    </Pipeline>
    <Pipeline Id="Tridion-ContentData-Deploy" Action="Deploy,Undeploy" Verb="Process">
        <Steps>
            <Step Id="TridionContentDataStep"/>
        </Steps>
    </Pipeline>
    <Pipeline Id="Tridion-PreCommit-TX" Action="Deploy,Undeploy" Verb="PreCommit">
        <Steps>
            <Step Id="TridionPreCommitStep"/>
        </Steps>
    </Pipeline>
    <Pipeline Id="Tridion-Commit-TX" Action="Deploy,Undeploy" Verb="Commit">
        <Steps>
            <Step Id="TridionCommitStep">
                <RetryPoint PipelineId="Tridion-PreCommit-TX" StepId="TridionPreCommitStep"/>
            </Step>
        </Steps>
    </Pipeline>
    <Pipeline Id="Tridion-Rollback-TX" Action="Deploy,Undeploy" Verb="Rollback">
        <Steps>
            <Step Id="TridionRollbackStep"/>
        </Steps>
    </Pipeline>
    <Pipeline Finalize="true" Id="Tridion-Cleanup" Action="Deploy,Undeploy" Verb="*">
        <Steps>
            <Step Id="TridionCleanupStep"/>
        </Steps>
    </Pipeline>

</Pipelines>

Answered by k951 on October 1, 2021

Add your own answers!

Ask a Question

Get help from others!

© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP