Builder.cz - Informacni server o programovani

Odběr fotomagazínu

Fotografický magazín "iZIN IDIF" každý týden ve Vašem e-mailu.
Co nového ve světě fotografie!

 

Zadejte Vaši e-mailovou adresu:

Kamarád fotí rád?

Přihlas ho k odběru fotomagazínu!

 

Zadejte e-mailovou adresu kamaráda:



InheritanceType.JOINED dedicnost EJB

Seznam témat     Nová odpověď

Přihlásit se     Registrace     Zapomenuté heslo

Re: InheritanceType.JOINED dedicnost EJB

Autor: Maaartin ♂

18:16:57 05.09.2012

existpierre napsal/a

Ked spravim select:

select rvj.id, r.coolFactor, numWheels, make, numPassengers, model from RoadVehicleJoined rvj inner join Roadster r on rvj.id = r.id;

zobrazi sa pekne tabulka, ktora reprezentuje objekt Roadster aj so vsetkymi rodicovskymi atributami. Ale ako v servlete ziskat tento objekt?



Uz si vubec nevzpominam, ale kdyz sces objekt tak musis zadat objekt, neco jako "select rvj" nestaci? Neumi to udelat ten JOIN automaticky bez toho ze bys ho zadaval?

To cos napsal je asi jako kdybych ti dal hromadu cihel a chtel barak. Slo by to s pouzitim new, priklad ("assuming that the class Family has an appropriate constructor")
http://docs.jboss.org/hibernate/orm/3.3/reference/en/html/queryhql.html#queryhql-select

Citovat příspěvek

 

InheritanceType.JOINED dedicnost EJB

Autor: existpierre ♂

16:32:07 04.09.2012

Dobry den,

Mam objekt RoadVehicle, ktory ma svoje atributy, mam objekty Car,Motorcycle, ktore su potomkami RoadVehicle a mam dalsie dva objekty, Coupe a Roadster, ktore su potomkami objektu Car. aj vsetci potomkovia maju svoje atributy specificke pre ne. Mam namapovanu celu dedicnost typom JOINED. Ked spravim select:

select rvj.id, r.coolFactor, numWheels, make, numPassengers, model from RoadVehicleJoined rvj inner join Roadster r on rvj.id = r.id;


zobrazi sa pekne tabulka, ktora reprezentuje objekt Roadster aj so vsetkymi rodicovskymi atributami. Ale ako v servlete ziskat tento objekt?

Query query = em
.createQuery(
"SELECT rvj.numWheels, rvj.make, rvj.model, c.acceleratorType, r.coolFactor " +
"FROM RoadVehicleJoined rvj, Car c, Roadster r " +
"WHERE rvj.id = c.id and c.id = r.id");
List<Roadster> roadsters = query.getResultList();



Tento kod mi vrati chybu:


java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to sk.eea.vehicles.Roadster
sk.eea.servlet.VehicleServlet.doPost(VehicleServlet.java:51)
javax.servlet.http.HttpServlet.service(HttpServlet.java:754)
javax.servlet.http.HttpServlet.service(HttpServlet.java:847)


V servlete:

List<Roadster> list = getVehicleBean().getRoadsters();

Citovat příspěvek

 

 

 

Přihlášení k mému účtu

Uživatelské jméno:

Heslo: