Re: Rozdily v Jave na Windows a Linuxu

2010-08-10 Tema obsahu Zdeněk Troníček
Ahoj, vzdyt tam mas pretypovani na List?. Tak si nejsem jisty, jak jsi to myslel. Jinak cyklus for (Employee e : list) { ... } bude pred prekladem (ve fazi desuggaring) nahrazen cyklem for (IteratorEmployee i = list.iterator(); i.hasNext(); ) { Employee e = i.next(); ... } Tedy cyklus

Re: hibernate a porovnanie List objektov

2010-08-10 Tema obsahu Ivan Polak
Ahojte, skusim to napisat zrozumitelnejsie: mam tabulku A, stlpce: id name mam tabulku B, stlpce: id name a potom mam tabulku AB (vazobna tabulka medzi A a B) , stlpce: fk_a_id cudzi kluc do A fk_b_id cudzi kluc do B. priklad: tabulka A: 1 Ivan 2 Peter 3 Jozo

Re: Rozdily v Jave na Windows a Linuxu

2010-08-10 Tema obsahu Ondra Medek
Sorry, napsal jsem to spatne. Toto: for (Object object : list) { @SuppressWarnings(unchecked) MapString, Object map = (MapString, Object)object; // ... } projde na Win, ale na Linuxu ne. Toto: for (Object object : (List?)list) { ... } projde vsude. Take mne zarazilo, proc to na tom

Re: Rozdily v Jave na Windows a Linuxu

2010-08-10 Tema obsahu Kamil Podlesak
Pokud se nepletu, tak na windows je defaultní client VM, zatímco jinde server VM. Liší se v tom kdy a jak provádějí kompilaci a optimalizace JITem. Takže teoreticky je možné, že -client provede ihned optimalizaci a vyhodí přetypování na Employee, zatímco -server se pokusí alespoň jednou provést

Re: Rozdily v Jave na Windows a Linuxu

2010-08-10 Tema obsahu Zdeněk Troníček
V byte kodu pretypovani neni. Metoda protected static void process(ListEmployee list) { for (Object o : list) { System.out.println(o); } } se prelozi takto: protected static void process(java.util.List); Code: 0: aload_0 1: invokeinterface #2, 1;

Re: Rozdily v Jave na Windows a Linuxu

2010-08-10 Tema obsahu Martin Kuba
To je zajímavé, na Linuxu to v kódu je - ten řádek 22 s checkcast: static void process(java.util.List); Code: 0: aload_0 1: invokeinterface #2, 1; //InterfaceMethod java/util/List.iterator:()Ljava/util/Iterator; 6: astore_1 7: aload_1 8: invokeinterface #3, 1;

Re: Rozdily v Jave na Windows a Linuxu

2010-08-10 Tema obsahu Kamil Podlesak
To se mi nezdá. Tento bytecode nemůže vyhodit ClassCastException, IMHO ten poůvodní bytecode vypadal jinak. Kamil Podlešák 2010/8/10 Zdeněk Troníček troni...@fit.cvut.cz: V byte kodu pretypovani neni. Metoda   protected static void process(ListEmployee list) {        for (Object o : list) {

Re: Rozdily v Jave na Windows a Linuxu

2010-08-10 Tema obsahu Martin Kuba
Martin Kuba napsal(a): To je zajímavé, na Linuxu to v kódu je - ten řádek 22 s checkcast: Tak jsem si přečetl specifikaci na http://java.sun.com/docs/books/jls/third_edition/html/statements.html#259170 a myslím, že na Linuxu je to špatně. Specifikace totiž říká jasně, že for (Object

Re: Rozdily v Jave na Windows a Linuxu

2010-08-10 Tema obsahu Ondra Medek
Ja to ale vse prekladal na Windows, na tom Linuxu to jen spoustim. ale když obě varianty přeložím a podívám se na vygenerovaný bytekód, tak se liší práve o ten checkcast. Takže překladač rozepíše takto:        for(IteratorEmployee i = list.iterator();i.hasNext();) {            Object object

Re: MBean a automatické uzavírání sezení v Hibe rnate

2010-08-10 Tema obsahu Tomas Baca
Ja pouzivam .getCurrentSession() 2010/8/8 Oto Buchta ta...@buchtovi.cz: Má někdo z vás ideu, proč metoda transferSettings(Properties) třídy org.jboss.hibernate.jmx.Hibernate obsahuje      settings.setProperty(Environment.AUTO_CLOSE_SESSION, true); místo očekávaného      

Re: hibernate a porovnanie List objektov

2010-08-10 Tema obsahu Ondřej Fafejta
Zdravím, nestačilo by něco takového? (píšu to z hlavy, určitě tam bude nějaká chyba) Class A { ... @ManyToMany ListB bs JPA QL: SELECT DISTINCT a FROM A a JOIN a.bs b WHERE b.id IN (1,2) Fafi 2010/8/10 Ivan Polak ivan.po...@f4s.sk: Ahojte, skusim to napisat zrozumitelnejsie: mam tabulku