Category Archive Alfresco CЭД

Автор:human

Установка Alfresco 5.x на Ubuntu server 14.04

Привет! В этой статье я постараюсь рассказать как установить бесплатную версию СЭД (ECM) Alfresco Community в Ubuntu Server 14.04.1 LTS x64.

1. Перед установкой самой системы Alfresco, нам придется подготовить «жизненное пространство» для нее, так что засучиваем рукава и устанавливаем все необходимые компоненты.
Итак, начнем:

sudo apt-get update
sudo apt-get upgrade
sudo apt-get purge openjdk-*

Этими командами мы: обновили список доступных пакетов, обновили систему и удалили все установленные пакеты open JDK. Ибо мы будем использовать JDK от Oracle.
Далее:

adduser alfresco
Enter new UNIX password: alfresco

Этим мы создали пользователя alfresco с одноименным паролем.
Продолжим:
su – alfresco
— Начинаем работать от имени пользователя alfresco. Установка Java JDK: скачиваем JDK 1.7.0_71 отсюда, затем выполняем:
sudo mkdir -p /opt/java
tar zxvf jdk-7u71-linux-x64.gz
sudo mv jdk1.7.0_71/ /opt/java/

Командами выше, мы:
— создаем директорию для JDK
— распаковываем архив с JDK
— переносим распакованную папку в /opt/java (sudo здесь нужно для того, чтобы получить необходимые права доступа на запись к файловой системе, так как мы для директории /opt/java еще не установили доступ для пользователя alfresco)

sudo chmod -R +rx /opt/java

— даем права на чтение и исполнение для всех в директории /opt/java/

sudo nano /etc/profile.d/java.sh

Вставляем строки:

export JAVA_HOME=/opt/java/jdk1.7.0_71
export PATH=$PATH:$HOME/bin:$JAVA_HOME/bin

Затем, нажимаем Ctrl+O (сохраняем файл) и Ctrl+X (выходим в shell).
Даем права: sudo chmod +rx /etc/profile.d/java.sh
Перезагружаем командой reboot.
Проверяем работу JDK:

java -version

Теперь дело за установкой GhostScript и ImageMagick:

sudo apt-get install ghostscript imagemagick

Проверяем:

convert --version
whereis convert

Должно найтись в /usr/bin/convert
Для установки FFMpeg добавляем репозиторий в базу, обновляем список пакетов и стандартно устанавливаем:

sudo add-apt-repository ppa:jon-severinsson/ffmpeg
sudo apt-get update
sudo apt-get install ffmpeg

Следом идет установка SWFTools:

sudo apt-get install libjpeg62 libgif4
wget https://archive.canonical.com/ubuntu/pool/partner/s/swftools/swftools_0.9.0-0ubuntu2_amd64.deb
chmod a+x swftools_0.9.0-0ubuntu2_amd64.deb
sudo dpkg -i swftools_0.9.0-0ubuntu2_amd64.deb

Проверяем:
whereis pdf2swf Если найдется в /usr/bin/pdf2swf, значит правильной дорогой идете, товарищ.
Установка LibreOffice :

sudo apt-get install libreoffice

Проверяем: whereis soffice — Результат должен быть: /usr/bin/soffice

Базу данных будем использовать PostgreSql:
Устанавливаем движок, ставим пароль на пользователя postgres — postgres

sudo apt-get install postgresql postgresql-contrib
sudo passwd postgres
postgres

Создаем пустую базу данных alfresco и присваиваем ее пользователю alfresco с паролем alfresco

sudo -u postgres psql postgres
CREATE ROLE alfresco WITH PASSWORD 'alfresco' LOGIN;
CREATE DATABASE alfresco WITH OWNER alfresco;
нажимаем ctrl+d, затем вводим:
sudo -u alfresco psql alfresco
ALTER USER alfresco WITH PASSWORD 'alfresco';
снова жмем ctrl+d - готово.

Теперь возьмемся за установку сервера приложений Tomcat, на момент написания статьи, версия была 7.0.57. Скачиваем архив с сайта Apache, создаем директорию alfresco, даем права на нее одноименному пользователю, распаковываем архив в созданную директорию, запускаем tomcat, проверяем инстанцию (кстати, вы можете попробовать зайти по адресу https://имя_хоста:8080, используя браузер, чтобы проверить работу Tomcat.) :

sudo mkdir -p /opt/alfresco
sudo chown alfresco:alfresco /opt/alfresco
wget https://apache-mirror.rbc.ru/pub/apache/tomcat/tomcat-7/v7.0.57/bin/apache-tomcat-7.0.57.tar.gz
tar xzvf apache-tomcat-7.0.57.tar.gz
sudo mv apache-tomcat-7.0.57 /opt/alfresco/tomcat
sudo chown -R alfresco:alfresco /opt/alfresco/tomcat
/opt/alfresco/tomcat/bin/startup.sh
ps -ef | grep java

После успешной проверки установленного компонента, останавливаем сервис:
/opt/alfresco/tomcat/bin/shutdown.sh

2. Теперь мы имеем полное право заняться установкой самой ECM Alfresco.

Для этого скопируем конфигурацию-пример в действительный файл настроек и запустим редактор этого файла:

cp /opt/alfresco/tomcat/conf/catalina.properties /opt/alfresco/tomcat/conf/catalina.properties.orig
nano /opt/alfresco/tomcat/conf/catalina.properties

В нем находим строку shared.loader и заменяем ее наshared.loader=${catalina.base}/shared/classes,${catalina.base}/shared/lib/*.jar
Сохраняемся и выходим. Помните как? Ctrl+O, Enter, Ctrl+X
Следующим шагом будет сделать тоже с файлом настроек сервера — server.xml :

cp /opt/alfresco/tomcat/conf/server.xml /opt/alfresco/tomcat/conf/server.xml.orig
nano /opt/alfresco/tomcat/conf/server.xml

В нем мы добавляем между тегами <Connector……/>  параметрURIEncoding="UTF-8"
Следующий файл — context.xml :
nano /opt/alfresco/tomcat/conf/context.xml
Добавляем строку перед закрывающим тегом :

<Valve className=»org.apache.catalina.authenticator.SSLAuthenticator» securePagesWithPragma=»false» />

Создаем дополнительные рабочие директории:

mkdir -p /opt/alfresco/tomcat/shared
mkdir -p /opt/alfresco/tomcat/shared/classes
mkdir -p /opt/alfresco/tomcat/shared/lib
mkdir -p /opt/alfresco/tomcat/endorsed

Скачиваем дистрибутив Alfresco с SourceForge и распаковываем его:

wget https://sourceforge.net/projects/alfresco/files/Alfresco%205.0.c%20Community/alfresco-community-5.0.c.zip/download
mv download alfresco-community-5.0.c.zip
unzip alfresco-community-5.0.c.zip

Копируем необходимые директории и файлы в место, где будет жить наш Alfresco:

cd alfresco-community-5.0.c/
cp -R bin /opt/alfresco
cp -R web-server/endorsed/* /opt/alfresco/tomcat/endorsed
cp -R web-server/shared/* /opt/alfresco/tomcat/shared
cp -R web-server/lib/* /opt/alfresco/tomcat/lib
cp -R web-server/webapps/* /opt/alfresco/tomcat/webapps/

Теперь можно удалить распакованный архив alfresco-community-5.0.c.
Создаем необходимые скрипты:

1. Для LibreOffice

nano /opt/alfresco/start_oo.sh

Вставляем в него:

#!/bin/sh -e
SOFFICE_ROOT=/usr/bin
"${SOFFICE_ROOT}/soffice" "--accept=socket,host=localhost,port=8100;urp;StarOffice.ServiceManager" --nologo --headless &

Сохраняем, выходим.
Даем права, проверяем работу:

chmod uga+x /opt/alfresco/start_oo.sh
/opt/alfresco/start_oo.sh
ps -ef | grep soffice

Убиваем процесс: killall soffice.bin

2. Для запуска Alfresco:

nano /opt/alfresco/alfresco.sh

Вставляем в него:

#!/bin/sh -e
# Start or stop Alfresco server
# Set the following to where Tomcat is installed
ALF_HOME=/opt/alfresco
cd "$ALF_HOME"
APPSERVER="${ALF_HOME}/tomcat"
export CATALINA_HOME="$APPSERVER"
# Set any default JVM values
export JAVA_OPTS='-Xms512m -Xmx768m -Xss768k -XX:MaxPermSize=256m -XX:NewSize=256m -server'
export JAVA_OPTS="${JAVA_OPTS} -Dalfresco.home=${ALF_HOME} -Dcom.sun.management.jmxremote"
if [ "$1" = "start" ]; then
"${APPSERVER}/bin/startup.sh"
if [ -r ./start_oo.sh ]; then
"${ALF_HOME}/start_oo.sh"
fi
elif [ "$1" = "stop" ]; then
"${APPSERVER}/bin/shutdown.sh"
killall -u alfresco java
killall -u alfresco soffice.bin
fi

Сохраняем, выходим и, аналогично предыдущему, даем права:
chmod uga+x /opt/alfresco/alfresco.sh
3. Для запуска Alfresco при старте системы:

sudo nano /etc/init.d/alfresco

Вставляем:

#!/bin/sh -e
ALFRESCO_SCRIPT="/opt/alfresco/alfresco.sh"
if [ "$1" = "start" ]; then
su - alfresco "${ALFRESCO_SCRIPT}" "start"
elif [ "$1" = "stop" ]; then
su - alfresco "${ALFRESCO_SCRIPT}" "stop"
elif [ "$1" = "restart" ]; then
su - alfresco "${ALFRESCO_SCRIPT}" "stop"
su - alfresco "${ALFRESCO_SCRIPT}" "start"
else
echo "Usage: /etc/init.d/alfresco [start|stop|restart]"
fi

Сохраняем, выходим, даем права:

sudo chmod uga+x /etc/init.d/alfresco
sudo chown alfresco:alfresco /etc/init.d/alfresco

Создаем ссылку для консольной загрузки (INIT 3):
 ln -s /etc/init.d/alfresco /etc/rc3.d/S95alfresco

Последние приготовления и настройки:


mkdir /opt/alfresco/alf_data
cp /opt/alfresco/tomcat/shared/classes/alfresco-global.properties.sample /opt/alfresco/tomcat/shared/classes/alfresco-global.properties
nano /opt/alfresco/tomcat/shared/classes/alfresco-global.properties

Параметры, которые нам нужно проверить и, при необходимости, добавить-изменить:

dir.root=/opt/alfresco/alf_data
db.username=alfresco
db.password=alfresco
# OpenOffice
ooo.exe=/usr/lib/libreoffice/program/soffice.bin
ooo.enabled=true
jodconverter.officeHome=/usr/lib/libreoffice
jodconverter.portNumbers=8100
jodconverter.enabled=true
# ImageMagick installation
img.root=/usr/share/doc/imagemagick
img.exe=/usr/bin/convert
# SWFTools exe
swf.exe=/usr/bin/pdf2swf
db.schema.update=true
db.driver=org.postgresql.Driver
db.url=jdbc:postgresql://localhost:5432/alfresco
index.recovery.mode=AUTO
authentication.chain=alfrescoNtlm1:alfrescoNtlm

Сохраняем, выходим.

На этом все. Мы можем приступить к запуску всех служб:
service alfresco start
Сразу после этого, открываем логи и внимательно следим за процессом запуска:
tail -f /opt/alfresco/tomcat/logs/catalina.out

Проблемы, с которыми столкнулся я это ругательства по поводу CIFS и SMB
Решил их путем добавления кода в файл настроек:

nano /opt/alfresco/tomcat/shared/classes/alfresco-global.properties

Код:

# CIFS configuration
#
cifs.enabled=true
cifs.ipv6=disabled
cifs.serverName=doc
cifs.domain=DOMAIN.LAN
cifs.hostannounce=true
cifs.urlfile.prefix=https://${localname}:8080/alfresco
cifs.bindto=0.0.0.0
cifs.broadcast=255.255.255.255
cifs.hostannounce=true
cifs.tcpipSMB.port=10445
cifs.netBIOSSMB.sessionPort=10139
cifs.netBIOSSMB.namePort=10137
cifs.netBIOSSMB.datagramPort=10138
cifs.platforms=linux,solaris,macosx
cifs.WINS.autoDetectEnabled=true

После этого проблемы ушли.

Если все ошибки были устранены, заходим по адресу

https://имя_хоста:8080/alfresco и начинаем углубленно изучать структуру системы.
логин и пароль по-умолчанию admin

Кстати, в данной конфигурации «из коробки» не работает поисковый движок solr. С Alfresco 5.0.c Community в архиве есть директория solr4 версии. Чтобы поиск заработал, нужно подружить alfresco и solr4

Ну вот, мы и завершили самую легкую часть :)
Удачи и до встречи в блоге.

Источник:https://blog.cym.com.ua/alfresco-manual-install/

Автор:human

Activiti: установка workflow отправки документов на проверку

Система управления документами Alfresco

Система Alfresco ECM — это система для организации внутреннего портала компании, Alfresco позволяет организовать совместную работу сотрудников предоставляя следующие основные возможности:

  • Совместная работа с документами.
  • Совместная работа со статьями на внутреннем портале с использованием подхода Wiki.
  • Ведение дискуссий. Дискуссии — это своего рода форум, где любой сотрудник может создать новое обсуждение, а остальные сотрудники смогут в нем участвовать, оставляя свои сообщения.
  • Ведение блогов.
  • Организация документооборота. По умолчанию в системе существует только один «Процесс» (workflow) для системы документооборота, а именно процесс принятия (одобрения) документов. Пример: Документ должен быть одобрен Директором, для этого после окончания работы над документом необходимо запустить «Процесс» принятия документа и указать лиц, которые должны его одобрить (в данном случае это Директор). После этого в списке задач Директора появится новая задача принятия документа, где у него будет две опции «Принять» и «Отказать». Кроме этого существует возможность создавать свои собственные «Процессы» (workflow).

Activiti: установка workflow отправки документов на проверку

Ниже по шагам описан процесс установки в Аlfresco собственного “Процесса”. Данный Процесс создан на основе манула, реализует функциональность по отправке документов на проверку, и описывается следующей схемой:

Alfresco-1

 

  1. В каталоге ALFRESCO_HOME/tomcat/shared/classes/alfresco/extension/ необходимо создать каталог model и поместить в него файл модели процесса ReviewWorkflowModel.xml
  2. В каталоге ALFRESCO_HOME/tomcat/shared/classes/alfresco/extension/ необходимо создать каталог workflows и поместить туда файл описания процесса ReviewProcess.xml
  3. Создать в ALFRESCO_HOME/tomcat/shared/classes/alfresco/extension/ каталог messages и поместить в него файл локализации процесса jazzWorkflow_ru_RU.properties
  4. В каталог ALFRESCO_HOME/tomcat/shared/classes/alfresco/extension поместить файлы web-client-config-custom.xml и dir-workflow-context.xml
  5. В ALFRESCO_HOME/tomcat/shared/classes/alfresco/web-extension поместить файлы share-config-custom.xml и custom-slingshot-application-context
  6. Создать в ALFRESCO_HOME/tomcat/shared/classes/alfresco/web-extension/ каталог messages и поместить туда файл jazz_ru_RU.properties который описывает локализацию интерфейса share.

 Создание и выполнение бизнес-процесса

После чего необходимо запустить Alfresco, для этого переходим в директорию ALFRESCO_HOME/tomcat/bin и запускаем файл startup.bat
Переходим по адресу https://localhost:8080/share, производим вход под своей учетной записью и в меню переходим Еще -> Мои бизнес-процессы

Alfresko-2

После чего нажимаем Начать бизнес-процесс.

Alfresko-3

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

Alfresko-4

Указываем описание задачи, что необходимо проверить, назначаем задачу на конкретного человека в системе и добавляем документы который необходимо проверить, после чего нажимаем кнопку Начать бизнес-процесс.

Alfresko-5

После чего бизнес процесс перейдет в актуальное состояние, а у пользователя Иванов Александр, на которого была назначена проверка, в списке задач появится соответствующая задача.

Alfresko-6

После чего он может открыть задачу, просмотреть прикрепленные к ней файлы, проверить их и отписать Результат проверки.

Alfresko-7

После чего необходимо нажать кнопку Отправить для того чтобы отправить задачу Результат проверки документов. После отправки Результата проверки у пользователя, который отправлял документы на проверку появляется задача Результат проверки.

Alfresko-8

В задаче описан Результат проверки документов,

Alfresko-9

После чего задачу можно закрыть, сделать это можно нажатием на кнопку Задача выполнена. После чего бизнес-процесс перейдет в состояние Завершен.

Автор:human

Интеграция Alfresco и Onlyoffice

How to integrate Alfresco with ONLYOFFICE Online Editors on Ubuntu 14.04
On this page

Integrate Alfresco with ONLYOFFICE Online Editors
Links

This guide will describe how to use the onlyoffice-alfresco script to allow users to co-edit documents from an Alfresco Share from in ONLYOFFICE Online Editors. Alfresco Share is built on Alfresco’s innovative ECM repository and delivers out-of-the-box collaborative content management. Alfresco Share simplifies capturing, sharing, and retrieval of information across virtual teams; boosts productivity; and reduces network bandwidth requirements and email volumes between project team members. (from Alfresco Documentation).
Integrate Alfresco with ONLYOFFICE Online Editors

Requirements

ONLYOFFICE Document Server
Java 7 SDK or above
Gradle

Step 1. Install ONLYOFFICE Document Server

Follow these instructions to install ONLYOFFICE Document Server or use the automated Docker image to avoid dependency errors.

Step 2. Install Gradle

Add the Gradle repository

sudo add-apt-repository ppa:cwchien/gradle

Update the package

sudo apt-get update

Install the latest Gradle version

sudo apt-get install gradle

If you have Gradle installed on your machine, please remove it first using the following command:

sudo apt-get remove gradle

Step 3. Install Oracle Java 8

To install the latest stable Oracle Java 8 version, execute the following commands:

sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java8-installer

Step 4. Switch to alternatives

Switch the java alternatives to Oracle java.

sudo update-alternatives —config java
sudo update-alternatives —config javac
sudo update-alternatives —config javaws

Step 5. Build all the necessary dependencies

Now we download the alfresco Plugin from git and build it.

git clone https://github.com/yeyan/alfresco-amp-plugin.git

cd amp-plugin
gradle publish

Step 6. Copy the onlyoffice-alfresco plugin

cd ..
git clone https://github.com/cetra3/onlyoffice-alfresco.git

Step 7. Run gradle amp from the share and repo directories

Step 8. Add onlyoffice.url to the alfresco-global.properties file

Step 9. Load the created packages from ./build/amp to the amps/ and amps_share/ directories of your Alfresco installation respectively.

Step 10. Run the bin/apply_amps.sh script. You will see two modules installed. Press Enter to complete the installation process.

Once installed, the new Edit in Onlyoffice action will be created within the document library for office documents.
Links

Alfresco official website: https://www.alfresco.com/
ONLYOFFICE official website: https://www.onlyoffice.com/
onlyoffice-alfresco plugin on GitHub: https://github.com/cetra3/onlyoffice-alfresco

Автор:human

Настройка уведомлений в Alfresco при добавлении задачи

alfresco_email

Для настройки исходящих почтовых уведомлений от Alfresco необходимо в файле

/opt/alfresco-4.2.c/tomcat/shared/classes/alfresco-global.properties

(прим. путь может отличаться в части alfresco-4.2.c — зависит от версии)

прописать блок настройки почтового сервера на примере настроен на сервер mail.ru

Ниже я предоставил пример моего конфига alfresco-global.properties:
# Common Alfresco Properties #
###############################

dir.root=/opt/alfresco-4.2.f/alf_data

alfresco.context=alfresco
alfresco.host=alfrescoserver.local
alfresco.port=8081
alfresco.protocol=http

share.context=share
share.host=alfrescoserver.local
share.port=8081
share.protocol=http

### database connection properties ###
db.driver=org.postgresql.Driver
db.username=alfresco
db.password=cbrt32456
db.name=alfresco
db.url=jdbc:postgresql://localhost:5432/${db.name}

### FTP Server Configuration ###
ftp.enabled=true
ftp.port=32421

### RMI service ports ###
alfresco.rmi.services.port=50500
avm.rmi.service.port=0
avmsync.rmi.service.port=0
attribute.rmi.service.port=0
authentication.rmi.service.port=0
repo.rmi.service.port=0
action.rmi.service.port=0
deployment.rmi.service.port=0

### External executable locations ###
ooo.exe=/opt/alfresco-4.2.f/libreoffice/program/soffice.bin
ooo.enabled=true
ooo.port=8100
img.root=/opt/alfresco-4.2.f/common
img.dyn=${img.root}/lib
img.exe=${img.root}/bin/convert
swf.exe=/opt/alfresco-4.2.f/common/bin/pdf2swf
swf.languagedir=/opt/alfresco-4.2.f/common/japanese

jodconverter.enabled=false
jodconverter.officeHome=/opt/alfresco-4.2.f/libreoffice
jodconverter.portNumbers=8100

### Initial admin password ###
alfresco_user_store.adminpassword=001053048c117928424dd56e78178efd

### E-mail site invitation setting ###
notification.email.siteinvite=true
mail.host=smtp.mail.ru
mail.port=465
mail.encoding=UTF-8
mail.from.enabled=false
mail.from.default=alfresco@mail.ru
mail.protocol=smtps
mail.smtps.starttls.enable=true
mail.smtps.auth=true
mail.username=alfresco@mail.ru
mail.password=passwordmail
### License location ###
dir.license.external=/opt/alfresco-4.2.f

### Solr indexing ###
index.subsystem.name=solr
jodconverter.portNumbers=8100

### Initial admin password ###
alfresco_user_store.adminpassword=001053048c117928424dd56e78178efd

### Solr indexing ###
index.subsystem.name=solr
dir.keystore=${dir.root}/keystore
solr.port.ssl=8443

### BPM Engine ###
system.workflow.engine.jbpm.enabled=false
mail.testmessage.send=true
mail.testmessage.to=admin@mail.ru
mail.testmessage.subject=Test message to alfresco
mail.testmessage.text=Test message to alfresco — success start

Итак, что мы имеем(поля которые необходимо поменять):

вместо alfrescoserver.local — доменное имя сервера, на которм крутится alfresco.

вместо alfresco@mail.ru — ваша почта, которая будт использоваться для отправки уведомлений;

вместо passwordmail — ваш пароль от этой почты;

в поле mail.testmessage.to=admin@mail.ru , вместо admin@mail.ru поставить почту админа, сюда будут падать письма при запуске alfresco;

в поле alfresco.host=alfrescoserver.local  вместо alfrescoserver.local — доменное имя сервера alfresco;

в поле share.host=alfrescoserver.local

(чтобы вступили в силу изменения в этом файле необходимо перезапустить Alfresco командой

sudo service alfresco restart

ну или полность перезагрузите систему)))

Но это еще не все при формировании ссылок в письмах подставляется IP адрес, а не имя сервера и такой ссылкой нельзя будет воспользоваться с наружи поэтому необходимо прописать имя сервера в файле на клиентских компьютерах:

И в файле /etc/hosts (для linux подобных)  или в windows/system32/drivers/etc/hosts (для ОС семества windows)

10.253.0.201 alfrescoserver.local

вместо 10.253.0.201 — локальный ip сервера, на котором работает alfresco.

Все profit. Если есть вопросы, пишите, отвечу. В скором времени я планирую выложить образ виртульной машины с alfresco и onlyoffice community server на одном борту Ubuntu server 14.04 x64.