#contents

*S2HessianDotNet [#h9e77166]

**概要 [#ef6a6382]
S2Hessian[[Sandbox/S2Hessian]]を使うと、Seasar2のコンポーネントをWSDLなしにクライアントから簡単に呼び出す事ができるようになります。JAVAでRich Clientを作る時にはいちいちWSDLを設定する必要がなく、また簡易なプロトコルですのでパフォーマンスも良いと思います。
S2HessianDotNetを使用すれば、C#でSmart Clientを書いて、そこから簡単にSeasar2のコンポーネントを呼び出せます。
**開発者 [#q33e4e5f]
志村 正信
http://seasarproject.g.hatena.ne.jp/mshimura/

**開発情報 [#p5ed07b7]
まだ一部機能が未実装ですが、とりあえず α版として公開させていただきます。
**ダウンロード [#r32092fb]

Version 0.2 を公開しました。
変更点は
-ArrayList等にObjectを入れて返された場合、c#のObjectに変換されないバグを修正
-Doubleへの変換によしなかさんのAdviseでbitconveterを使用
-送る引数内のObjectで同一のObjectが複数参照されていた場合同一のObjectを指す機能を実装(もともとあったのですが、V0.1では未実装でした)
-C#のクラスとJAVAのクラスの対応を指定する方法の一つを変更

 dnp.setClassConv(typeof(nethessiantest.MyObject1),"org.seasar.s2hessian.example.MyObject");の様に指定

下記からDownload出来ます

&ref(nethessian.NET-V0.2.zip);

----------

下記から Version 0.1がダウンロード出来ます。

セットアップ
Visual Studio 2003で開発しましたが、C#が動けば大丈夫の筈です。
解凍するとnethessian.NETとhessiantestの2つのディレクトリが出来ますの適当な所に置いて下さい。

使い方
nethessian.NETのdoc ディレクトリーに簡単なDocumentが入れてあります。
Tomcatを起動し、s2hessianが動いていることが前提です。
hessiantestのForm1のボタンを押すと12のTestCaseが走ります。

int,double,Boolean,System.DateTimeや、Hashtable、ArrayListおよび各種 Objectが自由に使用出来ます。
まだ一部動作確認がしていない、Sytem Objectがあります。問題があればコメントをお願いします。 

まず下記の様にDotNetProxy を作成します。 
 DotNetProxy dnp= new DotNetProxy("http://localhost:8080/s2hessian/s2h/"); 
 Method CALLは下記の形式になります。 
 (return type) dnp.invoke("コンポーネントの名前","メソッド",typeof(return type),メソッドの引数) 

 C#のクラスとJAVAのクラスの対応を指定するには、2つの方法があります。 

-dnp.setClassConv("nethessiantest.MyObject1","org.seasar.s2hessian.example.MyObject");の様に指定

-[JavaClass("org.seasar.s2hessian.example.MyObject")] の様に CLASSの前に属性で指定 

**コメント [#z4a9c166]
#pcomment(,10,reply)
#pcomment(Comment/Sandbox/S2HessianDotNet,10,reply)

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS