Cau,
neznam DWR, ale tipnul bych si...
Ten framework ocekava, ze to co prenasis je JavaBeana, ne?
A tvem "nefunkcnim" zpusobu ti setter pro propertu "ean" nesplnuje pravidlo jak 
ma vypadat spravny setter property podle JavaBeans specifikace
(podle specky ma byt "void").

Tot muj tip ;-)

Mej se,

Milan

http://www.boruvka.net

-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Petr Burdik
Sent: Friday, May 25, 2007 10:28 AM
To: Java
Subject: zajimavost dwr a beans

Ahojte,
zaujala me jedna vec. Udelal jsem si tridu pro objekt, ktedy pak honim  
pres dwr mezi serverovou a klientskou casti (javascript). Je velmi  
zajimave, ze pokud nepouziju funkcni, ale nefunkcni zapis objekty se  
spravne neprenesou. Tedy hodnota ean bude nulova. Prijde i to prehlednejsi  
nez konstruktor, protoze okamzite na prvni pohled v kodu vidim co setuji.  
Samozrejme nekde toto pouzit nejde a tomu konstruktoru se nevyhnu. Ale to  
je vyjimka.Mate napad proc dwr nezahlasi chybu a proste jenom neposle ty  
hodnoty?

funkcni zpusob ( klasicky ):
----------------------------

public class EanCode implements Serializable, Cloneable {
     protected long ean = 0;                   // EAN kod zbozi

     public void setEan (long ean) { this.ean = ean; }
     public long getEan() { return this.ean; }
}

nefunkcni zpusob:
-----------------

public class EanCode implements Serializable, Cloneable {
     protected long ean = 0;                   // EAN kod zbozi

     public EanCode setEan (long ean) { this.ean = ean; return this; }
     public long getEan() { return this.ean; }
}


Velmi rad pouzivam druhy zpusob proste proto, ze pri plneni objektu pisu:

EanCode eanobj = new EanCode();
        eanobj.setEan(112567);
        ... pro kazdou vlastnost

pisu:
EanCode eanobj = new EanCode()
        .setEan(112567)
        .setEan(112567)
        ...
;

Pekny den
Pet




-- 
Using Opera's revolutionary e-mail client: http://www.opera.com/mail/

Odpovedet emailem