iirc, you want the @ServiceController and not the @Controller and again iirc, you need to update to ipojo 1.6.x for that one.
regards, Karl On Fri, Oct 1, 2010 at 4:06 PM, Bengt Rodehav <[email protected]> wrote: > I'm using iPOJO 1.4.0. My installed iPOJO related artifacts (in Karaf 1.6.0) > are: > > org.apache.felix.ipojo-1.4.0.jar > > org.apache.felix.ipojo.handler.extender-1.4.0.jar > > org.apache.felix.ipojo.online.manipulator-1.4.2.jar > > org.apache.felix.ipojo.webconsole-1.4.0.jar > > > I also use > > org.apache.felix.fileinstall-3.0.2.jar > > > ... and a whole lot of other bundles. > > I publish services using factories. An example of a configuration file for > my factories is: > > connect.enabled=true > > connect.name=Sample file transfer from file to file > > > The "connect.enabled" property is bound to the field in my service class > that is a "controller": > > �...@controller > > �...@property(name = "connect.enabled", mandatory = false, value = "true") > > private boolean mValid; > > > The intention is that I can then disable my service by setting this > configuration property to false. However, I've encounted a problem regarding > this. While the service is active, I set "connect.enabled" to false. File > install picks up the changes and the service is de-registered - works > perfectly. But if I now shutdown Karaf and restart it again, the service is > started (registered) despite the fact that "connect.disabled" is still > false. Is this a bug in iPOJO or have I misunderstood something? > > When googling about this problem I noticed that there is also an annotation > called @ServiceController. What is the difference between @Controller and > @ServiceController? > > I tried to switch to @ServiceController instead but get the following error: > > 2010-10-01 15:48:03,341 | ERROR | guration Updater | configadmin >> | ? ? | >> [org.apache.felix.ipojo.Factory, org.osgi.service.cm.ManagedServiceFactory, >> id=174, bundle=84]: Updating configuration property >> {service.pid=connect.skandia.filetransfer.269d25ad-c4d6-4277-9d78-6d4b15acb795, >> fromuri=file:data/connect/test/sample/file2file, >> touris=file:data/connect/test/sample/file2file/test-out, >> service.factorypid=connect.skandia.filetransfer, >> felix.fileinstall.filename=connect.skandia.filetransfer-sample-file2file.cfg, >> connect.enabled=true, >> instance.name=connect.skandia.filetransfer.269d25ad-c4d6-4277-9d78-6d4b15acb795, >> connect.name=Sample file transfer from file to file} caused a problem: >> Missing handlers : org.apache.felix.ipojo.annotations:servicecontroller > > org.osgi.service.cm.ConfigurationException: >> {service.pid=connect.skandia.filetransfer.269d25ad-c4d6-4277-9d78-6d4b15acb795, >> fromuri=file:data/connect/test/sample/file2file, >> touris=file:data/connect/test/sample/file2file/test-out, >> service.factorypid=connect.skandia.filetransfer, >> felix.fileinstall.filename=connect.skandia.filetransfer-sample-file2file.cfg, >> connect.enabled=true, >> instance.name=connect.skandia.filetransfer.269d25ad-c4d6-4277-9d78-6d4b15acb795, >> connect.name=Sample file transfer from file to file} : Missing handlers : >> org.apache.felix.ipojo.annotations:servicecontroller > > at >> org.apache.felix.ipojo.IPojoFactory.updated(IPojoFactory.java:609)[38:org.apache.felix.ipojo:1.4.0] > > at >> org.apache.felix.cm.impl.ConfigurationManager$ManagedServiceFactoryUpdate.run(ConfigurationManager.java:1279)[6:org.apache.felix.configadmin:1.2.4] > > at >> org.apache.felix.cm.impl.UpdateThread.run(UpdateThread.java:88)[6:org.apache.felix.configadmin:1.2.4] > > > I'm not sure in which jar the > " org.apache.felix.ipojo.annotations:servicecontroller" resides. I tried to > deploy "org.apache.felix.ipojo.handler.whiteboard-1.4.0.jar" but it didn't > seem to help. > > Can anyone help me sort this out? > > /Bengt > -- Karl Pauls [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]

