Hi Christian,

I tried tasklist/pom.xml and got the following stacktrace while mvn install:

2015-03-10 19:04:16,193 | WARN  | FelixStartLevel  | AetherBasedResolver        
      | 44 - org.ops4j.pax.url.mvn - 1.6.0 | Error resolving 
artifactnet.lr.tasklist:tasklist-features:xml:1.0.0-SNAPSHOT:Could not find 
artifact net.lr.tasklist:tasklist-features:xml:1.0.0-SNAPSHOT in defaultlocal 
(file:/Users/christian/Downloads/cschneider-Karaf-Tutorial-96070cf/tasklist/tasklist-itests/target/exam/a6104df3-464c-4a77-9f6e-00edcb58ee3b/$%7Buser.home%7D/.m2/repository/)
org.sonatype.aether.resolution.ArtifactResolutionException: Could not find 
artifact net.lr.tasklist:tasklist-features:xml:1.0.0-SNAPSHOT in defaultlocal 
(file:/Users/christian/Downloads/cschneider-Karaf-Tutorial-96070cf/tasklist/tasklist-itests/target/exam/a6104df3-464c-4a77-9f6e-00edcb58ee3b/$%7Buser.home%7D/.m2/repository/)
        at 
org.sonatype.aether.impl.internal.DefaultArtifactResolver.resolve(DefaultArtifactResolver.java:538)
        at 
org.sonatype.aether.impl.internal.DefaultArtifactResolver.resolveArtifacts(DefaultArtifactResolver.java:216)
        at 
org.sonatype.aether.impl.internal.DefaultArtifactResolver.resolveArtifact(DefaultArtifactResolver.java:193)
        at 
org.sonatype.aether.impl.internal.DefaultRepositorySystem.resolveArtifact(DefaultRepositorySystem.java:286)
        at 
org.ops4j.pax.url.mvn.internal.AetherBasedResolver.resolve(AetherBasedResolver.java:250)
        at 
org.ops4j.pax.url.mvn.internal.AetherBasedResolver.resolveFile(AetherBasedResolver.java:239)
        at 
org.ops4j.pax.url.mvn.internal.AetherBasedResolver.resolve(AetherBasedResolver.java:223)
        at 
org.ops4j.pax.url.mvn.internal.Connection.getInputStream(Connection.java:122)
        at 
org.apache.karaf.features.internal.FeatureValidationUtil.load(FeatureValidationUtil.java:85)
        at 
org.apache.karaf.features.internal.FeatureValidationUtil.validate(FeatureValidationUtil.java:56)
        at 
org.apache.karaf.features.internal.FeaturesServiceImpl.validateRepository(FeaturesServiceImpl.java:151)
        at 
org.apache.karaf.features.internal.FeaturesServiceImpl.internalAddRepository(FeaturesServiceImpl.java:222)
        at 
org.apache.karaf.features.internal.FeaturesServiceImpl.initState(FeaturesServiceImpl.java:791)
        at 
org.apache.karaf.features.internal.FeaturesServiceImpl.start(FeaturesServiceImpl.java:803)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native 
Method)[:1.8.0_40]
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)[:1.8.0_40]
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)[:1.8.0_40]
        at java.lang.reflect.Method.invoke(Method.java:497)[:1.8.0_40]
        at 
org.apache.aries.blueprint.utils.ReflectionUtils.invoke(ReflectionUtils.java:297)[4:org.apache.aries.blueprint.core:1.3.0]
        at 
org.apache.aries.blueprint.container.BeanRecipe.invoke(BeanRecipe.java:958)[4:org.apache.aries.blueprint.core:1.3.0]
        at 
org.apache.aries.blueprint.container.BeanRecipe.runBeanProcInit(BeanRecipe.java:712)[4:org.apache.aries.blueprint.core:1.3.0]
        at 
org.apache.aries.blueprint.container.BeanRecipe.internalCreate2(BeanRecipe.java:824)[4:org.apache.aries.blueprint.core:1.3.0]
        at 
org.apache.aries.blueprint.container.BeanRecipe.internalCreate(BeanRecipe.java:787)[4:org.apache.aries.blueprint.core:1.3.0]
        at 
org.apache.aries.blueprint.di.AbstractRecipe$1.call(AbstractRecipe.java:79)[4:org.apache.aries.blueprint.core:1.3.0]
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)[:1.8.0_40]
        at 
org.apache.aries.blueprint.di.AbstractRecipe.create(AbstractRecipe.java:88)[4:org.apache.aries.blueprint.core:1.3.0]
        at 
org.apache.aries.blueprint.di.RefRecipe.internalCreate(RefRecipe.java:62)[4:org.apache.aries.blueprint.core:1.3.0]
        at 
org.apache.aries.blueprint.di.AbstractRecipe.create(AbstractRecipe.java:106)[4:org.apache.aries.blueprint.core:1.3.0]
        at 
org.apache.aries.blueprint.container.BeanRecipe.setProperty(BeanRecipe.java:933)[4:org.apache.aries.blueprint.core:1.3.0]
        at 
org.apache.aries.blueprint.container.BeanRecipe.setProperties(BeanRecipe.java:907)[4:org.apache.aries.blueprint.core:1.3.0]
        at 
org.apache.aries.blueprint.container.BeanRecipe.setProperties(BeanRecipe.java:888)[4:org.apache.aries.blueprint.core:1.3.0]
        at 
org.apache.aries.blueprint.container.BeanRecipe.internalCreate2(BeanRecipe.java:820)[4:org.apache.aries.blueprint.core:1.3.0]
        at 
org.apache.aries.blueprint.container.BeanRecipe.internalCreate(BeanRecipe.java:787)[4:org.apache.aries.blueprint.core:1.3.0]
        at 
org.apache.aries.blueprint.di.AbstractRecipe$1.call(AbstractRecipe.java:79)[4:org.apache.aries.blueprint.core:1.3.0]
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)[:1.8.0_40]
        at 
org.apache.aries.blueprint.di.AbstractRecipe.create(AbstractRecipe.java:88)[4:org.apache.aries.blueprint.core:1.3.0]
        at 
org.apache.aries.blueprint.di.RefRecipe.internalCreate(RefRecipe.java:62)[4:org.apache.aries.blueprint.core:1.3.0]
        at 
org.apache.aries.blueprint.di.AbstractRecipe.create(AbstractRecipe.java:106)[4:org.apache.aries.blueprint.core:1.3.0]
        at 
org.apache.aries.blueprint.container.ServiceRecipe.createService(ServiceRecipe.java:283)[4:org.apache.aries.blueprint.core:1.3.0]
        at 
org.apache.aries.blueprint.container.ServiceRecipe.internalGetService(ServiceRecipe.java:250)[4:org.apache.aries.blueprint.core:1.3.0]
        at 
org.apache.aries.blueprint.container.ServiceRecipe.internalGetService(ServiceRecipe.java:237)[4:org.apache.aries.blueprint.core:1.3.0]
        at 
org.apache.aries.blueprint.container.ServiceRecipe.getClasses(ServiceRecipe.java:370)[4:org.apache.aries.blueprint.core:1.3.0]
        at 
org.apache.aries.blueprint.container.ServiceRecipe.register(ServiceRecipe.java:184)[4:org.apache.aries.blueprint.core:1.3.0]
        at 
org.apache.aries.blueprint.container.BlueprintContainerImpl.registerServices(BlueprintContainerImpl.java:703)[4:org.apache.aries.blueprint.core:1.3.0]
        at 
org.apache.aries.blueprint.container.BlueprintContainerImpl.doRun(BlueprintContainerImpl.java:377)[4:org.apache.aries.blueprint.core:1.3.0]
        at 
org.apache.aries.blueprint.container.BlueprintContainerImpl.run(BlueprintContainerImpl.java:269)[4:org.apache.aries.blueprint.core:1.3.0]
        at 
org.apache.aries.blueprint.container.BlueprintExtender.createContainer(BlueprintExtender.java:276)[4:org.apache.aries.blueprint.core:1.3.0]
        at 
org.apache.aries.blueprint.container.BlueprintExtender.createContainer(BlueprintExtender.java:245)[4:org.apache.aries.blueprint.core:1.3.0]
        at 
org.apache.aries.blueprint.container.BlueprintExtender.modifiedBundle(BlueprintExtender.java:235)[4:org.apache.aries.blueprint.core:1.3.0]
        at 
org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.customizerModified(BundleHookBundleTracker.java:500)[2:org.apache.aries.util:1.1.0]
        at 
org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.customizerModified(BundleHookBundleTracker.java:433)[2:org.apache.aries.util:1.1.0]
        at 
org.apache.aries.util.tracker.hook.BundleHookBundleTracker$AbstractTracked.track(BundleHookBundleTracker.java:725)[2:org.apache.aries.util:1.1.0]
        at 
org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.bundleChanged(BundleHookBundleTracker.java:463)[2:org.apache.aries.util:1.1.0]
        at 
org.apache.aries.util.tracker.hook.BundleHookBundleTracker$BundleEventHook.event(BundleHookBundleTracker.java:422)[2:org.apache.aries.util:1.1.0]
        at 
org.apache.felix.framework.util.SecureAction.invokeBundleEventHook(SecureAction.java:1103)[org.apache.felix.framework-4.2.1.jar:]
        at 
org.apache.felix.framework.util.EventDispatcher.createWhitelistFromHooks(EventDispatcher.java:695)[org.apache.felix.framework-4.2.1.jar:]
        at 
org.apache.felix.framework.util.EventDispatcher.fireBundleEvent(EventDispatcher.java:483)[org.apache.felix.framework-4.2.1.jar:]
        at 
org.apache.felix.framework.Felix.fireBundleEvent(Felix.java:4403)[org.apache.felix.framework-4.2.1.jar:]
        at 
org.apache.felix.framework.Felix.startBundle(Felix.java:2092)[org.apache.felix.framework-4.2.1.jar:]
        at 
org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1291)[org.apache.felix.framework-4.2.1.jar:]
        at 
org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:304)[org.apache.felix.framework-4.2.1.jar:]
        at java.lang.Thread.run(Thread.java:745)[:1.8.0_40]
Caused by: org.sonatype.aether.transfer.ArtifactNotFoundException: Could not 
find artifact net.lr.tasklist:tasklist-features:xml:1.0.0-SNAPSHOT in 
defaultlocal 
(file:/Users/christian/Downloads/cschneider-Karaf-Tutorial-96070cf/tasklist/tasklist-itests/target/exam/a6104df3-464c-4a77-9f6e-00edcb58ee3b/$%7Buser.home%7D/.m2/repository/)
        at 
org.sonatype.aether.connector.wagon.WagonRepositoryConnector$4.wrap(WagonRepositoryConnector.java:947)[44:org.ops4j.pax.url.mvn:1.6.0]
        at 
org.sonatype.aether.connector.wagon.WagonRepositoryConnector$4.wrap(WagonRepositoryConnector.java:941)[44:org.ops4j.pax.url.mvn:1.6.0]
        at 
org.sonatype.aether.connector.wagon.WagonRepositoryConnector$GetTask.run(WagonRepositoryConnector.java:669)[44:org.ops4j.pax.url.mvn:1.6.0]
        at 
org.sonatype.aether.util.concurrency.RunnableErrorForwarder$1.run(RunnableErrorForwarder.java:60)[44:org.ops4j.pax.url.mvn:1.6.0]
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)[:1.8.0_40]
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)[:1.8.0_40]
        ... 1 more
2015-03-10 19:04:16,207 | WARN  | FelixStartLevel  | FeaturesServiceImpl        
      | 1 - org.apache.karaf.features.core - 3.0.0 | Unable to add features 
repository mvn:net.lr.tasklist/tasklist-features/1.0.0-SNAPSHOT/xml at startup
java.io.IOException: Error resolving artifact 
net.lr.tasklist:tasklist-features:xml:1.0.0-SNAPSHOT: Could not find artifact 
net.lr.tasklist:tasklist-features:xml:1.0.0-SNAPSHOT in defaultlocal 
(file:/Users/christian/Downloads/cschneider-Karaf-Tutorial-96070cf/tasklist/tasklist-itests/target/exam/a6104df3-464c-4a77-9f6e-00edcb58ee3b/$%7Buser.home%7D/.m2/repository/)
        at 
org.ops4j.pax.url.mvn.internal.AetherBasedResolver.resolve(AetherBasedResolver.java:258)
        at 
org.ops4j.pax.url.mvn.internal.AetherBasedResolver.resolveFile(AetherBasedResolver.java:239)
        at 
org.ops4j.pax.url.mvn.internal.AetherBasedResolver.resolve(AetherBasedResolver.java:223)
        at 
org.ops4j.pax.url.mvn.internal.Connection.getInputStream(Connection.java:122)
        at 
org.apache.karaf.features.internal.FeatureValidationUtil.load(FeatureValidationUtil.java:85)
        at 
org.apache.karaf.features.internal.FeatureValidationUtil.validate(FeatureValidationUtil.java:56)
        at 
org.apache.karaf.features.internal.FeaturesServiceImpl.validateRepository(FeaturesServiceImpl.java:151)
        at 
org.apache.karaf.features.internal.FeaturesServiceImpl.internalAddRepository(FeaturesServiceImpl.java:222)
        at 
org.apache.karaf.features.internal.FeaturesServiceImpl.initState(FeaturesServiceImpl.java:791)
        at 
org.apache.karaf.features.internal.FeaturesServiceImpl.start(FeaturesServiceImpl.java:803)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native 
Method)[:1.8.0_40]
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)[:1.8.0_40]
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)[:1.8.0_40]
        at java.lang.reflect.Method.invoke(Method.java:497)[:1.8.0_40]
        at 
org.apache.aries.blueprint.utils.ReflectionUtils.invoke(ReflectionUtils.java:297)[4:org.apache.aries.blueprint.core:1.3.0]
        at 
org.apache.aries.blueprint.container.BeanRecipe.invoke(BeanRecipe.java:958)[4:org.apache.aries.blueprint.core:1.3.0]
        at 
org.apache.aries.blueprint.container.BeanRecipe.runBeanProcInit(BeanRecipe.java:712)[4:org.apache.aries.blueprint.core:1.3.0]
        at 
org.apache.aries.blueprint.container.BeanRecipe.internalCreate2(BeanRecipe.java:824)[4:org.apache.aries.blueprint.core:1.3.0]
        at 
org.apache.aries.blueprint.container.BeanRecipe.internalCreate(BeanRecipe.java:787)[4:org.apache.aries.blueprint.core:1.3.0]
        at 
org.apache.aries.blueprint.di.AbstractRecipe$1.call(AbstractRecipe.java:79)[4:org.apache.aries.blueprint.core:1.3.0]
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)[:1.8.0_40]
        at 
org.apache.aries.blueprint.di.AbstractRecipe.create(AbstractRecipe.java:88)[4:org.apache.aries.blueprint.core:1.3.0]
        at 
org.apache.aries.blueprint.di.RefRecipe.internalCreate(RefRecipe.java:62)[4:org.apache.aries.blueprint.core:1.3.0]
        at 
org.apache.aries.blueprint.di.AbstractRecipe.create(AbstractRecipe.java:106)[4:org.apache.aries.blueprint.core:1.3.0]
        at 
org.apache.aries.blueprint.container.BeanRecipe.setProperty(BeanRecipe.java:933)[4:org.apache.aries.blueprint.core:1.3.0]
        at 
org.apache.aries.blueprint.container.BeanRecipe.setProperties(BeanRecipe.java:907)[4:org.apache.aries.blueprint.core:1.3.0]
        at 
org.apache.aries.blueprint.container.BeanRecipe.setProperties(BeanRecipe.java:888)[4:org.apache.aries.blueprint.core:1.3.0]
        at 
org.apache.aries.blueprint.container.BeanRecipe.internalCreate2(BeanRecipe.java:820)[4:org.apache.aries.blueprint.core:1.3.0]
        at 
org.apache.aries.blueprint.container.BeanRecipe.internalCreate(BeanRecipe.java:787)[4:org.apache.aries.blueprint.core:1.3.0]
        at 
org.apache.aries.blueprint.di.AbstractRecipe$1.call(AbstractRecipe.java:79)[4:org.apache.aries.blueprint.core:1.3.0]
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)[:1.8.0_40]
        at 
org.apache.aries.blueprint.di.AbstractRecipe.create(AbstractRecipe.java:88)[4:org.apache.aries.blueprint.core:1.3.0]
        at 
org.apache.aries.blueprint.di.RefRecipe.internalCreate(RefRecipe.java:62)[4:org.apache.aries.blueprint.core:1.3.0]
        at 
org.apache.aries.blueprint.di.AbstractRecipe.create(AbstractRecipe.java:106)[4:org.apache.aries.blueprint.core:1.3.0]
        at 
org.apache.aries.blueprint.container.ServiceRecipe.createService(ServiceRecipe.java:283)[4:org.apache.aries.blueprint.core:1.3.0]
        at 
org.apache.aries.blueprint.container.ServiceRecipe.internalGetService(ServiceRecipe.java:250)[4:org.apache.aries.blueprint.core:1.3.0]
        at 
org.apache.aries.blueprint.container.ServiceRecipe.internalGetService(ServiceRecipe.java:237)[4:org.apache.aries.blueprint.core:1.3.0]
        at 
org.apache.aries.blueprint.container.ServiceRecipe.getClasses(ServiceRecipe.java:370)[4:org.apache.aries.blueprint.core:1.3.0]
        at 
org.apache.aries.blueprint.container.ServiceRecipe.register(ServiceRecipe.java:184)[4:org.apache.aries.blueprint.core:1.3.0]
        at 
org.apache.aries.blueprint.container.BlueprintContainerImpl.registerServices(BlueprintContainerImpl.java:703)[4:org.apache.aries.blueprint.core:1.3.0]
        at 
org.apache.aries.blueprint.container.BlueprintContainerImpl.doRun(BlueprintContainerImpl.java:377)[4:org.apache.aries.blueprint.core:1.3.0]
        at 
org.apache.aries.blueprint.container.BlueprintContainerImpl.run(BlueprintContainerImpl.java:269)[4:org.apache.aries.blueprint.core:1.3.0]
        at 
org.apache.aries.blueprint.container.BlueprintExtender.createContainer(BlueprintExtender.java:276)[4:org.apache.aries.blueprint.core:1.3.0]
        at 
org.apache.aries.blueprint.container.BlueprintExtender.createContainer(BlueprintExtender.java:245)[4:org.apache.aries.blueprint.core:1.3.0]
        at 
org.apache.aries.blueprint.container.BlueprintExtender.modifiedBundle(BlueprintExtender.java:235)[4:org.apache.aries.blueprint.core:1.3.0]
        at 
org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.customizerModified(BundleHookBundleTracker.java:500)[2:org.apache.aries.util:1.1.0]
        at 
org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.customizerModified(BundleHookBundleTracker.java:433)[2:org.apache.aries.util:1.1.0]
        at 
org.apache.aries.util.tracker.hook.BundleHookBundleTracker$AbstractTracked.track(BundleHookBundleTracker.java:725)[2:org.apache.aries.util:1.1.0]
        at 
org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.bundleChanged(BundleHookBundleTracker.java:463)[2:org.apache.aries.util:1.1.0]
        at 
org.apache.aries.util.tracker.hook.BundleHookBundleTracker$BundleEventHook.event(BundleHookBundleTracker.java:422)[2:org.apache.aries.util:1.1.0]
        at 
org.apache.felix.framework.util.SecureAction.invokeBundleEventHook(SecureAction.java:1103)[org.apache.felix.framework-4.2.1.jar:]
        at 
org.apache.felix.framework.util.EventDispatcher.createWhitelistFromHooks(EventDispatcher.java:695)[org.apache.felix.framework-4.2.1.jar:]
        at 
org.apache.felix.framework.util.EventDispatcher.fireBundleEvent(EventDispatcher.java:483)[org.apache.felix.framework-4.2.1.jar:]
        at 
org.apache.felix.framework.Felix.fireBundleEvent(Felix.java:4403)[org.apache.felix.framework-4.2.1.jar:]
        at 
org.apache.felix.framework.Felix.startBundle(Felix.java:2092)[org.apache.felix.framework-4.2.1.jar:]
        at 
org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1291)[org.apache.felix.framework-4.2.1.jar:]
        at 
org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:304)[org.apache.felix.framework-4.2.1.jar:]
        at java.lang.Thread.run(Thread.java:745)[:1.8.0_40]


Christian Eugster
Docuteam GmbH
Langacker 16
Postfach
CH-5405 Baden-Dättwil
+41 (0)56 470 03 37
c.eugs...@docuteam.ch





> Am 10.03.2015 um 18:32 schrieb Christian Schneider <ch...@die-schneider.net>:
> 
> Can you try some of the examples from my site and see if you hit the same 
> problems?
> I wonder if the problem is specific to the packt example or general.
> 
> http://liquid-reality.de/display/liquid/Karaf+Tutorials
> https://github.com/cschneider/Karaf-Tutorial
> 
> Christian
> 
> On 10.03.2015 18:20, Christian Eugster wrote:
>> I would say, the default path in org.ops4j.pax.url.mvn.cfg is right. Looking 
>> in user.home/.m2/repository, I find the respective jar in the right place:
>> 
>> ~/.m2/repository/com/packt/sample/1.0.0-SNAPSHOT/sample-1.0.0-SNAPSHOT.jar
>> 
>> The settings file in ~/.m2 had no extension. I added .xml and tried again, 
>> but nothing better.
>> 
>> My steps:
>> 1. I imported the sample projects of the book into eclipse
>> 2. I run mvn install on Chapter2/recipe2/sample/pom.xml - succeeded
>> 3. In karaf i did bundle:install -s mvn:com.packt/sample in different 
>> variations I always get the error message Unable to install and karaf.log as 
>> provided in one of the previous emails.
>> 
>> Regards Christian
>> 
>> 
>> Christian Eugster
>> Docuteam GmbH
>> Langacker 16
>> Postfach
>> CH-5405 Baden-Dättwil
>> +41 (0)56 470 03 37
>> c.eugs...@docuteam.ch
>> 
>> 
>> 
>> 
>> 
>>> Am 10.03.2015 um 18:04 schrieb Christian Schneider 
>>> <ch...@die-schneider.net>:
>>> 
>>> You can configure it in etc/org.ops4j.pax.url.mvn.cfg but using the default 
>>> will save you from many problems.
>>> 
>>> Christian
>>> 
>>> On 10.03.2015 17:58, Christian Eugster wrote:
>>>> My local maven repository is at ~/.m2e. Maybe I have to configure this 
>>>> location in karaf? Or reconfigure it in maven?
>>>> 
>>>> Christian
>>>> 
>>>> Christian Eugster
>>>> Docuteam GmbH
>>>> Langacker 16
>>>> Postfach
>>>> CH-5405 Baden-Dättwil
>>>> +41 (0)56 470 03 37
>>>> c.eugs...@docuteam.ch
>>>> 
>>> -- 
>>> Christian Schneider
>>> http://www.liquid-reality.de
>>> 
>>> Open Source Architect
>>> http://www.talend.com
>>> 
>> 
> 
> 
> -- 
> Christian Schneider
> http://www.liquid-reality.de
> 
> Open Source Architect
> http://www.talend.com
> 

Reply via email to