RE: Balikovanie java aplikacii na linuxe
Bohužel u nás se používají sdílené accounty, takže může někdo z jiného teamu provést změnu o níž nejsem informován :-( Můžu o tom diskutovat, můžu s tím nesouhlasit, ale to je tak jediné co s tím můžu dělat. Tom -Původní zpráva- Od: konference-boun...@java.cz za uživatele Oto Buchta Odesláno: po 19.10.2009 2:01 Komu: Java Předmět: Re: Balikovanie java aplikacii na linuxe Pokud ma uzivatel pravo nekan prsknout jar, tak to je jen jeho problem, protoze ostatnim uzivatlum to nemuze nic nabourat, protoze nema pravo zapisu k adresarum jako /etc, /usr/lib nebo /usr/share/ Pak na to samozrejme spolehat lze, nebot si explicitne reknu o konkretni baliky v konkretni verzi... 2009/10/16 Tomas Hubalek tomas.huba...@onsemi.com: Ja si stejne nemuzu pomoct, ale asi bych se bal spolehat na systemem nastavenou classpath. Kdyby se vsichni chovali slusne, tak proc ne, ale uz se mi mnohokrat stalo, ze nekdo nekam prsknul nejaky jar, ktery tam nemel co delat a pak se dely veci. Tom -Původní zpráva- Od: konference-boun...@java.cz za uživatele Dusan Zatkovsky Odesláno: pá 16.10.2009 11:54 Komu: Java Předmět: Re: Balikovanie java aplikacii na linuxe On Thursday 15 of October 2009 18:12:24 Ján Valkovič wrote: Ahoj. Ten deb-maven-plugin vyzera zaujimavo a pravdepodobne je to presne to, co som hladal.. Diky Zdravim, myslim, ze nejakym sposobom sa to uz riesi. Napr. jajuk[2] sa uz distribuuje ako balik v debiane (a ubuntu[1]). A existuje ak nejake prepojenie maven-deb[3]. [1] http://packages.ubuntu.com/jaunty/jajuk [2] http://jajuk.info/index.php/Main_Page [3] http://mojo.codehaus.org/deb-maven-plugin/ -- Dusan
RE: Hledám JSP parser
Tak si odpovidam sam. Zkousim Jericho HTML Parser (http://sourceforge.net/projects/jerichohtml/) A na prvni pohled to splnuje moje pozadavky (tj. vypise i tagy, ktere jsou v attributu jineho tagu). Prikladam kus kodu, ktery z JSP souboru produkuje zhruba tento vystup: [1,1]-[1,90]: %@ page language=java contentType=text/html; charset=CP1250 pageEncoding=CP1250 % [2,1]-[2,80]: %@ taglib uri=http://jakarta.apache.org/struts/tags-html-tc; prefix=html % [3,1]-[3,77]: %@ taglib uri=http://jakarta.apache.org/struts/tags-bean; prefix=bean % [5,1]-[5,10]: cb:body [6,1]-[6,12]: cb:errors [8,1]-[8,22]: div class=content [10,1]-[10,5]: h2 [10,5]-[10,93]: cb:message key=hlaska007 text=Informace o produktu / [10,93]-[10,121]: cb:hlp key=HLPPROD123/ [10,121]-[10,126]: /h2 ... [28,1]-[28,7]: /div [30,1]-[30,13]: /cb:errors [31,1]-[31,11]: /cb:body Je to doopravdy pouze na ukazku: import net.htmlparser.jericho.CharacterReference; import net.htmlparser.jericho.Segment; import net.htmlparser.jericho.Source; import net.htmlparser.jericho.StartTag; import net.htmlparser.jericho.StartTagType; import net.htmlparser.jericho.Tag; private static void _trace(Source aParser, Segment aTag) { int beginOffset = aTag.getBegin(); int beginRow = aParser.getRow(beginOffset); int beginColumn = aParser.getColumn(beginOffset); int endOffset = aTag.getEnd(); int endRow = aParser.getRow(endOffset); int endColumn = aParser.getColumn(endOffset); String content = CharacterReference.decodeCollapseWhiteSpace(aTag.toString()); System.out.println(String.format([%d,%d]-[%d,%d]: %s , beginRow, beginColumn, endRow, endColumn, content)); } private void _doIt(File aFile) throws IOException { Reader r = new BufferedReader(new FileReader(aFile)); Source source=new Source(r); //Tags: % ... % ListStartTag jspSpecificTags = source.getAllStartTags(StartTagType.SERVER_COMMON); for (StartTag tag : jspSpecificTags) { _trace(source, tag); } //All Start/End tags but % ... % Tag[] allTags = source.fullSequentialParse(); for (Tag tag : allTags) { if (!StartTagType.SERVER_COMMON.equals(tag.getTagType())) { _trace(source, tag); } } } Tagy ctu dvema zpusoby: - Bud pouze startovaci (trida StartTag) u tagu % ... % - Anebo vsechny (trida Tag - startovaci i koncove) s tim, ze si % ... % odfiltruju. V tomto pripade je to neoptimalni, protoze parseruju 2x (source.getAllStartTags, source.fullSequentialParse). Klidne bych vystacil s source.fullSequentialParse(), ale chtel jsem ukazat i tu prvni moznost Doufam sem za par dni nebudu vykrikovat, jaky jsou s parserem potize. :-) -- Michal Polák -Původní zpráva- Od: konference-boun...@java.cz [mailto:konference-boun...@java.cz] za uživatele Polak Michal Odesláno: 19. června 2008 14:00 Komu: javacz (konference@java.cz) Předmět: Hledám JSP parser Zdravím, Potřeboval bych umět v JSP vyhledat obsah některých mých (daného .tld) tagů a jejich attributů. Tedy např. pro %@ taglib uri=http://mojeurl/moje.tld; prefix=trdlo % tagy trdlo:info, trdlo:error, trdlo:message. I počet bytů/znaků od začátku dokumentu, řádek a sloupec výskytu. JSP podle mne nic nepředepisuje, tagy mohou ležet prakticky libovolně (i třeba v attributech jiných tagů, že ano). Resp. v již existujících JSP je mám obsažené a JSP zobrazují co chtěno, tj. obsah JSP je správný. JSP jsou psána v xhtml (ale není to zaručeno, tedy hledaný parser by se měl umět vyrovnat i s HTML a XML). Zatím jsem si (už před lety) zbastlil takovou naivní implementaci pomocí regulárních výrazů. Ale to se nedokážu vyrovnat např. s komentáři, a stejně tak mám problém určit pozici, řádek a sloupec. Netvrdím, že by to nešlo, ale hledám jednodušší už hotové řešení. Abych si psal celý lexer a parser sám, tak to se mi opravdu nechce. Máte třeba někdo pozitivní zkušenosti s javax.swing.text.html.HTMLEditorKit? Před lety mi v HTML zatloukal některé attributy a od té doby se jej bojím použít. Anebo neumíte někdo použít JSP parser třeba z Tomcatu? Tuším se jmenuje Jasper (bohužel stejně jako tiskový framework). Webových kontejnerů je přece mraky, někdo snad zveřejní svůj parser. Budu vděčen za jakékoliv rady. Děkuji. -- Michal Polák
otimalizace nemennych hibernetich entit
Zdravím konferenci! Rovnou k věci, mám v DB několik desítek tisíc záznamů, které různě filtruji a zobrazuji na webu. Tyto záznamy jsou však neměnné, tak mě napadlo, zda by se nějak nedalo optimalizovat jejich čtení. První možnost co mě napadla je, všechny záznamy při startu aplikace načíst do paměti a číst je z paměti. Ale to naráží na dva problémy, první, že nevím zda by té paměti nesežraly moc a druhý zásadní problém, že při tom filtrování používám Hibernate Criteria API. Další možností by asi bylo použití nějakého Hibernetího cacheování, ale o tom zatím nic moc nevím. Taky jsem narazil na anotaci org.hibernate.annotations.Immutable, ale z javadocu jsem se docetl jenom to, ze entita s touto anotací nejde updatnout. Poradil by někdo, jak se toto řeší? Předem díky.
Re: otimalizace nemennych hibernetich entit
Imho tohle - pamet a disk - resi databaze. Proc jinak pouzivat databazi? Zjistete si jak veliky ma vase databaze extent - to je minimalni mnozstvi nactenych dat, takze je mozne ze mate uz v pameti jeste vice dat nez pozadujete. Z pohledu java aplikace jde spis o to, ze se nemusi resit transakcni izolaci (zapis a cteni) a bylo by dobre rici databazi - ja ty data menit nechci (READ ONLY). Ale jak se to v hibernate udela? danisevsky píše v Mon 19. 10. 2009 v 17:55 +0200: Zdravím konferenci! Rovnou k věci, mám v DB několik desítek tisíc záznamů, které různě filtruji a zobrazuji na webu. Tyto záznamy jsou však neměnné, tak mě napadlo, zda by se nějak nedalo optimalizovat jejich čtení.
Re: otimalizace nemennych hibernetich entit
Ahoj, no, záleží na zátěži. Pokud je to server s tisíci konkurentními přístupy, možná by stálo za to katalogizovat a periodicky generovat statická html a zobrazovat je jen apachem. Ale pokud se nejedná o OPRAVDU VELKOU zátěž, nezabýval bys se tím a nechal práci servlet containeru a hibernate. Jirka Dne 19. října 2009 20:37 Karel Tejnora ka...@tejnora.cz napsal(a): Imho tohle - pamet a disk - resi databaze. Proc jinak pouzivat databazi? Zjistete si jak veliky ma vase databaze extent - to je minimalni mnozstvi nactenych dat, takze je mozne ze mate uz v pameti jeste vice dat nez pozadujete. Z pohledu java aplikace jde spis o to, ze se nemusi resit transakcni izolaci (zapis a cteni) a bylo by dobre rici databazi - ja ty data menit nechci (READ ONLY). Ale jak se to v hibernate udela? danisevsky píše v Mon 19. 10. 2009 v 17:55 +0200: Zdravím konferenci! Rovnou k věci, mám v DB několik desítek tisíc záznamů, které různě filtruji a zobrazuji na webu. Tyto záznamy jsou však neměnné, tak mě napadlo, zda by se nějak nedalo optimalizovat jejich čtení.