Wednesday, April 20, 2016

Alfresco Community Edition 5.1の新機能を見てみよう

こんにちは。大谷です。

今回は、Alfresco Community Edition 5.1の新機能について紹介します。既にAlfresco勉強会の方で「Alfresco Community 5.1.e 機能紹介」という発表があって、GUI上でのモデル定義とスマートフォルダ機能については触れられていますが、ここではそれ以外の変更点についても紹介したいと思います。

なお、インストール方法については「Alfresco Community Edition 5.1をインストールしてみよう」という記事を見てみてください。


今回使っているバージョンは?


2016/02/17にリリースされたAlfresco Community Edition 5.1.eというバージョンです。Community 5.1.x系の最新版であり、かつ初のGA(Generally Available)版となります。

実は、5.1系からバージョンの呼称が変わっていて、201508_EA(Early Access)、201509_EA、201510_EA、201512_EA、201602_GAとバージョンを重ねてきました。そして、それぞれが内部的にはこれまでの命名規則と同じ5.1.a、5.1.b、5.1.c、5.1.d、5.1.eというバージョン番号が振られています。というわけで、5.1.e = 201602_GA版ということになります。


新機能の前に、出来なくなったこと


大きく2つの機能が落ちています。1つはNFS、もう1つはjBPMです。

ファイルサーバ機能としてNFSが利用できなくなった

AlfrescoはFTP、CIFS、WebDAV等のファイルシステムアクセス機能を持っていますが、これまで利用できたNFS機能が標準機能から外れました。ただ、ソースコードはGitHub上に公開されているので、それをビルド/パッケージングすることで引き続きNFS機能を利用することはできるようです(未検証ですすいません…)

ワークフローエンジンとしてjBPMを選択できなくなった

これまでもjBPMはオプション扱いで、alfresco-global.propertiesで設定変更することで利用できましたが、5.1からはalfresco-global.propertiesで設定することもできなくなりました。完全にActivitiに移行したということになります。しかし、Spring bean定義が生きていることや、jBPM関連のjarファイルが相変わらず同梱されているところを見ると、Spring beanの設定を変更することで相変わらずjBPMを利用できるかもしれません(こちらも未検証ですすいません…)


5.1で出来るようになったこと


次に、Alfresco Community Edition 5.1の新機能を挙げていきます。これまで幾度となく要望があがっていてやっと実現したもの、Alfresco Explorer(=過去の遺物)でしか操作できなかったものがやっとAlfresco Shareに実装されたものなど、大小様々なエンハンスメントがありましたが、ここでは主要なものをいくつか挙げたいと思います。


スマートフォルダ機能

まずは、スマートフォルダから紹介します。スマートフォルダとは、指定した切り口(条件)に合致したコンテンツを仮想的なフォルダに表示する機能です。よく仮想フォルダなどと呼ばれています。データベースでいうところのビューみたいなものかと思います。まず、この機能を使うためにはAlfrescoの設定を変更する必要があります。<tomcat_dir>/shared/classes/alfresco-global.propertiesで、以下のようにスマートフォルダの設定をtrueに変更します(デフォルトでfalseとなっています)。

smart.folders.enabled=true

Alfrescoを再起動したら、管理者でログインして「リポジトリ」から リポジトリ/データディクショナリ/スマートフォルダテンプレート フォルダに移動し、ここにjson形式で書かれたテンプレートファイルをアップロードします(今回はデフォルトで入っているsmartFoldersExample.jsonを利用します)。テンプレートファイルをアップロードしたらコンテンツ詳細画面の「タイプの変更」でコンテンツタイプを「スマートフォルダテンプレート」に変更してください。


以上でスマートフォルダのテンプレート登録が終わりました。続いて、テスト用にフォルダを作り、フォルダ詳細画面の「アスペクトの管理」から「システムスマートフォルダ」アスペクトを追加します。すると、フォルダのプロパティ編集画面にテンプレート設定欄が表示されるので、適用するテンプレートを選択して保存します。


では、スマートフォルダテンプレートを設定したフォルダを見てみてください。メガネアイコンの付いたフォルダが表示され、そのフォルダ内に指定の条件に合致するコンテンツが表示されているはずです。


この機能、従来はAlfresco Workdeskという製品で実現されていたのですが、Workdeskの開発が終わったためか、Alfrescoの標準機能として搭載されました。要望としてよく伺っていた機能なので(特に競合製品で出来て標準のAlfrescoではできていなかった)、Alfrescoの適用範囲というか利用シーンがググッと広がるんじゃないかなと思っています。


GUI上でのモデル定義機能

これも大きなエンハンスメントですが、Alfresco Shareの管理画面上からカスタムモデルを定義できるようになりました!これまでも、Data Dictionaryフォルダ以下にモデル定義のxmlファイルをアップロードして動的にモデル定義を読み込ませることはできましたが、
  • モデル定義をxmlで記述しなくてはならない
  • Alfresco Shareのフォーム定義(要Alfresco再起動)を別途行わないとAlfresco Share上でカスタムプロパティが表示されない
という状況でした。Alfresco 5.1からは、カスタムモデル定義が管理画面上の操作で完結するようになります。

以下、簡単にカスタムモデルの定義方法を見ていきます。まず、管理者でログインし、「管理ツール」→「モジュールマネージャ」に移動して「モデルの作成」をクリックします。ここで、カスタムモデルの情報を入力します。


次に、作成したカスタムモデルを開き、「カスタムタイプの作成」もしくは「アスペクトの作成」をクリックし、タイプもしくはアスペクトの情報を入力します。


続いて、作成したカスタムタイプもしくはアスペクトを開き、「プロパティの作成」をクリックし、プロパティを追加します。名前やラベル、データ型の他、必須か否か、複数値、デフォルト値、制約、インデックス種類を設定することができます。


必要なプロパティを追加し終わったら、アクションの「レイアウトデザイナー」をクリックします。

ここで、Share上での表示フォームを設定します。「デフォルトのレイアウトを適用」をクリックすると標準的な表示レイアウトを作ってくれるので、それをベースに調整するのもよいかもしれません。なお、このステップは必須で、レイアウトを保存しないとカスタムモデルが有効になりません。


必要なモデル定義が完了したら、カスタムモデルのアクションから「有効化」をクリックすることでモデルを有効にすることができます。エクスポートを実行すると、モジュールとしてパッケージングされたモデル定義/フォーム定義を取得することができます。GUIベースでモデル定義を進めて、エクスポートした定義ファイルで詳細を調整する、というようなモデル定義の進め方もできるうえ、モデル定義の可搬性も高くなって嬉しい事ずくめです。


以上でカスタムモデル定義が使えるようになります。適当なコンテンツの「タイプの変更」をクリックすると、先ほど追加したモデルが選択できるようになっているはずです。


ホームページ指定機能

ログイン後に○○のページに遷移してほしいという要望は結構あって、これまでは都度カスタマイズで対応していたのですが、この機能を使うとユーザ毎に自分の好きなページをホームページに指定して、ログイン直後に表示することができます。


「解凍先(Unzip to)」アクション

これも、Alfresco Explorerで出来ていた機能がAlfresco Shareで実現されたパターンになります。Alfresco上にアップロードされたZIPファイルもしくはACP(Alfresco Content Package)ファイルを、指定したフォルダに展開する機能です。ルールのアクションとしては既に実装されていたのですが、ZIPファイルもしくはACP ファイルのアクションから直接実行できるようになりました。



「所有者になる(Take Ownership)」アクション

これまでAlfresco Explorerで出来ていたコンテンツ所有権の取得をAlfresco Shareで実行できるようになりました。コンテンツ所有権は権限管理上地味に重要な概念で、コンテンツ所有者はそのコンテンツに対して特別な権限が与えられています。しかし、Alfresco 5.0からAlfresco Explorerが廃止となり、コンテンツ所有権をGUI上で操作できない状況になっていました。

Admin Consoleでのノードブラウズと管理

Alfresco Community Edition 5.0系の後半から、Enterprise Edition限定だったAdmin Consoleの一部がCommunity Editionにも開放されました。 http://localhost:8080/alfresco/s/admin/ にアクセスすると、Admin Consoleにログインすることができます。モデル/テナント/ワークフローの各コンソールが利用できる他、ノードブラウザを利用することができます。Alfresco Shareにもノードブラウザがあるのですが、Admin Consoleではノードに対して以下のような操作を行うことができるようになりました。
  • ノードの削除
  • ノードの強制削除(アーカイブせずに削除)
  • 所有権の獲得
  • 権限を元に戻す
  • ノードの復元(アーカイブされたもののみ)
  • ノードプロパティの削除


さいごに


以上が、Alfresco Community Edition 5.1の新機能になります。是非みなさんもAlfresco Community Edition 5.1をインストールして、これらの新機能を確認してみてください。


Friday, April 15, 2016

CmisSync intégré dans l'offre du numéro 1 japonais de la comptabilité en ligne

Le numéro 1 japonais des solutions de comptabilité en ligne, A-SaaS, a décidé de renforcer son offre en fournissant à ses clients un service de synchronisation et partage de fichiers.

Plutôt que d'implémenter une solution propriétaire, A-SaaS a choisi de réutiliser les produits "sur étagère" d'Aegif.

CmisSync était exactement ce qu'il fallait: Client de synchronisation facile à utiliser, et infrastructure flexible.

Aegif a donc créé une version renommée de CmisSync avec les logo, nom de produit, et adresse d'authentification de A-SaaS:



Du côté serveur, A-SaaS a choisi NemakiWare, un serveur de GED (Gestion Électronique de Documents) open source et conforme au standard CMIS, tournant sur AWS.

A-SaaS cite les raisons suivantes d'offrir ce service à ses clients:
  • Plus sécurisé que les va-et-vient de documents par email:
    • Pas de risque d'envoyer au mauvais destinataire.
    • Recevoir moins de documents par email signifie être plus prudent quand on en reçoit, le résultat étant une meilleure résilience aux virus et à l'ingénierie sociale.
  • Moins de risque de perte de données.
  • Introduction aisée aux fonctionnalités de GED.
  • Meilleure collaboration entre les employés.

Nicolas Raoul

Wednesday, April 13, 2016

Japanese SaaS accounting leader launches cloud storage service, powered by CmisSync

The #1 web-based accounting solution in Japan, A-SaaS, is now strengthening its offer by providing file cloud storage to its customers.

EFSS (Enterprise File Sync & Share) is not easy to get right, so rather than implementing its own proprietary solution, the Tokyo-based company chose to reuse off-the-shelf products made by Aegif.

Aegif's CmisSync product provided exactly what was needed: Easy-to-use file synchronization and flexible back-end.

Aegif has built a rebranded version of CmisSync with a custom logo, product name and authentication address:


Unknown to users, the backend is NemakiWare, an open source CMIS-compliant ECM server, running on AWS.

The accounting company cited the following reasons for offering this service to their customers:
  • Safer than sending document back-and-forth by email:
    • No risk of sending to unintended recipients.
    • Receiving less documents via email means being more careful when receiving one, leading to stronger resilience to viruses and social engineering.
  • Less risk of data loss.
  • Lower entry barrier to feature-rich document management.
  • Better collaboration between employees.

Nicolas Raoul

Friday, April 8, 2016

Liferay Portal 7 リリース!

こんにちは。ナクラです。
先日のことですが、ついにとうとう全世界が待ちわびていた(?)Liferayの新バージョン
Liferay Portal 7 CE GA1 がリリースされました!

前回のマイナーバージョンアップLiferay Portal 6.2.3が2015年4月だったことを考えると
ほぼ丸1年、またLiferay Portal6.0のリリースは2010年3月だったので、そこから数えるとなんと6年ぶり(!)のメジャーバージョンアップとなります。

詳しいことはこの記事に書かれていますが、
新機能について、読めない英語を必死で読んで自分なりに簡単にまとめておきます。

Java8に対応

  • 併せてTomcatも8に対応

内部のモジュール化

  • OSGiプラットフォーム対応

新しいフォーム作成画面

  • フォームのフィールドを設定するときに、複数列にしたり、フォーム画面を複数ページにまたがるように作成できる

コンテンツ編集機能の強化

  • Liferay社謹製の新しいWYSIWYGエディタ(Alloy Editor)
  • Webコンテンツをフォルダ分けできるようになった
  • Webコンテンツのバージョン間の差分表示
  • テンプレートやコンテンツのサイト間共有 

コンテンツへの地図情報の付加

  • Webコンテンツ、データリスト、文書ファイルに地図情報を付加できるようにフィールドを追加できる

モダンなデザイン

  • 最近はやりのデザイン対応したサイトを作れる 

ブログ、フォーラム、Wikiの改良

ステージング機能の改善 

  • メニューから簡単にステージング設定ができる
  • 複雑なパブリッシュシナリオに対応

画像ファイルの選択画面の改善

  • アップロードしたファイルの画像を見て選択できる

ページロードの速度アップ 

  • 全体リフレッシュを避けて、部分描画でその部分だけをロード

既存のアプリケーションの見映えの改良

  • Bootstrapを改良したLexiconフレームワークで見映えをよくした

ナビゲーションメニューの改良

  • Dockbarにあったメニューが画面横に移動

インフラの改良

  • 検索エンジンをLuceneからElasticSearchに置き換え
  • JAX-RS対応
  • デバイスマネージャ
  • 新コンフィグAPI
  • 新アップグレードフレームワーク

まだまだ、いろいろと改良点はある(1750も!)みたいですが
今後も機能追加をやっていくようですね。

今回まとめた新機能についてはまた個別に詳しく紹介できればと思っています。

最後に、新しくなったLiferayのトップ画面を紹介しておきます。
すごくカッコ良くなってますね!


Wednesday, April 6, 2016

Alfresco Community Edition 5.1をインストールしてみよう

こんにちは。おおたにです。

先日、埼玉県幸手市にある権現堂堤というところに桜と菜の花を見に行きました。以前から一度は行きたいと思っていたのですが、実際に目にしたピンクと黄色の鮮やかなコントラストは想像以上でした。ちなみに権現堂堤は秋になるとたくさんの曼珠沙華が咲き誇り、こちらも壮観です。


さて、ここからが本題なのですが、今回はAlfresco Community Edition 5.1のインストール方法について紹介しようと思います。AlfrescoはWindows / Mac / Linux向けにそれぞれインストーラを提供しているので、インストーラをクリックするだけでとても簡単にセットアップすることができます。

なお、この記事で使用しているAlfrescoのバージョンはAlfresco Community Edition 201602 GAというものです。 記事執筆時点でのコミュニティ版の最新版となります。なお、このバージョンは内部的には5.1.eとナンバリングされているため、以後5.1.e(5.1系)と呼ぶことにします。

これまで4.2.xや5.0.xと呼ばれていたバージョン番号が何故5.1から変わってしまったのか、正確なところは分かりませんが、5.1からalfresco(Alfrescoのコアリポジトリを提供するアプリケーション)とshare(AlfrescoのUIを提供するアプリケーション)のソフトウェアライフサイクルが独立したことに起因するのではないかと想像しています。

まずはインストーラのダウンロードから


というわけで、まずはインストーラをダウンロードします。目的のインストーラはCommunity file list 201602-GAからダウンロードできます。OSに応じたものをダウンロードしてください。このサイトではインストーラの他に、手動インストール用のモジュールなどもダウンロードできます。

インストーラを実行しよう


早速インストーラをキックしましょう。64bit版Windowsであればalfresco-community-installer-201602-win-x64.exeを実行します。以下、Windows版のインストーラに沿って見ていきます。

まずは言語選択画面が表示されるので、インストーラの表示言語を選択して「OK」をクリックします。ここで選択するのはあくまでもインストーラの表示言語です。インストールされるAlfrescoの言語ではありません(ここでの選択に関わらず、Alfrescoの対応する全ての言語リソースがインストールされます)。


続いて「次へ」をクリックします。



次に、インストールの種類を選択します。ここでは「詳細設定」を選択して「次へ」をクリックします。


必要なコンポーネントを選択して「次へ」をクリックします。各項目の内容は以下のとおりです。
  • Java : Java SE Runtime Environment 1.8。Alfrescoの起動に必要だが既にインストールされている場合は不要。
  • PostgreSQL : PostfreSQL 9.4.4。Alfrescoが利用するRDBMS。別にインストールされたRDBMSも利用可能だが、これを選択しておくとAlfresco専用にRDBMSを用意する上に構成も自動的に行われる。
  • LibreOffice : LibreOffice 4.4.5。オフィス系文書のコンテンツ変換やテキスト抽出に利用される。ひとまず選択したままでよい。
  • Solr1 : Apache Solr 1。基本的にはSolr 4を使うべきなので選択しないままでOK。
  • Solr4 : Apache Solr 4。検索に利用される。別途検索エンジンを用意しないのであれば選択したままにする。
  • Alfresco Office Services : SharePoint Protocol Support機能。AlfrescoがMicrosoft SharePointのフリをして、Alfresco上にあるオフィス系文書を直接MS Officeで開いたりAlfrescoに書き戻したりすることができる。不要であればチェックを外す。
  • Web Quick Start : Webコンテンツ管理モジュール。必要ならチェックを付ける。
  • Googleドキュメントの統合 : Google Docs連携モジュール。Alfresco上にあるコンテンツをGoogle Docsで開いたりAlfrescoに書き戻したりすることができる。不要であればチェックを外す。


次に、インストールフォルダを選択して「次へ」をクリックします。



データベースのポート番号を指定します。PostgreSQLを選択していた場合はデフォルトの5432番でOKです。



Tomcatのポート設定を行います。Tomcatの前面にApache等のWebサーバを立てる場合はそのドメイン名を入力します。Tomcatの各ポートはデフォルトのままでよいと思いますが、Tomcatで直接80番にホストしたいとか、他のTomcatサーバと競合する等の場合はポート番号を変更します。日本語表示にするとAJPポートが下に切れてしまうのはAlfrescoの伝統です。というのは冗談で、デフォルトで8009番と入力されていて、もちろん変更することも可能です。



続いて、LibreOfficeのポート番号を指定します。他のサービスとポートが競合しない限り、デフォルト設定のままでよいと思います。


次に、FTPポートを指定します。デフォルトでAlfrescoサーバにFTPアクセスすることができ、そのポート番号を指定します。このFTPサーバ機能は、スキャナ等との連携や、初期データ登録、Windows Explorerを使ったAlfrescoへのアクセスなどに利用することができます。


管理者アカウントのパスワードを入力します。デフォルトの管理者ユーザ名はadminです名前です。



最後にWindowsサービスとして登録する際のスタートアップの種類を選択します。自動起動にしたい場合は「自動」を選択します。



以上で設定は終わりです。「次へ」をクリックするとインストールが始まります。



インストールが終わると以下のようなダイアログが表示されます。「Alfresco Communityを起動する」にチェックが入っていると、「終了」をクリックした後にAlfrescoサービスが開始されます。なお、Windowsの場合はAlfrescoは以下の2サービスからなっています。
  • alfrescoPostgreSQL : PostgreSQL(RDBMS)のサービス 
  • alfrescoTomcat : AlfrescoをホストするTomcatのサービス

Alfrescoにアクセスしてみよう


Alfrescoが起動したら、ブラウザで http://localhost:8080/share/ にアクセスしてみましょう。以下のダイアログが表示されたら、ユーザー名adminと先ほど設定したパスワードを入力します。



正常にインストールされていれば、ログインに成功して以下のような画面が表示されるはずです。



これでAlfrescoを利用する準備が整いました。

うまく動かない場合は…


うまく起動しない場合は以下の内容を確認してみてください。
  1. Alfresco起動設定の確認。Windowsの場合は <alfresco_dir>/tomcat/bin/alfrescoTomcatw.exe でJVMオプション等を確認/設定することができます。



  1.  ログの確認。以下のようなログがあります。
    • <alfresco_dir>/alfresco.log : Alfrescoアプリケーション(コアリポジトリ)ログ
    • <alfresco_dir>/share.log : Shareアプリケーション(UIアプリ)ログ
    • <alfresco_dir>/solr.log : Solrアプリケーション(検索エンジン)ログ
    • <alfresco_dir>/tomcat/logs/alfrescotomcat-stderr.log : Tomcat標準エラー出力ログ
    • <alfresco_dir>/tomcat/logs/alfrescotomcat-stdout.log : Tomcat標準出力ログ
    • <alfresco_dir>/tomcat/logs/catalina.log : Tomcatログ
    • <alfresco_dir>/tomcat/logs/localhost_access_log.txt : アクセスログ

まとめ


今回はAlfresco Community Edition 5.1のインストーラインストールを紹介しました。インストーラを使うと必要なモジュールのインストールと設定がとても簡単にできます。実際に利用する環境を構築するためには、要件に合わせた更なる設定とパフォーマンスチューニング等が必要になりますが、お試しで軽く使ってみようという程度であればインストーラでインストールしたもので十分かと思います。是非みなさんも試してみてください。

なお、Alfresco Community Edition 5.1の新機能についてはAlfresco勉強会での発表がありましたのでこちらの記事が参考になります。後ほどこのブログでも紹介したいと思います。