[Java lista] hibernate get aliases (duplicate alias)
fisha
fisha at freemail.hu
2009. Aug. 6., Cs, 12:42:56 CEST
Sziasztok!
Válaszolok magamnak:
private Set<String> getAliases(Criteria criteria) {
Set<String> aliases = new HashSet<String>();
CriteriaImpl criteriaImpl = (CriteriaImpl) criteria;
Iterator iterateSubcriteria = criteriaImpl.iterateSubcriteria();
while (iterateSubcriteria.hasNext()) {
Criteria subCriteria = (Criteria) iterateSubcriteria.next();
aliases.add(subCriteria.getAlias());
}
return aliases;
}
Még lehetne figyelni classcastexception elkerülésére is.
Üdv,
Fisha
fisha wrote:
> Sziasztok!
>
> A hibernate-tel birkózok mostanság. A helyzet a következő:
> Egy általános dokumentum listázó alkalmazást csinálok. Természetesen a
> dokumentumoknak van státuszuk. Adott felhasználó, csak adott státuszú
> dokumentumokat láthat. Tehát ezen a ponton _lehetséges_ egy szűrés a
> státuszra, amihez kell csinálnom egy aliast is.
> Igen ám, de természetesen a felhasználok a felületen is szűrhetnek
> státuszra a dokumentum listában. A baj akkor van, ha beadnak egy ilyen
> szűrést, és közben szükséges volt a jogok alapján már eleve csinálni egy
> statusz szűrést. Duplicate alias-szal elszáll a programom.
> Több szinten tudom a megoldást elképzelni. A megoldások sorrendje az
> elegancia alapján.
> 1. Megadni a hibernate motornak valami configban, hogy ne haljon el a
> duplicate aliastol, hanem csapja felül mindig az újabbal a régit. (vagy
> forditva, hiszen nekem most tökmindegy)
> 2. Valahogy lekérdezni egy Criteria-ból az éppen aktuális alias listát,
> és így én vizsgálnám, nehogy bekerüljön duplán ugyanaz.
> Egyikre se találtam megoldást sajna... :(
> +1 (ezt szeretném elkerülni). csinálok egy saját createalias-t, ami
> elmenti egy hashbe az aliasokat, és ignorálja azt, ami már van.
>
> Van valami ötletetek?
>
> Előre is köszi!
>
> Üdv,
> Fisha
>
> u.i..: Az előző kérdésemre is várom még az esetleges ötleteket. (sok
> OR-os feltétel elegáns hozzáadása egy criteriahoz).
>
>
> _______________________________________________
> Javalist mailing list
> Javalist at javagrund.hu
> http://javagrund.hu/mailman/listinfo/javalist
>
> ------------------------------------------------------------------------
>
>
> No virus found in this incoming message.
> Checked by AVG - www.avg.com
> Version: 8.5.392 / Virus Database: 270.13.43/2281 - Release Date: 08/04/09 05:57:00
>
>
További információk a(z) Javalist levelezőlistáról