Re: Proč není genericita v metodách Map jako get(), remove()?
Zdravím, našel jsem celkem rozumné vysvětlení: Restrikce se zavádějí proto, aby se něco nepokazilo. Zavoláním get s jiným typem se nic nepokazí. Ještě trošku umělý příklad: Map datumyNarozeni = ... class Person { String fullName String login hashCode { return login.hashCode(); } equals(Object o) { return login.equals(o); } } datumyNarozeni.put("michal",new Date()); odnekud mi prijde objekt Person p kde je login michal, pak muzu udelat: datumyNarozeni.get(p) a dostanu to spravne datum Martin Dne 13.4.2011 07:44, Libor Jelinek napsal(a): Dobrý den! Studuju collection framework a mám k otázku rozhraní Map. To má uvedeno, že je to pár key-value . /java.util Interface Map Type Parameters:K - the type of keys maintained by this mapV - the type of mapped values/ Proč tedy metoda jako *containsKey()* je deklarována jako *containsKey(Object key)* a nikoli *containsKey(K key)*? Dále např. proč je *V get(Object key)* a nikoli *V get(K key)*? Poč je *V remove(Object key)* a nikoli *V remove(K key)*? A to i v JDK7 - tedy dávno dávno po zavedení genericity. Možná to mi něco nedochází jako začátečníkovi, ale pak mě to vrací k beztypovým kolekcím z JDK4 a umožňuje pěkné čunárničky jako, že místo type error dostanu jen null když jako jako klíč jasně označený v deklaraci jako Integer můžu používat klidně String, Float, ale i ZipEntry - zkrátka potomek Object, tedy cokoli: import java.util.*; public class MapPokus1 { public static void main(String[] args) { HashMap psc = new HashMap(); psc.put(12000, "Praha 1"); psc.put(28101, "Velim"); System.out.println(psc.get(28101));// Velim System.out.println(psc.get(28101));// Velim System.out.println(psc.get("28101"));// žádná chyba jen null !!! System.out.println(psc.get(3.14));// žádná chyba jen null !!! System.out.println(psc.get(new ZipEntry("soub.txt") )); // žádná chyba jen null !!! } } Díky Libor -- Martin Beránek ICZ a.s., Pobočka Brno smime.p7s Description: S/MIME Cryptographic Signature
Re: Proč není genericita v metodách Map jako get(), remove()?
Dne 13.4.2011 08:37, Ondřej Fafejta napsal(a): 2011/4/13 Martin Beránek: Zdravím, našel jsem celkem rozumné vysvětlení: Restrikce se zavádějí proto, aby se něco nepokazilo. Zavoláním get s jiným typem se nic nepokazí. Ještě trošku umělý příklad: Map datumyNarozeni = ... class Person { String fullName String login hashCode { return login.hashCode(); } equals(Object o) { return login.equals(o); } } datumyNarozeni.put("michal",new Date()); odnekud mi prijde objekt Person p kde je login michal, pak muzu udelat: datumyNarozeni.get(p) a dostanu to spravne datum Martin tak tento příklad se mi hodně nelíbí. Takového programátora zatahat za uši ;-) Nebudu koukat do implementace Person, jak je napsaný hashCode a equals ... Určitě by každý normální programátor napsal toto: datumyNarozeni.get(p.getLogin()); dobrá, opravuji svůj původní text z "trošku umělý příklad" na "hodně umělý příklad". -- Martin smime.p7s Description: S/MIME Cryptographic Signature
Re: Proč není genericita v metodách Map jako get(), remove()?
Tak sem na to asi došel, viz příklad v příloze. Ono to totiž takovou mapu zadefinovat pomocí generik vlastně nejde... nebo jde, ale její použití pak bude silně limitující. Martin Dne 13.4.2011 07:44, Libor Jelinek napsal(a): Dobrý den! Studuju collection framework a mám k otázku rozhraní Map. To má uvedeno, že je to pár key-value . /java.util Interface Map Type Parameters:K - the type of keys maintained by this mapV - the type of mapped values/ Proč tedy metoda jako *containsKey()* je deklarována jako *containsKey(Object key)* a nikoli *containsKey(K key)*? Dále např. proč je *V get(Object key)* a nikoli *V get(K key)*? Poč je *V remove(Object key)* a nikoli *V remove(K key)*? -- Martin Beránek ICZ a.s., Pobočka Brno http://www.i.cz public class Main { static class BadMap { void put(K key, V value) { } V get(K key) { return null; } } static class Foo {} static class ExtFoo extends Foo {} public static void main(String[] args) { BadMap map1 = new BadMap(); BadMap map2 = new BadMap(); readFromMap(map1); readFromMap(map2); // ERROR universalReadFromMap(map1); universalReadFromMap(map2); ; } public static void readFromMap(BadMap m) { Foo f = new Foo(); m.get(f); } public static void universalReadFromMap(BadMap m) { Foo f = new Foo(); m.get(f); // ERROR } } smime.p7s Description: S/MIME Cryptographic Signature
Re: Proč není genericita v metodách Map jako get(), remove()?
Dne 14.4.2011 08:10, Oto Buchta napsal(a): Dne 14. dubna 2011 7:10 Martin Beránek mailto:martin.bera...@i.cz>> napsal(a): Tak sem na to asi došel, viz příklad v příloze. Ono to totiž takovou mapu zadefinovat pomocí generik vlastně nejde... nebo jde, ale její použití pak bude silně limitující. Opět nic neočekávaného. Když si vytvořím mapu, kde klíč je potomek, nemůžu přeci jako klíč použít předka. To je princip generik, Problém ale je, že jako klíč můžu použít jedině null, což je právě to limitující chování. Pokud se bavíme o metodě "universlReadFromMap" z mého příklad tak jediné co se přeloží je: m.get(null); Kdyby tedy Map,List,Set byly nadefinovány natvrdo s generiky, nešlo by psát _některé_ univerzální metody pro práci s nimi. > Mám-li to dohnat do umělého extrému (nebudu testovat výsledek na > null), tak jestli odchytnu NPE nebo ClassCast je vcelku jedno :-) Tady jsem nepochopil co tím je myšleno. Prostě zadefinovat parametr get metody pomoci generika nam nic navic neprinasi (stav objektu se nijak pokazit nemuze) - pouze limituje při vytváření univerzálních algoritmů. -- Martin Beránek ICZ a.s., Pobočka Brno http://www.i.cz smime.p7s Description: S/MIME Cryptographic Signature
Re: Vytvoreni instance XML objektu z XSD definice
eclipse takovou funkcionalitu ve svem editoru poskytuje. pravým tlačítkem na soubor *.xsd => generate => xml file martin Dne 20.4.2011 10:08, Vladislav Krejčiřík napsal(a): Ano, v podstate potrebuju funkcionalitu SoapUI, ktera na zaklade XSD mi vyrobi XML message. Potreboval bych to udelat vsak v runtime, v kodu. -- Martin Beránek mailto:martin.bera...@i.cz http://www.i.cz smime.p7s Description: S/MIME Cryptographic Signature
Re: Java a zpracování videa
Dne 12.5.2011 22:06, Jaroslav Hurdes napsal(a): Zdravím. Nemáte někdo zkušenost z nějakou knihovnou pro javu, která zvládá práci s video soubory a popřípadě i frame grabbery a kamerami. Konkrétně potřebuji pouze z daného video zdroje získávat jednotlivé snímky pro další zpracování + nastavení parametrů (frekvence, rozlišení, formát dat). Jedinou knihovnu co znám je JMF, ale ta je v zásadě mrtvá. Máte někdo s tímto zkušenosti. Díky za každé nasměrování. Jaroslav Hurdes nedávno jsem narazil v souvislosti s javou a videem na tuhle knihovnu http://www.xuggle.com/xuggler/ ale osobní zkušenost nemám -- Martin Beránek http://www.i.cz smime.p7s Description: S/MIME Cryptographic Signature
Re: Jak co nejlépe zareagovat na znullování objektu?
Dne 9.6.2011 09:15, Libor Jelinek napsal(a): Dobrý den! Chtěl bych probrat, jak by kdo řešil následující problém ochrany proti NullPointerException pokud s jednou referenční proměnnou pracuje současně více částí aplikace (více Swing formulářů nebo JPA perzisence a JavaServer Faces web GUI současně apod.). OrderItem item = new OrderItem(); /// V nějaké vrstvě se při vytváření položky nastaví nějaké hodnoty/ item.setPN(123); item.setQty(2); /// V jiné vrstvě uživatel smaže položku. Reference je na null./ item = null; /// Další vrstva to neví a zavolá, což //skončí chybou NullPointerException/ item.getPN();// Jak k tomu co nejlépe přistoupit? Mě napadají tak dvě možnosti: 1. Do do getter metod přidat kontrolu na na null a v tom případě vrátit např "-1". 2. Oznamovat si změny např. beanovským PropertyChangeListener, což by ale hodně zkomplikovalo kód. Budu rád za Vaše názory. Libor Nechápu jakým způsobem jste vlastně k tomuhle problému přišel. Pokud mám metodu která s objektem pracuje a pak si musím na začátku zkontrolovat, jestli mi někdo nepředal null. Ale v průběhu metody nejde nijak zvenku znullovat objekt, na který držím referenci. -- Martin Beránek smime.p7s Description: S/MIME Cryptographic Signature
Re: Jak co nejlépe zareagovat na znullování objektu?
Dne 9.6.2011 10:38, Libor Jelinek napsal(a): Ano, těžko si to představit. Kompletní popis by byl rozsáhlý. Ale stručně je to asi tak, že mám modul v NetBeans Platform, který poskytuje POJO jiným modulům. V určitý moment se z POJO stanou JPA managed entities. Odkazy, ale ale již existují např. z TableModelů Swingové JTable a ještě ke všemu v jiném dalším třetím modulu. Navíc si řízení a načítání modulů řídí NBP více méně podle sebe samo. Jen výpis zrovna této NullPointerException je asi tak cca 90-100 volání :-) V téhle "džungli" se pak můžou dít věci a to je pak debugging jak má být :-) sice vam neporadim, ale uz asi trosku chapu. ten NPE nevznikne primo volanim item.getPN(), ale az nekde uvnitr (zrejme jsou to nejake proxy???) -- Martin Beránek smime.p7s Description: S/MIME Cryptographic Signature
java7 - je už "stable"?
Zdravím, měl bych tu téma na diskuzi: Myslíte že už dozrál čas začít používat javu 7 v produkčním nasazení. V posledním update (2) už žádný security bugfix nebyl a chyby co se opravují jsou spíše napříč verzemi. Co vy nato? díky za reakce -- Martin Beránek ICZ a.s.
Re: java7 - je už "stable"?
Dne 27.1.2012 13:29, Lukas "lzap" Zapletal napsal(a): No tak hlavne jste neuvedl, kterouze Javu mate na mysli. Paklize stavite sve produkty na RHELu od Red Hatu, muzete myslet OpenJDK. Tam by byla moje odpoved - zatim ne. http://red.ht/ynWghf U "sunovske" Javy tezko rict. Historie ukazuje, ze nejstabilnejsi jsou starsi verze s mnoha zaplatami, coz se tyka "sestky" take. Nicmene to byste se mel spis ptat Vasich kvalitaku, nez nas ;-) Díky za reakci. Stavíme to na "sunovske" jave bez "EE" - to jsem zapoměl dodat. V našem menším týmu si nehrajeme na vývojáře, testery, kvaliťáky, tak podobně. V testovacím prostředí naše aplikace na Java 7 jede, testama prochází. Asi hledám ujištění že nejsem první kdo to fakt začne používat ;), případně pokud jsou nějaké konkrétní důvody pro to nepřejít. -- Martin Beránek ICZ a.s.
Re: JSF a autorizacia
Zdravim, JSF jsem sice opustil nekdy pri nastupu JSF2, ale i tak si myslim ze bych poradit dokazal. To zda k nejake funkcionalite ma nebo nema uzivatel pristup, bych ve "view" (jsf) resil na urovni komponent. Sada komponent Tomahawk (myfaces.apache.org) k tomu primo pouziva atributy enabledOnUserRole a visibleOnUserRole. Pricemz to v jake je uzivatel roli se zjisti z HttpServletRequest.isUserInRole(String). Takze pokud pouzivate nejakou standardni autentizaci kontejneru ktera vam spravne naplni Principal v HttpServletRequestu je o vse postarano. Nebo muzete pred vsechny stranky predradit filtr, ktery vrati vasi implementaci HttpServletRequestu. Martin Dne 11.2.2012 17:58, Ivan 596 napsal(a): Zdravim, chcem sa opytat na kontrolu pristupu v JSF 2, ale ani nie tak "komponent" (je v podstate jedno ci sa uzivatel dostane k nejakej stranke), ako skor kontrolu v kazdej action metode, ktora uklada / vracia vysledky. alebo sa nato pozeram spatne a skor sa kontroluje pristup ku komponentam ? Na vysvetlenie: v Strutse ak boli tri urovne (uzivatel, zamestnanec, admin) nastavilo sa pri prihlaseni session atribut a kazda napr. zamestnanecka akcia (strutsovske execute metody) obsahovala String zamId = (String)request.getSession().getAttribute("zamId"); if (zamId==null || zamId.length()<1) { return mapping.findForward("neopravnenyPristup"); } V JSF 2 ale vyvolat session vyzaduje pomerne skaredy kod s ExternalContext-om, je riesenim @ManagedProperty, cize injekcia nejakeho session beanu do kazdeho beanu kde su metody spracovavajuce akciu? Alebo sa nato pozeram principialne spatne a inak sa kontroluje pristup v JSF 2 vo velkych aplikaciach? este poznamenavam, ze bez EJB, ak vsetci pouzivate JSF prevazne s EJB, tak by ma zaujimalo nakolko sa JSF vyuziva samostatne a ci je to skor rarita... diky moc, ivan -- Martin Beránek ICZ a.s., Pobočka Brno http://www.i.cz smime.p7s Description: Elektronický podpis S/MIME
Re: Transactional File I/O
Spíš off topic: XADisk jsem zkoušel ale neuchodil - asi tomu bránili moje povrchní znalosti o distribuovaných transakcích, každopádně žádná legrace to asi nebude. Nakonec jsem si udělal vlastní řešení - samozřejmě nijak univerzální. Identifikoval jsem si use-case použití filesystému a db dohromady a vyjmenoval si všechny stavy (konzistentní i nekonzistentní) ve kterých můžu skončit - bylo toho nakonec míň než jsem čekal a naprogramované jsem to měl zachvilku s tím, že: používám optimistický přístup, pokud se něco podělá jsou připravené postupy jak vše dostat do konzistentního stavu. Dne 13.6.2012 14:14, Vaclav Stumbauer napsal(a): Zdravim vas ve spolek, rad bych zaclenil operace nad filesystemem do globalni distribuovane transakce. Primarne mi jde predevsim o soubory - zapis, prepis, mazani, adresare me moc netrapi. Nasel jsem 1) XADisk 2) JBoss TS transactional File I/O Aplikaci mam aktualne nasazenou na jbossu - JBoss 5.1, s JBossTS 4.6.1, zda se me ale, ze je to jen nejaka orizla verze JBossTS, co jde s JBossem - FileIO v ni neni. Zajimalo by me: 1) Mate zkusennosti s vyse uvedenymi nebo jinym resenim 2) Mate nejaky nazor ohledne toho, ktere z uvedenych reseni je lepsi? diky VS -- Martin Beránek smime.p7s Description: Elektronický podpis S/MIME
Re: Oracle JDBC - chyba ORA-00911: invalid character
Středník bych tam v javě necpal Dne 16.1.2013 11:15 "Dušan Rychnovský" napsal(a): > Dobrý den, > > posílám do Oracle DB pres JDBC driver tuto query: > > SELECT status FROM pfa_audit WHERE mid = '865091'; > > tímto kódem: > > Statement statement = connection.createStatement(); > return statement.executeQuery(query); > > Nicméně v odpověď se mi vrací SQLException se zprávou ORA-00911: invalid > character (na konci je ještě obdélníček). > > Když pošlu tu samou query přes sqlplus, zpracování proběhne korektně. > > Kde hledat chybu? > > Předem děkuji, > Dušan Rychnovský > >
Re: ako ziskat mesto a stat z IP adresy z http requestu
Do googlu dej "Geoip" Dne 28.1.2013 22:31 "Ivan Polak" napsal(a): > Ahojte, > > moze prosim niekto poradit ako je mozne z IP adresy z request-u ziskat > lokalizaciu klienta - mesto a stat, pripadne dalsie informacie. > > dakujem > > Ivan >
Re: Hibernate SELECT bez FROM tabuľky
Není moc jasné zadání, ale hql >From detail d where d.master=:master order by d.order Podle mě dělá co požadujete Martin Dne 27.6.2013 15:36 "Rastislav Siekel" napsal(a): > Otočiť to na vyhľadávanie "detail JOIN master" by v tomto prípade nešlo. > Výsledok má byť zoznam mastrov (filtrovaný na ďalšie podmienky) s tým, že > sú zadané podmienky aj na posledný detail. > > Principiálne hľadám, či je možné v Hibernate spraviť SELECT * FROM( > SELECT...) > > > Rastislav "Bedo" Siekel > > > -- > Ing. Rastislav Siekel > Prosoft s.r.o., Kuzmányho 8, 010 01 Žilina, Slovakia > E-mail : > Tel : 041/562 54 91 > Fax : 041/562 54 97 > Mobil : 0905 34 00 20 > > > > On 27. 6. 2013 15:11, ŠVARC Jiří wrote: > > Nevím jestli jsem dobře porozuměl, ale nešlo by to realizovat vyhledáním > v seznamu detailů s kritériem odkazu na mastera, nastavením řazení a > query.setMaxResults(1)? > > ** ** > > *ing. Jiří Švarc** > *Programmer Analyst > > > > *Asseco Central Europe, a.s.** > *Solutions for Demanding Business > > Budějovická 778/3a, 140 00 Praha 4 > Czech Republic > Mobile: +420 737 944 536 > jiri.sv...@asseco-ce.com > www.asseco-ce.com > > ** ** > > *From:* konference-boun...@java.cz > [mailto:konference-boun...@java.cz] > *On Behalf Of *Rastislav Siekel > *Sent:* Thursday, June 27, 2013 2:57 PM > *To:* Java > *Subject:* Hibernate SELECT bez FROM tabuľky > > ** ** > > Zdravím vospolok, > > chcel by som sa spýtať, či niekto neriešil nasledujúci problém: > > V Oracle mám tabuľky master a detail. Mám master a chcem k nemu nájsť > *posledný > *detail, čo spravím v SQL takto: > > ... AND detail_id = > ( > SELECT * FROM > ( > SELECT detail_id > FROM detail > ORDER BY detail_time DESC > ) > WHERE rownum = 1 > ) > ... > > > Tu som narazil na problém, že Hibernate pomocou Criteria API asi nevie > spraviť "SELECT FROM (...) WHERE ...". > Aj DetachedCriteria, aj Criteria si vyžadujú Entitu (DTO), nad ktorou > pripravia SQL príkaz. Je nejaká možnosť ako toto obísť? > > Vďaka, > Rastislav "Bedo" Siekel > > ** ** > -- > > Ing. Rastislav Siekel > Prosoft s.r.o., Kuzmányho 8, 010 01 Žilina, Slovakia > E-mail : > Tel : 041/562 54 91 > Fax : 041/562 54 97 > Mobil : 0905 34 00 20 > > > > > >
jaky security framework?
Zdravím konferenci, potřeboval bych doporučit něco jako security framework. Chtěl bych určité metody oběktů zabezpečit na uživatelské role. něco jako: public void someMethod() { Security.checkRole("admin","poweruser"); ... ... ... } kde by Security.checkRole mohlo vyhodit nějakou SecurityException. koukal sem na jaas, ale tam se mi nelibi že jakmile to jednou zapnu, aplikuje se to všude. díky za návrhy -- Martin Beránek smime.p7s Description: S/MIME Cryptographic Signature
Re: jaky security framework?
Jasne... ale budu to psat cele od zacatku. Spise jestli uz neni neco hotoveho (at uz je to postavne na aspektech nebo ne) - a to se stale bavime pouze o overeni "user in role". Ale cela ta maskarada okolo jako je security context je vec o neco slozitejsi. Tomas Hubalek napsal(a): To co chcete se da naprosto perfektne udelat pomoc AOP. Proste metode priradite aspekt, ktery to vynuti. -- Martin Beránek smime.p7s Description: S/MIME Cryptographic Signature
Re: project management tools - build, test, code analysis, documentation (doplneni)
Zdravím, Dne Thursday 23 of August 2007 14:41:32 Michal Palička napsal(a): > Jeste me napadlo: > > Tech zavislosti ve vasem POMu nemusi byt zase az tak moc. > MAVEN podporuje tzv. tranzitivni zavislosti. > > Pokud tedy napr. do vaseho POMu pridate Hibernate, > doplni MAVEN automaticky (na pozadi) take vsechny zavislosti teto > knihovny (cglib, antlr, asm, ehcache atd.). > > mp. to je sice pravda, ale řekl bych, že tranzitivních závislostí by se nemělo zneužívat: přestože třeba hibernate závisí na common-collections a budu je tedy mít v classpath, tak pokud začnu common-collections přímo používat ve svém projektu, měl bych je do pom souboru přidat. Nejenže to potom odráží logickou strukturu kódu, ale vyhnu se problémům až třeba hibernate nahradím nečím jiným a commons-collections vypadnou ze stromu závislostí. -- Martin Beránek
spring v jetty nebo jetty ve springu
zdravím, prozkoumávám spring a zatím se nenalezl odpověď na tuto otázku: Předpokládám aplikaci, která se skládá z databáze, hibernate, webu (jsf) a dalších serverů (vlastní servery, povětšinou request-response povahy, komunikující na různých protokolech). Prvotně mi přišlo blízké postavit aplikaci tak, že pouze nahodím spring context a ten spustí jetty a další servery. Tady ale příchází problém v integraci JSF do jetty, protože takto spuštěný kontext neumí session/request scope... a přicházím tak o výhodu integrace JSF a springu. Druhé řešení by asi bylo jednoduší... a to spustit Jetty (nebo třeba Tomcat), v něm spustit WebApplicationContext. Na tomto řešení se mi ale zase moc nelíbí, že ty moje další servery jsou spouštěny z nějakého servletu. Dále rozdělení celé aplikace na web a "ten zbytek" taky není nejvhodnější kvůli hibernate (dvě instance hibernate ve dvou různých VM přistupují k jedné databázi). Jak to řešíte vy?? -- Martin Beránek
Re: spring v jetty nebo jetty ve springu
Dne Wednesday 03 of October 2007 14:33:29 Michal Palička napsal(a): > Dalsi server (non-HTTP) spoustim v ramci aplikacniho kontextu Springu. ... a tento aplikační kontext je spuštěn z jetty, chápu to tedy správně? Jak velké aplikace jste takto provozoval? Nějaké problémy? -- Martin Beránek
spring & hibernate & transakce
Zdravím, začínám se springem. Vždy, když jsem používal Hibernate, řídil sem transakce aplikačně přes session.beginTransaction(), session.getTransaction.comit() respektive rollback(). V tom bych chtěl pokračovat a řekl bych že se mi to i daří. Ale nechápu, proč spring vyžaduje za běhu "jta.jar" - rád mám věci pod kontrolou. Lze se této - podle mě nadbytečné závislosti - zbavit (jedná se o standalone aplikaci). konfigurace: ${db.dialect} thread org.hibernate.cache.NoCacheProvider -- Martin Beránek
Re: spring & hibernate & transakce
Dne Tuesday 06 of November 2007 18:06:29 Roman Pichlik napsal(a): > Ta zavislost tam neni zavlecena transakcnim modulem, nybrz tridou > org.springframework.orm.hibernate3.LocalSessionFactoryBean. Jinak bych > vam doporucoval ridit transakce Springem, prece jenom je to pohodlnejsi > a vice odolne chybam a casto se opakujicimu kodu... diky za reakci - budu o tom uvazovat. jeste jedna otazka k transakcim: spring reference manual jsem samozrejme prochazel (stejne tak pasaze o transakcich v knize Spring in Action), ale tato pasaz se mi zda asi nejvic tajemna. Jake jsou tedy moznosti rizeni transakci ve standalone aplikaci? predpokladam: hibernate (jdbc) transaction jta??? diky > > Martin Beránek napsal(a): > > Zdravím, > > > > začínám se springem. Vždy, když jsem používal Hibernate, řídil sem > > transakce aplikačně přes session.beginTransaction(), > > session.getTransaction.comit() respektive rollback(). V tom bych chtěl > > pokračovat a řekl bych že se mi to i daří. Ale nechápu, proč spring > > vyžaduje za běhu "jta.jar" - rád mám věci pod kontrolou. Lze se této - > > podle mě nadbytečné závislosti - zbavit (jedná se o standalone aplikaci). > > > > konfigurace: > > > > > > > > > > > > > > > > > class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"> > > > > > > > > ${db.dialect} > > > key="hibernate.current_session_context_class">thread > key="hibernate.cache.provider_class"> > > org.hibernate.cache.NoCacheProvider > > > > > > > > -- Martin Beránek
Re: pracovní příležitost
zdravim, Dne Wednesday 07 of November 2007 10:19:15 Ondřej Ludvík napsal(a): > Jinak si nemyslim, ze je neco zleho na pracovni nabidce je to proste "jenom" SPAM. Ten kdo hledá práci, ví kam se má podívat - na internetu je mnoho míst k tomu určených (dokonce jsou i taková, která se specializují na "lidi od IT"). -- Martin Beránek
Re: Konstruktor genericke tridy
Dne Thursday 22 of November 2007 11:33:08 Martin Kuba napsal(a): > Petr Gola napsal(a): > > Řekl bych, že new T() nefunguje, protože T je dostupný jen pro > > kompilaci. Je to sice ukecanější - je třeba předávat ještě "T.class", > > ale je to navíc informace, která přežije kompilaci :) > > Tak tak, třída MyClass existuje jen jednou, takže > v souboru MyClass.class nemůže být informace, o jaké T se jedná. > Nezbývá, než si předat informaci o třídě T jako parametr. > > Makub dalším spůsobem jak získat Class je tenhle (musí být voláno uvnitř třídy MyClass): (Class) ((ParameterizedType) getClass().getGenericSuperclass()).getActualTypeArguments()[0]; mým zdrojem bylo tohle: http://www.hibernate.org/328.html#A6 -- Martin Beránek ICZ a.s. http://www.i.cz
Re: Netbeans jako jednoduchý XML editor?
Dne Monday 03 of December 2007 22:05:24 Ing. Jan Novotný napsal(a): > Zdravím, > >hledáme pro naše webaře jednoduchý XML editor, kterým by mohli > pohodlně editovat XML konfigurační soubory, které pro ně naši javisti > připravují. Atributy editoru, které hledáme jsou: > > - zdarma > - podpora DTD, XSD > - code completion > - code coloring > - jednoduchý k použití > - malý footprint > - není nutné nic extra dodělávat > > Napadlo mě vyzkoušet ořezané Netbeansy - a zrovinka dneska vyšla ta > šestka ... Výsledek zkoušení mě však moc nepotěšil. Standardní IDE není > možné použít jen pro editaci XML souborů - musel by se vytvářet Java > projekt. Také jsem narazil na chyby při stahování XSD (zkoušel jsem to > na http://maven.apache.org/maven-v4_0_0.xsd). Neřešil už někdo problém > jednoduchého XML editoru na Netbeans platformě? Přeci nejsem jediný, > kdo toto řeší ... ale Google mlčí :( > Díky za reakce. > > Honza N. za vyzkouseni by taky mohl stat XMLmind (http://www.xmlmind.com/xmleditor/) -- Martin Beránek ICZ a.s., Pobočka Brno mailto:[EMAIL PROTECTED] http://www.i.cz
hibernate: anotace pri Map
Zdravím, nevím jak mám zapsat následující mapování pomocí anotací jde o situaci kdy perzistetní objekt má několik identifikátorů v různých jmenných prostorech děkuji za nakopnutí správným směrem -- Martin Beránek
Re: hibernate: anotace pri Map
Dne Tuesday 04 of March 2008 13:36:01 Martin Beránek napsal(a): > Zdravím, > > nevím jak mám zapsat následující mapování pomocí anotací > > > > > > inu odpovim si sam. pomoci jpa anotaci to nejde, je treba pouzit hibernate anotace @org.hibernate.annotations.CollectionOfElements(fetch=FetchType.EAGER) @JoinTable(name = "patient_idents", [EMAIL PROTECTED](name="patid")}) @Column(name = "ident",nullable = false) @org.hibernate.annotations.MapKey([EMAIL PROTECTED](name="nspace")}) public Map getIdents() { ... } -- Martin Beránek ICZ a.s., Pobočka Brno Londýnské náměstí 2/856, 639 00 Brno Tel.: +420 244 100 333 Fax.: +420 244 100 344 mailto:[EMAIL PROTECTED] http://www.i.cz
hibernate criteria: jak obejit korelovany poddotaz
Zdravím, už nad tím sedím pěkně dlouho a nemůžu se dobrat k výsledku. Mám dvě entity Parent(id,name) a Child(id,name,parent) ve vztahu 1:N (rodič, potomek). Běžně používám dotazy typu: Criteria c = session.createCriteria(Child.class); c.add(Restrictions.eq("name","a")); c.createAlias("parent","parent"); c.add(Restrictions.eq("parent.name","b")); Ale teď potřebuji přidat podmínku na nějakou jinou instanci Child (vpodstatě by to šlo pomocí korelovaného poddotazu, ale tomu bych se rád vyhnul) která bude opět innerjoinovana s parent, tedy něco jako: Vyber takové Child se jménem "aaa", jejichž rodič má Child se jménem "bbb". A tohle zapsat pomocí criteria api... díky za pomoc -- Martin Beránek
Re: verze javac, ktera vyprodukovala .class soubory
co takhle dekompilovat a porovnat? Martin Dne Monday 21 of April 2008 10:44:46 Pavel Kolesnikov napsal(a): > On 21/04/2008, Oto Buchta <[EMAIL PROTECTED]> wrote: > > Hmmm. A proc potrebujes vytvaret binarne identicky .class, kdyz ho mas? > > cp nestaci? :-) > > Protoze mam veliký převeliký nepořádek ve verzích (což ja samozřejmě moje > chyba, které šlo předcházet, ale už se to tak zkrátka stalo). > > Jinými slovy, to, co hledám, není .class, ale správná revize > odpovídajícího zdrojáku. > Blbá situace, co? :-) > > Pavel
Re: ant: projekt na více jar souborů
Dne Monday 12 of May 2008 15:18:26 [EMAIL PROTECTED] napsal(a): > Mám projekt v eclipse. V něm tři adresáře se zdrojovými kódy. Chtěl bych z > každého tohoto adresáře pomocí antu vytvořit jeden jar soubor. Můj problém > je, že všechny .class soubory jsou uloženy v adresáři ./bin . Asi by bylo > dobré je překládat každý do jiného adresáře, ale nevím jak to udělat, aby s > tím zase eclipse neměl problém. Navíc s antem nemám mnoho zkušeností. Chtěl > bych se proto zeptat, jaký je nejlepší postup, co dělám špatně, případně na > odkaz na nějaký příklad. Děkuji mnohokrát. Předem doporučuji psát ANT skripty tak, aby šli spouštět nezávisle na eclipse (takže nespoléhat, že eclipse vše automaticky builduje do nějakého adresáře). Varování zaznělo, nyní rada: nastavení projektu, položka "Java Build Path", záložka "Source" zaškrtněte dole položku "Allow output folders for source folders". Pak můžete pro každou zdrojovou složku nastavit jinou složku pro buildování. -- Martin Beránek
hibernate: composite unique u map
zdravím konferenci, narazil jsem na následující problém. Mám mapování uvnitř třídy Person: Takže Person má mapu svých identifikátorů v různých namespace. Potřeboval bych ještě přidat omezení "unique" na sloupce namespace + identifier (tedy aby dvě osoby nemohly mít stejný identifikátor ve stejném jmenném prostoru). Jak třídy tak schéma databáze se generuje z hbm.xml, takže bych to rád nějak přidal sem. díky za rady -- Martin Beránek mailto:[EMAIL PROTECTED]
Re: pouzitie discriminator v Hibernate
Myslím že by mělo fungovat session.createCritera(A.class).list() přičemž výsledek bude List Dne Tuesday 10 of June 2008 15:45:59 Ivan Polak napsal(a): > Zdravim konferenciu, > > na pouzitie discriminator-a v Hibernate mam jednu zvlastnu poziadavku. mam > tabulku ktora ma stlpec typ. k tejto tabulke patri abstract trieda, nech sa > vola A. a mam 8 tried ktore su potomkami tejto abstract triedy a kazda ma > svoj vlastny typ, povedzme "1" az "8" (discriminator-value), ktory sa > korektne zapisuje pomocou hibernate do tohoto stlpca typ. v jednom pripade > ale chcem pomocou kriterii vytiahnut zakladne (bazove) objekty typu A. mam > pocit ze to nepojde lebo z nich nemoze byt instancia. nemate niekto napad > ako toto vyriesit ? dakujem! > > Ivan > > ________ > Message sent using Webmail 2.7.9 -- Martin Beránek
Re: pouzitie discriminator v Hibernate
Dne Tuesday 10 of June 2008 15:58:27 Ivan Polak napsal(a): > no praveze to nejako nefunguje: vypisuje to chybu: > > .Object with id: 4667772 was not of the specified subclass: sk..A > (Discriminator: 1 ); nested exception is > org.hibernate.WrongClassException: Object with id: 4667772 was not of the > specified subclass: sk.x.A (Discriminator: 1 ) tak z toho nejsem 2x moudry ^^^ jinak teď jsem vyzkoušel: for (Object o : session.createCriteria(Object.class).list()) { System.out.println(o.getClass().getSimpleName()); } a vrátilo to pěkný seznam všech možných entit... -- Martin Beránek
generic instanceof
Zdravím konferenci, narazil sem na zajímavý problém - nemůžu vygooglit řešení... navíc po přečtení tohoto: http://www.ibm.com/developerworks/java/library/j-jtp01255.html si nejsem jistý jestli řešení existuje, takže: mám abstraktní třídu A. V této třídě načítám pluginy (přes Class.forName) - rozhraní pro pluginy mám definované jako: interface Plugin { boolean execute(T param); } V třídě A bych před zavoláním execute potřeboval ověřit, že: plugin instanceof Plugin tedy že plugin typově sedí k dané implementaci. Například: "class Plugin1 implements Plugin" půjde zavolat z "class B extends A" ale ne z "class C extends A" dále poznamenám že v abstraktní třídě A mám k dispozici proměnnou typu Class -- Martin Beránek
Re: generic instanceof
Díky všem, tušení, že to nepůjde lehce jsem měl ;) zřejmě půjdu cestou jakou navrhoval Tomáš Záluský, tedy interface Plugin { boolean execute(T param); Class getParamType(); } další variantou je chytat ClassCastException při volaní execute, ale to by asi mohlo způsobovat výkonnostní problémy - co vy nato? -- Martin Beránek
Re: generic instanceof
díky, to je přesně to co jsem hledal Dne Monday 16 of June 2008 11:30:24 Martin Kuba napsal(a): > Tomáš Záluský napsal(a): > > To je dobré! :-) > > > >> getGenericSuperclass().getActualTypeArguments() > > Ještě jsem si přes víkend uvědomil, že to půjde i s použitím > interface, protože existuje i > > getGenericInterfaces().getActualTypeArguments() > > takže tady je nová verze s interface: > > package cz.makub.generika; > > import java.lang.reflect.ParameterizedType; > import java.lang.reflect.Type; > > /** > * Created by IntelliJ IDEA. > * > * @author Martin Kuba [EMAIL PROTECTED] > */ > public class Beranek { > > public static interface Plugin { > boolean execute(V param); > } > > public static abstract class A { > > public void uzijPlugin(String name) { > try { > System.out.println(""); > System.out.println("plugin: " + name); > Class tClass = (Class) ((ParameterizedType) > getClass().getGenericSuperclass()).getActualTypeArguments()[0]; > System.out.println("A<" + tClass.getName() + ">"); > > Class c = Class.forName(name); > Type[] genericInterfaces = c.getGenericInterfaces(); > for (Type genericInterface : genericInterfaces) { > if (genericInterface instanceof ParameterizedType) { > Type type = ((ParameterizedType) > genericInterface).getRawType(); if (type.equals(Plugin.class)) { > Class vClass = (Class) ((ParameterizedType) > genericInterface).getActualTypeArguments()[0]; System.out.println("Plugin<" > + vClass.getName() + ">"); if (tClass.equals(vClass)) { > System.out.println("jde to"); > } else { > System.out.println("nejde to"); > } > } > } > } > } catch (ClassNotFoundException e) { > e.printStackTrace(); > } > > } > } > > > public static class PotomekAStringovy extends A { > } > > public static class PluginStringovy implements Plugin { > public boolean execute(String param) { > return false; > } > } > > public static class PluginIntegerovy implements Plugin { > public boolean execute(Integer param) { > return false; > } > } > > public static void main(String[] args) { > PotomekAStringovy pas = new PotomekAStringovy(); > pas.uzijPlugin("cz.makub.generika.Beranek$PluginStringovy"); > pas.uzijPlugin("cz.makub.generika.Beranek$PluginIntegerovy"); > } > } > > > Makub -- Martin Beránek
hibernate criteria pro map
Zdravím, bádám nad tím už druhý den a k výsledku jsem se nepropracoval. Mám následující mapování: což přes hbm2java vyrobí property Map idents; potřeboval bych hledat podle dvojice nspace+ident, ale přes kritéria netuším jak - aliasy nějak nezabírají v hql by to vypadalo následovně from Entity as e where e.idents['somenspace'] = 'something' nevíte někdo jak nato??? díky -- Martin Beránek
Re: POJO2dbtables
Dne Wednesday 27 of August 2008 12:23:22 Jakub Bednář napsal(a): > Moje idea byla updatovat db schema a pote vlastni db podle zmen v pojo > objektech. však o tom se tu mluví ;) podívejte na http://docs.jboss.org/tools/2.1.0.Beta1/hibernatetools/html_single/index.html#d0e1991 a můžete použít třeba "annotationconfiguration" - bez nějakých metadat se stejně neobejdete -- Martin Beránek
Re: Oracle, Hibernate, ... - zavolání funkce na výslednou query
Dne Thursday 16 of October 2008 08:56:59 Robert Vojta napsal(a): > 2008/10/15 Tomas Vojtech <[EMAIL PROTECTED]>: > > Ahoj, > > > do dialectu lze zaregistrovat dodatecnou fci. Staci se podivat treba do > > SQLServerDialect. > > to samozřejmě lze, ale já potřebuji něco jiného. Jak zaregistrovat > funkci, jak ji zavolat, to všechno vím. Ale já potřebuji donutit > Hibernate, aby výslednou nativní query Oracle obalil funkcí, něco jako > ... > > z: SELECT * FROM ... > do: SELECT CREATE_CSV("SELECT * FROM ...") FROM DUAL > > ... tak, aby si funkce Oraclu sama spustila dotaz, vzala data, > vytvořila CSV a vrátila ho zpět. Stále platí, že tu query není možné > vytvořit ručně z důvodu obrovské složitosti a času (odpadá použití > named query). Pokud to nepůjde, tak nic jiného nezbyde, ale jako > dočasné řešení bych chtěl Hibernate nějak donutit, aby tu výslednou > query ještě transformoval a až potom odeslal. nejprve sem koukal na SqlProjection, ale to asi nepomuze (nebo tedy roznodne s tim neudelate presne to co jste psal) co takhle zkusit napsat vlastni dialect - dival jsem se na metodu Dialect.transformSelectString. Jako lepsi metodu uvadeji pouziti Interceptoru a metody onPrepareStatement. -- Martin Beránek
Re: JSP procházení kolekce
Dne Thursday 16 of October 2008 13:53:40 Petr Musil napsal(a): > Nemuze to byt treba tim, ze class soubory jsou zkompilovany do verze > 1.4? Zkuste zkontrolovat hodnotu -target pro javac. Asi to bude tim, ale ne uplne tak jak jste napsal. Jestli si to dobre pamatuji, tak tomcat nepotrebuje pro beh JDK, tudiz se spoleha na svuj vnitrni kompilator - to bude asi ten problem. -- Martin Beránek
Re: JSP procházení kolekce
Dne Thursday 16 of October 2008 14:10:03 Jakub Příkazský napsal(a): > Martin Beránek napsal(a): > > Dne Thursday 16 of October 2008 13:53:40 Petr Musil napsal(a): > >> Nemuze to byt treba tim, ze class soubory jsou zkompilovany do verze > >> 1.4? Zkuste zkontrolovat hodnotu -target pro javac. > > > > Asi to bude tim, ale ne uplne tak jak jste napsal. Jestli si to dobre > > pamatuji, tak tomcat nepotrebuje pro beh JDK, tudiz se spoleha na svuj > > vnitrni kompilator - to bude asi ten problem. > > Dobrý den, > > projekt mám určitě nastavený na kompilaci pro Java 1.5. Nenapadlo mě, že > Tomcat nepoužívá javovský compiler. > Vyzkouším verzi 5.5.20, zda se chyba objeví. myslím že posun o minor číslo nic nezmůže... možná bych zkusil tomcat 6 ale jak u 5.5 tak u 6 je napsáno že se používá JDT viz. http://tomcat.apache.org/tomcat-5.5-doc/jasper-howto.html > > děkuji > > Jakub Příkazský -- Martin Beránek ICZ a.s., Pobočka Brno Londýnské náměstí 2/856, 639 00 Brno Tel.: +420 244 100 333 Fax.: +420 244 100 344 mailto:[EMAIL PROTECTED] http://www.i.cz
log4j vystup do souboru podle threadu
zdravím, máme aplikaci v které běží několik vláken, které dělají různé činnosti. Chtěl bych log z každého vlákna a všech vláken, které vytvoří šel při logování do oddělených souborů. Ideálně pokud bych pro každé vlákno (threadgroup) měl samostatný log4.xml. díky za náměty a rady -- Martin Beránek
Re: log4j vystup do souboru podle threadu
Dne Wednesday 28 of January 2009 15:05:35 Jiří Mareš napsal(a): > Ahoj, > > kdysi jsem se tim zaobiral (je to tak rok) a jedine co jsme vymysleli, je > do NDC (ci MDC) si ulozit jmeno vlakna, toto pak pomoci konfigurace > zapisovat do log souboru. Vznikne pouze jeden log soubor, ktery se ovsem > podle jmena vlakna da rozdelit na vice souboru ... na NDC sem samozřejmě koukal, ale docela by i stačilo (když bych částečně slevil ze svých nároků). Ale největším problémem je to vytváření dalších vláken... to totiž nemám tak uplně pod kontrolou (jedním z vláken je jetty, dalším HL7 server,...). -- Martin Beránek ICZ a.s., Pobočka Brno Londýnské náměstí 2/856, 639 00 Brno Tel.: +420 244 100 333 Fax.: +420 244 100 344 mailto:martin.bera...@i.cz http://www.i.cz
Re: Kedy dojde k odstraneniu objektu?
Filip Jirsák napsal(a): Dobré odpoledne, tohle je právě častý omyl. Ve specifikaci (JavaDoc) je řečeno, že metoda proběhne *maximálně* jednou: The finalize method is never invoked more than once by a Java virtual machine for any given object. teď jsem ještě čirou náhodou objevil System.runFinalizersOnExit(boolean) na což by se asi dalo spolehnout... -- Martin Beránek ICZ a.s., Pobočka Brno Londýnské náměstí 2/856, 639 00 Brno Tel.: +420 244 100 333 Fax.: +420 244 100 344 mailto:martin.bera...@i.cz http://www.i.cz
prekresleni jscrollpane
zdravím, se swingem začínám takže možná trochu začátečnický dotaz. hlavní část aplikace (japplet) je okno kde je jscrollpane a v něm nejaký canvas (udelal jsem jako potomka jpanel) na který kreslím. v tom canvasu překrývám metodu getPreferredSize() a vracím nějaké rozměry - které se ale v průběhu běhu aplikace mění. A to je ten problém. Vykreslím třeba velký obrázek, ale scrollbary se obnoví až po změně velikosti apletu. jak se tohle má správně řešit? -- Martin Beránek ICZ a.s., Pobočka Brno Londýnské náměstí 2/856, 639 00 Brno Tel.: +420 244 100 333 Fax.: +420 244 100 344 mailto:martin.bera...@i.cz http://www.i.cz
Re: prekresleni jscrollpane
díky za snahu hlava nezklamala... funguje to Tomáš Zvěřina napsal(a): Uplne presne z hlavy nevim a hledat se mi to nechce ... ale sem dobrak, tak vas nakopnu :-) Prosta zmena getPrefferedSize nikoho nezajima. Musite zavolat "invalidate" ... nebo "revalidate" ... neco takoveho. Tim date svemu parentovi najevo, ze jste se zmenil a je vam tesno. On si to prebere a prekresli se. 2009/3/12 Martin Beránek mailto:martin.bera...@i.cz>> zdravím, se swingem začínám takže možná trochu začátečnický dotaz. hlavní část aplikace (japplet) je okno kde je jscrollpane a v něm nejaký canvas (udelal jsem jako potomka jpanel) na který kreslím. v tom canvasu překrývám metodu getPreferredSize() a vracím nějaké rozměry - které se ale v průběhu běhu aplikace mění. A to je ten problém. Vykreslím třeba velký obrázek, ale scrollbary se obnoví až po změně velikosti apletu. jak se tohle má správně řešit? -- Martin Beránek ICZ a.s., Pobočka Brno Londýnské náměstí 2/856, 639 00 Brno Tel.: +420 244 100 333 Fax.: +420 244 100 344 mailto:martin.bera...@i.cz <mailto:martin.bera...@i.cz> http://www.i.cz -- S pozdravem, Tomas Zverina Multimedia atelier s.r.o. Na Dolinách 4 147 00 Praha 4 IČO: 25127071 tel.: 241 433 120 http://www.m-atelier.cz/ http://www.lincovery.com/ http://lincovery.m-atelier.cz/ Společnost Multimedia atelier s.r.o. je zapsána u rejstříkového soudu v Praze, oddíl C, vložka 51961. -- Martin Beránek ICZ a.s., Pobočka Brno Londýnské náměstí 2/856, 639 00 Brno Tel.: +420 244 100 333 Fax.: +420 244 100 344 mailto:martin.bera...@i.cz http://www.i.cz smime.p7s Description: S/MIME Cryptographic Signature
Přídání metod do pojo
Zdravím, řeším následující problém: mám pojo (nositel dat) a potřebuji do ní přidat další getMetodu class Person { private String login; public String getLogin() { return this.login; } } potřeboval bych přidat metodu, např: boolean isEnabled() { return true; //tím chci říct, že dopředu vím co má metoda vrátit } Třídu jako takovou měnit nechci. Jako metodu to potřebuju kvůli tomu, že to je objekt který se zobrazuje v JSF tabulce. Zkoumal jsem jestli se pro to dají použít commons.binutils, ale ty zřejmě umí vytvářet jenom uplně nové pojo. díky za rady -- Martin Beránek ICZ a.s., Pobočka Brno Londýnské náměstí 2/856, 639 00 Brno Tel.: +420 244 100 333 Fax.: +420 244 100 344 mailto:martin.bera...@i.cz http://www.i.cz smime.p7s Description: S/MIME Cryptographic Signature
Re: Přídání metod do pojo
díky za tip, vypadá to nadějně a na použití asi nejjednodušeji (oproti např. asm) pokud to dotáhnu do úspěšnéno konce o výdledek se podělím martin Roman Pichlík napsal(a): > ja bych jeste dal konkretni tip, co to udelat pomoci Cglibu > (http://cglib.sourceforge.net/), ten udela za runtime potomka te tridy > se stejnym rozhranim, pridat tam tu metodu bude trivka > > > 2009/4/7 Zdenek Tronicek : >> Dobry den, >> >> k tomu co je nize bych doplnil bytecode instrumentation. Asi bych to ovsem >> resil tak, ze vytvareni instanci bych presunul do tovarni metody, ktera by >> vracela instanci anonymniho potomka Person. Ten by mel metodu isEnabled. >> >> Z.T. >> -- >> Zdenek Tronicek >> Department of Computer Science and Engineering >> Prague tel: +420 2 2435 7410 >> http://cs.felk.cvut.cz/~tronicek >> >> >> Quoting Jiří Mareš : >> >>> Ahoj Martine, >>> >>> AspectJ, pripadne vlastni byte-code manipulace (asm, javassist). >>> >>> S pozdravem >>> >>> Martin Beránek napsal(a): >>>> Zdravím, >>>> >>>> řeším následující problém: >>>> >>>> mám pojo (nositel dat) a potřebuji do ní přidat další getMetodu >>>> >>>> class Person { >>>>private String login; >>>>public String getLogin() { >>>>return this.login; >>>>} >>>> } >>>> >>>> potřeboval bych přidat metodu, např: >>>> >>>> boolean isEnabled() { >>>>return true; //tím chci říct, že dopředu vím co má metoda vrátit >>>> } >>>> >>>> Třídu jako takovou měnit nechci. Jako metodu to potřebuju kvůli tomu, že >>>> to je objekt který se zobrazuje v JSF tabulce. >>>> >>>> Zkoumal jsem jestli se pro to dají použít commons.binutils, ale ty >>>> zřejmě umí vytvářet jenom uplně nové pojo. >>>> >>>> díky za rady >>>> >>> -- >>> Jiří Mareš (mailto:jiri.ma...@svt.cz) >>> ČSAD SVT Praha, s.r.o. (http://www.svt.cz) >>> Czech Republic >>> >>> >> >> > > > -- Martin Beránek ICZ a.s., Pobočka Brno Londýnské náměstí 2/856, 639 00 Brno Tel.: +420 244 100 333 Fax.: +420 244 100 344 mailto:martin.bera...@i.cz http://www.i.cz smime.p7s Description: S/MIME Cryptographic Signature
jak udelat icmp ping
zdravím, z aplikace potřebuji ověřit dostupnost nějakého stroje. Vzhledem k tomu, že je to informace primárně pro uživatele, rozhodli jsme, že ping je tou správnou volbou. Klasické InetAddress.isReachable ale nakonec dělá pouze tcpecho na port 7 (protoze aplikace nemá dostatečná oprávnění - musela by běžet pod rootem). Víte o nějaké knihovně, která třeba multiplatformě obaluje volání externího ping programu? (na linuxu má ping suid). Případně nějaké jiné řešení - ale chci opravdu ICMP PING. díky -- Martin Beránek smime.p7s Description: S/MIME Cryptographic Signature
Re: jak udelat icmp ping
Ján Valkovič napsal(a): > Zdravim, > toto nepomoze? http://www.savarese.org/software/rocksaw/ > > ya diky na prvni pohled vypada zajimave, jenom se bojim, ze budu mit porad problem s opravnenim na urovni OS (provest icmp ping). vyzkousim. > > Dňa Ut, 2009-06-23 o 11:19 +0200, Martin Beránek napísal: >> zdravím, >> >> z aplikace potřebuji ověřit dostupnost nějakého stroje. Vzhledem k tomu, že >> je to informace primárně pro uživatele, rozhodli jsme, že ping je tou >> správnou volbou. >> >> Klasické InetAddress.isReachable ale nakonec dělá pouze tcpecho na port 7 >> (protoze aplikace nemá dostatečná oprávnění - musela by běžet pod rootem). >> >> Víte o nějaké knihovně, která třeba multiplatformě obaluje volání externího >> ping programu? (na linuxu má ping suid). Případně nějaké jiné řešení - ale >> chci opravdu ICMP PING. >> >> díky >> > > -- Martin Beránek ICZ a.s., Pobočka Brno Londýnské náměstí 2/856, 639 00 Brno Tel.: +420 244 100 333 Fax.: +420 244 100 344 mailto:martin.bera...@i.cz http://www.i.cz smime.p7s Description: S/MIME Cryptographic Signature
Re: jak udelat icmp ping
Juraj Lutter napsal(a): > Martin Beránek wrote: >> Ján Valkovič napsal(a): >>> Zdravim, >>> toto nepomoze? http://www.savarese.org/software/rocksaw/ >>> >>> ya >> >> diky > > Len pre info, ICMP PING (spravne: ICMP ECHO REQUEST) sa da generovat > jedine pomocou AF_PACKET (cize tzv. raw) socketu, ktory ma (standardne) > povoleny vytvarat len superuser. > > Jednotlive distribucie roznych UNIX a UNIX-like systemov (Solaris, BSD, > Linux, HPUX, ine..) mozu ale mat (napr. pomocou capabilities, > privileges, trusted extensions) povolene vytvaranie raw socketov aj pre > non-root pouzivatelov. Ano mouzou. O tomhle mam prehled. Software ktery pisu mam byt nasaditelny i radoby beznym uzivatelem a opravdu nestojim o reseni problemu s konfiguraci SELinuxu a podobnych. Software by mel bezet na Windows/Linux/Solaris a tak sem si rikal, ze treba nekdo si uz dal tu praci a "ojavoval" volani externiho programu ping, ktery lze ve standardu spustit snad vsude a uz na distribucni urovni jsou vyresena prava pro spusteni. Pokud vylozene nekdo nezna takove reseni, asi bych to uzavrel. Diky > > > -- Martin Beránek smime.p7s Description: S/MIME Cryptographic Signature
hibernate: one2one inverse
Zdravím, narazil jsem na následující problém: Mám entitu Storage, která uchovává nastavení a stav logického úložného prostoru. Tahle entita je velmi často updatována (co sekundu) kvůli položce "used", což je velikost zaplnění. To však úplně zablokovalo její editaci z webového rozhraní (entita je verzována). Napadlo mě vytvořit novou entitu StorageUsed a tam tuhle property vytáhnout. To zřejmě bude fungovat, ale nedaří se mi rozumným způsobem zapsat mapování do hbm.xml (java entity generujeme). Vztah one2one se má "simulovat" přes mane-to-one s unique="true", ale tohle neumí inverse, takže pak mi vazbu "drží" Storage a ne StorageUsed. Chtěl bych, aby vazbu držela StorageUsed už kvůli jednoduchému update ze současného stavu (systém je v provozu) a taky z logiky věci. Nějaké nápady? Díky za pomoc -- Martin Beránek ICZ a.s. smime.p7s Description: S/MIME Cryptographic Signature
Re: Parsing XML
tester tester napsal(a): > Ahoj vsetkych, > > kedze som s komplexnejsimi XML nepracoval ra by som sa spytal ako mozno > sparsovat takuto vec : > > > y > 0 > 1540 > 0 > > 1 > > > > SDS > NOT LONDON > > > GBP > 1540 > 0 > 0 > 1540 > 1540 > 1 > > > 0 > NO > NO > 056 > 1 > 87 > AAA > > 1 > > 00700 > NO > y > 2 > S > > > NO > NO > YES > 1 > NO > > > je to cast xml ktore dostavam od servru. > Problem s ktorym sa borim je ze existuje niekolko elementov ktore sa > nachadzaju rozhadzane po celom elemente a nijako medzi sebou nesuvisia inymi > slovami su ineho typu. > > Vie ma niekto nakopnut spravnym smerom ako sa s touto hlupostou vysporiadat ? > > A. mate DTD? pokud ano, problem s parsovanim zrejme nebude (da se pocitat s nejakou pevnou strukturou). vas priklad mi navozuje dojem, ze to xml se skada dost dynamicky a atribut type u elementu item urcuje co lze cekat vevnitr. pokud soubory nebudou nejak velke, klidne bych pouzil DOM (dom4j) a sel na to rekurzivne s "pretezovanim" ktere si ale budete muset udelat sam podle toho co je u elementu item v atributu type. tedy neco jako (pseudokod): void parseItem(Element e) { switch(e.type) "arrayOfFares" : parseArrayOfFares(); "farePrice" : parseFarePrice(); } ale zalezi co z toho vlastne chcete dostat, pokud chcete jenom konkretni atributy, pouzijte xpath -- Martin Beránek ICZ a.s., Pobočka Brno Londýnské náměstí 2/856, 639 00 Brno Tel.: +420 244 100 333 Fax.: +420 244 100 344 mailto:martin.bera...@i.cz http://www.i.cz smime.p7s Description: S/MIME Cryptographic Signature
Re: releasovanie free/komercnej verzie aplikacii
Dne St 4. listopadu 2009 14:50:45 Lukáš Marek napsal(a): > Ahoj, > > zkusil bych se inspirovat nějakým standardem pro modulární Java aplikace jako > je např OSGi (http://cs.wikipedia.org/wiki/OSGi_Service_Platform). > > Pokud je aplikace nějak rozumně modulární, můžete to udělat tak, že vytvoříte > několik modulů: > - API placené funkcionality stejné pro obě verze > - implementaci > - dummy implementaci pro free verzi > > No a pak už jen distribuujete příslušné moduly podle toho o jakou jde verzi. > toto se mi jeví jako dobrý nápad, použil bych to v kombinaci s isFullVersion() dummy implementace by mohla jenom vyhazovat vyjimky a aby to nepadalo, tak se to bude predem chekovat pres isFullVersion pri pokusu o prolomeni to stejne nebude fungovat, ale bude to pekne padat -- Martin Beránek
Re: automatické odesílání formuláře
Dne Pá 13. listopadu 2009 11:06:29 tomasjur...@email.cz napsal(a): > Dobrý den > > vytváříme jednoduchou web aplikaci ve které si přihlášený student může > spustit test (např z Matematiky, ČJ, Přírodovedy). Jedná se o obyčejný HTML > formulář, který po vyplnění a zaškrtání odpovědí student odešle na server k > automatickému vyhodnocení. > > Čas testu musí být časově omezen. Po stanovené době se musí test automaticky > ukončit a odeslat na server ke zpracování . > > Toto chování jsem nejprve implementoval pomocí JavaScriptu: > >1. Po spuštění testu se na klientský PC uloží cookie obsahující čas > ukončení testu. >2. V pravidelném časovém intervalu se kontroluje aktuální čas s časem > uloženým v cookie. ( používá window.setInterval() ) >3. Formulář se odešle pokud je aktuální čas větší než čas v cookie. > > > Řešení se ukázalo jako nespolehlivé. Existuje nějaká možnost jak toto chování > řídit na straně serveru? > Aplikace je napsaná v Jave na Spring 2.5 > jak už tu psal Martin Kuba, bez JS se neobejdete. Jenom to cookie mě připadá jako komplikace. Pro tento případ si dokážu představit, že pokud si uživatel vypne javascript a tím pádem nestihne odeslat formulář včas, můžou se mu začít strhávat body za pozdní odeslání. -- Martin Beránek mailto:martin.bera...@i.cz http://www.i.cz
Re: Urceni MIME TYPE dokumentu nacteneho v poli bytu
zdravím záleží co se snažíte použít za nástroj, po minutě na googlu jsem našel třeba tohle http://jmimemagic.sourceforge.net podle API to umi pracovat i s polem, ale nevím jak dokonalý je to nástroj. Podívejte se na přehled http://www.rgagnon.com/javadetails/java-0487.html Dne Pá 20. listopadu 2009 10:51:22 Jaroslav Hurdes napsal(a): > Zdravim, vsechny. Nemate nekdo zkusenost, jak urcit mime type dokumentu, > ktery mam nacteny v poli bytu. Vsechny funkce pracuji se soubory. Nechci > ukladat obsah pole do docasneho souboru jenom pro to abych urcil mime > type. Nemate nekdo nejaky napad jak na to. Diky Jaroslav Hurdes > -- Martin Beránek ICZ a.s., Pobočka Brno mailto:martin.bera...@i.cz http://www.i.cz
Re: JSF2 f:validateRegex vlastni error message
Zdravim vypada to ze f:validateRegex neumoznuje definici vlastni message. podle me mate 2 moznosti: 1) udelat vlastni Validator a zaregistrovat ho (bud pres faces-config nebo anotace - ale jsf2 zatim nepouzivam tak nevim) a pak se na nej odkazat pres f:validator 2) pouzit primo validator atribut u h:inputText mezi temito dvema pristupy bych se rozhodnul na zaklade potreby znovupouzitelnosti Martin Dne 12.3.2010 10:49, Petr Prikryl napsal(a): Ahoj, potreboval bych definovat error message pokud se nematchne email pattern. Zkusil jsem toto: Bohuzel dostanu takto: Regex pattern of '@.+\.[a-z]+' not matched Pokud se snazim validovat napriklad cislo implicitne pomoci: tak je to ok message z bundle. musim tedy tu converter message definovat jinak? Chtel bych to resit deklarativne jako PSC. Diky PP -- Martin Beránek ICZ a.s., Pobočka Brno mailto:martin.bera...@i.cz http://www.i.cz
Re: Vyber web frameworku ( following Eclipse RAP )
Ahoj, poradit ti neumim, ale nazvat JSF prasenim javy do html je imho uplne mimo. Je to komponentovy framework a zadny mix ala skriplety se tu nekona. martin Dne 29.3.2010 12:55, Dusan Zatkovsky napsal(a): Ahoj. Ako clovek web aplikaciami takmer nedotknuty stojim pred problemom vyberu spravnej technologie. * kratka verzia: Hladam GWT-like framework co vie generovat ako javascript tak ciste html stranky. * dlhsia verzia: Momentalne som v stave, ze tusim cosi o jsp, jsf, gwt a ajax-e obecne. Mam za sebou participaciu na jednom malom jsf projekte. Hladam framework(y), nad ktorym by som bol co najmenej bolestne schopny: a. stavat jednoduche webove aplikacie ( napr. primitivny next-next wizard so zadavanim hodnot do policok ) b. ... ale mozno aj zlozitejsie veci ( typu gmail a spol ) V principe mi ide o to vyhnut sa sposobu vyvoja prasenim javy do html ( jsp, jsf ) a priblizit to vyvoju desktop aplikacii ( panely, layoyty, tlacitka, tabulky ), ale s moznostou generovat aj ciste html ( logicky len podmnozinu featur ). Nemusi to byt all in one riesenie, moze ist o viac frameworkov ( jeden na html, druhy na js ). Diky.
Re: nahrada za BASE64Encoder
pouzivam http://jakarta.apache.org/commons/codec/ -- Martin Beranek Petr Burdik napsal(a): Ahojte, pouzivam javu 1.6 a kdyz kompiluji novy projekt, hlasi mi kompilator: [INFO]/home/pet/work/svn/itsynapse20/trunk/src/main/java/net/itbridge/itsynapse2/security/adapters/acegisecurity/ShaITS2PasswordEncoder.java:[47,57] sun.misc.BASE64Encoder is Sun proprietary API and may be removed in a future release nevite prosim jakou tridou mohu ten BASE64Encoder nahradit? Pekny den Pet --Using Opera's revolutionary e-mail client: http://www.opera.com/mail/ smime.p7s Description: S/MIME Cryptographic Signature
jak začít s JCA
Zdravím, i po přečtení patřičných částí v JCA specification (http://java.sun.com/j2ee/connector/downloads/index.html) a také v publikaci "J2EE Connector Architecture and Enterprise Application Integration" nejsem schopen napsat nějaký jednoduchý JCA konektor (s vlastním API, ne CCI). Nemáte někdo (třeba ze svých začátků) napsaný jednoduchý SAMPLE konektor (nejlépe s inbound connection)? Nebo odkaz na výrobu něčeho podobného? (googlu jsem se samozřejmě ptal). díky Martin Beránek smime.p7s Description: S/MIME Cryptographic Signature
Re: jak začít s JCA
Zdravím, díky za nasměrování na tu publikaci. Dále jsem shledal užitečným tento článeček: http://www.theserverside.com/tt/articles/article.tss?l=J2EE1_4 Ale mám tu jeden problém: Potřeboval bych něco jako "outbound connection", ale jít na to přes Connection Management je podlě mě kanón na vrabce - pooling spojení je mi nanic. Stačí mi abych mohl v EJB zavolat getConnection(host, port) a to prostě vytvořilo nové spojení (po zavolaní close() by se zase zavřelo). Je nějaká rozumná možnost jak obejít pooling a přímo z EJB navazovat TCP/IP spojení? ps: Samozřejmě že pro příchozí spojení budu používat inbound-connection tak jak je v JCA 1.5 díky -- Martin Beránek Pavel Mikovec napsal(a): > Martin Beránek napsal(a): >> Zdravím, >> >> i po přečtení patřičných částí v JCA specification >> (http://java.sun.com/j2ee/connector/downloads/index.html) a také v >> publikaci "J2EE Connector Architecture and Enterprise Application >> Integration" nejsem schopen napsat nějaký jednoduchý JCA konektor (s >> vlastním API, ne CCI). >> >> Nemáte někdo (třeba ze svých začátků) napsaný jednoduchý SAMPLE >> konektor (nejlépe s inbound connection)? Nebo odkaz na výrobu něčeho >> podobného? (googlu jsem se samozřejmě ptal). >> >> díky >> >> Martin Beránek > > Zdravím, > > jednoduchý příklad na JCA lze najít v knize "Mastering Enterprise > JavaBeans Third Edition", 17. kapitola, která je volně ke stažení na > http://www.theserverside.com/tt/books/wiley/masteringEJB/index.tss > (popř. "Mastering Enterprise JavaBeans 3.0", 15. kapitola, na > http://www.theserverside.com/tt/books/wiley/masteringEJB3/index.tss). > > Pavel Mikovec smime.p7s Description: S/MIME Cryptographic Signature
Re: Free open source Java editor a konvertová ni do PDF
zkusil bych XMLmind XML Editor, umi ve wysiwyg editovat DocBook Jaroslav Horálek napsal(a): Dobrý den, zákazník chce aby mohl v jave (jdk 1.3) vytvořit a naformátovat text. Poté tento text, opět pomocí javy zkonvertovat do pdf. Nevíte jaký free java editor (komponentu) použít a pak následně do jakého formátu ho uložit. A nakonec čím to zkonvertovat do pdf... Díky a pěkný den přeje Jarek -- Martin Beránek smime.p7s Description: S/MIME Cryptographic Signature
Správa vláken
Zdravím, řeším následující problém: Je server který příjmá data ukládá je do adresáře jako soubory - pro každé příchozí spojení je vytvořeno samostatné "klientské" vlákno. Dále v systému běží jedno "čistící vlákno", které promázává přijatá data. Podmínkou je, že čistící vlákno nesmí vykonávat svou činnost, pokud běží nějaké klientské vlákno - a naopak - nesmí se spustit klientské vlákno, dokud čisticí vykonává sou činnost. Jaký druh zámků je na toto vhodný? díky -- Martin Beránek smime.p7s Description: S/MIME Cryptographic Signature
Re: Správa vláken
Zdravím, myslím že tohle je přesně ono. Měl bych si pořádně projít tyhle nové věci v Java5. Filip Jirsák napsal(a): read-write zámek. Read zámek může držet libovolné množství objektů současně, write zámek může držet jen jeden objekt, a navíc v takovém okamžiku nesmí nikdo držet read zámek. V Javě 5 je na to přímo interface java.util.concurrent.locks.ReadWriteLock a jeho implementace. -- Martin Beránek smime.p7s Description: S/MIME Cryptographic Signature