Как объединить документы в Activiti

Я использую предприятие Activiti и хочу объединить 2 документа в рабочем процессе... Я попробовал указанный здесь компонент слияния документов,

https://docs.alfresco.com/activiti/docs/dev-guide/1.4.0/#_document_merge_bean_documentmergebean

Но он не объединяет документы и не дает никаких ошибок, но в консоли tomacat я вижу следующий вывод

INFO com.activiti.runtime.activiti.bean.DocumentMergeBean - fieldIds t1,t2,       variable t3 305347
INFO com.activiti.runtime.activiti.bean.DocumentMergeBean - contentList 1000
INFO com.activiti.runtime.activiti.bean.DocumentMergeBean - field t2
INFO com.activiti.runtime.activiti.bean.DocumentMergeBean - putting t2 1
INFO com.activiti.runtime.activiti.bean.DocumentMergeBean - field t1
INFO com.activiti.runtime.activiti.bean.DocumentMergeBean - putting t1 1
INFO com.activiti.runtime.activiti.bean.DocumentMergeBean - finalContentList 0

здесь t1 и t2 - мои 2 переменные документа, и я пытаюсь получить вывод в переменной t3, но не повезло...

Помогите, если кто знает...


person Shagufta Shaikh    schedule 23.05.2016    source источник


Ответы (1)


DocumentMergeBean работает только с файлами .doc и .docx. Имена файлов, которые вы пытаетесь объединить, относятся к типу .doc или .docx?

Конкретные строки кода, обеспечивающие это поведение, приведены ниже:

for (RelatedContent relatedContent : fieldContentList) {
    if (relatedContent.getName().toLowerCase().endsWith("docx") || 
        relatedContent.getName().toLowerCase().endsWith("doc")) {
           finalContentList.add(relatedContent);
   }
}

Надеюсь, это поможет, Грег.

person Greg Harley    schedule 24.05.2016
comment
Да, оба документа имеют формат .docx. Я вызываю компонент слияния из моей сервисной задачи следующим образом: ${documentMergeBean.mergeDocuments('t1,t2', 't3', выполнение)} в свойстве выражения Это правильный способ ? или я делаю какую-то ошибку здесь? - person Shagufta Shaikh; 24.05.2016
comment
Я считаю, что вы звоните правильно, но я считаю, что имена полей (t1 и t2 в вашем случае) должны сами сопоставляться с именем (связанного содержимого). Попробуйте запросить таблицу RELATED_CONTENT и убедитесь, что записи для этой задачи имеют имя, оканчивающееся на .doc или .docx. - person Greg Harley; 24.05.2016
comment
Привет, Грег! Большое спасибо за уделенное время... Я очень ценю это... На самом деле в руководстве разработчика есть опечатка... нам нужно использовать ; вместо , в выражении... ${documentMergeBean.mergeDocuments('t1;t2', 't3', выполнение)} - person Shagufta Shaikh; 02.06.2016