Замена для org.alfresco.util.TriggerBean - PullRequest
0 голосов
/ 23 мая 2019

Под открытым небом использовали для обеспечения класса org.alfresco.util.TriggerBean.В текущей версии GA alfresco-repository-7.43.jar этот класс отсутствует.

В Интернете я обнаружил XML-файлы контекста Spring, которые используют класс org.alfresco.util.CronTriggerBean.Но этот класс также не включен.

Какой класс рекомендуется использовать в качестве замены для TriggerBean?

Редактировать 1: Поскольку вышеупомянутый класс впрошлое часто использовалось вместе с org.springframework.scheduling.quartz.JobDetailBean Я также ищу замену этому классу.

Редактировать 2: Обратите внимание, что этот класс отсутствует в время выполнения во время запуска контекста Spring.Рассмотрим Spring bean следующим образом:

<bean id="ecm4u.essentials.QNamePathRenamerTrigger"
      class="org.alfresco.util.TriggerBean">
    <property name="jobDetail">
        <ref bean="myJobBean" />
    </property>
    <property name="scheduler">
        <ref bean="schedulerFactory" />
    </property>
    <property name="startDelayMinutes">
        <value>3</value>
    </property>
    <property name="repeatCount">
        <value>0</value>
    </property>
</bean>

Когда Alfresco запускает контекст Spring, содержащий этот bean, класс TriggerBean не найден в пути к классам.

JAR alfresco-remote-api-7.35.jar существуетпод webapps/alfresco/WEB-INF/lib/ как часть Alfresco 6.1.Но даже этот JAR не содержит никакого класса триггера.

Ответы [ 2 ]

1 голос
/ 24 мая 2019

Руководство по миграции ACS 6 1002 * описывает измененный API:

  • org.springframework.scheduling.quartz.JobDetailBean становится org.springframework.scheduling.quartz.JobDetailFactoryBean
  • org.alfresco.schedule.AlfrescoSchedulerAccessorBean должен использоваться вместе с
    • org.springframework.scheduling.quartz.CronTriggerFactoryBean вместо org.alfresco.util.CronTriggerBean
    • org.springframework.scheduling.quartz.SimpleTriggerFactoryBean вместо org.alfresco.util.TriggerBean

Класс SimpleTriggerFactoryBean не имеет свойства startDelayMinutes. Теперь startDelay необходимо использовать. В контексте XML Spring

<!-- minutes -->
<property name="startDelayMinutes" value="3"/>

становится

<!-- milliseconds -->
<property name="startDelay" value="180000"/>
0 голосов
/ 24 мая 2019

Вы должны добавить ниже зависимости в репо помп на открытом воздухе.

        <dependency>
            <groupId>org.alfresco</groupId>
            <artifactId>alfresco-remote-api</artifactId>
            <version>6.39.10</version>
            <scope>provided</scope>
            <exclusions>
                <exclusion>
                    <groupId>*</groupId>
                    <artifactId>*</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
...