Clement,
I added:
@Updated
>
> public void updated(Dictionary theDict) {
>
> System.out.println("updated: " + theDict);
>
> mValid = true;
>
> }
>
>
I do get the output to System.out but the instance is still invalid.
updated: {include=(?i).*(?<!\.TMP), redelivery.maxAttempts=10,
> delimiter=<DELIM>
, connect.enabled=false, deleteProcessedFiles=false, skipEmptyFiles=false,
> servi
ce.factoryPid=connect.skandia.filetransfer, delay=60000,
> fromUri=file:data/conne
ct/test/sample/file2file, connect.name=Sample file transfer from file to
> file, f
elix.fileinstall.filename=connect.skandia.filetransfer-sample-file2file.cfg,
> alw
aysDisconnect=true,
> service.pid=connect.skandia.filetransfer.694a9c3c-9319-46b0-
997f-70af37f40da2,
> redelivery.delaypattern=0:2000;5:10000;10:60000;20:600000;25:
1800000, temporaryFileName=${file:name.noext}.tmp,
> toUris=file:data/connect/test
/sample/file2file/test-out}
I don't seem to get the same problem with iPOJO 1.6.0. Maybe the problem has
been "fixed". Nevertheless, it's important for me to know that I don't
speculate in a particular implementation detail but that I take advantage of
supported behaviour (preferably supported by some junit test case in iPOJO).
Should I still create a JIRA ticket?
/Bengt
2010/10/4 Clement Escoffier <[email protected]>
> Hi,
>
> On 04.10.2010, at 18:00, Bengt Rodehav wrote:
>
> > Clement,
> >
> > Like I wrote before, I did manage to get iPOJO 1.6.0 to work for me.
> > However, once I got it to work I realised that the @ServiceController is
> not
> > really what I need. It's the @Controller. I haven't quite filled you in
> with
> > all the details. This is what I do:
> >
> > I use OSGi service factories to instantiate "integration services" in my
> > Karaf/Camel based integration platform. Most of the integration services
> are
> > implemented as Camel routes (but not all of them).
> >
> > When an instance becomes valid I start the camel route and when the
> instance
> > becomes invalid I stop it:
> >
> > @Validate
> >
> > public void start() {
> >
> > startContext();
> >
> > }
> >
> >
> >> @Invalidate
> >
> > public void stop() {
> >
> > stopContext();
> >
> > }
> >
> >
> > I use a configuration property (the connect.enabled) to control whether a
> > particular integration service should be up-and-running or not, using the
> > following code:
> >
> > @Controller
> >
> > @Property(name = "connect.enabled", mandatory = true)
> >
> > private boolean mValid = false;
> >
> >
> > Note that the way I do it above makes sure that a disabled service cannot
> > start (this was my original problem). However, now I get problems on
> startup
> > (Karaf startup). Although the property "connect.enabled" is true, the
> > instance is still invalid. Looking under the iPOJO tab in the Webconsole
> I
> > can see that iPOJO regards this property as false and thus regards the
> iPOJO
> > instance as invalid. Looking under the Configuration tab I can see that
> > Configuration Manager regards it as true.
> >
> > There must be some kind of timing problem here. iPOJO regards the
> instance
> > as invalid (connect.enabled=false the way I initialise it) and then
> doesn't
> > pick up the change from configuration manager. My original problem was
> the
> > opposite since I initialised it to true instead. Then iPOJO regarded the
> > instance as valid and failed to pick up information from configuration
> > manager that said it was disabled.
> >
> > How can I get this to work? (Note that I now use iPOJO 1.4.0 but I can
> > upgrade if that would help)
> >
> > What I want to achieve is, I believe, rather trivial and it's hard to
> > believe that no one else has thought of this use case:
> >
> > "Control the validity of an iPOJO instance using a configuration
> property".
>
> There is two points here:
> - I think there is a bug. In fact the @Controller and @Property are
> completely disconnected (handler are complete separated). But, both should
> check the current value of the field during initialization, listen onSet on
> the field and call onSet when they receive a new value. It sounds like one
> of those handlers does not respect these instructions. I bet on the
> Controller :-)
> - could you try to add a @Updated method or use a setter for the property.
> In these method really assign the controller field to the desired value
> (false|true) like m_controller = true|false. If it's works, it's definitely
> a bug, so please fill a bug.
>
>
> Regards,
>
> Clement
>
>
> >
> > Any clues?
> >
> > BTW I also publish a service to enable my GUI to show me, and interact
> with,
> > all running "integration services". It makes it easy to find all of "my
> > services".
> >
> > /Bengt
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> > 2010/10/4 Clement Escoffier <[email protected]>
> >
> >> Hi,
> >>
> >> On 03.10.2010, at 21:08, Bengt Rodehav wrote:
> >>
> >>> Clement,
> >>>
> >>> Now that used your tip (from the FAQ), it works fine with
> >> maven-ipojo-plugin
> >>> version 1.6.0. The real error was of course that I used the wrong
> version
> >> of
> >>> the manipulator. I dont't know why the latest version from trunk
> >>> (1.7.0-SNAPSHOT) seemed the hide that error but it's gone now that I
> use
> >> the
> >>> correct manipulator version.
> >>
> >> I've to check that... I will look into that.
> >>
> >> Regards,
> >>
> >> Clement
> >>
> >>>
> >>> /Bengt
> >>>
> >>> 2010/10/3 Bengt Rodehav <[email protected]>
> >>>
> >>>> Thanks Clement - that worked perfectly!
> >>>>
> >>>> I don't know how I've missed that FAQ but now I learned something new.
> >>>>
> >>>> Yes, I used the latest maven-ipojo-plugin from trunk.
> >>>>
> >>>> /Bengt
> >>>>
> >>>>
> >>>>
> >>>> 2010/10/3 clement escoffier <[email protected]>
> >>>>
> >>>> Hi,
> >>>>>
> >>>>> 2010/10/3 Bengt Rodehav <[email protected]>
> >>>>>
> >>>>>> Clement,
> >>>>>>
> >>>>>> I've upgrade to iPOJO 1.6.0 but I still have problems exposing
> >> services
> >>>>>> using the @ServiceController.
> >>>>>>
> >>>>>> I get:
> >>>>>>
> >>>>>> factory name="connect.skandia.filetransfer" state="invalid"
> >> bundle="86"
> >>>>>>
> >>>>>>
> >>>>>
> >>
> implementation-class="se.digia.connect.services.skandia.filetransfer.FileTransferService"
> >>>>>> missinghandlers
> >>>>>> list="[org.apache.felix.ipojo.annotations:servicecontroller]"
> >>>>>> requiredhandlers list="[org.apache.felix.ipojo:requires,
> >>>>>> org.apache.felix.ipojo:properties, org.apache.felix.ipojo:callback,
> >>>>>> org.apache.felix.ipojo:provides,
> >>>>>> org.apache.felix.ipojo.annotations:servicecontroller,
> >>>>>> org.apache.felix.ipojo:architecture]"
> >>>>>>
> >>>>>> in the Webconsole under iPOJO/factories. It seems iPOJO cannot find
> a
> >>>>>> handler for
> >>>>>>
> >>>>>> org.apache.felix.ipojo.annotations:servicecontroller
> >>>>>>
> >>>>>> What bundle am I missing?
> >>>>>>
> >>>>>
> >>>>> No, but you must use the manipulator 1.6.4 as explained in:
> >>>>>
> >>>>>
> >>
> http://felix.apache.org/site/ipojo-faq.html#iPOJOFAQ-Usingadifferentversionofthemanipulatorduringthemanipulation
> >>>>>
> >>>>>
> >>>>>>
> >>>>>> BTW I also move away from using the ipojo url handler (online
> >>>>> manipulator)
> >>>>>> and started using the maven-ipojo-plugin instead. It turns out I
> >> cannot
> >>>>> use
> >>>>>> the latest released version of the plugin (1.6.0) but I have to use
> >>>>>> 1.7.0-SNAPSHOT.
> >>>>>
> >>>>>
> >>>>> Here is the configuration you should use.
> >>>>>
> >>>>> <plugin>
> >>>>> <groupId>org.apache.felix</groupId>
> >>>>> <artifactId>maven-ipojo-plugin</artifactId>
> >>>>> <executions>
> >>>>> <execution>
> >>>>> <goals>
> >>>>> <goal>ipojo-bundle</goal>
> >>>>> </goals>
> >>>>> </execution>
> >>>>> </executions>
> >>>>> <dependencies>
> >>>>> <dependency>
> >>>>> <groupId>org.apache.felix</groupId>
> >>>>>
> >>>>> <artifactId>org.apache.felix.ipojo.manipulator</artifactId>
> >>>>> <version>1.6.4</version>
> >>>>> </dependency>
> >>>>> </dependencies>
> >>>>> </plugin>
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>> Otherwise I get the following exception:
> >>>>>>
> >>>>>> java.lang.NullPointerException
> >>>>>>
> >>>>>
> >>>>> I will look into that. Did you use the latest from trunk ?
> >>>>>
> >>>>> Regards,
> >>>>>
> >>>>> Clement
> >>>>>
> >>>>>
> >>>>>
> >>>>>>
> >>>>>> at
> >>>>>>>
> >>>>>>
> >>>>>
> >>
> org.apache.felix.ipojo.manipulation.annotations.MetadataCollector.visitEnd(MetadataCollector.java:215)
> >>>>>>
> >>>>>> at org.objectweb.asm.ClassReader.accept(Unknown Source)
> >>>>>>
> >>>>>> at org.objectweb.asm.ClassReader.accept(Unknown Source)
> >>>>>>
> >>>>>> at
> >>>>>>>
> >>>>>>
> >>>>>
> >>
> org.apache.felix.ipojo.manipulator.Pojoization.computeAnnotations(Pojoization.java:294)
> >>>>>>
> >>>>>> at
> >>>>>>>
> >>>>>>
> >>>>>
> >>
> org.apache.felix.ipojo.manipulator.Pojoization.manipulateComponents(Pojoization.java:484)
> >>>>>>
> >>>>>> at
> >>>>>>>
> >>>>>>
> >>>>>
> >>
> org.apache.felix.ipojo.manipulator.Pojoization.manipulateJarFile(Pojoization.java:335)
> >>>>>>
> >>>>>> at
> >>>>>>>
> >>>>>>
> >>>>>
> >>
> org.apache.felix.ipojo.manipulator.Pojoization.pojoization(Pojoization.java:194)
> >>>>>>
> >>>>>> at
> >>>>>>>
> >>>>>>
> >>>>>
> >>
> org.apache.felix.ipojo.plugin.ManipulatorMojo.execute(ManipulatorMojo.java:199)
> >>>>>>
> >>>>>> at
> >>>>>>>
> >>>>>>
> >>>>>
> >>
> org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:490)
> >>>>>>
> >>>>>> at
> >>>>>>>
> >>>>>>
> >>>>>
> >>
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:694)
> >>>>>>
> >>>>>> at
> >>>>>>>
> >>>>>>
> >>>>>
> >>
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLifecycle(DefaultLifecycleExecutor.java:556)
> >>>>>>
> >>>>>> at
> >>>>>>>
> >>>>>>
> >>>>>
> >>
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:535)
> >>>>>>
> >>>>>> at
> >>>>>>>
> >>>>>>
> >>>>>
> >>
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:387)
> >>>>>>
> >>>>>> at
> >>>>>>>
> >>>>>>
> >>>>>
> >>
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:348)
> >>>>>>
> >>>>>> at
> >>>>>>>
> >>>>>>
> >>>>>
> >>
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:180)
> >>>>>>
> >>>>>> at
> >> org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:328)
> >>>>>>
> >>>>>> at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:138)
> >>>>>>
> >>>>>> at org.apache.maven.cli.MavenCli.main(MavenCli.java:362)
> >>>>>>
> >>>>>> at
> >>>>>>>
> >>>>>
> org.apache.maven.cli.compat.CompatibleMain.main(CompatibleMain.java:60)
> >>>>>>
> >>>>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> >>>>>>
> >>>>>> at
> >>>>>>>
> >>>>>>
> >>>>>
> >>
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> >>>>>>
> >>>>>> at
> >>>>>>>
> >>>>>>
> >>>>>
> >>
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> >>>>>>
> >>>>>> at java.lang.reflect.Method.invoke(Method.java:597)
> >>>>>>
> >>>>>> at
> >>>>>>> org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
> >>>>>>
> >>>>>> at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
> >>>>>>
> >>>>>> at
> >>>>>>>
> org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
> >>>>>>
> >>>>>> at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
> >>>>>>
> >>>>>>
> >>>>>> /Bengt
> >>>>>>
> >>>>>>
> >>>>>> /Bengt
> >>>>>>
> >>>>>> 2010/10/1 Clement Escoffier <[email protected]>
> >>>>>>
> >>>>>>>
> >>>>>>> On 01.10.2010, at 18:30, Bengt Rodehav wrote:
> >>>>>>>
> >>>>>>>> Clement,
> >>>>>>>>
> >>>>>>>> Just a clarification:
> >>>>>>>>
> >>>>>>>> When you restart your instance, be sure that the filed is really
> >>>>>>> re-assigned
> >>>>>>>>> to false. To be sure, make your instance immediate and set the
> >>>>> field
> >>>>>> in
> >>>>>>> the
> >>>>>>>>> constructor.
> >>>>>>>>
> >>>>>>>>
> >>>>>>>> I suspect you misspelled "filed". I'm not sure what you mean here.
> >>>>> My
> >>>>>>>> "mValid" field will be set from a configuration that file install
> >>>>> picks
> >>>>>>> up.
> >>>>>>>> If the configuration value "connect.enabled" is set to true (which
> >>>>> is
> >>>>>> the
> >>>>>>>> normal case) then I want the service to be started. If it is set
> to
> >>>>>>> false,
> >>>>>>>> then I do not want to start nor publish a service yet.
> >>>>>>>>
> >>>>>>>> I want to make sure that I never have a mismatch, that is if
> >>>>>>>> the "connect.enabled" property is false, then the service can
> never
> >>>>> be
> >>>>>>>> started and vice versa. It is important that services that I have
> >>>>>>> "disabled"
> >>>>>>>> this way is never started (which has unfortunately happened...).
> >>>>>>>
> >>>>>>> I never tested having the @ServiceController on the same field as a
> >>>>>>> @Property. This may have some side effects, like not-yet injected
> >>>>> values.
> >>>>>>> Try to set your component as immediate. This will force the
> >> injection.
> >>>>> In
> >>>>>>> fact, if the property has the value false, but there is no object
> >>>>>> created,
> >>>>>>> the
> >>>>>>> @ServiceController has no way to know the current value. If the
> >>>>> instance
> >>>>>> is
> >>>>>>> immediate, an object is created and the field is assigned to the
> >>>>> property
> >>>>>>> value.
> >>>>>>> This will allow the service controller to get the value.
> >>>>>>>
> >>>>>>> Clement
> >>>>>>>
> >>>>>>>>
> >>>>>>>> /Bengt
> >>>>>>>>
> >>>>>>>>
> >>>>>>>> 2010/10/1 Clement Escoffier <[email protected]>
> >>>>>>>>
> >>>>>>>>>
> >>>>>>>>> On 01.10.2010, at 17:03, Bengt Rodehav wrote:
> >>>>>>>>>
> >>>>>>>>>> OK - obviously @ServiceController is what I need...
> >>>>>>>>>
> >>>>>>>>> As said by Richard, The @ServiceController impacts the service
> >>>>>> lifecycle
> >>>>>>>>> The @Controller impacts the instance lifecycle. The @Controller
> is
> >>>>>>> generally
> >>>>>>>>> used to detect wrong configuration or really bad state where the
> >>>>>>> instance
> >>>>>>>>> decide to become invalid.
> >>>>>>>>>
> >>>>>>>>> The @ServiceController is not tied to the instance lifecycle,
> which
> >>>>>>> means
> >>>>>>>>> that despite the instance is valid, the service can be
> unpublished
> >>>>>> using
> >>>>>>> the
> >>>>>>>>> @ServiceController.
> >>>>>>>>>
> >>>>>>>>> When you restart your instance, be sure that the filed is really
> >>>>>>>>> re-assigned to false. To be sure, make your instance immediate
> and
> >>>>> set
> >>>>>>> the
> >>>>>>>>> field in the constructor.
> >>>>>>>>>
> >>>>>>>>> Regards,
> >>>>>>>>>
> >>>>>>>>> Clement
> >>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>> /Bengt
> >>>>>>>>>>
> >>>>>>>>>> 2010/10/1 Richard S. Hall <[email protected]>
> >>>>>>>>>>
> >>>>>>>>>>> On 10/1/10 10:41, Bengt Rodehav wrote:
> >>>>>>>>>>>
> >>>>>>>>>>>> OK - thanks,
> >>>>>>>>>>>>
> >>>>>>>>>>>> BTW, what then is @Controller used for?
> >>>>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>> It is for disabling the component itself and is generally more
> to
> >>>>>>> signal
> >>>>>>>>>>> error conditions from which the component cannot recover, such
> as
> >>>>>>> faulty
> >>>>>>>>> or
> >>>>>>>>>>> missing configuration. On the other hand, @ServiceController
> >>>>> allows
> >>>>>>> you
> >>>>>>>>> to
> >>>>>>>>>>> control when your services are provided.
> >>>>>>>>>>>
> >>>>>>>>>>> -> richard
> >>>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>> /Bengt
> >>>>>>>>>>>>
> >>>>>>>>>>>> 2010/10/1 Karl Pauls<[email protected]>
> >>>>>>>>>>>>
> >>>>>>>>>>>> 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]
> >>>>>>>>>>>>>
> >>>>>>>>>>>>>
> >>>>>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>
> ---------------------------------------------------------------------
> >>>>>>>>>>> To unsubscribe, e-mail: [email protected]
> >>>>>>>>>>> For additional commands, e-mail: [email protected]
> >>>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>> ---------------------------------------------------------------------
> >>>>>>>>> To unsubscribe, e-mail: [email protected]
> >>>>>>>>> For additional commands, e-mail: [email protected]
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> ---------------------------------------------------------------------
> >>>>>>> To unsubscribe, e-mail: [email protected]
> >>>>>>> For additional commands, e-mail: [email protected]
> >>>>>>>
> >>>>>>>
> >>>>>>
> >>>>>
> >>>>
> >>>>
> >>
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: [email protected]
> >> For additional commands, e-mail: [email protected]
> >>
> >>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
>
>