初めまして-デシリアライザの作 り方?

2005-07-12 スレッド表示 FUJIMOTO Jun
初めまして 藤本と申します AXISの勉強をしていて,シリアライザとデシリアライザを自分で 定義してみようと思いましたが以下のような場合についての 簡単なサンプルを提示していただけませんか 1.クラスBarとクラスBazにはシリアライザとデシリアライザが 定義されている. 2.クラスFooはFoo(Bar bar, Baz baz)というpublicなコンストラクタ を持つがインスタンスフィールドにはBarとBazを持たない. 3.Fooはデフォルトコンストラクタを持たない. このような場合FooのデシリアライザをBarとBazのデシリアライザ を利用して定義するには?

desreializer

2005-07-12 スレッド表示 FUJIMOTO Jun
初めまして 藤本と申します AXISの勉強をしていて,シリアライザとデシリアライザを自分で 定義してみようと思いましたが以下のような場合についての 簡単なサンプルを提示していただけませんか 1.クラスBarとクラスBazにはシリアライザとデシリアライザが 定義されている. 2.クラスFooはFoo(Bar bar, Baz baz)というpublicなコンストラクタ を持つがインスタンスフィールドにはBarとBazを持たない. 3.Fooはデフォルトコンストラクタを持たない. このような場合FooのデシリアライザをBarとBazのデシリアライザ を利用して定義するには?

Re: desreializer

2005-07-20 スレッド表示 FUJIMOTO Jun
Toshiyuki Kimura wrote: > To: 藤本さん > >  はじめまして。木村です。 > >  残念ながら、この問いに対する答えは『無理です』ということに > なってしまいます...。 > >  もし、クラスFooがJavaBeanであれば、BeanSerializerを利用する > ことが可能ですが、想定されている条件はそのようなケースではない > たいめです。ご本人独自でシリアライザ・デシリアライザを実装して > カスタムシリアライゼーションを行う必要があると思います。 > >  具体的にどのような利用方法を検討されているのかは不明ですが >

Re: desreializer

2005-07-20 スレッド表示 FUJIMOTO Jun
先ほどのにミスがありました >_call.invoke( new Object[]{project, } ); > > とあるのは _call.invoke(new Object[]{bar, }); の間違いでした.エラーになるのはこれが原因ではありません. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]

Re: desreializer

2005-07-21 スレッド表示 FUJIMOTO Jun
>  木村です。 > >  IllegalArgumentExceptionですから、プログラムが想定する > クラス型以外のインスタンスが引数として渡されているという > ことを示しています。 > >  ただ、少し不思議なところもあります。WSDDのbeanMapping > 定義で、「languageSpecificType="Bar"」および > 「languageSpecificType="Baz"」 > といった指定がなされていますが、これで問題なくデプロイ > できているでしょうか?Exceptionが発生してしまってうまく >

Re: desreializer

2005-07-21 スレッド表示 FUJIMOTO Jun
>  そこで対処方法ですが、WSDDのlanguageSpecificTypeの指定を > >    languageSpecificType="java:hoge.Bar" >    languageSpecificType="java:hoge.Baz" > > といった形に修正して結果を報告お願いできますでしょうか? > ポイント1は「java:」が追加されていることで、ポイント2は > クラス「Bar」および「Baz」をパッケージ名を含む名称として > 記載している点です。上記例では、hogeパッケージということ > になります。 のようにしてみましたが

Re: desreializer

2005-07-21 スレッド表示 FUJIMOTO Jun
前のメールの内容は間違いでした スタブでシリアライザを登録していなかったため 出たものです やはり 致命的: 例外発生: / [en]-(Exception:) java.lang.IllegalArgumentException: object is not an instance of declaring class at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) となります.

Re: desreializer

2005-07-21 スレッド表示 FUJIMOTO Jun
今原因がわかりました. スタブでのシリアライザ登録のとき間違って別の オブジェクトを指定していたものです. わからないことだらけなのでWSDDの書き方が間違っているのかと 思い(ちょっとデプロイがまともに動いてないこともあって) ご迷惑をおかけしました. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]

XML tag order

2005-07-24 スレッド表示 FUJIMOTO Jun
藤本ともうします シリアライザとデシリアライザを自作してみて不明点が 出てきたので質問します オブジェクトの下位構造を表すXMLタグの順番について シリアライザで設定した順番がデシリアライザの DeserializerImplのメソッドsetChildValue(Object, Object) で受け取る順番と一致するということを仮定しても良いので しょうか? 実際に作って動かしてみたところ同じ順番になっている ようですが,これを仮定して良いかどうかで作り方が 変わってしまうので確認したいのです.