Classloader v tomcatu
ahoj, v jedne sve tride mam volani EPaymentService.class.getResource(.), ktere mi pri debugovani v eclipsech vraci spravnou cestu ke tride (file:/...). kdyz ale toto volani probehne v aplikaci spustene na tomcatu, vraci null. nevite nekdo cim by to mohlo byt zpusobene? dik tomas
Java webstart
Dobry den, snazim sa rozbehat tucneho klienta cez java webstart. Podla specifikacie je mozne v jnlp subore nastavit java-vm-args, ale tie su obmedzene a nie je mozne tam nastavit classpath, endorsed dirs ani ext.dirs (jedna sa o rozsirenie tazkeho clienta o nejake IBM ... veci). Zistil som ale ze java webstart aplikaciu mozem spustit z prikazoveho riadka pomocou javaws a tam mozem nastavit vm options cez prepinac -J. Takze som to skusil mam batch file ktory to tam setuje: %JAVA_HOME%\bin\javaws -J-Djava.class.path=%JAVA_CLASSPATH% -J-Djava.endorsed.dirs=%SN_ENDORSED_DIRS% -J-Djava.ext.dirs=%JAVA_EXTENSION_DIRS% url url je samozrejme cesta k jnlp suboru. Vsetko sa zda OK, az na to ze to nefunguje a nikde neviem najst dokumentaciu k javaws a k tomu co je povolena nastavit cez -J. Pravdepodobne je to rovnako obmedzene. Ak niekto mate skusenosti s niecim podobnym prosim o kazdu radu/napad pre distribuciu cez javaws. (runtime sa da predpripravit u klienta aby nebolo potrebne nastavovat taketo veci, ale to nechceme, chceme ho dynamicky konfigurovat) Tomas
Re: Classloader v tomcatu
Dne 24.2.2011 13:31, Tomas Bezdek napsal(a): ahoj, v jedne sve tride mam volani EPaymentService.class.getResource(.), ktere mi pri debugovani v eclipsech vraci spravnou cestu ke tride (file:/...). kdyz ale toto volani probehne v aplikaci spustene na tomcatu, vraci null. nevite nekdo cim by to mohlo byt zpusobene? Nejspíš tím, že . je aktuální adresář, a v Tomcatu ta třída není v souboru s příponou .class, ale zabalená bud v souboru .jar, nebo dokonce uvnitř nerozbaleného .war, záleží na lokální instalaci. Takže ta třída žádný adresář nemá. Makub -- ~~ Supercomputing Center Brno Martin Kuba Institute of Computer Scienceemail: ma...@ics.muni.cz Masaryk University http://www.ics.muni.cz/~makub/ Botanicka 68a, 60200 Brno, CZ mobil: +420-603-533775 -- smime.p7s Description: S/MIME Cryptographic Signature
Re: Classloader v tomcatu
v tom problem neni. trida je moje, z war se rozbaluje a lezi na ceste /home/user/.bin/apache-tomcat/webapps/app-web/WEB-INF/classes/cz/app/payment/gate/EPaymentService.class Martin Kuba wrote: Dne 24.2.2011 13:31, Tomas Bezdek napsal(a): ahoj, v jedne sve tride mam volani EPaymentService.class.getResource(.), ktere mi pri debugovani v eclipsech vraci spravnou cestu ke tride (file:/...). kdyz ale toto volani probehne v aplikaci spustene na tomcatu, vraci null. nevite nekdo cim by to mohlo byt zpusobene? Nejspíš tím, že . je aktuální adresář, a v Tomcatu ta třída není v souboru s příponou .class, ale zabalená bud v souboru .jar, nebo dokonce uvnitř nerozbaleného .war, záleží na lokální instalaci. Takže ta třída žádný adresář nemá. Makub
Re: Classloader v tomcatu
Ta bodka je nejaka podozriva, co tym chcete dosiahnut? Chcete ziskat aktualny adresar? RN On 24. 2. 2011 13:31, Tomas Bezdek wrote: ahoj, v jedne sve tride mam volani EPaymentService.class.getResource(.), ktere mi pri debugovani v eclipsech vraci spravnou cestu ke tride (file:/...). kdyz ale toto volani probehne v aplikaci spustene na tomcatu, vraci null. nevite nekdo cim by to mohlo byt zpusobene? dik tomas
Re: Classloader v tomcatu
presne tak, potrebuju ziskat aktualni adresar, protoze vedle .class mi lezi wsdl ktere potrebuju predhodit kontruktoru javax.xml.ws.Service. zkousel jsem s teckou i bez, nefunguje ani jedno reseni. prijde mi divne ze pri debugovani v eclipse se cesta nacte bez problemu Robert Novotny wrote: Ta bodka je nejaka podozriva, co tym chcete dosiahnut? Chcete ziskat aktualny adresar? RN On 24. 2. 2011 13:31, Tomas Bezdek wrote: ahoj, v jedne sve tride mam volani EPaymentService.class.getResource(.), ktere mi pri debugovani v eclipsech vraci spravnou cestu ke tride (file:/...). kdyz ale toto volani probehne v aplikaci spustene na tomcatu, vraci null. nevite nekdo cim by to mohlo byt zpusobene? dik tomas
Re: Classloader v tomcatu
Dne 24.2.2011 14:21, Tomas Bezdek napsal(a): presne tak, potrebuju ziskat aktualni adresar, protoze vedle .class mi lezi wsdl ktere potrebuju predhodit kontruktoru javax.xml.ws.Service. zkousel jsem s teckou i bez, nefunguje ani jedno reseni. prijde mi divne ze pri debugovani v eclipse se cesta nacte bez problemu V tom případě by bylo lepší použít EPaymentService.class.getResource(neco.wsdl) Makub -- ~~ Supercomputing Center Brno Martin Kuba Institute of Computer Scienceemail: ma...@ics.muni.cz Masaryk University http://www.ics.muni.cz/~makub/ Botanicka 68a, 60200 Brno, CZ mobil: +420-603-533775 -- smime.p7s Description: S/MIME Cryptographic Signature
Re: Classloader v tomcatu
priznam se, ze neco tak primitivne jednoducheho me nenapadlo. hloupe jsem vykopiroval kus kodu ze tridy vygenerovane pomoci jaxws-maven-plugin ktery nefungoval (prave kvuli getResource(.) ) a snazil se ho donutit wsdl nacist. EPaymentService.class.getResource(EPayment.wsdl) pomohlo, takze vam vsem moc dekuju za pomoc tomas Martin Kuba wrote: Dne 24.2.2011 14:21, Tomas Bezdek napsal(a): presne tak, potrebuju ziskat aktualni adresar, protoze vedle .class mi lezi wsdl ktere potrebuju predhodit kontruktoru javax.xml.ws.Service. zkousel jsem s teckou i bez, nefunguje ani jedno reseni. prijde mi divne ze pri debugovani v eclipse se cesta nacte bez problemu V tom případě by bylo lepší použít EPaymentService.class.getResource(neco.wsdl) Makub
Re: Java webstart
In article AANLkTim6kALMdrDJPB_UDUQg_3iTUpW32UAY-0NYA7d7 @mail.gmail.com, tstu...@gmail.com says... Dobry den, snazim sa rozbehat tucneho klienta cez java webstart. Podla specifikacie je mozne v jnlp subore nastavit java-vm-args, ale tie su obmedzene a nie je mozne tam nastavit classpath, endorsed dirs ani ext.dirs (jedna sa o rozsirenie tazkeho clienta o nejake IBM ... veci). Zistil som ale ze java webstart aplikaciu mozem spustit z prikazoveho riadka pomocou javaws a tam mozem nastavit vm options cez prepinac -J. Takze som to skusil mam batch file ktory to tam setuje: %JAVA_HOME%\bin\javaws -J-Djava.class.path=%JAVA_CLASSPATH% -J-Djava.endorsed.dirs=%SN_ENDORSED_DIRS% -J-Djava.ext.dirs=%JAVA_EXTENSION_DIRS% url url je samozrejme cesta k jnlp suboru. Vsetko sa zda OK, az na to ze to nefunguje a nikde neviem najst dokumentaciu k javaws a k tomu co je povolena nastavit cez -J. Pravdepodobne je to rovnako obmedzene. Ak niekto mate skusenosti s niecim podobnym prosim o kazdu radu/napad pre distribuciu cez javaws. (runtime sa da predpripravit u klienta aby nebolo potrebne nastavovat taketo veci, ale to nechceme, chceme ho dynamicky konfigurovat) Tomas Tipoval bych ze to je tim, ze javaws pusti jnlp jako separatni process ktery ma svuj classpath. Schvalne se podivejte na pid javaws a spusteneho procesu. Pokud nemusite, javaws nepouzivejte. Krom omezeni, ktere jste popsal vyse jsou i dalsi, napr. javaws nema classpath tak jak ho znate, ma jen seznam jaru ktere prohledava ve vami neovlivnitelnem poradi (jen v main se hleda driv). Honza
Re: Java webstart
Ano javaws je nekdy spise naobtiz, to zde na konferenci probehlo nekolikrat. Nahradni reseni jsou: 1. napsat si vlastni servlet + client, ktery stahne ze serveru novu verzi a spusti 2. jako 1. ale ten maly client se instaluje pres JWS. Tedy pres JWS nainstalovat jen maleho clienta, ktery stahne vse ostatni a spusti. 2011/2/24 jan_bar herkul...@yahoo.com: In article AANLkTim6kALMdrDJPB_UDUQg_3iTUpW32UAY-0NYA7d7 @mail.gmail.com, tstu...@gmail.com says... Dobry den, snazim sa rozbehat tucneho klienta cez java webstart. Podla specifikacie je mozne v jnlp subore nastavit java-vm-args, ale tie su obmedzene a nie je mozne tam nastavit classpath, endorsed dirs ani ext.dirs (jedna sa o rozsirenie tazkeho clienta o nejake IBM ... veci). Zistil som ale ze java webstart aplikaciu mozem spustit z prikazoveho riadka pomocou javaws a tam mozem nastavit vm options cez prepinac -J. Takze som to skusil mam batch file ktory to tam setuje: %JAVA_HOME%\bin\javaws -J-Djava.class.path=%JAVA_CLASSPATH% -J-Djava.endorsed.dirs=%SN_ENDORSED_DIRS% -J-Djava.ext.dirs=%JAVA_EXTENSION_DIRS% url url je samozrejme cesta k jnlp suboru. Vsetko sa zda OK, az na to ze to nefunguje a nikde neviem najst dokumentaciu k javaws a k tomu co je povolena nastavit cez -J. Pravdepodobne je to rovnako obmedzene. Ak niekto mate skusenosti s niecim podobnym prosim o kazdu radu/napad pre distribuciu cez javaws. (runtime sa da predpripravit u klienta aby nebolo potrebne nastavovat taketo veci, ale to nechceme, chceme ho dynamicky konfigurovat) Tomas Tipoval bych ze to je tim, ze javaws pusti jnlp jako separatni process ktery ma svuj classpath. Schvalne se podivejte na pid javaws a spusteneho procesu. Pokud nemusite, javaws nepouzivejte. Krom omezeni, ktere jste popsal vyse jsou i dalsi, napr. javaws nema classpath tak jak ho znate, ma jen seznam jaru ktere prohledava ve vami neovlivnitelnem poradi (jen v main se hleda driv). Honza -- Ondra Medek
Re: Java webstart
Mate pravdu, no rozhodnutie uz padlo, nebolo moje a zasiahne celu firmu. Ale inak napady mate dobre. Tak zatial. 2011/2/24 Ondra Medek xmed...@gmail.com Ano javaws je nekdy spise naobtiz, to zde na konferenci probehlo nekolikrat. Nahradni reseni jsou: 1. napsat si vlastni servlet + client, ktery stahne ze serveru novu verzi a spusti 2. jako 1. ale ten maly client se instaluje pres JWS. Tedy pres JWS nainstalovat jen maleho clienta, ktery stahne vse ostatni a spusti. 2011/2/24 jan_bar herkul...@yahoo.com: In article AANLkTim6kALMdrDJPB_UDUQg_3iTUpW32UAY-0NYA7d7 @mail.gmail.com, tstu...@gmail.com says... Dobry den, snazim sa rozbehat tucneho klienta cez java webstart. Podla specifikacie je mozne v jnlp subore nastavit java-vm-args, ale tie su obmedzene a nie je mozne tam nastavit classpath, endorsed dirs ani ext.dirs (jedna sa o rozsirenie tazkeho clienta o nejake IBM ... veci). Zistil som ale ze java webstart aplikaciu mozem spustit z prikazoveho riadka pomocou javaws a tam mozem nastavit vm options cez prepinac -J. Takze som to skusil mam batch file ktory to tam setuje: %JAVA_HOME%\bin\javaws -J-Djava.class.path=%JAVA_CLASSPATH% -J-Djava.endorsed.dirs=%SN_ENDORSED_DIRS% -J-Djava.ext.dirs=%JAVA_EXTENSION_DIRS% url url je samozrejme cesta k jnlp suboru. Vsetko sa zda OK, az na to ze to nefunguje a nikde neviem najst dokumentaciu k javaws a k tomu co je povolena nastavit cez -J. Pravdepodobne je to rovnako obmedzene. Ak niekto mate skusenosti s niecim podobnym prosim o kazdu radu/napad pre distribuciu cez javaws. (runtime sa da predpripravit u klienta aby nebolo potrebne nastavovat taketo veci, ale to nechceme, chceme ho dynamicky konfigurovat) Tomas Tipoval bych ze to je tim, ze javaws pusti jnlp jako separatni process ktery ma svuj classpath. Schvalne se podivejte na pid javaws a spusteneho procesu. Pokud nemusite, javaws nepouzivejte. Krom omezeni, ktere jste popsal vyse jsou i dalsi, napr. javaws nema classpath tak jak ho znate, ma jen seznam jaru ktere prohledava ve vami neovlivnitelnem poradi (jen v main se hleda driv). Honza -- Ondra Medek