OK, diky to vypada zajimave.

Tom


-----Original Message-----
From: [email protected] on behalf of Zdenek Tronicek
Sent: Sun 2/1/2009 20:41
To: [email protected]
Subject: RE: JAX WS a vlastni schema
 
Take je moznost vytvorit jednu GenericBean, ktera bude mit property ze  
vsech uvazovanych bean s tim, ze u kazde property bude nastaveno, ze  
je nepovinna (@XmlElement(required = false)).
Nebo bude mit odkazy na beany:

@XmlType
@XmlAccessorType(XmlAccessType.FIELD)
public class GenericBean {

     @XmlElement(required = false)
     BeanOne b1;

     @XmlElement(required = false)
     BeanTwo b2;

     ...
}
Jde o nahradu variantniho zaznamu z Pascalu.

Z.T.
-- 
Zdenek Tronicek
Department of Computer Science and Engineering
Prague                   tel: +420 2 2435 7410
http://cs.felk.cvut.cz/~tronicek


Cituji Tomas Hubalek <[email protected]>:

> Jasne, ta metoda returnMultipleObjects ma nejake parametry na  
> jejichz zaklade se urci instanci jakeho beanu vrati, zcela  
> deterministicky rekneme ze ten parametr je bud string ktery obsahuje  
> jmeno tridy vcetne package nebo java.lang.Class, to jsem zatim  
> neresil +  dalsi parametry neco jako idcko apod.
>
> Muzu samozrejme zapojit reflection, nechat si od te metody vracet  
> properties toho beanu jako treba stringove pole nebo mapu nebo neco  
> a pak to zase deserializovat, ale proc to delat, kdyz tohle umi JAXB  
> bez problemu, jen mu dat to XML schema.
>
> Pokud nenajdu nic hezciho, udelam to tak ze do te tridy dogeneruju  
> pred kompilaci (nejakym skriptem) 50x metodu  
> doNothing1(),doNothing2(), kazda vracejici jiny bean. Ale to mi  
> prijde opravdu hnusne...
>
> Tom
>
>
> -----Original Message-----
> From: [email protected] on behalf of Zdenek Tronicek
> Sent: Wed 1/28/2009 16:57
> To: [email protected]
> Subject: RE: JAX WS a vlastni schema
>
> Rad bych Vam neco poradil, ale nemam jasno v tom, co ten "genericky
> editor" dela. Metoda returnMultipleObjects nema parametry a vraci
> beanu. To znamena, ze vybere tridu, vytvori instanci a tu vrati? Na
> zaklade ceho ji vybere? Nebo je to jinak?
>
> Z.T.
> --
> Zdenek Tronicek
> Department of Computer Science and Engineering
> Prague                   tel: +420 2 2435 7410
> http://cs.felk.cvut.cz/~tronicek
>
>
> Quoting Tomas Hubalek <[email protected]>:
>
>> Ja si samozrejme uvedomuju ze se nejedna o optimalni navrh. Nicmene
>> pomoci toho schematu je mozne popsat jake objekty muzou prijit, takze to
>> tak uplne *cokoliv* neni.
>>
>> Navic JAX/WS navratovy typ Object akceptuje a prezentuje ho jako
>> xs:anyType s tim ze ho pak marshaluje, pokud podle XML Schema vi jak. A
>> problem je v tom, ze mu potrebuju podstrcit popis vsech objektu, o
>> kterych vim ze muze posilat.
>>
>> Na druhou stranu se mi nechce generovat 50 metod se stejnou signaturou
>> pro 50 objektu. Jedna se o genericky editor techto beanu a JAX/WS se
>> vsude v aplikaci pouziva, takze jen pro to, abych dostal "ideove
>> cistote" a pouzil jen tuhle jednu vec neco jineho, tak to se mi taky
>> nechce. Nicmene, pokud mi date typ, jak to resit cisteji, sem s tim...
>>
>> Tom
>>
>>> -----Original Message-----
>>> From: [email protected] [mailto:[email protected]]
>> On
>>> Behalf Of Zdenek Tronicek
>>> Sent: Wednesday, January 28, 2009 2:44 PM
>>> To: [email protected]
>>> Subject: Re: JAX WS a vlastni schema
>>>
>>> Dobry den,
>>>
>>> mam poznamku: myslim si, ze byste se mel nejdrive zamyslet nad tim,
>>> zda navratovy typ Object je to prave.
>>> Ve WSDL tak jako tak musite popsat format zpravy, ktera prijde
>>> klientovi. A to by nemelo byt "cokoliv", pokud ma klient tu zpravu
>>> nejak rozumne zpracovat.
>>> Jinymi slovy: pouziti Object je nevhodne. Kdyz zmenite navratovy typ
>>> metody returnMultipleObjects, bude po problemu.
>>>
>>> Z.T.
>>> --
>>> Zdenek Tronicek
>>> Department of Computer Science and Engineering
>>> Prague                   tel: +420 2 2435 7410
>>> http://cs.felk.cvut.cz/~tronicek
>>>
>>>
>>> Quoting Tomas Hubalek <[email protected]>:
>>>
>>> > Zdar,
>>> >
>>> >
>>> >
>>> > mam napr. takovouto webovou sluzbu, jejiz metoda vraci vice ruznych
>>> > datovych typu (beanu)
>>> >
>>> >
>>> >
>>> > @WebService
>>> >
>>> > public class MyService {
>>> >
>>> >
>>> >
>>> >     @WebMethod
>>> >
>>> >     Object returnMultipleObjects() {
>>> >
>>> >         ...
>>> >
>>> >     }
>>> >
>>> >
>>> >
>>> >     @WebMethod
>>> >
>>> >     MyObject doNothing() {
>>> >
>>> >         ...
>>> >
>>> >     }
>>> >
>>> > }
>>> >
>>> >
>>> >
>>> > JAX WS mi vygeneruje WSDL a XML schema, kde je MyObject jako complex
>>> > type a tim padem metoda returnMultipleObjects muze vracet i
>> MyObject.
>>> >
>>> >
>>> >
>>> > Kdyz ale metodu doNothing() smazu, tak v tom XML schema MyObject
>> neni
>>> > jako complex type a returnMultipleObject tento bean neumi vracet
>> (resp.
>>> > Marschaller nevi, jak ma MyObject marshallovat)
>>> >
>>> >
>>> >
>>> > Otazka zni:
>>> >
>>> > - je mozne nekde specifikovat XML schema s objekty (at uz jako
>> parametr
>>> > wsgen nebo nejakou anotaci nekde), ktere je mozne vracet metodou
>>> > returnMultipleObjects?
>>> >
>>> >
>>> >
>>> > Dik moc
>>> >
>>> > Tom
>>> >
>>> >
>>>
>>
>>
>
>
>
>



Odpovedet emailem