ACS, APS ve ADF ile Doküman ve Süreç Yönetimi Entegrasyonu
ACS 6.0, APS 1.9 ve ADF 2.6 ile İçerik ve Süreç Çözümleri Oluşturma
Giriş
Bu makalede, Alfresco Digital Business Platform'un (DBP) Alfresco Content Services (ACS) 6.0 ve Alfresco Process Services (APS) 1.9 bileşenleri üzerine nasıl bir içerik ve süreç çözümü oluşturabileceğini inceleyeceğiz. Kullanıcı arayüzü Alfresco Uygulama Geliştirme Çerçevesi (ADF) sürüm 2.6 ile oluşturulacaktır.
ACS 6.0 uygulaması bir dizi Docker görüntüsü olarak sağlandığı için bir Docker konteyner ortamında çalışacağız. APS, Docker görüntüsü olarak da mevcuttur.
Dosyaların belirli bir alana göre nasıl sınıflandırılabileceğini görebilmemiz için bir içerik modeli uygulayacağız ve basit bir inceleme uygulayıp dosyalara uygulayabileceğimiz iş akışını onaylayacağız. Ancak en önemlisi, eksiksiz bir çözüme ulaşmak için ACS ve APS'nin nasıl entegre edilebileceğine bir göz atacağız. Daha spesifik olarak, APS işlemlerini ACS'den başlatacağız ve ACS meta verilerini APS'den uygulayacağız:
ACS'den APS ile konuşmak için APS ReST API'yi saran bir Java İstemcisi kullanacağız. Benzer şekilde, APS'den ACS ile konuşmak için de ACS ReST API'yi saran bir Java İstemcisi kullanacağız. Son olarak, iş akışını yürütmek ve meta verileri vb. görüntülemek için kullanılacak ADF ile bir kullanıcı arayüzü geliştireceğiz.
Kaynak Kodu ve Araçları
Bu makalenin kaynak kodunu burada bulabilirsiniz. Alfresco Proje oluşturucu burada bulunabilir. ReST API Java istemcilerini de ACS için burada ve APS için ise burada bulabilirsiniz.
Kurulum ve Yapılandırma
Tahmin edebileceğiniz gibi, bu çözümü geliştirmeye başlamadan önce birkaç şey ayarlamamız gerekiyor. Bir geliştirme ortamına, Runtime ortamına, ReST API'leri için Java İstemcilerine, IDE'lere vb. İhtiyacımız var.
Alfresco Project Generator için gerekli yazılımı yükleyin
Özelleştirmeleri oluştururken ihtiyaç duyduğumuz Alfresco uzantı projelerini hızlı bir şekilde oluşturmak için bir kod üreteci kullanacağız ve aynı zamanda bu uzantıları test etmek için gereken çalışma zamanı ortamını da sağlayacaktır.
Bu nedenle, ortamı kurmaya başlamak için bu talimatları izleyin. Docker'a aşina değilseniz buradan hızlıca okuyun.
Sonuç olarak; Java, Maven, Docker, Yeoman ve Alfresco Code Generator'ün kurulu olması gerekir.
APS ReST API Java İstemcisini Kurun
APS uzak çağrıları destekleyen bir Repo uzantısı oluşturmadan önce, APS ReST API Java istemcisini klonlamanız, derlemeniz ve paketlemeniz gerekir:
$ git clone https://github.com/gravitonian/aps-rest-api-java-client $ cd aps-rest-api-java-client/ $ mvn clean install Make sure you got the project available in your local Maven Repository: $ ls -l ~/.m2/repository/org/activiti/aps-rest-api-java-client/1.0.0-SNAPSHOT/
ACS ReST API Java İstemcisini Kurun
ACS uzak çağrıları için de destek içeren bir Activiti uzantısı oluşturmadan önce, ACS ReST API Java istemcisini klonlamanız, derlemeniz ve paketlemeniz gerekir:
$ git clone https://github.com/gravitonian/acs-rest-api-java-client
$ cd acs-rest-api-java-client/
acs-rest-api-java-client mbergljung$ mvn clean install
Projeyi yerel Maven Deponuzda bulundurduğunuzdan emin olun:
$ ls -l ~/.m2/repository/org/alfresco/acs-rest-api-java-client/1.0.0-SNAPSHOT/
Alfresco Uzatma Projesi Oluşturma
Hem ACS Deposunu (yani alfresco.war) hem de APS Uygulamasını (yani activiti-app.war) özelleştireceğiz.
Alfresco projesini aşağıdaki gibi oluşturun, proje dizininin oluşturulmasını istediğiniz dizine geçin ve aşağıdaki komutu çalıştırın:
$ yo
Alfresco Extension Project
Alfresco Extension Project'i seçin ve Enter'a basın. Ardından gelecek soruları aşağıdaki gibi cevaplayın:
? Parent Project name? Alfresco DBP Sample Solution ? Parent Project description? Alfresco DBP Sample solution using ACS and APS/Activiti ? Maven projects groupId? org.alfresco ? Maven parent project artifactId? alfresco-dbp-sample-solution ? Maven projects version? 1.0.0-SNAPSHOT ? Package for Java classes? org.alfresco ? Would you like to use Community or Enterprise Edition for Repository and Share? Community ? Include project for Alfresco Repository Extension? Yes ? Repository Extension maven artifactId? repo-extension ? Repository Extension Name? Repository Extension ? Repository Extension Description? Repository extension module JAR (to be included in the alfresco.war) ? Package Repo extension as JAR or AMP? JAR ? Include project for Alfresco Repository Aggregator and Repository Docker Build? Yes ? Alfresco Repository Community version? 6.0.7-ga ? Alfresco Repository Community Docker Image version? 6.0.7-ga ? Enable HotSwap Agent and DCEVM for Repository Extension? No ? Include project for Alfresco Share Extension? No ? Include project for Alfresco Share Aggregator and Share Docker Build? No ? Include project for Activiti Extension? Yes ? Activiti extension maven artifactId? activiti-extension ? Activiti Extension Name? Activiti Extension ? Activiti Extension Description? Activiti extension JAR (to be included in the activiti_app.war) ? Package for Activiti Java classes (don't change unless you know what you are doing)? com.activiti.extension.bean ? Include project for Activiti Aggregator and Activiti Docker Build? Yes ? Activiti/APS version? 1.9.0.3 ? Activiti/APS Docker Image version? 1.9.0.1 ? Enable DCEVM for Activiti Extension? No ? Generate sample source code for all extensions? Yes ? Generate Web Script sample with APS Rest Call in the Repo Extension project? Yes ? Generate Service Task sample with ACS Rest Call in the Activiti Extension project? Yes ? Generate a developer runtime environment based on Docker Compose? Yes ? Enable Inbound Email Server? No ? Enable Outbound Email Server? Yes
Bu özelliklerin tam açıklaması için bu makaleye bakın. Son soru cevaplandıktan sonra kod üreteci tüm dosyaları oluşturacaktır, şuna benzer:
Alfresco uzantı projeniz alfresco-dbp-sample-solution adlı bir dizin içinde olmalıdır
Bu dizin otomatik olarak oluşturulacaktır.
Burada sahip olduğumuz şey, aşağıdakileri destekleyen bir dizi projedir:
Alfresco Repo Uzantıları (depo uzantısı)
Activiti Uzantıları (activiti uzantısı)
Depo Uzantıları Toplayıcı ve Docker Görüntü oluşturucu (repo-aggregator-docker)
Activiti Extensions Toplayıcı ve Docker Image oluşturucu (activiti-aggregator-docker)
Docker Compose (koşucu) tabanlı çalıştırıcı
build-all.sh ve run.sh gibi hayatı biraz daha kolaylaştıracak bir dizi komut dosyası
Kod oluşturucu, Alfresco Share için genişletme projeleri de oluşturabilir, ancak ADF ile UI geliştireceğimiz için bu bölümü kullanmayacağız.
Şimdi, oluşturulan projenin beklendiği gibi çalıştığından emin olun. Oluşturun ve çalıştırın (bununla ilgili daha fazla bilgi için bu makaleye bakın):
cd alfresco-dbp-sample-solution
./build-all.sh
./run.sh
Windows kullanıyorsanız build-all.sh komut dosyasını çalıştıramazsınız. Yalnızca mvn clean install içerir, onun yerine onu çalıştırın. run.sh betiği cd runner / docker-compose ve ardından docker-compose up içerir, bu nedenle bunu manuel olarak yapın.
Başlamasını bekleyin, ardından aşağıdaki URL'lere erişebildiğinizi doğrulayın:
APS: http:// localhost: 9080/activiti-app [email protected]/admin ile oturum açın.
Not. APS'yi kullanmak için bir lisans yüklemeniz gerekir, buradan 30 günlük bir deneme lisansı talep edebilirsiniz.
ACS Deposu: http://localhost:8082/alfresco
ACS Share: http://localhost:8080/share
admin / admin ile giriş yapın (onun için uzantılar oluşturmasak bile kullanılabilir)
İşte bu, artık biraz özelleştirme oluşturmaya hazırsınız.
Devamı şurada.