タグ

S2Wicketとserializeに関するt_43zのブックマーク (2)

  • 循環参照問題のよりエレガントな解法 - 矢野勉のはてな日記

    Java, Wicketkoichikさんからトラックバックもらいました。次期 S2Wicket 仕様断念の原因となった動的オブジェクトの循環参照問題をおいらもみんなのために解いたった!?なるほど!これはエレガントですね。 readObject(), writeObject()を使う方法を考えてはいたのだけど、最終的にreadResolve()で元オブジェクト復元しないといけないから、readResolve()使わないと解決できないよなあ、と思って全部readResolve()/writeReplace()でやったのですけども、なるほどなるほど、readResolve()前にreadObject()でシリアライズ・オブジェクトがロードされるので、readObject()途中で復元オブジェクトを確定しちゃって、readResolve()ではそれを返すわけだ。 ポイントはシリアライズ・オブジェ

  • 次期S2Wicket仕様断念の原因となった動的オブジェクトの循環参照問題をぼくがみんなのために解いたった! - 矢野勉のはてな日記

    Java, Wicket下記の記事について、よりエレガントな解法がkoichikさんから発表されました。詳しくは翌日のエントリをどうぞ。S2Wicket開発者よういちろうさんの下記記事を参照。新S2Wicket仕様,断念上の記事が公開された時に、私、コメントをつけたんですよ。こんばんは。是非一度問題を追いかけてみたいので、テストコードを公開してみませんか? 誰かが問題を解決してくれるかも....そうしたらエラーを再現するための参照コードが公開されたんですが、今の今まで余裕なくて放置してましたすみません。動的プロキシが循環参照していた際のシリアライズ問題デバッガで追いかけてみると原因はほぼすぐに分かりました。よういちろうさんの指摘通り、Javaのオブジェクトシリアリゼーションの仕様ですね、これは。注 - オブジェクトが完全に構築されるまでは readResolve メソッドはオブジェクトに呼

    t_43z
    t_43z 2007/07/19
    おー、素晴らしい。気になるのはパフォーマンスかなぁ。
  • 1