リリース 11.7 以前のドキュメントファイル

バイナリファイル読取
初版
2006/09/01
新規作成
Page 1
目
次
1
2
プロジェクト概要
ソフトウエア
2.1 対象NXJバージョン
2.2 アプリケーションサーバ
2.3 使用プロジェクト
3 実行環境設定手順
3.1 プロパティ設定
3.2 データベース接続設定
3.3 データベーステーブル作成
3.4 プロジェクトをMake
4 機能解説
4.1 Sample1 フォーム
4.1.1 BEFORE FORMセクション
4.1.2 GetImage開発者定義コマンド
4.2 ImageFileクラス
4.2.1 directoryList()メソッド
4.2.2 getImage()メソッド
4.3 Sample2 フォーム
4.3.1 ファイル選択コントロール
4.3.2 イメージコントロール
4.4 Sample3 フォーム
4.4.1 ファイル選択コントロール
5 実行手順
5.1 アプリケーションサーバの起動
5.2 プロジェクトの配備及び実行
付録A DataServer Connection設定例
付録B Oracle Connection設定例
付録C ツールバー 実行ボタン
付録D ツールバー 実行ボタン フォームリスト表示
Page 2
1
プロジェクト概要
イメージファイル(JPG) をローカルディスクより読み取りフォームに表示するフォームや、アップロードし
たアーカイブファイル(ZIP)ファイルをデータベーステーブルに格納するフォーム集です。
Page 3
2
ソフトウエア
2.1 対象 NXJ バージョン
NXJ 10.5DA 以降
2.2
アプリケーションサーバ
JBoss アプリケーションサーバ (NXJ バンドル版)
2.3
使用プロジェクト
プロジェクト名称
BinaryFileRead
[プロジェクト構成]
BinaryFileRead.prj
sources フォルダ
images フォルダ
uploadFiles フォルダ
プロジェクト設定ファイル
NXJ 開発ソースファイル格納フォルダ
アップロード用イメージファイル格納フォルダ
アップロード用テキストファイル格納フォルダ
以下のフォルダは、Make を実行時に作成されるフォルダです。
output フォルダ
J2EE アプリケーションアーカイブファイル格納フォルダ
temp フォルダ
一時ファイル格納フォルダ
プロジェクトは、NXJ アプリケーションデザイナを使ってプロジェクト設定ファイルを開きます。
Page 4
3
実行環境設定手順
プロジェクトを Make&配備し、フォームを実行する前の設定及び確認項目を以下に示しています。
NXJ アプリケーションデザイナは、Windows スタートメニューから、
[プログラム]->[Unify NXJ]->[アプリケーションデザイナ]を選択することで起動します。
3.1
プロパティ設定
NXJ アプリケーションデザイナを起動し、
プロジェクトの Static Content/application.properties ファイルにある DOCDIR にイメージファイル
が格納されているフォルダのフルパスを指定します。
パスのセパレータは、¥¥ を使用します。
イメージファイルは、プロジェクトフォルダの images フォルダに格納されています。
[例] プロジェクトが、C:¥Unify¥BinaryFileRead フォルダにある場合
DOCDIR= C:¥¥Unify¥¥BinaryFileRead¥¥images
3.2
データベース接続設定
このプロジェクトの Connections に作成している DataServer, Oracle Connection を設定してデータ
ベース接続を確認します。
DataServer
Oracle
Unify DataServer データベース接続用 Connection 定義
Oracle データベース接続用 Connection 定義
[例] DataServer Connection を利用する場合
DataServer Connection を開いて、以下の情報を入力します。
タイプ
DataServer になっていることを確認します。
Jar/Zip ファイル
SimbaJDBC.jar ファイルが選択されていることを確認します。
ユーザ名
DataServer データベースに接続するユーザ名を指定します。
パスワード
ユーザ名に対するパスワードを指定します。
実行時のデータソース DataServer になっていることを確認します。
ホスト
DataServer データベースサーバのホスト名を指定します。
ポート
DataServer データベースがリスンしているポート番号を指定します。
DNS
接続するデータベースの DNS を指定します。
このコネクションをデフォルトにする チェックボックスをチェックします。
上記設定を行った後、テストボタンをクリックして接続が成功することを確認し、OK ボタンをクリ
ックして設定を終了します。
[参照] 付録A DataServer Connection設定例
Page 5
[例] Oracle Connection を利用する場合
Oracle Connection を開いて、以下の情報を入力します。
タイプ
Oracle になっていることを確認します。
Jar/Zip ファイル
ojdbc14.jar ファイルが選択されていることを確認します。
ユーザ名
Oracle データベースに接続するユーザ名を指定します。
パスワード
ユーザ名に対するパスワードを指定します。
実行時のデータソース Oracle になっていることを確認します。
ホスト
Oracle データベースサーバのホスト名を指定します。
ポート
Oracle データベースがリスンしているポート番号を指定します。
SID
接続するデータベースの SID を指定します。
このコネクションをデフォルトにする チェックボックスをチェックします。
上記設定を行った後、テストボタンをクリックして接続が成功することを確認し、OK ボタンをクリ
ックして設定を終了します。
[参照] 付録B Oracle Connection設定例
Page 6
3.3
データベーステーブル作成
プロジェクトの databases フォルダにあるスクリプトを使ってデータベーステーブルとテストデータ
を作成します。
[例] DataServer Connection を使用する場合
DataServer.sql スクリプトにあるテーブルとテストデータを作成します。
[例] Oracle Connection を使用する場合
Oracle.sql スクリプトにあるテーブルとテストデータを作成します。
3.4
プロジェクトを Make
NXJ アプリケーションデザイナのメニューバーから[プロジェクト]->[すべて Make]を選択し、プロジ
ェクトを Make し、エラー無く終了することを確認しておきます。
Make を実行するとプロジェクトから J2EE アプリケーションアーカイブファイルの EAR または、
ZIP ファイルを生成します。
ここで作成されたアーカイブファイルが、アプリケーションサーバに配備されます。
Page 7
4
機能解説
サーバマシン上にあるイメージファイルをアプリケーションに取り込むフォームや、クライアントサイドに
あるファイルをデータベーステーブルに格納するフォームです。
4.1
Sample1 フォーム
このフォームは、サーバマシン上に格納されているイメージファイルをリストし、選択したイメージフ
ァイルをフォーム上に読み込み、データビューの選択セットに格納しています。
4.1.1 BEFORE FORM セクション
このセクションで、application.properties ファイルのプロパティ DOCDIR に指定されているイメ
ージファイルの場所を特定しています。
そのフォルダにあるファイル一覧をフォームの繰返し領域に表示します。
4.1.2 GetImage 開発者定義コマンド
フォームのイメージファイルリストで選択されているイメージファイルをフォルダから読み込み、
データビューの選択セットに格納しています。
4.2
ImageFile クラス
パッケージ
util
このクラスは、フォルダにあるファイル名の一覧と指定したイメージファイルを読み取るメソッドです。
4.2.1 directoryList()メソッド
このメソッドは、指定したフォルダに格納されているファイル名を格納した String 配列を返しま
す。
[メソッド構文]
public static String[] directoryList (String dir)
●引数
dir
ファイル名の一覧を獲得するフォルダへのパス
●戻り値
指定されたフォルダのファイル名を格納した配列
[例] C:¥temp のファイル名リストを獲得
String[] buf = ImageFile. directoryList (“C:¥¥temp”)
Page 8
4.2.2 getImage()メソッド
このメソッドは、指定したイメージファイルを引数で指定された NXJ フィールドにセットします。
[メソッド構文]
public void getImage( String img,
String path,
String mime,
NullableBinaryVariable imageFld
)
●引数
img
path
mime
imageFld
読み込むイメージファイル名
イメージファイル格納ディレクトリパス
読み込むファイルの mime タイプ
セットする NXJ フィールド名
●戻り値
指定されたフォルダのファイル名を格納した配列
[例] view1 の img にセット
new ImageFile().getImage(fileName, docDir, "jpg", view1.img);
Page 9
4.3
Sample2 フォーム
このフォームは、拡張子 png を持つイメージファイルをアップロードし、そのイメージファイルをフ
ォームに表示しています。
png の拡張子を持つファイルのみアップロードするように、ファイル選択コントロールの
Interactive/Allowed Mime Types プロパティに mime type を指定することで制限しています。
4.3.1 ファイル選択コントロール
このコントロールを使用し、ファイルアップロードを行っています。
(1) Interactive/Storage Variable プロパティ
このプロパティに NullableBinaryVariable データ型の変数(UpImage)をセットしています。
アップロードした png ファイルの内容は、ここに格納されます。
(2) Interactive/Allowed Mime Types プロパティ
特定の拡張子を持つファイルだけアップロードを行うような制限を行う場合にこのプロパティ
にアップロードしたいファイルの mime type を指定します。
ここでは、image/x-png を指定することで、拡張子 png をもつファイルのみアップロードす
るようにしています。
4.3.2 イメージコントロール
アップロードした png ファイルをフォームに表示するコントロールです。
このイメージコントロールの Visual/Source プロパティに 4.3.1 ファイル選択コントロールでアッ
プロードしたファイルを格納している変数を指定することで表示しています。
(1) Visual/Source プロパティ
このプロパティに、UpImage を 設定することで png イメージファイルがフォーム上に表示
されます。
このプロパティにイメージファイルデータを格納している変数への動的参照で設定しています。
[例] Visual/Source プロパティ設定例
=&UpImage
[備考]
イメージファイルへの動的参照設定は、=&<form>:UpImage で設定することも出来ます。
Page 10
4.4
Sample3 フォーム
このフォームは、拡張子 zip を持つイバイナリファイルをアップロードし、そのファイルをデータベー
ステーブルに格納しています。
zip の拡張子を持つファイルのみアップロードするように、ファイル選択コントロールの
Interactive/Allowed Mime Types プロパティに mime type を指定することで制限しています。
4.4.1 ファイル選択コントロール
このコントロールを使用し、ファイルアップロードを行っています。
(1) Interactive/Storage Variable プロパティ
このプロパティに NullableBinary データ型の変数(UpZip)をセットしています。
アップロードした zip ファイルの内容は、ここに格納されます。
(2) Interactive/Allowed Mime Types プロパティ
特定の拡張子を持つファイルだけアップロードを行うような制限を行う場合にこのプロパティ
にアップロードしたいファイルの mime type を指定します。
ここでは、application/x-zip-compressed を指定することで、拡張子 zip をもつファイルのみ
アップロードするようにしています。
(3) WHEN UPLOAD COMPLETE メソッド
このメソッドは、zip ファイルのアップロードが完了した時点で、ZIP_FILE テーブルにアッ
プロードしたファイルデータを挿入しています。
Page 11
5
実行手順
プロジェクトの実行手順を説明します。
ここでは、NXJ アプリケーションデザイナがインストールされたマシンに構成されている JBoss アプリケー
ションサーバを使用した手順で説明します。
5.1
アプリケーションサーバの起動
JBoss アプリケーションサーバを Windows サービスまたは、run.bat スクリプトを利用して起動しま
す。
[Windows サービスによる起動]
(1) Windows サービスを表示します。
(2) Windows サービスパネルから Unify NXJ Development Server を開始します。
[run.bat スクリプトによる起動]
(1) Windows コマンドプロンプトを実行します。
(2) Unify NXJ をインストールしたフォルダの jboss¥bin フォルダに移動します。
(3) run.bat バッチファイルを実行します。
JBoss アプリケーションサーバが実行されたことを確認しておきます。
Page 12
5.2
プロジェクトの配備及び実行
プロジェクトをアプリケーションサーバに配備し、実行する手順を説明します。
(1) NXJ アプリケーションデザイナの起動
Windows スタートメニューから [プログラム]->[Unify NXJ]->[アプリケーションデザイナ]を選択
します。
(2) プロジェクトを開く
NXJ アプリケーションデザイナのメニューバーから
[ファイル]->[プロジェクトを開く]を選択し、BinaryFileRead.prj ファイルを選択します。
(3) 実行
NXJ アプリケーションデザイナの実行ツールバーをクリックまたは、実行ツールバーの▼をクリッ
クしてフォームリストからフォームを選択して実行します。
NXJ アプリケーションデザイナが、JBoss アプリケーションサーバにプロジェクトを配備し、ブラ
ウザを立ち上げてフォームを表示します。
[参照]
付録C ツールバー 実行ボタン
付録D ツールバー 実行ボタン フォームリスト表示
[備考1]
NXJ アプリケーションデザイナは、Make されていないプロジェクトに対して配備または、実行コ
マンドが選択された場合には、自動的に Make を実行し、正常終了した後にプロジェクトをアプリ
ケーションサーバへ配備を実行します。
[備考2]
NXJ リリース 11.5 は、ツールバー実行ボタンをクリックすると、プロジェクトプロパティの全般
パネルの デフォルトエントリポイント に指定されているフォームが実行されます。
Page 13
付録 A DataServer Connection 設定例
ユーザ
administrator
ホスト
senna
ポート
1583
DNS
senna_ds82
Page 14
付録 B Oracle Connection 設定例
ユーザ
honda
ホスト
senna
ポート
1521
SID
ora92
Page 15
付録 C ツールバー 実行ボタン
付録 D ツールバー 実行ボタン フォームリスト表示
Page 16