On 2/13/13 11:27 , Imóveis Nacionais wrote:
Ok...  So, if it does not works in my computer could it be the apache felix
that is broken?

Anything is possible, but this seems like a pretty basic feature.


Do I need to configure something on apache felix in order to get services
events wrking?

No.


Alex
Please, Can I try your test 'client' bundle in my platform to see what
happens?

I will send you it off list.

-> richard



On Wed, Feb 13, 2013 at 3:52 PM, Richard S. Hall <[email protected]>wrote:

Well, I took your bundle and deleted what I had to to get it to compile
(e.g., your upnp stuff) and it still sort of works for me except your
listener gets an NPE since it is trying to get the objectClass property
using the name "description":


g! lb
START LEVEL 1
    ID|State      |Level|Name
     0|Active     |    0|System Bundle (4.3.0.SNAPSHOT)
     1|Resolved   |    1|Apache Felix Bundle Repository (1.6.6)

     2|Active     |    1|Apache Felix Gogo Command (0.12.0)
     3|Active     |    1|Apache Felix Gogo Runtime (0.10.0)
     4|Active     |    1|Apache Felix Gogo Shell (0.10.0)
     8|Active     |    1|MyBundleClientListen OSGi Bundle (1.0.0.SNAPSHOT)
g! start 1
serviceChanged called
LISTAGEM DE PROPS:
[objectClass, service.id]
ERROR: Bundle com.mycompany.**MyBundleClientListen [8] EventDispatcher:
Error during dispatch. (java.lang.**NullPointerException)
java.lang.NullPointerException
     at com.mycompany.**mybundleclientlisten.**Activator.serviceChanged(**
Activator.java:55)


-> richard


On 2/13/13 09:42 , Imóveis Nacionais wrote:

I did not changed manifest.mf. I think netbeans and maven do that.

Here the manifest contents:


Manifest-Version: 1.0
Export-Package: com.mycompany.**mybundleclientlisten;uses:="**
com.mycompan
  y.mybundleserver.**serviceinterface,org.osgi.**framework"
Built-By: ncosta
Tool: Bnd-1.15.0
Bundle-Name: MyBundleClientListen OSGi Bundle
Created-By: Apache Maven Bundle Plugin
Bundle-Version: 1.0.0.SNAPSHOT
Build-Jdk: 1.7.0_11
Bnd-LastModified: 1360759133638
Bundle-ManifestVersion: 2
Bundle-Activator: com.mycompany.**mybundleclientlisten.Activator
Import-Package: com.mycompany.mybundleserver.**serviceinterface,org.osgi
  .framework;version="[1.5,2)"
Bundle-SymbolicName: com.mycompany.**MyBundleClientListen


Alex
(By the way, I also zipped the whole project)



On Wed, Feb 13, 2013 at 2:30 PM, Richard S. Hall <[email protected]<mailto:
[email protected]>> wrote:

     There is something going wrong in your setup. Are you sure your
     monitoring bundle is getting activated? Did you specify
     Bundle-Activator in your manifest?

     I created a bundle like yours and it worked fine for me:

     g! lb
     START LEVEL 1
        ID|State      |Level|Name
         0|Active     |    0|System Bundle (4.3.0.SNAPSHOT)
         1|Active     |    1|Apache Felix Bundle Repository (1.6.6)
         2|Active     |    1|Apache Felix Gogo Command (0.12.0)
         3|Active     |    1|Apache Felix Gogo Runtime (0.10.0)
         4|Active     |    1|Apache Felix Gogo Shell (0.10.0)
         7|Active     |    1|service.listener.text (0.0.0)
     g! stop 1
     **serviceChanged called
     **serviceChanged called
     g! start 1
     **serviceChanged called
     **serviceChanged called
     g!

     -> richard


     On 2/13/13 09:07 , Imóveis Nacionais wrote:

         yes, I can install the related 'client bundle' and call the
         service on the
         server bundle:



                  ServiceReference sr  =
         context.getServiceReference(**upnp.class.getName());
                  if(sr != null)
                  {
                    upnp x = (upnp)context.getService(sr);
                    if(x != null)
                    {
                          System.out.println("Vai chamar o serviço
         HelloToYou...");
                          int n=x.GetNumber();
                          System.out.println("Vai libertar serviço
         HelloToYou... "+n);
                          context.ungetService(sr);

         This code from related 'client' bundle works.

         I also checked the export packages of the used server bundle
         and both
         interface and bundle are marked for exportation

         Alex



         On Wed, Feb 13, 2013 at 1:49 PM, Richard S. Hall
         <[email protected] <mailto:[email protected]>>**wrote:


             Are you sure the server bundle is providing its service?

             -> richard


             On 2/13/13 08:36 , Imóveis Nacionais wrote:

                 Hi
                 I am trying to play with service events in a client
                 bundle in order to be
                 notified when other bundles are registered.

                 So, I created a simple maven osgi bundler just with an
                 activator class.

                 public class Activator implements BundleActivator,
                 ServiceListener
                 {

                       public void start(BundleContext context) throws
                 Exception
                       {
                               System.out.println("Client bundle
                 initializing on start
                 method...");

                               context.addServiceListener(****this);



                       public void stop(BundleContext context) throws
                 Exception
                       {
                           context.removeServiceListener(****this);
                       }

                       public void serviceChanged(ServiceEvent event)
                       {
                           System.out.println("****serviceChanged
called");

                       }

                 Then, in the gogo shell of felix I installed this
                 client bundle and
                 started
                 it. Then I installed other (server) bundle and started
                 it but the
                 serviceChanged handler is never called. Why?

                 Thanks a lot

                 Alex


             ------------------------------**
**----------------------------**--**---------
             To unsubscribe, e-mail:
             users-unsubscribe@felix.**apac**he.org <http://apache.org>
             
<http://apache.org><users-**[email protected]<[email protected]>
             
<mailto:users-unsubscribe@**felix.apache.org<[email protected]>

             For additional commands, e-mail:
             [email protected]
             <mailto:users-help@felix.**apache.org<[email protected]>




     ------------------------------**------------------------------**
---------
     To unsubscribe, e-mail: 
users-unsubscribe@felix.**apache.org<[email protected]>
     
<mailto:users-unsubscribe@**felix.apache.org<[email protected]>
     For additional commands, e-mail: [email protected]
     <mailto:users-help@felix.**apache.org <[email protected]>>





------------------------------**------------------------------**---------
To unsubscribe, e-mail: 
users-unsubscribe@felix.**apache.org<[email protected]>
For additional commands, e-mail: [email protected]




---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to