GOLF V0.1

Golf V0.1のProgramはZIPにまとめて、SVNに上げました。
Documentも最初の説明と、Setupまで書きました。
明日以降、Sampleの説明を書いたのち公開します。

とりあえず使ってみたいかたは、SeasarSVNからDownloadは出来ます。
trunk/www/download/にあります。

それにしても JTableの挙動はわからないですね。TableでFieldに入力中 Focus
が他のFieldに行っても、入力中の状態のままで確定しません。

そこで、Submitボタンを押した場合 必須 Checkをする前に、強制的に確定する
様にしました。

JTextFormatFieldでも、Lost Focus後表示される内容は変更されるのですが、
下のDocumentの内容は入力したままで、表示内容とずれてしまいます。
特に ERRORになった場合、表示内容は前回の内容にリセットされるのに、
Documentは今回いれたERRORの内容になるなんて理解できませんでした。
(調査不足かもしれませんが)

Validatorの中で、Format機能もいれましたので、これには対応済ですが。

Golf:TABLEの明細連携

やっと、JTable で選択した行のColumnの内容と JTextFiledのBindingが
簡単に出来る様になりました。
JTableには、SelectedRowChangedのEventがないのは困りますね。

Netbeansで、Matisseで画面を作って、それを Eclipseでも修正する様 Dual Project 設定
が簡単に出来る事が判りました。

それぞれ、良さがあるし、特に KijimunaEclipseしかつかえないので、重宝します。
竹添さんが、Eclipseから Netbeansを起動するといっていましたが、Projectの内容が
完全に利用する様に、やっぱり両方の設定をするのも手かと思います。

後は、Documentを書いて Version 0.1を出したいとおもいます。

Golf Sandbox Project始動

Hatenaの日記を約2年振りに再開します。

はぶさんやまこたんから Swingが最近熱いと聞いていて、さらに最近 JAVA 6でMatisseが
正式サポートしたのを機会に、Golf Project (Seasar + JGoodies RCP)を始めました。

Swingを使い良くするということで、Swingに関係ある Golf(もう少し スウィングが良くなれば
個人的にはいいのですが?)と言う名前にしました。

取り合えず Version 0.1では下記内容を予定しています。

1.画面の作成は、Netbeans 5.5で行う。(なお、EclipseでのProject設定もしていますので、
  その後のDicon関連には、EclipseKijimunaのSupportも可能です)
2.Validatorの設定は、Dicon に行い、それと画面のFieldとのMappingを、JAVAだけでなく、
  CSV File (Excelで編集)で簡単に行える。

  例えば、一部省略していますが、下記の設定では

Name Validator DisplayName Required
jTextField1 min3max6long TestField1 T

  jTextField1 に、「min3max6long」という名前で、Diconに登録された Validatorを
  適用し、 Error Message上に表記には、TestField1 を使用します。

  画面に入力した時点では、必須 チェックは行いませんが、 「ENTER」ボタン等を押した
  場合には、必須 チェックを行います。この必須指定を Requiredで行います。

3.Validationした結果は、画面に定義した、Scroll Paneに即座に自動的に表示されます。

4.JTableを使用する場合は、そのColumn設定とValidationの設定を同様に CSV Fileで
  簡単に定義出来ます。

5.ブラウザでの表示と同様、コンテナ画面にヘッダー領域やフッター領域などの共通領域を
  設定しておき、コンテンツ領域に指定した 画面を合成して簡単に表示できます。この場合
  TITLE, MENUも変更できます。(開発は、通常のJFrame画面の編集で出来ます)

今後の予定

  • ログイン後、複数のコンテナ画面を使用出来、それらでセッション情報を共有出来る。
  • コンテナ画面のDefaultとして、Menu画面を配置し、Menuを選ぶ事で、同一画面内に該当

 画面を開く

  • どの画面でも、直接 トランザクションコード(画面コード)を入力する事により、メニューに

 戻らなくても、該当画面に ジャンプ出来る(指定で新たなコンテナ画面を開いてその中にジャンプ
 する事も可能)

 (Diconに定義した、Action)に処理を委ねる。

  • ホストで処理した結果は、場合により同一画面に単に表示したり、新たな画面を開いて表示したり

 (WEB アプリケーションの Forwardに該当)、メニューに戻ったり、ホストで指定出来る。

尚上記の機能は、複雑な業務で多くの画面を使用する場合、統一的な効率の良い、ユーザーオペレーション
と開発の両立を目指しています。

すでに、C#で 試作していたものを、JAVAに移植しながら改善予定です。

コメントなど、よろしくお願いいたします。

S2Hessian

Shotさんの日記にコメントしましたが、S2Hessianについて書いてみたいと思い、はてな日記に参加しました。

Hessian は下記LINKの Cauchoが開発している Resin Application Serverの周辺SOFT
ですが、軽量WEB SERVICE PROTOCOLです。

http://www.caucho.com/hessian/index.xtp

String url = "http://www.caucho.com/hessian/test/basic";

HessianProxyFactory factory = new HessianProxyFactory();
BasicAPI basic = (BasicAPI) factory.create(BasicAPI.class, url);

System.out.println("hello(): " + basic.hello());

上の例の様に、WSDLが無く、直接つかう事が出来ますので、特に開発時に便利です。
更に、HESSIANはHOSTとのHTTPがCharactor ですので、HTTP MONITORなどを
使用する事でDEBUGが容易にできます。