SlideShare uma empresa Scribd logo
1 de 20
第34回Alfresco勉強会
Alfresco 5のプレビュー機能とコンテンツ変換
2016/07/27
おおたに
わたしは…
おおたにです
 やってること
◦ 株式会社イージフでAlfrescoやLiferayなどをやってます
◦ 2児(5歳, 2歳)の父親業
◦ Ingress ゆるふわエージェント業
◦ Pokemon Go ゆるふわトレーナー業
◦ イース8(ファルコム信者なので…)
プレビュー機能とは
 ファイルをダウンロードせずにブラウザ上で中身を見れる
これです。
プレビュー機能とは
 様々なファイル形式に対応している
◦ テキスト系 : プレーンテキスト, csv, xml…
◦ オフィス系 : MS Office, LibreOffice…
◦ 画像系 : jpeg, png, gif, bmp, tiff…
◦ メディア系 : mp3, mp4, wmv, flv…
◦ その他のドキュメント : PDF…
※ ファイルによってはプレビューの精度が落ちる(中身の再現性が低い)場合もある
ドキュメントプレビュー
 テキスト/オフィス/PDF等のプレビュー
◦ HTML5というかPDF.jsで実装(以前はFlashで実装されていた)
◦ 各ファイルをPDFに変換して表示
◦ プレビュー内検索
◦ 検索結果ハイライティング
◦ PDF形式でのダウンロード
画像プレビュー/メディアプレビュー
 メディアプレビュー
◦ Flashで実装された埋込メディアプレイヤー
◦ 疑似ストリーミング(以前はクライアントにファイルを全て転送
してからプレビューしていた)
 画像プレビュー
◦ ただ画像が表示されるだけ
うまくプレビューできないこともある…
 ドキュメントをプレビューしたいのに表紙の画像しか表示さ
れない
うまくプレビューできないこともある…
 文字化けする(MBCSを含むcsv, xmlあたり)
ファイルの本来の内容は、
一行目,あいうえお
二行目,かきくけこ
三行目,さしすせそ
うまくプレビューできないこともある…
 PDFの読み込みに失敗する(PDF生成自体が失敗してる)
だいたいコンテンツ変換のせい
 元ファイルをPDFに変換し、それをPDF.jsを使ってブラウザ
上に表示している
 プレビューできない場合、何らかの理由でPDFが生成されて
いない可能性が高い
コンテンツ変換とは
 ファイルをある形式(MIMEタイプ)から別の形式に変換する
機能のこと
 英語だと Content Transformation と呼ばれている
コンテンツ変換とは
 Alfrescoの様々な内部処理でコンテンツ変換が利用されている
◦ プレビュー用PDF生成
◦ サムネイル用画像生成
◦ 全文検索用テキスト抽出
…
コンテンツ変換とは
 ユーザがコンテンツ変換機能を利用することもできる
◦ ルール機能のアクションとして、ファイル追加/更新時に自動的に
コンテンツ変換を実行する
どんなファイル形式の変換ができるの?
 http://localhost:8080/alfresco/service/mimetypes で変換可能な
MIMEタイプを確認できる
◦ Transformable to : 変換可能な変換先MIMEタイプ(&変換方法)
◦ Transformable from : 変換可能な変換元MIMEタイプ(&変換方法)
どこで設定されてるの?
 <alf_dir>/tomcat/webapps/alfresco/WEB-INF/lib/alfresco-repository-5.x.x.jar
内の alfresco/subsystems/Transformers/default/transformers.properties
# Debug and Log buffer sizes
# ==========================
transformer.debug.entries=0
transformer.log.entries=50
# Base setting for all transformers
# =================================
content.transformer.default.priority=100
content.transformer.default.thresholdCount=3
content.transformer.default.time=0
content.transformer.default.count=100000
content.transformer.default.errorTime=120000
content.transformer.default.timeoutMs=120000
content.transformer.default.readLimitTimeMs=-1
content.transformer.default.maxSourceSizeKBytes=-1
content.transformer.default.readLimitKBytes=-1
content.transformer.default.pageLimit=-1
content.transformer.default.maxPages=-1
# Transformer specific settings
# =============================
content.transformer.Archive.extensions.*.txt.priority=50
content.transformer.Archive.extensions.bin.txt.supported=false
content.transformer.BinaryPassThrough.priority=20
# Text
# ----
content.transformer.TikaAuto.priority=120
content.transformer.TikaAuto.extensions.bin.txt.supported=false
content.transformer.Office.priority=130
content.transformer.OutlookMsg.priority=125
...
何が書かれてるの?
 各変換方法に対して
◦ サポートする変換元/変換先MIMEタイプ
◦ 優先度
◦ パイプライン(複数の変換を組み合わせた新しい変換を作る)
◦ 制限
 ファイルサイズ
 タイムアウト値
 最大ページ数
※ それぞれ、変換をエラーで返す/制限値まで変換を行ってその結果を返
すの2通りの制約を課すことが可能
 各変換方法は別途 Spring beanとして定義されている
※ 詳しくは https://wiki.alfresco.com/wiki/Content_Transformation_Limits を参照
カスタマイズできるの?
 <alf_dir>/tomcat/shared/classes/alfresco-global.properties に設定を追加/
上書きすることで以下のようなカスタマイズができる
◦ 新規変換の追加
◦ 既存の変換の設定変更
コンテンツ変換をカスタマイズしよう
(1) CSVのプレビューで文字化けしなくする
デフォルト設定
↑ PdfBoxのPDF変換が文字化けを起こしてるっぽい
 alfresco-global.propertiesに以下の設定を追加
↑ これでtext/plainを経由してOpenOfficeを使ってPDF変換する、新
しいCSV→PDF変換が有効になる
content.transformer.PdfBox.priority=110
content.transformer.PdfBox.extensions.pdf.txt.priority=50
content.transformer.PdfBox.TextToPdf.extensions.csv.pdf.supported=true
content.transformer.PdfBox.TextToPdf.extensions.xml.pdf.supported=true
content.transformer.PdfBox.TextToPdf.maxSourceSizeKBytes=10240
content.transformer.PdfBox.TextToPdf.extensions.csv.pdf.supported=false
content.transformer.complex.Csv.Pdf.pipeline=*|txt|OpenOffice
content.transformer.complex.Csv.Pdf.priority=110
content.transformer.complex.Csv.Pdf.extensions.csv.pdf.supported=true
コンテンツ変換をカスタマイズしよう
(2) 大きいサイズのpptxファイルもプレビューさせる
デフォルト設定
↑ pptxファイルがサイズ上限を超えてるとプレビューできない
 alfresco-global.propertiesに以下の設定を追加
↑ pptxファイルの変換サイズ制限を緩和する
※ 変換の制限を緩くすることによってAlfrescoサーバの負荷が高まる点には注意が必要
content.transformer.OpenOffice.extensions.pptx.pdf.maxSourceSizeKBytes=4096
content.transformer.OpenOffice.extensions.pptx.pdf.maxSourceSizeKBytes=6134
おまけ
 aegif Labo blog やってます
http://aegif-labo.blogspot.jp/
 2016/06/27にAlfresco Community Edition 5.2.a (201606-EA)
がリリースされました
https://wiki.alfresco.com/wiki/Community_file_list_201606-EA

Mais conteúdo relacionado

Mais de Tasuku Otani

Alfresco勉強会#33 alfresco 5.1でコンテンツ自動削除を実装してみた
Alfresco勉強会#33 alfresco 5.1でコンテンツ自動削除を実装してみたAlfresco勉強会#33 alfresco 5.1でコンテンツ自動削除を実装してみた
Alfresco勉強会#33 alfresco 5.1でコンテンツ自動削除を実装してみたTasuku Otani
 
Alfresco勉強会#31 alfresco 5.0にウイルススキャン機能を実装してみる
Alfresco勉強会#31 alfresco 5.0にウイルススキャン機能を実装してみるAlfresco勉強会#31 alfresco 5.0にウイルススキャン機能を実装してみる
Alfresco勉強会#31 alfresco 5.0にウイルススキャン機能を実装してみるTasuku Otani
 
Alfresco勉強会#28 alfresco 5.0の検索機能をみてみよう
Alfresco勉強会#28 alfresco 5.0の検索機能をみてみようAlfresco勉強会#28 alfresco 5.0の検索機能をみてみよう
Alfresco勉強会#28 alfresco 5.0の検索機能をみてみようTasuku Otani
 
Alfresco勉強会#26 alfresco community 5.0でssoを設定する
Alfresco勉強会#26 alfresco community 5.0でssoを設定するAlfresco勉強会#26 alfresco community 5.0でssoを設定する
Alfresco勉強会#26 alfresco community 5.0でssoを設定するTasuku Otani
 
Alfresco勉強会#18 alfrescoのバックアップとリストア
Alfresco勉強会#18 alfrescoのバックアップとリストアAlfresco勉強会#18 alfrescoのバックアップとリストア
Alfresco勉強会#18 alfrescoのバックアップとリストアTasuku Otani
 
Alfresco勉強会#15 alfresco 4をインストールしてみよう!
Alfresco勉強会#15 alfresco 4をインストールしてみよう!Alfresco勉強会#15 alfresco 4をインストールしてみよう!
Alfresco勉強会#15 alfresco 4をインストールしてみよう!Tasuku Otani
 
alfresco_study_4_alfresco4_solr_integration
alfresco_study_4_alfresco4_solr_integrationalfresco_study_4_alfresco4_solr_integration
alfresco_study_4_alfresco4_solr_integrationTasuku Otani
 

Mais de Tasuku Otani (7)

Alfresco勉強会#33 alfresco 5.1でコンテンツ自動削除を実装してみた
Alfresco勉強会#33 alfresco 5.1でコンテンツ自動削除を実装してみたAlfresco勉強会#33 alfresco 5.1でコンテンツ自動削除を実装してみた
Alfresco勉強会#33 alfresco 5.1でコンテンツ自動削除を実装してみた
 
Alfresco勉強会#31 alfresco 5.0にウイルススキャン機能を実装してみる
Alfresco勉強会#31 alfresco 5.0にウイルススキャン機能を実装してみるAlfresco勉強会#31 alfresco 5.0にウイルススキャン機能を実装してみる
Alfresco勉強会#31 alfresco 5.0にウイルススキャン機能を実装してみる
 
Alfresco勉強会#28 alfresco 5.0の検索機能をみてみよう
Alfresco勉強会#28 alfresco 5.0の検索機能をみてみようAlfresco勉強会#28 alfresco 5.0の検索機能をみてみよう
Alfresco勉強会#28 alfresco 5.0の検索機能をみてみよう
 
Alfresco勉強会#26 alfresco community 5.0でssoを設定する
Alfresco勉強会#26 alfresco community 5.0でssoを設定するAlfresco勉強会#26 alfresco community 5.0でssoを設定する
Alfresco勉強会#26 alfresco community 5.0でssoを設定する
 
Alfresco勉強会#18 alfrescoのバックアップとリストア
Alfresco勉強会#18 alfrescoのバックアップとリストアAlfresco勉強会#18 alfrescoのバックアップとリストア
Alfresco勉強会#18 alfrescoのバックアップとリストア
 
Alfresco勉強会#15 alfresco 4をインストールしてみよう!
Alfresco勉強会#15 alfresco 4をインストールしてみよう!Alfresco勉強会#15 alfresco 4をインストールしてみよう!
Alfresco勉強会#15 alfresco 4をインストールしてみよう!
 
alfresco_study_4_alfresco4_solr_integration
alfresco_study_4_alfresco4_solr_integrationalfresco_study_4_alfresco4_solr_integration
alfresco_study_4_alfresco4_solr_integration
 

Alfresco勉強会#34 alfresco 5のプレビュー機能とコンテンツ変換について