|
View:
New views
8 Messages
—
Rating Filter:
Alert me
|
|
|
[OSGI] test if JDBCPoolComponents are started for all my DShi,
have you an idea how I can test if the JDBCPoolComponent.start was executed for all my Datasources ? they must be started before I can start my EJB bundles I can test using ServiceTracker if the jdbcpool-component-factory was started, but its not enough - if I try to start my EJB bundle before the Datasources are available, EasyBeans uses standard DS "jdbc"_1 and - of course - gets an exception because this is not bopund to a JNDI name thx ekke |
|
|
Re: [OSGI] test if JDBCPoolComponents are started for all my DSI found a way:
I wait until ConnectionManager.getConnectionManager(DATASOURCE_NAMES[i]) for all my Data Sources != null or do you have another idea ? ekke ekke schrieb: > hi, > > have you an idea how I can test if the JDBCPoolComponent.start was > executed for all my Datasources ? > > they must be started before I can start my EJB bundles > > I can test using ServiceTracker if the jdbcpool-component-factory was > started, but its not enough - if I try to start my EJB bundle before the > Datasources are available, EasyBeans uses standard DS "jdbc"_1 and - of > course - gets an exception because this is not bopund to a JNDI name > > thx > > ekke > > |
|
|
Re: Re: [OSGI] test if JDBCPoolComponents are started for all my DSCurrently, I have no other good suggestion.
I think that our components maybe should register another interface than only EZBComponent (which can be seen as a management interface, with start/stop, ...): the business interface of the component should be exposed too, so that it simplify defining dependencies with OSGi... If you could open an improvement in JIRA, please :) --G ekke a écrit : > I found a way: > > I wait until > > ConnectionManager.getConnectionManager(DATASOURCE_NAMES[i]) > > for all my Data Sources != null > > or do you have another idea ? > > ekke > > ekke schrieb: >> hi, >> >> have you an idea how I can test if the JDBCPoolComponent.start was >> executed for all my Datasources ? >> >> they must be started before I can start my EJB bundles >> >> I can test using ServiceTracker if the jdbcpool-component-factory was >> started, but its not enough - if I try to start my EJB bundle before >> the Datasources are available, EasyBeans uses standard DS "jdbc"_1 >> and - of course - gets an exception because this is not bopund to a >> JNDI name >> >> thx >> >> ekke >> >> > > > [Guillaume_Sauthier.vcf] begin:vcard fn:Guillaume Sauthier n:Sauthier;Guillaume org:<a href="http://www.ow2.org"><img title="OW2" alt="OW2 Consortium" border="0" src="http://www.ow2.org/xwiki/bin/skin/XWiki/DefaultSkin/logoOW2.png" /></a> adr:;;;;;;France email;internet:guillaume.sauthier@... title:<a href="http://jonas.ow2.org">JOnAS Application Server</a> x-mozilla-html:TRUE url:http://jonas.ow2.org version:2.1 end:vcard |
|
|
Re: Re: Re: [OSGI] test if JDBCPoolComponents are started for all my DSWriting the mail for ManagedService SLSB, rang a bell for me:
Currently, we also register 1 service per interface, we don't collect the bean's business interfaces and register 1 service for all. As you're application is quite big, that maybe explain why you have so many services ... WDYT ? --G Guillaume Sauthier a écrit : > Currently, I have no other good suggestion. > I think that our components maybe should register another interface > than only EZBComponent (which can be seen as a management interface, > with start/stop, ...): the business interface of the component should > be exposed too, so that it simplify defining dependencies with OSGi... > > If you could open an improvement in JIRA, please :) > --G > > ekke a écrit : >> I found a way: >> >> I wait until >> >> ConnectionManager.getConnectionManager(DATASOURCE_NAMES[i]) >> >> for all my Data Sources != null >> >> or do you have another idea ? >> >> ekke >> >> ekke schrieb: >>> hi, >>> >>> have you an idea how I can test if the JDBCPoolComponent.start was >>> executed for all my Datasources ? >>> >>> they must be started before I can start my EJB bundles >>> >>> I can test using ServiceTracker if the jdbcpool-component-factory >>> was started, but its not enough - if I try to start my EJB bundle >>> before the Datasources are available, EasyBeans uses standard DS >>> "jdbc"_1 and - of course - gets an exception because this is not >>> bopund to a JNDI name >>> >>> thx >>> >>> ekke >>> >>> >> >> >> > [Guillaume_Sauthier.vcf] begin:vcard fn:Guillaume Sauthier n:Sauthier;Guillaume org:<a href="http://www.ow2.org"><img title="OW2" alt="OW2 Consortium" border="0" src="http://www.ow2.org/xwiki/bin/skin/XWiki/DefaultSkin/logoOW2.png" /></a> adr:;;;;;;France email;internet:guillaume.sauthier@... title:<a href="http://jonas.ow2.org">JOnAS Application Server</a> x-mozilla-html:TRUE url:http://jonas.ow2.org version:2.1 end:vcard |
|
|
Re: [OSGI] test if JDBCPoolComponents are started for all my DSGuillaume Sauthier schrieb:
> Writing the mail for ManagedService SLSB, rang a bell for me: > Currently, we also register 1 service per interface, we don't collect > the bean's business interfaces and register 1 service for all. yes, one interface for the @Remote and one for the @Local, but why so many 'identical' for the same @Remote or @Local ? that you register a service per each Interface of a SLSB that is OK - then I can choose the @Remote as ManagedService, add the Riena properties and use them as Remote Services from Riena Clients > As you're application is quite big, that maybe explain why you have so > many services ... > 80000 + interfaces for some hundred interfaces ? > WDYT ? > --G > > Guillaume Sauthier a écrit : >> Currently, I have no other good suggestion. >> I think that our components maybe should register another interface >> than only EZBComponent (which can be seen as a management interface, >> with start/stop, ...): the business interface of the component should >> be exposed too, so that it simplify defining dependencies with OSGi... >> >> If you could open an improvement in JIRA, please :) >> --G >> >> ekke a écrit : >>> I found a way: >>> >>> I wait until >>> >>> ConnectionManager.getConnectionManager(DATASOURCE_NAMES[i]) >>> >>> for all my Data Sources != null >>> >>> or do you have another idea ? >>> >>> ekke >>> >>> ekke schrieb: >>>> hi, >>>> >>>> have you an idea how I can test if the JDBCPoolComponent.start was >>>> executed for all my Datasources ? >>>> >>>> they must be started before I can start my EJB bundles >>>> >>>> I can test using ServiceTracker if the jdbcpool-component-factory >>>> was started, but its not enough - if I try to start my EJB bundle >>>> before the Datasources are available, EasyBeans uses standard DS >>>> "jdbc"_1 and - of course - gets an exception because this is not >>>> bopund to a JNDI name >>>> >>>> thx >>>> >>>> ekke >>>> >>>> >>> >>> >>> >> > |
|
|
Re: Re: [OSGI] test if JDBCPoolComponents are started for all my DSekke a écrit :
> Guillaume Sauthier schrieb: >> Writing the mail for ManagedService SLSB, rang a bell for me: >> Currently, we also register 1 service per interface, we don't collect >> the bean's business interfaces and register 1 service for all. > > yes, one interface for the @Remote and one for the @Local, > but why so many 'identical' for the same @Remote or @Local ? Good question :) > > that you register a service per each Interface of a SLSB that is OK - > then I can choose the @Remote as ManagedService, add the Riena properties > and use them as Remote Services from Riena Clients > >> As you're application is quite big, that maybe explain why you have >> so many services ... >> > > 80000 + interfaces for some hundred interfaces ? I'll continue this discussion on the right thread :) --G > >> WDYT ? >> --G >> >> Guillaume Sauthier a écrit : >>> Currently, I have no other good suggestion. >>> I think that our components maybe should register another interface >>> than only EZBComponent (which can be seen as a management interface, >>> with start/stop, ...): the business interface of the component >>> should be exposed too, so that it simplify defining dependencies >>> with OSGi... >>> >>> If you could open an improvement in JIRA, please :) >>> --G >>> >>> ekke a écrit : >>>> I found a way: >>>> >>>> I wait until >>>> >>>> ConnectionManager.getConnectionManager(DATASOURCE_NAMES[i]) >>>> >>>> for all my Data Sources != null >>>> >>>> or do you have another idea ? >>>> >>>> ekke >>>> >>>> ekke schrieb: >>>>> hi, >>>>> >>>>> have you an idea how I can test if the JDBCPoolComponent.start was >>>>> executed for all my Datasources ? >>>>> >>>>> they must be started before I can start my EJB bundles >>>>> >>>>> I can test using ServiceTracker if the jdbcpool-component-factory >>>>> was started, but its not enough - if I try to start my EJB bundle >>>>> before the Datasources are available, EasyBeans uses standard DS >>>>> "jdbc"_1 and - of course - gets an exception because this is not >>>>> bopund to a JNDI name >>>>> >>>>> thx >>>>> >>>>> ekke >>>>> >>>>> >>>> >>>> >>>> >>> >> > > > [Guillaume_Sauthier.vcf] begin:vcard fn:Guillaume Sauthier n:Sauthier;Guillaume org:<a href="http://www.ow2.org"><img title="OW2" alt="OW2 Consortium" border="0" src="http://www.ow2.org/xwiki/bin/skin/XWiki/DefaultSkin/logoOW2.png" /></a> adr:;;;;;;France email;internet:guillaume.sauthier@... title:<a href="http://jonas.ow2.org">JOnAS Application Server</a> x-mozilla-html:TRUE url:http://jonas.ow2.org version:2.1 end:vcard |
|
|
Re: [OSGI] test if JDBCPoolComponents are started for all my DSGuillaume Sauthier schrieb:
> I was just trying to better understand your context :) > and I'm still trying to understand what EasyBeans does ;-) hope I'll learn much before my application goes productive thx for all your help and soon answers ekke |
|
|
Re: [OSGI] test if JDBCPoolComponents are started for all my DSadditional info
small example with my "sample" unit: 11.08.08 10:11:13 (I) JContainer3.start : Container 'org.ekkehard.sample.dataManager' [7 SLSB, 0 SFSB, 0 MDB] started in 910 ms 7 SLSB - thats OK :-) 56 Services ? 2+4+6+8+10+12+14 = 56 :-) the service.id is so high, because there were other units initialized before ekke [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.mitarbeiter.UserLocalManagerI}={service.id=80178} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.mitarbeiter.UserRemoteManagerI}={service.id=80179} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.mitarbeiter.UserLocalManagerI}={service.id=80180} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.mitarbeiter.UserRemoteManagerI}={service.id=80181} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.mitarbeiter.FahrerLocalManagerI}={service.id=80182} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.mitarbeiter.FahrerRemoteManagerI}={service.id=80183} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.mitarbeiter.UserLocalManagerI}={service.id=80184} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.mitarbeiter.UserRemoteManagerI}={service.id=80185} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.mitarbeiter.FahrerLocalManagerI}={service.id=80186} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.mitarbeiter.FahrerRemoteManagerI}={service.id=80187} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.mitarbeiter.MitarbeiterLocalManagerI}={service.id=80188} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.mitarbeiter.MitarbeiterRemoteManagerI}={service.id=80189} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.mitarbeiter.UserLocalManagerI}={service.id=80190} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.mitarbeiter.UserRemoteManagerI}={service.id=80191} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.mitarbeiter.FahrerLocalManagerI}={service.id=80192} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.mitarbeiter.FahrerRemoteManagerI}={service.id=80193} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.mitarbeiter.MitarbeiterLocalManagerI}={service.id=80194} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.mitarbeiter.MitarbeiterRemoteManagerI}={service.id=80195} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.adresse.LandLocalManagerI}={service.id=80196} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.adresse.LandRemoteManagerI}={service.id=80197} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.mitarbeiter.UserLocalManagerI}={service.id=80198} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.mitarbeiter.UserRemoteManagerI}={service.id=80199} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.mitarbeiter.FahrerLocalManagerI}={service.id=80200} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.mitarbeiter.FahrerRemoteManagerI}={service.id=80201} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.mitarbeiter.MitarbeiterLocalManagerI}={service.id=80202} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.mitarbeiter.MitarbeiterRemoteManagerI}={service.id=80203} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.adresse.LandLocalManagerI}={service.id=80204} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.adresse.LandRemoteManagerI}={service.id=80205} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.container.ContainerLocalManagerI}={service.id=80206} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.container.ContainerRemoteManagerI}={service.id=80207} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.mitarbeiter.UserLocalManagerI}={service.id=80208} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.mitarbeiter.UserRemoteManagerI}={service.id=80209} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.mitarbeiter.FahrerLocalManagerI}={service.id=80210} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.mitarbeiter.FahrerRemoteManagerI}={service.id=80211} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.mitarbeiter.MitarbeiterLocalManagerI}={service.id=80212} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.mitarbeiter.MitarbeiterRemoteManagerI}={service.id=80213} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.adresse.LandLocalManagerI}={service.id=80214} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.adresse.LandRemoteManagerI}={service.id=80215} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.container.ContainerLocalManagerI}={service.id=80216} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.container.ContainerRemoteManagerI}={service.id=80217} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.adresse.AdresseLocalManagerI}={service.id=80218} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.adresse.AdresseRemoteManagerI}={service.id=80219} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.mitarbeiter.UserLocalManagerI}={service.id=80220} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.mitarbeiter.UserRemoteManagerI}={service.id=80221} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.mitarbeiter.FahrerLocalManagerI}={service.id=80222} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.mitarbeiter.FahrerRemoteManagerI}={service.id=80223} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.mitarbeiter.MitarbeiterLocalManagerI}={service.id=80224} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.mitarbeiter.MitarbeiterRemoteManagerI}={service.id=80225} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.adresse.LandLocalManagerI}={service.id=80226} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.adresse.LandRemoteManagerI}={service.id=80227} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.container.ContainerLocalManagerI}={service.id=80228} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.container.ContainerRemoteManagerI}={service.id=80229} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.adresse.AdresseLocalManagerI}={service.id=80230} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.adresse.AdresseRemoteManagerI}={service.id=80231} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.tabellen.basis.NummernkreisLocalManagerI}={service.id=80232} [ekkehard.server] service tracked: {org.ekkehard.sample.dataManager.tabellen.basis.NummernkreisRemoteManagerI}={service.id=80233} |
| Free Forum Powered by Nabble | Forum Help |