[uruma-dev:148] Re: SpinnerのExportに関して

KOMORI Yusuke [E-MAIL ADDRESS DELETED]
2008年 3月 27日 (木) 23:05:28 JST


広瀬さん

 小森です。

 いただいたソースコードを取り込もうとしているのですが、
ちょっと悩んでいます。

 Export 側なんですが、

> > ただバインディングする値のフォーマットが【yyyyMMddHHmmss】、
> > 【yyyyMMdd】、【HHmmss】しかできません。

 この辺のフォーマット指定が、文字数だけで判定しているのがちょっ
と嫌な感じかな、と。

 たとえば、

  @ExportValue
  public Date dateTime;

という感じでJava側のフィールドをDate型にしてしまった方がフォー
マットを気にせず、すっきりエクスポートできるような気がするの
ですが、これだと利用する上で問題あるでしょうか?

On Thu, 27 Mar 2008 21:05:16 +0900, KOMORI Yusuke <[E-MAIL ADDRESS DELETED]> wrote:

> 広瀬さん
> 
>  こんばんは、小森です。
> 
> > 作成している社内のシステムでDateTimeをFormで使用したいと思ったので、DateTimeのバリューバインディングを作成してみました。
> 
>  ありがとうございます!
>  さっそく反映させていただきます!
> 
>  さて、お約束ですが。(^^;
>  せっかくですので、コミッタになりませんか??
> 
> On Wed, 26 Mar 2008 14:14:02 +0900, (株) JINS 広瀬 茂樹 <[E-MAIL ADDRESS DELETED]> wrote:
> 
> > 小森さん
> > 
> >  広瀬です。
> > 
> > 早速の対応ありがとうございます。
> > 
> > >  なお、コンポーネントの細かな対応についてはまだまだ抜けがあ
> > > ると思います。
> > >  リクエストがあり次第対応していきますので、何かあれば遠慮な
> > > くご連絡ください。
> > 
> > 作成している社内のシステムでDateTimeをFormで使用したいと思ったので、DateTimeのバリューバインディングを作成してみました。
> > 
> > 不備があるかもしれませんが、参考になればと思います。
> > 
> > ただバインディングする値のフォーマットが【yyyyMMddHHmmss】、【yyyyMMdd】、【HHmmss】しかできません。
> > 
> > org.seasar.uruma.binding.value.binderに添付ファイルを配置
> > 
> > org.seasar.uruma.binding.value.ValueBinderFactoryのstaticブロックにaddValueBinder(new 
> > DateTimeValueBinder());を追加
> > 
> > ----- Original Message ----- 
> > From: "KOMORI Yusuke" <[E-MAIL ADDRESS DELETED]>
> > To: <[E-MAIL ADDRESS DELETED]>
> > Sent: Tuesday, March 25, 2008 9:58 PM
> > Subject: [uruma-dev:136] Re: SpinnerのExportに関して
> > 
> > 
> > > 広瀬さん
> > >
> > >  小森です。
> > >
> > >  Spinner のバリューバインディング、対応しました。
> > > (修正内容は広瀬さんのご指摘通りです)
> > >
> > >  リポジトリから最新版を取得するか、以下のURLからSNAPSHOT版
> > > をダウンロードしてください。
> > > http://maven.seasar.org/maven2-snapshot/org/seasar/uruma/uruma/0.4.0-SNAPSHOT/uruma-0.4.0-20080325.124611-3.zip
> > >
> > >  なお、バリューバインディング未対応の場合、Warningログが出
> > > 力されるようにもしておきました。
> > >
> > >  なお、コンポーネントの細かな対応についてはまだまだ抜けがあ
> > > ると思います。
> > >  リクエストがあり次第対応していきますので、何かあれば遠慮な
> > > くご連絡ください。
> > >
> > >  どうぞよろしくお願いいたします。
> > >
> > > On Tue, 25 Mar 2008 21:12:16 +0900, KOMORI Yusuke <[E-MAIL ADDRESS DELETED]> 
> > > wrote:
> > >
> > >> 広瀬さん
> > >>
> > >>  はじめまして、小森です。
> > >>
> > >>  Uruma を使っていただきありがとうございます!
> > >>
> > >>  すみません、Spinner コンポーネントは、まだバリューバインディ
> > >> ングに対応していませんでした。
> > >>
> > >>  すぐに対応しますので、でき次第連絡しますね。
> > >>
> > >> On Tue, 25 Mar 2008 09:37:06 +0900, (株) JINS 広瀬 茂樹 
> > >> <[E-MAIL ADDRESS DELETED]> wrote:
> > >>
> > >> > はじめまして広瀬といいます。
> > >> >
> > >> > 最近Urumaを使用してサンプルアプリケーションを作成しております。
> > >> >
> > >> > また保存書庫もよく利用させていただいています。
> > >> >
> > >> > 早速ですが、Spinnerについて質問があります。
> > >> >
> > >> > Formを使用してSpinnerにExportを使用したところ下のようなエラーが発生してしまいました。
> > >> >
> > >> >
> > >> > ERROR 2008-03-24 21:55:09,640 [main] [EURM0109]指定されたクラス 
> > >> > org.eclipse.swt.widgets.Spinner に対応するValueBinder は定義されていません.
> > >> > org.seasar.uruma.exception.NotFoundException: [EURM0109]指定されたクラス 
> > >> >  org.eclipse.swt.widgets.Spinner に対応する ValueBinder は定義されていません.
> > >> >  at 
> > >> > org.seasar.uruma.binding.value.command.AbstractBindingCommand.getValueBinder(AbstractBindingCommand.java:62)
> > >> >  at 
> > >> > org.seasar.uruma.binding.value.command.AbstractBindingCommand.doBind(AbstractBindingCommand.java:44)
> > >> >  at 
> > >> > org.seasar.uruma.binding.value.ValueBindingSupport.dealFields(ValueBindingSupport.java:102)
> > >> >  at 
> > >> > org.seasar.uruma.binding.value.ValueBindingSupport.exportValue(ValueBindingSupport.java:63)
> > >> >  at 
> > >> > org.seasar.uruma.ui.UrumaApplicationWindow.createContents(UrumaApplicationWindow.java:218)
> > >> >  at org.eclipse.jface.window.Window.create(Window.java:426)
> > >> >  at org.eclipse.jface.window.Window.open(Window.java:785)
> > >> >  at 
> > >> > org.seasar.uruma.core.impl.UrumaWindowManagerImpl.openWindow(UrumaWindowManagerImpl.java:114)
> > >> >  at gui.test.MenuAction.button(MenuAction.java:17)
> > >> >  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> > >> >  at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
> > >> >  at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
> > >> >  at java.lang.reflect.Method.invoke(Unknown Source)
> > >> >  at org.seasar.framework.util.MethodUtil.invoke(MethodUtil.java:93)
> > >> >  at org.seasar.uruma.bin! 
> > >> > ding.method.MethodBinding.invoke(MethodBinding.java:95)
> > >> >  at or 
> > >> > g.seasar.uruma.binding.method.AbstractGenericListener.invokeMethod(AbstractGenericListener.java:82)
> > >> >  at 
> > >> > org.seasar.uruma.binding.method.GenericListener.handleEvent(GenericListener.java:46)
> > >> >  at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66)
> > >> >  at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:938)
> > >> >  at 
> > >> > org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3682)
> > >> >  at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3293)
> > >> >  at org.eclipse.jface.window.Window.runEventLoop(Window.java:820)
> > >> >  at org.eclipse.jface.window.Window.open(Window.java:796)
> > >> >  at 
> > >> > org.seasar.uruma.core.impl.UrumaWindowManagerImpl.openWindow(UrumaWindowManagerImpl.java:114)
> > >> >  at 
> > >> > org.seasar.uruma.core.StandAloneUrumaStarter.openWindow(StandAloneUrumaStarter.java:120)
> > >> >  at gui.test.MainAction.main(MainAction.java:8)
> > >> >
> > >> >
> > >> > ちなみにXMLは
> > >> >
> > >> > <?xml version="1.0" enc! oding="UTF-8"?>
> > >> > <template xmlns='http://uruma.sandbox.seasar.org'>
> > >> >  <window title="サブメニュー" background="white" width="800" 
> > >> > height="600">
> > >> >   <gridLayout numColumns="1" >
> > >> >    <gridData horizontalAlignment="FILL" widthHint="150"/>
> > >> >   </gridLayout>
> > >> >
> > >> >   <spinner id="spinner" style="BORDER, VERTICAL" minimum="0" 
> > >> > maximum="100" selection="20"
> > >> >         increment="1" pageIncrement="10"/>
> > >> >
> > >> >  </window>
> > >> > </template>
> > >> >
> > >> > で、Formは
> > >> >
> > >> > package gui.test;
> > >> > import java.util.List;
> > >> > import org.seasar.uruma.annotation.ImportExportValue;
> > >> >
> > >> > public class SubDispForm {
> > >> >  @ImportExportValue(id="spinner")
> > >> >  public String spinner = "12";
> > >> > }
> > >> >
> > >> > アクションには@Form(SubDispForm.class)を記述してあります。
> > >> >
> > >> > ログを見ながらソースを辿ってみたところ
> > >> > org.seasar.uruma.binding.value.ValueBinderFactoryのbinderMapに値がないっぽかったので
> > >> > staticブロックに
> > >> >
> > >> > addValueBinder(new GenericValueBinder<Spinner>(Spinner.class, 
> > >> > "selection"));
> > >> >
> > >> > を追加したところうまくいきました。
> > >> >
> > >> >
> > >> > これはSpinnerの使い方が間違えているのでしょうか?
> > >> > または他に修正方法などあるのでしょうか?
> > >> >
> > >> > 開発環境は
> > >> >  Eclipse3.3.2
> > >> >  Urumaはtrunkを使用
> > >> >  Seasar2は2.4.23
> > >> >
> > >> > になります。
> > >> >
> > >> > よろしくお願いいたします。
> > >>
> > >> ----------------------------------------------
> > >>  小森 裕介 / Yusuke Komori
> > >>
> > >>   E-Mail : [E-MAIL ADDRESS DELETED]
> > >>     Blog : http://d.hatena.ne.jp/y-komori/
> > >>      URL : http://www.littleforest.jp/
> > >>
> > >>
> > >> _______________________________________________
> > >> uruma-dev mailing list
> > >> [E-MAIL ADDRESS DELETED]
> > >> https://ml.seasar.org/mailman/listinfo/uruma-dev
> > >
> > > ----------------------------------------------
> > > 小森 裕介 / Yusuke Komori
> > >
> > >  E-Mail : [E-MAIL ADDRESS DELETED]
> > >    Blog : http://d.hatena.ne.jp/y-komori/
> > >     URL : http://www.littleforest.jp/
> > >
> > >
> > > _______________________________________________
> > > uruma-dev mailing list
> > > [E-MAIL ADDRESS DELETED]
> > > https://ml.seasar.org/mailman/listinfo/uruma-dev
> > > 
> 
> ----------------------------------------------
>  小森 裕介 / Yusuke Komori
> 
>   E-Mail : [E-MAIL ADDRESS DELETED]
>     Blog : http://d.hatena.ne.jp/y-komori/
>      URL : http://www.littleforest.jp/
> 
> 
> _______________________________________________
> uruma-dev mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/uruma-dev

----------------------------------------------
 小森 裕介 / Yusuke Komori

  E-Mail : [E-MAIL ADDRESS DELETED]
    Blog : http://d.hatena.ne.jp/y-komori/
     URL : http://www.littleforest.jp/




uruma-dev メーリングリストの案内