Foros de discusión
Class loading Liferay 6
Jakub Liska, modificado hace 14 años.
Class loading Liferay 6
Regular Member Mensajes: 187 Fecha de incorporación: 25/03/10 Mensajes recientes
Zdravim ve spolek,
chtel bych se na vas obratit s par nejasnostmi, dlouho na ne hledam odpoved neuspesne. Z mnoha threadu na foru jsem pochopil ze EXT v pluginSDK by melo byt pouze na zmenu core services a nebude v budoucnu ani podpora pro service-builder. Vse ostatni by se melo resit mimo ext, a nejlepe bez pouziti Portal classloaderu v portletech. Ted jsem jich par delal za pouziti Portal classloaderu, protoze jsou situace kdy to snad ani jinak nejde.
Mohl byste tu nekdo vysvetlit jak je to s tema classloaderama ? Kdyz pro context moji aplikace pouziju loaderClass="com.liferay.support.tomcat.loader.PortalClassLoader" , tak se pri inicializaci contextu pouzije misto novyho webapp classloaderu ten PortalClassLoader kterej uz zahrnuje repositories z ROOT/Portal kontextu. Pokazdy ale kdyz neco deplojim, tak dostavam ClassNotFoundExceptions na tridy z util-java.jar (pri inicializaci beans ve spring contextu), ktery je stejne jako core services v ROOT kontextu, a jsem si jist, ze neni nikde jinde... On service-builder generuje services, ktery pouzivaji nejaky classes z util-java.jar, ale jakmile se jede pres PortalClassLoader, tak nepomuze dat util-java.jar do mistniho kontextu/repository aplikace, ani do Common class loaderu v tomcatu, a nebo vubec hodit veskery knihovny z ROOT kontextu do Common class loaderu nahoru :-)
Omlouvam se za tu smrst, kterou jsem tady zplodil, vyplnil jsem i issue, ktera je mozna vedle jak ta jedle, ale kdo vi :-) http://issues.liferay.com/browse/LPS-8921
chtel bych se na vas obratit s par nejasnostmi, dlouho na ne hledam odpoved neuspesne. Z mnoha threadu na foru jsem pochopil ze EXT v pluginSDK by melo byt pouze na zmenu core services a nebude v budoucnu ani podpora pro service-builder. Vse ostatni by se melo resit mimo ext, a nejlepe bez pouziti Portal classloaderu v portletech. Ted jsem jich par delal za pouziti Portal classloaderu, protoze jsou situace kdy to snad ani jinak nejde.
Mohl byste tu nekdo vysvetlit jak je to s tema classloaderama ? Kdyz pro context moji aplikace pouziju loaderClass="com.liferay.support.tomcat.loader.PortalClassLoader" , tak se pri inicializaci contextu pouzije misto novyho webapp classloaderu ten PortalClassLoader kterej uz zahrnuje repositories z ROOT/Portal kontextu. Pokazdy ale kdyz neco deplojim, tak dostavam ClassNotFoundExceptions na tridy z util-java.jar (pri inicializaci beans ve spring contextu), ktery je stejne jako core services v ROOT kontextu, a jsem si jist, ze neni nikde jinde... On service-builder generuje services, ktery pouzivaji nejaky classes z util-java.jar, ale jakmile se jede pres PortalClassLoader, tak nepomuze dat util-java.jar do mistniho kontextu/repository aplikace, ani do Common class loaderu v tomcatu, a nebo vubec hodit veskery knihovny z ROOT kontextu do Common class loaderu nahoru :-)
Omlouvam se za tu smrst, kterou jsem tady zplodil, vyplnil jsem i issue, ktera je mozna vedle jak ta jedle, ale kdo vi :-) http://issues.liferay.com/browse/LPS-8921
Rasto Rehak, modificado hace 14 años.
RE: Class loading Liferay 6
Junior Member Mensajes: 66 Fecha de incorporación: 8/03/07 Mensajes recientes
Ahoj
mohlo by to byt sposobene dakou inou kniznicou, asi Spring, ktoru mate aj vo vasom warku aj v ROOT.war. Ta si potom inym sposobom natahuje triedy z util-java.
Dalsia vec s ktorou sa da hrat je liferay-plugin-package.xml , je tam element portal-dependency-jars alebo take nieco.
Este sa moze stat, ze vobec nejde portal classloader ked chyba subor <tomcat>/lib/ext/support-tomcat.jar ale to vtedy hadze daku chybu do logov.
mohlo by to byt sposobene dakou inou kniznicou, asi Spring, ktoru mate aj vo vasom warku aj v ROOT.war. Ta si potom inym sposobom natahuje triedy z util-java.
Dalsia vec s ktorou sa da hrat je liferay-plugin-package.xml , je tam element portal-dependency-jars alebo take nieco.
Este sa moze stat, ze vobec nejde portal classloader ked chyba subor <tomcat>/lib/ext/support-tomcat.jar ale to vtedy hadze daku chybu do logov.
Jakub Liska, modificado hace 14 años.
RE: Class loading Liferay 6
Regular Member Mensajes: 187 Fecha de incorporación: 25/03/10 Mensajes recientes
Ahoj,
na duplicitu knihoven jsem si dal pozor, ty class loadery jsem proveril debuggerem a support-tomcat.jar se nacita. Misto liferay-plugin-package.xml pouzivam liferay-plugin-package.properties. Chova se tak i sample aplikace, ktera nepotrebuje zadne knihovny.
Uz to nechavam byt, snad casem vypluje na povrch co za tim stoji.
Diky, Jakub
na duplicitu knihoven jsem si dal pozor, ty class loadery jsem proveril debuggerem a support-tomcat.jar se nacita. Misto liferay-plugin-package.xml pouzivam liferay-plugin-package.properties. Chova se tak i sample aplikace, ktera nepotrebuje zadne knihovny.
Uz to nechavam byt, snad casem vypluje na povrch co za tim stoji.
Diky, Jakub