Tried this too..disabled and enabled... still no good result... ________________________________ From: osgi-dev-boun...@mail.osgi.org <osgi-dev-boun...@mail.osgi.org> on behalf of Timothy Ward <tim.w...@paremus.com> Sent: 26 October 2016 15:03:30 To: OSGi Developer Mail List Subject: Re: [osgi-dev] Understanding activate
** This mail has been sent from an external source ** Note that you can also bounce the component by disabling and then enabling it. scr:disable com.wipro.iot.Alljoyn scr:enable com.wipro.iot.Alljoyn This will deactivate and then re-activate the component. Regards, Tim On 26 Oct 2016, at 11:30, Daghan ACAY <daghana...@hotmail.com<mailto:daghana...@hotmail.com>> wrote: Another thing i do is put a break point at the line, e.g. activate method in your case, and run it in debug mode. It is more reliable than logs on console. Sent by MailWise<http://www.mail-wise.com/installation/2> – See your emails as clean, short chats. -------- Original Message -------- From: Daghan ACAY <daghana...@hotmail.com<mailto:daghana...@hotmail.com>> Sent: Wednesday, October 26, 2016 08:27 PM To: osgi-dev@mail.osgi.org<mailto:osgi-dev@mail.osgi.org> Subject: Re: [osgi-dev] Understanding activate I will just get a wild guess at it. DS component start time is not deterministic. That is your component can start first in all components, in the middle or the last. I see you are using debug run which starts a lot components and prints out to log. I say your "starting..." can be printed earlier in console. Please run again with debug and scroll up. I have a feeling you will find "starting..." Cheers Daghan Sent by MailWise<http://www.mail-wise.com/installation/2> – See your emails as clean, short chats. -------- Original Message -------- From: Timothy Ward <tim.w...@paremus.com<mailto:tim.w...@paremus.com>> Sent: Wednesday, October 26, 2016 08:22 PM To: OSGi Developer Mail List <osgi-dev@mail.osgi.org<mailto:osgi-dev@mail.osgi.org>> Subject: Re: [osgi-dev] Understanding activate Also, your component should definitely not have a waiting thread which discovers devices. The devices should register services which are injected into the component. The injection can be used to trigger an action at that time. This is known as the whiteboard pattern - bundles register a service so that they can be discovered and used by another component. Regards, Tim On 26 Oct 2016, at 11:20, Neil Bartlett <njbartl...@gmail.com<mailto:njbartl...@gmail.com>> wrote: You don’t invoke the activate/deactivate methods yourself. They are invoked by the SCR at the appropriate time, assuming they have been correctly declared. On 26 Oct 2016, at 09:20, <manoj.vrajam...@wipro.com<mailto:manoj.vrajam...@wipro.com>> <manoj.vrajam...@wipro.com<mailto:manoj.vrajam...@wipro.com>> wrote: Please find reply inline… From: osgi-dev-boun...@mail.osgi.org<mailto:osgi-dev-boun...@mail.osgi.org> [mailto:osgi-dev-boun...@mail.osgi.org] On Behalf Of Timothy Ward Sent: 26 October 2016 13:20 To: OSGi Developer Mail List <osgi-dev@mail.osgi.org<mailto:osgi-dev@mail.osgi.org>> Subject: Re: [osgi-dev] Understanding activate ** This mail has been sent from an external source ** An activate method is able to start its own threads, but it sounds like this may not be the right approach for you. Me: Oh..okay.. What do you mean when you say "which would sleep and wait for others to join before proceeding for next action”? This sounds a lot like you should be using the OSGi service registry and referencing services rather than sleeping. That way your activate method will not need to wait. Me: Actually my plan is to wait on sleep to discover devices. [ I get a callback when I other devices join the network. That part is written (not tested).] As for your current problem - is that code snippet really the component? The output indicates that you have a deactivate method defined as well. Me: I have written a dummy deactivate method as well. It does nothing. My intention is to somehow invoke this function in this bundle and see what happens going forward when my java code executes. To start with I have just written a dummy print statement “starting….” Regards, Tim On 26 Oct 2016, at 09:43, <manoj.vrajam...@wipro.com<mailto:manoj.vrajam...@wipro.com>> <manoj.vrajam...@wipro.com<mailto:manoj.vrajam...@wipro.com>> wrote: No…none of the others have activate() in them.. This is the first time I am writing an activate() method… Plaese note: I just want a method in this bundle to be invoked on running the framework. I thought activate() would be the right one. But I understand from your comments that activate should not have a thread sleeping (which I eventually planned). So, then activate() would not help me, right ? Could you propose as to what I should do alternatively to invoke a function (which would sleep and wait for others to join before proceeding for next action) on start up? From: osgi-dev-boun...@mail.osgi.org<mailto:osgi-dev-boun...@mail.osgi.org> [mailto:osgi-dev-boun...@mail.osgi.org] On Behalf Of Timothy Ward Sent: 26 October 2016 13:03 To: OSGi Developer Mail List <osgi-dev@mail.osgi.org<mailto:osgi-dev@mail.osgi.org>> Subject: Re: [osgi-dev] Understanding activate ** This mail has been sent from an external source ** I note that there are a number of other DS components present - are any of the others showing the same issue? I’m making a guess here, but do any of the other components have Activate methods which can block the activation Thread? Felix SCR owns a background worker thread which is used for a number of different tasks. In components like this one the thread will be used to invoke the activate method. If a component is blocks that thread then it may cause your whole SCR to get “stuck”. This is one of several reasons why activate methods should not block for long periods. Your problem may be totally unrelated to this, but it is worth checking. Regards, Tim On 26 Oct 2016, at 09:11, manoj.vrajam...@wipro.com<mailto:manoj.vrajam...@wipro.com> wrote: Please find my code snippet + the scr diagnostics ..below: ============ @Component(name = "com.wipro.iot.Alljoyn", immediate = true) public class AlljoynImpl { @Activate public void activate() { System.out.println("starting....."); } } ============ g! g! scr:list Name BundleId DefaultEnabled [com.wipro.iot.Alljoyn] [ 6] [true] [com.wipro.iot.DeviceManager] [ 1] [true] [com.wipro.iot.GatewayDevice] [ 2] [true] [com.wipro.iot.HueLight] [ 3] [true] [com.wipro.iot.LampDevice] [ 4] [true] [com.wipro.iot.MobilePhone] [ 5] [true] [com.wipro.iot.poc] [ 7] [true] [org.eclipse.equinox.event] [ 18] [true] [osgi.enroute.configurer.simple.provider.Configurer] [ 22] [true] [osgi.enroute.dto.bndlib.provider.DTOsProvider] [ 23] [true] [osgi.enroute.logger.simple.provider.LoggerAdminImpl] [ 26] [true] [osgi.enroute.logger.simple.provider.LoggerComponentImpl] [ 26] [true] [osgi.enroute.rest.simple] [ 27] [true] [osgi.enroute.simple.server] [ 29] [true] [osgi.executor.provider] [ 24] [true] g! g! g! g! scr:info com.wipro.iot.Alljoyn *** Bundle: com.wipro.iot.alljoyn.adapter (6) Component Description: Name: com.wipro.iot.Alljoyn Default State: enabled Activation: immediate Configuration Policy: optional Activate Method: activate Deactivate Method: deactivate Modified Method: - Configuration Pid: [com.wipro.iot.Alljoyn] Services: Service Scope: null Properties: Component Configuration: ComponentId: 5 State: satisfied Properties: component.id = 5 component.name = com.wipro.iot.Alljoyn g! g! g! ________________________________ From: osgi-dev-boun...@mail.osgi.org<mailto:osgi-dev-boun...@mail.osgi.org> <osgi-dev-boun...@mail.osgi.org<mailto:osgi-dev-boun...@mail.osgi.org>> on behalf of Tim Ward <tim.w...@paremus.com<mailto:tim.w...@paremus.com>> Sent: 26 October 2016 12:04:44 To: OSGi Developer Mail List Subject: Re: [osgi-dev] Understanding activate ** This mail has been sent from an external source ** Manoj, As Bernd suggested, it would be a good idea to run the Felix SCR diagnostic commands. scr:list will list the DS components in the runtime. If you don't see your component in the output then you need to check the bundle you're building to see if you've forgotten to include the DS component. scr:info <component name> will give detailed information about the component, including what state it is in. Regards, Tim Sent from my iPhone On 26 Oct 2016, at 07:31, <manoj.vrajam...@wipro.com<mailto:manoj.vrajam...@wipro.com>> <manoj.vrajam...@wipro.com<mailto:manoj.vrajam...@wipro.com>> wrote: Bernd…I am on Enroute Eclipse/Bndtools and clicking on “Debug OSGi” to run the application. From: osgi-dev-boun...@mail.osgi.org<mailto:osgi-dev-boun...@mail.osgi.org> [mailto:osgi-dev-boun...@mail.osgi.org] On Behalf Of Bernd Eckenfels Sent: 26 October 2016 10:55 To: OSGi Developer Mail List <osgi-dev@mail.osgi.org<mailto:osgi-dev@mail.osgi.org>> Subject: Re: [osgi-dev] Understanding activate ** This mail has been sent from an external source ** How do you build and install your bundle? Make sure the resulting JAR actually contains the SCR descriptor for the component and also ensure the DS service is actually available in the runtime. Other than that, the actual code can be correct (depending on your actual imports which was not shown). If this contains Felix Services and gogo Shell you can use scr:list command to verify. Gruss Bernd -- http://bernd.eckenfels.net<http://bernd.eckenfels.net/> On Wed, Oct 26, 2016 at 7:07 AM +0200, <manoj.vrajam...@wipro.com<mailto:manoj.vrajam...@wipro.com>> wrote: Hi All, @Component(immediate = true) public class SampleImpl { @Activate public void activate() { System.out.println("starting....."); } } How to invoke this ? activate() is not getting invoked when I run this simple application. Thanks, Manoj The information contained in this electronic message and any attachments to this message are intended for the exclusive use of the addressee(s) and may contain proprietary, confidential or privileged information. If you are not the intended recipient, you should not disseminate, distribute or copy this e-mail. Please notify the sender immediately and destroy all copies of this message and any attachments. WARNING: Computer viruses can be transmitted via email. The recipient should check this email and any attachments for the presence of viruses. The company accepts no liability for any damage caused by any virus transmitted by this email. www.wipro.com<http://www.wipro.com/> The information contained in this electronic message and any attachments to this message are intended for the exclusive use of the addressee(s) and may contain proprietary, confidential or privileged information. If you are not the intended recipient, you should not disseminate, distribute or copy this e-mail. Please notify the sender immediately and destroy all copies of this message and any attachments. WARNING: Computer viruses can be transmitted via email. The recipient should check this email and any attachments for the presence of viruses. The company accepts no liability for any damage caused by any virus transmitted by this email. www.wipro.com<http://www.wipro.com/> _______________________________________________ OSGi Developer Mail List osgi-dev@mail.osgi.org<mailto:osgi-dev@mail.osgi.org> https://mail.osgi.org/mailman/listinfo/osgi-dev The information contained in this electronic message and any attachments to this message are intended for the exclusive use of the addressee(s) and may contain proprietary, confidential or privileged information. If you are not the intended recipient, you should not disseminate, distribute or copy this e-mail. Please notify the sender immediately and destroy all copies of this message and any attachments. WARNING: Computer viruses can be transmitted via email. The recipient should check this email and any attachments for the presence of viruses. The company accepts no liability for any damage caused by any virus transmitted by this email. www.wipro.com<http://www.wipro.com/>_______________________________________________ OSGi Developer Mail List osgi-dev@mail.osgi.org<mailto:osgi-dev@mail.osgi.org> https://mail.osgi.org/mailman/listinfo/osgi-dev The information contained in this electronic message and any attachments to this message are intended for the exclusive use of the addressee(s) and may contain proprietary, confidential or privileged information. If you are not the intended recipient, you should not disseminate, distribute or copy this e-mail. Please notify the sender immediately and destroy all copies of this message and any attachments. WARNING: Computer viruses can be transmitted via email. The recipient should check this email and any attachments for the presence of viruses. The company accepts no liability for any damage caused by any virus transmitted by this email. www.wipro.com<http://www.wipro.com/>_______________________________________________ OSGi Developer Mail List osgi-dev@mail.osgi.org<mailto:osgi-dev@mail.osgi.org> https://mail.osgi.org/mailman/listinfo/osgi-dev The information contained in this electronic message and any attachments to this message are intended for the exclusive use of the addressee(s) and may contain proprietary, confidential or privileged information. If you are not the intended recipient, you should not disseminate, distribute or copy this e-mail. Please notify the sender immediately and destroy all copies of this message and any attachments. WARNING: Computer viruses can be transmitted via email. The recipient should check this email and any attachments for the presence of viruses. The company accepts no liability for any damage caused by any virus transmitted by this email. www.wipro.com<http://www.wipro.com/> _______________________________________________ OSGi Developer Mail List osgi-dev@mail.osgi.org<mailto:osgi-dev@mail.osgi.org> https://mail.osgi.org/mailman/listinfo/osgi-dev _______________________________________________ OSGi Developer Mail List osgi-dev@mail.osgi.org<mailto:osgi-dev@mail.osgi.org> https://mail.osgi.org/mailman/listinfo/osgi-dev _______________________________________________ OSGi Developer Mail List osgi-dev@mail.osgi.org<mailto:osgi-dev@mail.osgi.org> https://mail.osgi.org/mailman/listinfo/osgi-dev The information contained in this electronic message and any attachments to this message are intended for the exclusive use of the addressee(s) and may contain proprietary, confidential or privileged information. If you are not the intended recipient, you should not disseminate, distribute or copy this e-mail. Please notify the sender immediately and destroy all copies of this message and any attachments. WARNING: Computer viruses can be transmitted via email. The recipient should check this email and any attachments for the presence of viruses. The company accepts no liability for any damage caused by any virus transmitted by this email. www.wipro.com
_______________________________________________ OSGi Developer Mail List osgi-dev@mail.osgi.org https://mail.osgi.org/mailman/listinfo/osgi-dev