FAMLog
バージョン8以降でWeb公開エンジンにJavaライブラリを追加する方法
November 13, 2008
FileMaker ServerのXSLTを使用したカスタムWeb公開では、Javaのライブラリファイルを追加することで、追加したライブラリに含まれるメソッドをXSLTスタイルシートで利用できます。
Javaのライブラリファイルを下記のフォルダに配置した後、Web公開エンジンを再起動することで、ライブラリを利用できるようになります。
(Mac)
/Library/FileMaker Server/Web Publishing/publishing-engine/cwpe/WEB-INF/lib
(Windows)
C:¥Program Files¥FileMaker¥FileMaker Server¥Web Publishing¥publishing-engine¥cwpe¥WEB-INF¥lib
FileMaker Server 7 Advancedのときと異なり、FileMaker Server 9およびバージョン8以降のFileMaker Server Advancedでは、フォルダのパスが若干変わっていて、FileMaker Serverのバージョン番号が含まれなくなっています。
[関連]Web公開エンジンにJavaのライブラリを追加する(FAMLog)
Get(デスクトップパス)関数とFileVault
November 11, 2008
FileMaker Proの「Get(デスクトップパス)関数」は、現在のユーザーのデスクトップフォルダへのパスを返します。
この関数の戻り値の例は、Mac版では通常「/Macintosh HD/Users/foo/Desktop/」ですが、Mac OS Xにおいてホームフォルダの内容を保護する機能であるFileVaultを有効にしている場合には「/foo/Desktop/」となります。
Get(デスクトップパス)関数以外にも、FileVault機能の利用の有無により返ってくる値が異なる関数があるので注意が必要です。
[関連]Get(デスクトップパス)関数(FAMLog)
Get(デスクトップパス)関数
November 10, 2008
FileMaker Proの「Get(デスクトップパス)関数」は、現在のユーザーのデスクトップフォルダへのパスを返します。
この関数の戻り値は次の例のようになります。
・「/Macintosh HD/Users/foo/Desktop/」:Mac版の場合
・「/C:/Documents and Settings/foo/Desktop/」:Windows XPの場合
・「/C:/Users/foo/Desktop/」:Windows Vistaの場合
Mac版におけるパス形式は通常「/ドライブ名/Users/ユーザー名/Desktop/」、Windows XPにおけるパス形式は「/ドライブ名:/Documents and Settings/ユーザー名/Desktop/」、そしてWindows Vistaにおけるパス形式は「/ドライブ名:/Users/ユーザー名/Desktop/」となっています。
なお、Get(デスクトップパス)関数は、バージョン8で追加された関数です。
改訂版発売記念アマゾン購入キャンペーン予告
October 24, 2008
書籍「FileMaker Server カスタムWebテクニック改訂版」が2008年10月27日に発売されます。
今回は、書籍の発売にあたり、期間限定のアマゾン購入キャンペーンを実施する予定です。Amazon.co.jpで2008年10月30日(木)から2008年11月5日(水)までの間に「FileMaker Server カスタムWebテクニック改訂版」をお求めいただいた方がキャンペーンの対象となります。
キャンペーンのお申し込み方法については後日発表予定です。いましばらくお待ちください。
キャンペーン名:
「FileMaker Server カスタムWebテクニック改訂版」アマゾン購入キャンペーン
特別プレゼント:
プロも見落とす?PHP時代のFileMaker カスタムWeb「べからず集」七ヶ条(PDFファイル)
キャンペーン期間:
2008年10月30日(木)から2008年11月5日(水)まで
[関連]書籍「FileMaker Server カスタムWebテクニック改訂版」アマゾン購入キャンペーン予告のお知らせ(filemaker.ne.jp)
(2008/10/30追記:PDFファイルのタイトルを一部修正しました。)
(2008/11/06追記:本キャンペーンは終了いたしました。多数のご応募誠にありがとうございました。)
カスタムWeb公開におけるスクリプト変数の有効範囲
October 09, 2008
FileMaker 8以降でスプリプトや計算式でグローバル変数やローカル変数を使用できるようになりましたが、FileMaker ServerのXSLTを使用したカスタムWeb公開でスクリプト変数を利用する際にはいくつか注意点があります。
カスタムWeb公開におけるグローバル変数は、グローバルフィールドと同様に各クライアントごとに独自の値を持つものの、ファイルが閉じられるまでその値が保持されるのではなく、1回のHTTPリクエスト(厳密にはWeb公開コアへのリクエスト)が完了するたびに値が破棄されます。すなわち、グローバル変数の有効範囲は、データベースセッションが無効の場合はリクエストが終了するまでです。
一方、Web公開エンジンのXSLTデータベースセッションオプションを有効にすると、セッション拡張関数を使用したときにグローバル変数およびグローバルフィールドの値をリクエスト間で保持できるようになります。すなわち、データベースセッション有効時におけるグローバル変数の有効範囲はセッションがタイムアウトするまでとなります。
ローカル変数については、データベースセッションの設定に関わらず、その有効範囲は常にスクリプトが終了するまでです。
[関連]FileMaker Pro 8の新機能:スクリプト変数(FAMLog)
Get(ホストアプリケーションバージョン)関数
October 06, 2008
FileMaker 9で新たに追加された「Get(ホストアプリケーションバージョン)関数」は、現在のデータベースをホストしているコンピューターで実行されているFileMaker ProまたはFileMaker Serverのバージョン情報を示す文字列を返します。
この関数の戻り値は次の例のようになります。
・「Pro 9.0v1」:FileMaker Pro 9.0v1の場合
・「ProAdvanced 9.0v3」:FileMaker Pro 9.0v3 Advancedの場合
・「Server 9.0v3」:FileMaker Server 9.0v3の場合
なお、現在のデータベースが共有されていないかホストされていない場合、Get(ホストアプリケーションバージョン)関数は空の文字列を返します。
FileMaker Server カスタムWebテクニック:第6章補足情報
October 01, 2008
「FileMaker Server カスタムWebテクニック」第6章補足情報
『6.1.7 送信メールのSubjectで発生する文字化けを防止する』で紹介している、javax.mail.internet.MimeUtilityクラスのencodeTextメソッドは、FileMaker Server 9およびFileMaker Server 9 Advancedでは使用できません。
バージョン9のFileMaker Serverでは、利用されているTomcatのバージョンが5.5系列にアップグレードされた関係で、JavaMail APIのライブラリがWeb公開エンジンに同梱されなくなりました。そのため、バージョン7およびバージョン8では利用可能であったJavaMail APIが提供するMimeUtilityクラスのencodeTextメソッドは利用できなくなっています。
ただし、JavaMail APIのライブラリ(mail.jar)と、JavaMail APIの利用に必要なJavaBeans Activation Frameworkというライブラリ(activation.jar)を、Web公開エンジンに追加すれば上記のメソッドを利用できるようになります。
fmservicewrapperd
August 29, 2008
Mac版FileMaker Server 9ではlaunchdを利用してデーモンを起動するように変更されましたが、これに伴い「fmservicewrapperd」というデーモンが新たに追加されています。
fmservicewrapperdの正式名称は不明ですが、最初にlaunchdがfmservicewrapperdを起動します。その後fmservicewrapperdが、FileMaker Server、FileMaker Server Helper、Web公開エンジン、およびAdmin Consoleサーバー用のTomcatを起動します。FileMaker Server(データベースサーバー)とWeb公開エンジンについては自動起動設定の内容に応じて起動されます。
なお、fmservicewrapperdは下記の場所にあります。
/Library/FileMaker Server/Common/service-wrapper/fmservicewrapperd
(2010/04/22追記:Mac版FileMaker Server 11では、FileMaker Server 9で導入されたfmservicewrapperdが不要になり、FileMaker Server関連デーモンの起動プロセスについて最適化が行われています。)
Mac版FileMaker Server 9ではデーモン起動がlaunchdベースに
August 28, 2008
Mac版FileMaker Server 9では、Mac OS X Tigerで導入されたlaunchdを利用してデーモンを起動するように変更されています。
バージョン7、8および8.0v4のMac版FileMaker ServerではStartupItemsディレクトリ内の起動スクリプトを利用して、FileMaker Serverデーモン、FileMaker Server HelperデーモンおよびWeb公開エンジンを起動および停止していました。
Mac版FileMaker Server 9では、StartupItemsではなくlaunchdで起動されるように変更されているため、デーモンの起動や停止にSystemStarterコマンドは使われなくなりました。
Mac OS X LeopardではDTraceが利用可能
August 27, 2008
Mac OS X LeopardのDarwinカーネルには、Solaris 10およびOpenSolarisに搭載されているシステム情報取得機能であるDTraceが組み込まれています。
DTraceを使用すると、Mac OS X Leopardのシステムやアプリケーションの情報を収集し、動作を調べることができます。例えば、あるソフトウェアの性能の問題を追跡したり、異常動作の原因を突き止めることが可能になります。
Java、Ruby、Python、PerlもDTraceをサポートするための拡張が行われており、各言語のパフォーマンス特性の情報に簡単にアクセスできるようになっています。