Hirdetés
- Apple asztali gépek
- Sony MILC fényképezőgépcsalád
- Tápokról alaposan - mélyvíz
- DUNE médialejátszók topicja
- NVIDIA GeForce RTX 5070 / 5070 Ti (GB205 / 203)
- SSD kibeszélő
- Milyen HASZNÁLT notebookot vegyek?
- Milyen TV-t vegyek?
- Google Chromecast topic
- CES 2026: a hatékonyabb szellőztetésre gyúr a Phanteks többkamrás háza
Új hozzászólás Aktív témák
-
Szmeby
tag
Szoktatok több wart közös jvm-ben futtatni?
Én most egy embedded jettyvel küzdök. Adott néhány war, egy jettyben, de külön contextHandlerben. Látszik, hogy mindegyik war kap saját classloadert, még jó is lenne, ha ezek nem akadnának össze úton útfélen.
A probléma gyökere, hogy a resteasy egy uri feloldásakor a javax.ws.rs.core.UriBuilder-t használja (pontosabban annak egy resteasy-féle leszármazottját), az pedig a (szintén resteasy-féle) javax.ws.rs.ext.RuntimeDelegate kvázi-singletonhoz. Itt borul a bili, mivel a webapp1 már létrehozta ezt a singletont a saját classloaderével. Lazy init, hurrá!
public UriBuilder createUriBuilder() {
return new ResteasyUriBuilder();
}Érdekes, hogy amikor ráhívunk ennek a példánynak a createUriBuilder() metódusára, akkor az a webapp1 classloaderével betöltött objektumot gyártja le, függetlenül attól, hogy a metódus hívásakor a webapp2 környezetében járunk, a currentThread contextClassLoadere is a webapp2 classloaderére mutat.
Nem volt még alkalmam megismerkedni a classloaderek világával, valakinek van ebben tapasztalata? Hogyan is kellene - illene - több wart futtatni 1 embedded jetty alól?
Meg egyáltalán... nem a thread contextclassloaderét kellene használnia egy objektum legyártásakor? Vagy ilyenkor a legyártást végző osztály classloaderét örökli az új objektum? Ezekszerint az utóbbi.És persze a problémát az okozza, hogy a visszakapott UriBuilder objektumot ez a szerencsétlen castolná önmagára... vagyis majdnem, hiszen az cast során már képes a webapp2 által betöltött típust használni.

Eredmény: ClassCastException
Új hozzászólás Aktív témák
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- Keresünk Galaxy S21/S21+/S21 Ultra/S21 Fe
- Bomba ár! Lenovo ThinkPad T14 G1 - Ryzen5 I 16GB I 256-512SSD I 14" FHD I Cam I W11 I Garancia
- Apple iPhone 13 128GB, Kártyafüggetlen, 1 Év Garanciával
- Hp Prodesk 600 G4/ G5/ G6 SFF/ i5 8-9-10 gen / Elitedesk 800 G4 /Win11- Számla, garancia
- Dell 14 Latitude 5430 FHD IPS i5-1245U vPro 4.4Ghz 10mag 16GB 512GB Intel Iris XE Win11 LTE Garancia
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest



