5.9.2 カスタムファンクションの準備

カスタムファンクションを使用する場合,最初にカスタムファンクションで使用する次の二つを作成します。

それぞれを作成する手順を次に示します。

<この項の構成>
(1) 変換ファンクション定義ファイルの作成
(2) Javaプログラムの作成

(1) 変換ファンクション定義ファイルの作成

  1. MyEclipseのメニューから,[ファイル]-[新規]-[その他]を選択します。
    [新規]ダイアログが表示されます。
  2. [MyEclipse]-[XML]-[XML(基本テンプレート)]を選択し,[次へ]ボタンをクリックします。
    [XML]ページが表示されます。

    [図データ]

  3. 変換ファンクション定義ファイルを保存するディレクトリ,および任意の変換ファンクション定義ファイル名を指定して,[次へ]ボタンをクリックします。
    [次からXMLファイルを作成]ページが表示されます。

    [図データ]

  4. [XMLスキーマ・ファイルからXMLファイルを作成]ラジオボタンを選択し,[次へ]ボタンをクリックします。
    [XMLスキーマ・ファイルの選択]ページが表示されます。

    [図データ]

  5. [ファイルのインポート]ボタンをクリックします。
    [インポート]ダイアログが表示されます。
  6. [次のディレクトリーから]に次のディレクトリを指定します。

    <uCosminexus Service Architectのインストールディレクトリ>¥CSCTE¥resources¥customfunc

    [図データ]

  7. [customfunc]チェックボックスおよび[customfunction_XMLSchema.xsd]チェックボックスをチェックします。
  8. [インポート先フォルダ]にスキーマファイルをインポートするフォルダを指定します。
  9. [終了]ボタンをクリックします。
    再度[XMLスキーマ・ファイルの選択]ページが表示されます。
  10. [次へ]ボタンをクリックします。
    [ルート要素の選択]ページが表示されます。

    [図データ]

  11. [ルート要素]で「customFunc」を選択し,[終了]ボタンをクリックします。
    変換ファンクション定義ファイルの雛形が生成されます。

    [図データ]

  12. 変換ファンクション定義ファイルの雛形に必要な内容を定義します。
    定義する内容を次に示します。

    [図データ]

    表5-12 変換ファンクション定義ファイルに定義する内容

    要素定義する内容
    xmlversion="1.0" encoding="UTF-8"
    func:customFunc
     xmlns:funchttp://www.hitachi.co.jp/soft/xml/cosminexus/cscdt/functions
     xmlns:xsihttp://www.w3.org/2001/XMLSchema-instance
     xsi:schemaLocationhttp://www.hitachi.co.jp/soft/xml/cosminexus/cscdt/functions customfunction_XMLSchema.xsd
     func:jar
      nameCustomFunctions.jar
      func:package
       namesample.transform.CustomFunction
       func:class
        nameCustomFunctions
        func:method
         namechangeCase
         func:comment変換前文字列に含まれる英字を変換フラグの指定に応じて大文字,または小文字に変換して変換後文字列に出力する。
         func:arguments
          func:argument
           nametext
           func:comment変換前文字列
          func:argument
           nameflag
           func:comment変換フラグ(upper | lower)
        func:method
         namecurrentDateTime
         func:comment現在の日時を「yyyy/MM/dd HH:mm:ss.SSS」フォーマットで出力する。
    (凡例)
    -:ありません。

  13. MyEclipseのメニューで[ファイル]-[保存]を選択します。
    変換ファンクション定義ファイルの作成が完了します。

(2) Javaプログラムの作成

CustomFunctionサンプルプログラムでは,次のJavaプログラムを呼び出すカスタムファンクションを作成します。

図5-4 カスタムファンクションから呼び出すJavaプログラム

[図データ]

CustomFunctionサンプルプログラムでは,このJavaプログラムの処理がコーディングされたソースファイル(CustomFunctions.java)が用意されています。このソースファイルをインポートおよびパッケージングして,カスタムファンクションから呼び出すJavaプログラムを作成します。

Javaプログラムを作成する手順を次に示します。

  1. MyEclipseのメニューから,[ウィンドウ]-[パースペクティブを開く]-[その他]を選択します。
    [パースペクティブを開く]ダイアログが表示されます。
  2. [Java]を選択し,[OK]ボタンをクリックします。
    [Java]パースペクティブが表示されます。
  3. MyEclipseのメニューから,[ファイル]-[インポート]を選択します。
    選択画面が表示されます。
  4. ツリービューから[一般]-[既存プロジェクトをワークスペースへ]を選択します。

    [図データ]

  5. [次へ]ボタンをクリックします。
    プロジェクトのインポート画面が表示されます。

    [図データ]

  6. [ルート・ディレクトリーの選択]を選択し,[参照]ボタンをクリックします。
    ファイルの参照画面が表示されます。
  7. CustomFunctionサンプルプログラムが格納されているディレクトリ(<uCosminexus Service Architectのインストールディレクトリ>¥CSCTE¥Samples¥CustomFunctions¥CustomFunction¥CustomFunctions)を選択し,[OK]ボタンをクリックします。
    プロジェクトのインポート画面に戻ります。
  8. [プロジェクトをワークスペースにコピー]チェックボックスにチェックを入れます。

    [図データ]

  9. [終了]ボタンをクリックします。
    Javaプログラムのインポートが完了します。
  10. [パッケージ・エクスプローラー]ビューで,インポートした[CustomFunctions]プロジェクト内の[build.xml]を右クリックし,[実行]-[Ant ビルド]を選択します。
    Javaプログラムがパッケージングされ,jarファイル(CustomFunctions.jar)が次のディレクトリに作成されます。
    <MyEclipseのワークスペースディレクトリ>¥CustomFunctions¥build¥lib
    なお,[Ant ビルド]が表示されない場合は,MyEclipseのメニューから[実行]-[外部ツール]-[外部ツールダイアログを開く]を選択して,[Ant ビルド]の設定を実施してください。
  11. 作成されたjarファイルを次の場所にコピーします。

    <uCosminexus Service Architectのインストールディレクトリ>¥CSC¥userlib¥customfunc

    これでJavaプログラムの作成が完了しました。