【Linux】OpenOffice.orgとJODConverterでExcelをPDF変換(設定編)
環境はCentOS5.2。
JREのインストールは前にPunoをインストールしようとして失敗したときの記事を参考に。
JAVA_HOMEを設定してない場合は設定    
# vi .bash_profile     
export JAVA_HOME=/usr/java/latest     
# source .bash_profile
JODConverterはここからtomcat付きをダウンロード。 参考記事     
# unzip jodconverter-tomcat-2.2.1.zip     
# cd jodconverter-tomcat-2.2.1     
# bin/startup.sh 
<2009/03/24 追記>    
Office2007形式に対応するために、コンパイルからやってみた記事も参考に。
ちなみにJODConverterのライセンスはGNU LGPL。
これでJODConverterのサービスが起動するので、    
http://<サーバ名>:8080/converter     
にアクセスして起動していることを確認。ポートを空けるのを忘れずに。参考。     
この段階ではOpenOffice.orgのサービスを起動してないので変換はできない。
OpenOffice.orgはここから最新版をダウンロード。SDKとかUNOではなく、まるっとインストールするために「RPM,JREなし」を選択。     
# tar xzvf OOo_3.0.0_LinuxIntel_install_ja.tar.gz     
# cd OOO300_m9_native_packed-1_ja.9358/RPMS/ 
デスクトップ環境はインストールしてないのでgnomeを削除    
# rm -f ooobasis3.0-gnome-integration-3.0.0-9358.i586.rpm     
# rpm –ivh *.rpm
インストール後は/opt/openoffice.org3/に配置される。
OpenOffice.orgをサービスとして起動。    
# cd /opt/openoffice.org3/program/     
# ./soffice -headless -accept="socket,port=8100;urp;" –nofirststartwizard &     
nofirststartwizardのオプションは必須。ここで教えてもらった。     
ポートを指定しているみたいだけど、localhostからの接続だからiptablesを設定しなくてもいいみたい。
再度    
にアクセスして適当なエクセルを選択して、「convert」を押せばPDFに変換されてブラウザ上に表示してくれる。
OpenOffice.orgのサービスを止めるには    
# fg     
の後にCtrl-Cで停止。     
これはあとでシェルスクリプトで制御できるようにする予定。現在開発中のJODConverter3.0になるとOpenOffice.orgのサービスを制御してくれるみたい。
次はコマンドでPDF変換をする場合。ここからtomcatとかついてないのをダウンロード→配置。     
# unzip jodconverter-2.2.1.zip
試しに実行    
# cd jodconverter-2.2.1     
# java -jar lib/jodconverter-cli-2.2.1.jar /tmp/Book1.xls /tmp/test.pdf
ポイントはOpenOffice.orgのサービスが起動していることと、jodconverter-cliを使うこと。
次のタスクは
- Microsoft Excel or OpenOffice.org CalcをPHPで操作      
↓
やってみた。 
<関連記事>