diff --git a/upnp/basedriver/NOTICE b/upnp/basedriver/NOTICE
index 0dc6e5d..7b08613 100644
--- a/upnp/basedriver/NOTICE
+++ b/upnp/basedriver/NOTICE
@@ -1,5 +1,5 @@
 Apache Felix UPnP Base Driver
-Copyright 2006-2008 The Apache Software Foundation
+Copyright 2006-2009 The Apache Software Foundation
 
 
 I. Included Software
diff --git a/upnp/basedriver/pom.xml b/upnp/basedriver/pom.xml
index c560833..e7bf112 100644
--- a/upnp/basedriver/pom.xml
+++ b/upnp/basedriver/pom.xml
@@ -1,8 +1,8 @@
 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
   <parent>
     <groupId>org.apache.felix</groupId>
-    <artifactId>felix</artifactId>
-    <version>1.0.4</version>
+    <artifactId>felix-parent</artifactId>
+    <version>1.2.0</version>
     <relativePath>../../pom/pom.xml</relativePath>
   </parent>
   <modelVersion>4.0.0</modelVersion>
@@ -11,27 +11,6 @@
   <name>Apache Felix UPnP Base Driver</name>
   <artifactId>org.apache.felix.upnp.basedriver</artifactId>
   <version>0.9.0-SNAPSHOT</version>
-  <repositories>
-    <!-- For snapshots (no release jars or non-apache jars)           -->
-    <repository>
-      <id>snap.domoware.isti.cnr.it</id>
-      <name>Domoware Snapshot Repository</name>
-      <url>http://domoware.isti.cnr.it/maven2-snap</url>
-      <releases>
-        <enabled>false</enabled>
-      </releases>
-    </repository>
-    <!-- For release (no snapshots jars or non-apache jars)           -->
-    <repository>
-      <id>release.domoware.isti.cnr.it</id>
-      <name>Domoware Release Repository</name>
-      <url>http://domoware.isti.cnr.it/maven2</url>
-      <snapshots>
-        <enabled>false</enabled>
-      </snapshots>
-    </repository>
-  </repositories>
-  <!-- <url>http://maven.apache.org</url> -->
 
   <profiles>
     <profile>
@@ -62,7 +41,6 @@
 	  <plugin>
             <groupId>org.apache.felix</groupId>
             <artifactId>maven-bundle-plugin</artifactId>
-            <version>1.5.0-SNAPSHOT</version>
             <executions>
               <execution>
                 <id>cyberlink</id>
@@ -117,7 +95,6 @@
       <plugin>
         <groupId>org.apache.felix</groupId>
         <artifactId>maven-bundle-plugin</artifactId>
-        <version>1.4.0</version>
         <extensions>true</extensions>
         <configuration>
 	  <excludeDependencies>org.cybergarage.cyberlink:upnp-stack,upnp-stack-jdk13</excludeDependencies>
diff --git a/upnp/extra/NOTICE b/upnp/extra/NOTICE
index d773163..c5ca9bd 100644
--- a/upnp/extra/NOTICE
+++ b/upnp/extra/NOTICE
@@ -1,5 +1,5 @@
 Apache Felix UPnP Extra
-Copyright 2006-2008 The Apache Software Foundation
+Copyright 2006-2009 The Apache Software Foundation
 
 
 I. Included Software
diff --git a/upnp/extra/pom.xml b/upnp/extra/pom.xml
index 73dd741..55b2cfd 100644
--- a/upnp/extra/pom.xml
+++ b/upnp/extra/pom.xml
@@ -19,8 +19,8 @@
 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
   <parent>
     <groupId>org.apache.felix</groupId>
-    <artifactId>felix</artifactId>
-    <version>1.0.4</version>
+    <artifactId>felix-parent</artifactId>
+    <version>1.2.0</version>
     <relativePath>../../pom/pom.xml</relativePath>
   </parent>
   <modelVersion>4.0.0</modelVersion>
@@ -43,7 +43,6 @@
       <plugin>
         <groupId>org.apache.felix</groupId>
         <artifactId>maven-bundle-plugin</artifactId>
-        <version>1.4.0</version>
         <extensions>true</extensions>
         <configuration>
           <instructions>
diff --git a/upnp/samples/binarylight/NOTICE b/upnp/samples/binarylight/NOTICE
index b9ec20c..056771a 100644
--- a/upnp/samples/binarylight/NOTICE
+++ b/upnp/samples/binarylight/NOTICE
@@ -1,5 +1,5 @@
 Apache Felix UPnP Sample Binary-Light
-Copyright 2006-2008 The Apache Software Foundation
+Copyright 2006-2009 The Apache Software Foundation
 
 
 I. Included Software
@@ -15,6 +15,11 @@
 Copyright 2006-2008 The OSGi Alliance.
 Licensed under the Apache License 2.0.
 
+This product uses software developed at
+The Apache Software Foundation (http://www.apache.org/).
+Licensed under the Apache License 2.0.
+
+
 III. License Summary
 - Apache License 2.0
 - BSD License
diff --git a/upnp/samples/binarylight/pom.xml b/upnp/samples/binarylight/pom.xml
index dd5bd12..3d4050a 100644
--- a/upnp/samples/binarylight/pom.xml
+++ b/upnp/samples/binarylight/pom.xml
@@ -19,9 +19,9 @@
 -->
 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
   <parent>
-    <artifactId>felix</artifactId>
+    <artifactId>felix-parent</artifactId>
     <groupId>org.apache.felix</groupId>
-    <version>1.0.4</version>
+    <version>1.2.0</version>
     <relativePath>../../../pom/pom.xml</relativePath>
   </parent>
   <modelVersion>4.0.0</modelVersion>
@@ -35,7 +35,6 @@
       <plugin>
         <groupId>org.apache.felix</groupId>
         <artifactId>maven-bundle-plugin</artifactId>
-        <version>1.4.0</version>
         <extensions>true</extensions>
         <configuration>
           <instructions>
diff --git a/upnp/samples/clock/NOTICE b/upnp/samples/clock/NOTICE
index 91755b5..78bb8fd 100644
--- a/upnp/samples/clock/NOTICE
+++ b/upnp/samples/clock/NOTICE
@@ -1,5 +1,5 @@
 Apache Felix UPnP Sample Clock
-Copyright 2006-2008 The Apache Software Foundation
+Copyright 2006-2009 The Apache Software Foundation
 
 
 I. Included Software
@@ -20,6 +20,11 @@
 Copyright 2006-2008 The OSGi Alliance.
 Licensed under the Apache License 2.0.
 
+This product uses software developed at
+The Apache Software Foundation (http://www.apache.org/).
+Licensed under the Apache License 2.0.
+
+
 III. License Summary
 - Apache License 2.0
 - BSD License
diff --git a/upnp/samples/clock/pom.xml b/upnp/samples/clock/pom.xml
index 0dff244..b89d41d 100644
--- a/upnp/samples/clock/pom.xml
+++ b/upnp/samples/clock/pom.xml
@@ -19,9 +19,9 @@
 -->
 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
   <parent>
-    <artifactId>felix</artifactId>
+    <artifactId>felix-parent</artifactId>
     <groupId>org.apache.felix</groupId>
-    <version>1.0.4</version>
+    <version>1.2.0</version>
     <relativePath>../../../pom/pom.xml</relativePath>
   </parent>
   <modelVersion>4.0.0</modelVersion>
@@ -35,7 +35,6 @@
       <plugin>
         <groupId>org.apache.felix</groupId>
         <artifactId>maven-bundle-plugin</artifactId>
-        <version>1.4.0</version>
         <extensions>true</extensions>
         <configuration>
           <instructions>
diff --git a/upnp/samples/tv/NOTICE b/upnp/samples/tv/NOTICE
index 1633ca2..5e9809f 100644
--- a/upnp/samples/tv/NOTICE
+++ b/upnp/samples/tv/NOTICE
@@ -1,5 +1,5 @@
 Apache Felix UPnP Sample TV
-Copyright 2006-2008 The Apache Software Foundation
+Copyright 2006-2009 The Apache Software Foundation
 
 
 I. Included Software
@@ -20,6 +20,11 @@
 Copyright 2006-2008 The OSGi Alliance.
 Licensed under the Apache License 2.0.
 
+This product uses software developed at
+The Apache Software Foundation (http://www.apache.org/).
+Licensed under the Apache License 2.0.
+
+
 III. License Summary
 - Apache License 2.0
 - BSD License
diff --git a/upnp/samples/tv/pom.xml b/upnp/samples/tv/pom.xml
index ebdcd45..2b20318 100644
--- a/upnp/samples/tv/pom.xml
+++ b/upnp/samples/tv/pom.xml
@@ -19,9 +19,9 @@
 -->
 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
   <parent>
-    <artifactId>felix</artifactId>
+    <artifactId>felix-parent</artifactId>
     <groupId>org.apache.felix</groupId>
-    <version>1.0.4</version>
+    <version>1.2.0</version>
     <relativePath>../../../pom/pom.xml</relativePath>
   </parent>
   <modelVersion>4.0.0</modelVersion>
@@ -35,7 +35,6 @@
       <plugin>
         <groupId>org.apache.felix</groupId>
         <artifactId>maven-bundle-plugin</artifactId>
-        <version>1.4.0</version>
         <extensions>true</extensions>
         <configuration>
           <instructions>
diff --git a/upnp/tester/NOTICE b/upnp/tester/NOTICE
index 54f63f9..c43b594 100644
--- a/upnp/tester/NOTICE
+++ b/upnp/tester/NOTICE
@@ -1,5 +1,5 @@
 Apache Felix UPnP Tester
-Copyright 2006-2008 The Apache Software Foundation
+Copyright 2006-2009 The Apache Software Foundation
 
 
 I. Included Software
@@ -15,6 +15,11 @@
 Copyright 2006-2008 The OSGi Alliance.
 Licensed under the Apache License 2.0.
 
+This product uses software developed at
+The Apache Software Foundation (http://www.apache.org/).
+Licensed under the Apache License 2.0.
+
+
 III. License Summary
 - Apache License 2.0
 
diff --git a/upnp/tester/pom.xml b/upnp/tester/pom.xml
index c37ec91..5d65e10 100644
--- a/upnp/tester/pom.xml
+++ b/upnp/tester/pom.xml
@@ -19,9 +19,9 @@
 -->
 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
   <parent>
-    <artifactId>felix</artifactId>
+    <artifactId>felix-parent</artifactId>
     <groupId>org.apache.felix</groupId>
-    <version>1.0.4</version>
+    <version>1.2.0</version>
     <relativePath>../../pom/pom.xml</relativePath>
   </parent>
 
@@ -37,7 +37,6 @@
       <plugin>
         <groupId>org.apache.felix</groupId>
         <artifactId>maven-bundle-plugin</artifactId>
-        <version>1.4.0</version>
         <extensions>true</extensions>
         <configuration>
           <instructions>
