To bylo zpĂąsobenĂ© chybou v JacORBu - properties z pøĂkazovĂ© øádky nemìly pøednost pøed properties ze souboru, aèkoliv dokumentace øĂká, Âľe pøednost majĂ.
Tuto chybu jsem opravil, ve va¹à distribuci je spravená. V CVS verzi JacORBu je tato chyba takté¾ ji¾ opravená, ale v releasu 2.2 bohu¾el nikoliv.
Tedy doporuèuji pouÂľĂvat verzi z distribuce, kterou jsem pro vás pøipravil (Win32, POSIX). Verze 2.2 dostupná ke staÂľenĂ na stránkách JacORBu ji bohuÂľel spravenou nemá.
ProblĂ©m s JacORBem:Pokud pouÂľĂváte v JacORBu PERSISTENT policy, je potøeba v kaÂľdĂ©m procesu (JVM) nastavit property jacorb.implname na jinou hodnotu. Defaultnì má ve vÂąech procesech hodnotu stejnou, a to "StandardImplName".
Pokud má stejnou hodnotu, mù¾e se stát, Âľe JacORB bude povaÂľovat nìjakou referenci za lokálnĂ a bude doruèovat nìkterá volánĂ lokálnì, pøestoÂľe IOR obsahuje jinĂ© èĂslo portu a IP adresu. To se projevĂ pouze exception:
org.omg.CORBA.OBJECT_NOT_EXIST: no adapter activator exists for roomsPOApokud POA se stejnĂ˝m jmĂ©nem v danĂ©m procesu neexistuje, a doruèenĂm na ÂąpatnĂ© POA (exception OBJECT_NOT_EXIST nebo doruèenĂ ÂąpatnĂ©mu objektu) pokud takovĂ˝ POA existuje.
Pokud pouÂľĂváte POA s PERSISTENT policy a objevujĂ se vám tyto problĂ©my, zmìòte hodnotu property jacorb.implname.
Dodatek k problému s JacORBem
- PopisovanĂ˝ problĂ©m nastává nezávisle na tom, zda pouÂľĂváte persistentnĂ reference.
- Je tedy vÂľdy potøeba mĂt v kaÂľdĂ©m procesu jinou hodnotu property jacorb.implname - viz. JacORB Programming Guide pp. 25:
Persistent servers should set this to a unique name.
(nedejte se zmást oznaèenĂm "Persistent servers", je to potøeba vÂąude)
- Tento problém je nyni Bug#473 v bugzille JacORBu.
NapøĂklad toho mù¾ete dosáhnout pouÂľĂvánĂm jacots mĂsto jaco (shell script a .bat file viz nĂÂľe).