JExternal
2010.03.01
 
 

JExternalは、4D上でJavaメソッドを実行するためのプラグインです。Javaで書かれた各分野の豊富なライブラリーを4Dから利用することが可能になります。

"JavaClasses"フォルダの中の拡張子.jarファイルは、自動的にJavaクラスパスに登録され、その中のJavaメソッドは、4Dから実行可能になります。実行中のJavaメソッドが、4Dメソッドを呼び出すコールバック機能もあります。Javaメソッドは、4Dプロセスに対応したスレッドの中で実行され、複数のJavaメソッドの並列実行が可能です。

JExternalは、Javaバーチャルマシンを起動するプラグインJWorldとともに使用します

JavaClassesフォルダは、次のフォルダに配置することができます。

  1. JExternal_xxx.bundleのContentsフォルダ
  2. ストラクチャファイルがあるフォルダ
  3. アプリケーションファイル(4th Dimension、または4D Server)があるフォルダ
  4. 4Dフォルダ

上記の順番で、JavaClassesフォルダは探索され、最初に見つかったJavaClassesフォルダのみが採用されます。

4D ServerでJExternalを使用した場合、JExternal_xxx.bundleのContents内にJavaClassesフォルダを配置すると、そのフォルダ内のすべてのファイルは、自動的にクライアント側にダウンロードされます。


動作環境

JExternalは、Mac OS、Windows両プラットフォーム上のバージョン6.0以上の4th Dimention / 4D Serverで動作します。インテルプロセッサーが搭載されたMacでは、JExternalがRosetta上で動作できないため、4D v2004以下では使用できません。

現在のバージョンJExternal 6.0.0は、4D v11以上とJava 5(JRE/JDK 1.5)以上が必要です。

Javaバーチャルマシン(JVM)

JExternalは、Javaバーチャルマシン (JVM)を必要とします。JVMは、JExternalに付属するもう一つのプラグインJWorldによって起動されます。Mac OSでは、システムにビルトインされているJVMを使用します。Windowsでは、バージョン6.0.0以上のJWorldに内蔵されているJVMを使用します。JWorldバージョン5.x.x以下の場合は、Windows用のJVMを前もってインストールしておく必要があります。Windows用JVMは、下記URLよりダウンロードできます。

http://java.sun.com/javase/downloads/


プラグインメソッド

JExternalが提供するプラグインメソッドは、わずか4個です。その中でも主要なものは、次の2つのメソッドです。

JEX Call class method
Javaクラス(スタティック)メソッドを実行する
JEX Call object method
Javaオブジェクト(インスタンス)メソッドを実行する


これらのメソッドを使用すると、4Dのフィールド、変数、配列の値を、対応するJavaのタイプ/クラスに変換して、 Javaメソッドに渡すことができます。そして、Javaメソッドの結果は、対応する4Dタイプに変換されて、受け取ることができます。
4DとJavaのタイプ対応表
4th Dimension
<-->
Java
C_BOOLEAN
<-->
boolean
C_LONGINT
<-->
int
C_REAL
<-->
double
C_TIME
<-->
com.ronri_kobo.Time
C_DATE
<-->
com.ronri_kobo.Date
C_TEXT
<-->
java.lang.String
C_PICTURE
<-->
com.ronri_kobo.Picture
C_BLOB
<-->
byte[]
ARRAY BOOLEAN
<-->
boolean[]
ARRAY INTEGER
<-->
short[]
ARRAY LONGINT
<-->
int[]
ARRAY REAL
<-->
double[]
ARRAY DATE
<-->
com.ronri_kobo.Date[]
ARRAY TEXT
<-->
java.lang.String[]
ARRAY PICTURE
<-->
com.ronri_kobo.Picture[]
制限事項

JExternalによって実行されるJavaメソッドでは、ウィンドウを含むユーザインタフェースコンポーネントを使用することはできません。Javaメソッドの中で、ウィンドウを表示してユーザとの対話が必要になった場合は、4Dメソッドをコールバックして、そこでウィンドウを表示してユーザとの対話を行ってください。


ドキュメント

Xcodeを使用すれば、4Dの実行時に4Dと連動して、4Dから呼び出されるJavaメソッドを効率的にデバッグすることができます。


購入
JExternal
USD $99.00 / ライセンス
ライセンス契約書

JExternalは、1マシンにつき1ライセンスが必要です。
ソフトウェア販売の決済で、最も実績のあるアメリカのオンラインクレジット会社 Kagi 社のシステムを使用して決済を行います。

 

購入ページへ


サイトライセンス契約または無制限配布版については、support@ronri-kobo.comにお問い合わせください。契約内容を示す資料や評価用のプロダクトキーコードをお送りします。



 
Copyright (c) Ronri Kobo, Inc. All rights reserved.
support@ronri-kobo.com