Byly zveřejněny informace o kritické zranitelnosti CVE-2026-64600 pojmenované RefluXFS (technické detaily) v XFS. Je tam již od verze Linuxu 4.11, tj. rok 2017. Jedná se o lokální eskalaci práv. Neprivilegovaný uživatel může editovat libovolný soubor, například klidně zrušit rootovské heslo v /etc/passwd. Videoukázka na Vimeo. V upstreamu je zranitelnost opravena.
OpenAI / ChatGPT má dnes výpadky (OpenAI Status, DownDetector).
Poskytovatel hostingu svobodných/open-source projektů Codeberg po hlasování na valné hromadě vydal stanovisko k využívání LLM. Kvůli vytěžování infrastruktury a rostoucím cenám hardwaru, ale také hrozbám pro spolupráci v komunitě se k LLM staví kriticky. Nebude poskytovat hosting projektů vytvářených LLM agenty.
Jack Dorsey představil (𝕏) open source týmovou komunikační platformu Buzz (GitHub) s cílem snížit závislost na Slacku a GitHubu.
Poštovní klient Thunderbird byl vydán v nové verzi 153 s kódovým názvem Meadow. Jedná se o ESR (Extended Support Release) vydání. Přehled novinek v poznámkách k vydání. Vylepšuje OAuth. Thundermail lze používat bez instalace doplňku.
AI tento rok naplno vtrhla do vývoje softwaru a výrazně ovlivňuje také open source projekty. Jiří Eischmann v příspěvku Jak mění AI open source na svém blogu rozebírá několik trendů, které v open source v poslední době v souvislosti s AI pozoruje, a jak tyto trendy svět otevřeného softwaru mění (Inflace projektů, Zahlcení kontroly, Klesající motivace zveřejňovat kód).
Evropská komise (EK) vyměřila americké internetové společnosti Google pokutu 890 milionů eur (21,5 miliardy Kč) za porušení unijního nařízení o digitálních trzích (DMA). Firma se podle unijní exekutivy provinila tím, že ve vyhledávači Google Search upřednostňovala vlastní služby a že podnikům ukládala omezení, která jim bránila nasměrovat spotřebitele k alternativním, často levnějším nákupním kanálům na platformě Google Play.
… více »Samsung na akci Galaxy Unpacked July 2026 (YouTube) představil své nové telefony Galaxy Z Fold8 Ultra, Fold8 a Flip8, hodinky Galaxy Watch Ultra2 a Watch9 a chytré brýle ve spolupráci s Gentle Monster a Warby Parker.
Po pěti letech vývoje vyšla česká počítačová hra Scarlet Deer Inn (ProtonDB). Scarlet Deer Inn je vyšívaná temná středověká pohádka. Zatímco život ve zdánlivě obyčejné vesnici se točí kolem běžných povinností a sousedských drbů, v podzemí se skrývají zlověstná tajemství.
Představen byl Raspberry Pi Touch Display 2 s uhlopříčkou 10 palců a rozlišením 1200 × 1920 pixelů. Cena je 80 dolarů.
V posledních pár článcích se objevilo slovo Java. Nevěřícně jsem zíral, jaký může vyvolat flame, jedno magické slůvko.
V určitých ohledech musím ríct, že se některým lidem nedivím, že Javu odmítají, ale z daných diskutujích nikdo nevzal v potaz fakt, že ona Java je silná na serveru. Zde kraluje z několika důvodů.
Abych jen nevytvářel další článek, který je o ničem, rozhodl jsem, že se pokusím sepsat důvody, proč vlastně Enterprise Java. Dále s jakými frameworky (samozřejme budou existovat alternativy) a jak jednoduchou aplikaci napsat. Samotné porovnání nechám na Vás.
Nepředpokládám, že se mi podaří někoho přesvědčit, že je Java skvělá. Spíše se pokusím vysvětlit, proč je "nejen" vhodná na serveru.
Architektura
Bude se jednat o klasickou aplikaci klient-server-databaze. Samotné rozdělení je vcelku jasné. Jako databázi volím MySQL. V tomto případě může být DBMS jakýkoli, jelikož enterprise aplikaci, kterou budu tvořit, bude nezávislá na volené DB. Samotný server bude glassfish v2, který se dále dělí na vlastní vrstvy (o tom až za chvíli). Klientem bude primárně web aplikace. Samozřejmostí bude, že klientem může být i desktop aplikace, která bude používat stejnou business logiku jako web aplikace.
Aplikační server
Asi nejzajímavější částí je tato. Popisu celé problematiky se věnují odborné knížky. Já zkusím provést pouhý rychlokurz, aby bylo přibližně jasné, oč se vlastně jedná.
AS bychom mohli rozdělit do tří skupin.
Toto základní rozdělení by mohlo stačit. Nyní již k výběru jednotlivých frameworků.
Na persistentní vrstvu použiji TopLink s JPA. TopLink nám zajišťuje komunikaci s DB (EntityManager) a JPA je vlastně definice, jak mají jednotlivé Entity vypadat. Pod entitou si mohu představit nějakou oanotovanou třídu, která obsahuje atributy, setry-getry. Pro představu by se dalo říci, že jedna instance entity odpovídá 1 řádku tabulky v DB (samořejmě to vždý nemusí platit).
Na samotnou business logiku volím EJB3. Pod EJB si lze představit jednoduchou POJO třídu, která obsahuje metody (business metody) a zpracovává požadavky, které jdou z klientské části. Lze sem dosadit i několik služeb, jako JTA, JMS, Timers, JAAS, atd. Na této úrovni bych měl řešit vše, co se řešit dá. Více tím odstíním klientskou část od nějaké vlastní implementace logiky mezi DB a Javou.
Webový kontejner sice obsahuje JSP-Servlety, ale pro efektivnější práci použiji nějaký web-framework. Pro Javu jich existuje snad desítky. Asi není příliš jednoduché si najít ten správný (pomoc s výběrem bývá snad nejčastější dotaz na javovských konferencích). Já osobně použiji JSF. Důvod proč je ten, že se jedná komponentový framework, který má slušné zázemí, samotný Sun.
Jako demo aplikaci zvolím jednoduchý systém na správu zaměstnanců, který bude obsahovat zabezpečení pomocí JAAS služby. Jelikož se jedná o dobře rozdělenou architekturu, tak lze říci, že je to pouhý start, na kterém se dá dále stavět.
To by bylo prozatím asi vše. Jak jsem psal na začátku, existují i další alternativy, zejména při výběru řešení, ale jedno zůstává pořád stejné a to fakt, že Java je na tento druh aplikací vážně jak dělaná.
Tiskni
Sdílej:
Díky. Jsem zvědavý na pokračování.
Vazne me mrzi, ze nikdo nereagoval. Opravdu me zajimaji pro/proti ohledne J2EE.
Na ten priklad jsem zvedavy.
Jednu vec bych ale ze sveta web Javy vyzdvihnul urcite a to je uz zminovane DWR. Pro zadnou jinou platformu jsem nenasel nic, co by tak efekt(iv)nim zpusobem povznaselo AJAX na vyssi uroven. Proti XML sice nic nemam, ale DWR je fakt parada. Pro PHP se o podobnou vec snazi SAJAX, ale o remotovani nejakych business trid nemuze byt rec...pokud vim, zvlada jen funkce a to jeste ne moc hezky.
Moje dojmy jsou dost smisene. Pro one man show mi to pripadne jako nevhodna platforma, je to strasne "ukecane" reseniAno, pro "one man show" se skutečně jedná o nevhodnou platformu. Maximálně ještě tak pokud se počítá s výměnou onoho muže.
Mě osobně se právě líbíla ta rozvrstvenost. U jazyků jako je PHP o tomto nemůže být ani řeč.No, zas tak bych to nazabijel. PHP je sice strasne jako jazyk, ale existuje par frameworku, ktere separaci vrstev implementuji docela slusne. Sice ne tak granularizovane jako J2EE, ale v pripade, ze vam pro business logiku staci jednovrstvy Model (coz v mnoha pripadech staci), tak se s tim da pracovat.
AJAX je zajímavá myšlenka, která je ale dost často přeceňována. Pokud ovšem chci jít tímto směrem, tak i v samotném JSF mám výborné prostředí toto uplatnit.Precenovana je casto, dusledek Web 2.0 boomu
Kazdy to chce pouzivat, ale ne kazdy vi kdy a jak
Kazdopadne DWR zkus, poskytuje java beans jako JS objekty, takze v JS volas metody s parametry napr. na servisnich tridach jak kdybys byl v jave.
S tou one man show příliš nesouhlasím. Osobně jsem na projekt také sám, ale nijak mě to nedegraduje k tomu, abych dané řešení nepoužil.No ja na to ted nejsem sam, jsme na to cela firma, je to velky projekt. Ja se pohybuju spis v hornich vrstvach. Spring MVC, Wicket, AJAX... se spodnimi vrstvami nemam zkusenost.
Kazdopadne DWR zkus, poskytuje java beans jako JS objekty, takze v JS volas metody s parametry napr. na servisnich tridach jak kdybys byl v jave.S Google Web Toolkitem mám totéž a ještě ke všemu v té Javě doopravdy jsem
Jinak rozdíl mezi DWR a GWT je značný, případy užití se prakticky nepřekrývají.
Jinak rozdíl mezi DWR a GWT je značný, případy užití se prakticky nepřekrývají.No vsak to jsou absolutne jine typy technologii
S GWT mam take zkusenost, testoval jsem ho pro vyvoj UI pro svuj publikacni system, ale nejak jsem se nemohl skamaradit s RequestCallbacky... mozna jsem ty principy jen spatne pochopil, ale jak byste treba natahl jsenim requestem XML, druhym XSLT a vysledek transformace umistil nekam do aplikace? (treba za pomoci http://ebessette.com/wiki/display/dev/XSLT+for+GWT)