From william16@example.org Tue Jun 01 11:41:27 2010 Return-Path: <william16@example.org> Delivered-To: william16@example.org Received: (qmail 91695 invoked from network); 1 Jun 2010 11:41:26 -0000 Received: from unknown (HELO mail.apache.org) (83.161.120.155) by 83.161.120.155 with SMTP; 1 Jun 2010 11:41:26 -0000 Received: (qmail 87679 invoked by uid 500); 1 Jun 2010 11:41:26 -0000 Delivered-To: william16@example.org Received: (qmail 87236 invoked by uid 500); 1 Jun 2010 11:41:23 -0000 Mailing-List: contact william16@example.org; run by ezmlm Precedence: bulk List-Help: <mailto:william16@example.org> List-Unsubscribe: <mailto:william16@example.org> List-Post: <mailto:william16@example.org> List-Id: <users.felix.apache.org> Reply-To: william16@example.org Delivered-To: mailing list william16@example.org Received: (qmail 86475 invoked by uid 99); 1 Jun 2010 11:41:22 -0000 Received: from nike.apache.org (HELO nike.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 01 Jun 2010 11:41:22 +0000 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests=FREEMAIL_FROM,RCVD_IN_DNSWL_NONE,SPF_PASS,T_TO_NO_BRKTS_FREEMAIL X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of william16@example.org designates 83.161.120.155 as permitted sender) Received: from [83.161.120.155] (HELO mail-yw0-f180.google.com) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 01 Jun 2010 11:41:13 +0000 Received: by ywh10 with SMTP id 10so3328313ywh.18 for <william16@example.org>; Tue, 01 Jun 2010 04:40:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:received:date:message-id :subject:from:to:content-type; bh=18eEYvqJjuRXwmtj8KC+WKC5D3tMyyBQwruasoddYQI=; b=eo42elaEJUlqaLAD7PQc2NQvHQ0IO+9oJ2FGBiTT/z61oFJx3AAqTh+3/pGccWjBE9 LLPXd81djpyxYzr1dQT/65+UuPmD+kryJjpod+8kux+5TcWmG5/j4wosVKmcIvriyfWb GMyRCQX56jHMaPX9StSqPEIR9Rfpxiwn/RBG8= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:date:message-id:subject:from:to:content-type; b=tzXSAPyI1Ltlu73lRyyg45pLk21dDyDWFAP5+GxRRRMOL2G4YIEphHW01VtCUu0zfA Jp6zuy3k8fJvJTzfQIitBmh0jU7NZjwZdpYeQgmFelVHqweNlJZXiyuCoNyElcwgs/Pl CLUbFfClJNdcohecl3eF9JNY03TuSL2mev5Cc= MIME-Version: 1.0 Received: by 83.161.120.155 with SMTP id v19mr6928494ann.125.1275392452351; Tue, 01 Jun 2010 04:40:52 -0700 (PDT) Received: by 83.161.120.155 with HTTP; Tue, 1 Jun 2010 04:40:52 -0700 (PDT) Date: Tue, 1 Jun 2010 13:40:52 +0200 Message-ID: <william16@example.org> Subject: Bridge between zookeeper and OSGI configuration admin From: Leen Toelen <william16@example.org> To: william16@example.org Content-Type: multipart/mixed; boundary=0016e68deb901256dc0487f672f1 X-Virus-Checked: Checked by ClamAV on apache.org --0016e68deb901256dc0487f672f1 Content-Type: text/plain; charset=ISO-8859-1 Hi, I have created a proof of concept bridge between zookeeper and the configurationadmin service, and allows for a centralized configuration of an osgi system. If anyone is interested in giving it a try, please go ahead. The managed service is created with this PID: "org.apache.zookeeper.configurationadminbridge" and needs the following properties - zookeeper.hostname - zookeeper.port - znode A ZooKeeper session is created on the given znode, and every znode child is treated as a key-value pair which is synced with the configurationadmin, much like fileinstall does. When a pid contains '-', it is treated as a factory config. Zookeeper structure: /com/worlddomination/ -> znode - myservicepid -> child service pid, with child znodes - property1: value - property2: value - myfactoryservicepid-test -> factory child service pid, with child znodes - property1: value - property2: value The synchronization is one-way so every zookeeper change is pushed to configurationadmin, but changes to configurationadmin directly are ignored. Regards, Leen --0016e68deb901256dc0487f672f1 Content-Type: application/zip; name="zookeeper-configadminbridge.zip" Content-Disposition: attachment; filename="zookeeper-configadminbridge.zip" Content-Transfer-Encoding: base64 X-Attachment-Id: f_g9wndvhp0 UEsDBBQACAAIAK15vDwAAAAAAAAAAAAAAAA4AAAAb3JnLmFwYWNoZS56b29rZWVwZXIuY29uZmln dXJhdGlvbmFkbWluYnJpZGdlLy5jbGFzc3BhdGitkl1LwzAUhq8V/A8ll4Mmbnjhxeooo6LDVVnr bkdMDl1mmpR8lO3f2+7DyahDxctzzvs+5+Ukw9G6lEENxgqtItTH1ygAxTQXqojQa34f3qLR3dXl kElqbUXdsikujhUoZzbBu1A8QtYwFGjvKu8i5KgpwJGtECwKWvFWQkoqFFnRmiLSxYI1k363vtdD f0AbsNob1kw6+d8DHVgXdlDb/n8EPsv/UWqm1cGoTYGBSVFZwCvusKResWWTAk9myWL8nObxY5rM yKlOKAdGUYk5vPkCe7F3gsGZo4pTw+fTfFMBmQyyJOzjm18EKmkNCgsOnyun8TxJB4vxU5xlL3H+ cEx2Drs73IF88t6tb0i+/scPUEsHCB48Sj8SAQAAxQIAAFBLAwQUAAgACADleb88AAAAAAAAAAAA AAAANgAAAG9yZy5hcGFjaGUuem9va2VlcGVyLmNvbmZpZ3VyYXRpb25hZG1pbmJyaWRnZS8ucHJv amVjdK1Su04DMRCsQeIfouvjA6oUzkUCREkDfMDGXhyH80Nr3wnx9diOL3BEoaLbGc9oZm3zzYfp FyNS0M6umxt23SzQCie1Vevm9eVxuWo23dUl9+T2KOIDBkHax6RO7AW3YLBzpBh4EDtkn869I3ok Jpx902ogyFqQRtstaamQt8WTzcIZgzZ2vJ2mzNakUEA7Q9tB9/LZo8iowvtkBSsL86MPil77gGwv Y6pCaYARigHpu0JyAKkhZ4eK2znB25OUP3MNjGiZlnhsUJjbu/+Irsx0Ayk1DoRVfQDnlz+c5wJF 99tzrvjTiW2ac+7xgeYf4wtQSwcIphym//EAAABXAgAAUEsDBBQACAAIABFlwTwAAAAAAAAAAAAA AAA1AAAAb3JnLmFwYWNoZS56b29rZWVwZXIuY29uZmlndXJhdGlvbmFkbWluYnJpZGdlL3BvbS54 bWy1VcuK2zAUXc/A/EMI3UbKixaCapiuWpgXpJTSzaDIiqPEkowsO05L/72yZDt+ZOwp7eyk+zj3 3OtzZRQpuadEjzIeivjjeKd1tIKQ45QKgCNMdhRIFcCnx3u4BFMwHbvIVRazKvp4PILjwsbNp9MZ /H5/tzaJHE+YiDUWhI5vrq9Mxiq25jtJsGZSvKLc6KUIa5iky+fp8xRksT/2TAnEpU/Db1TFBt2z AAg2bHlQoGQSffE9A1Mi/pTyQGlEFYKlN4/ESrMtJvqFYECk2LIgUbYb7HMmNor5AUWwlpkDmcQD DpgIvE0i/NAEnC25Py3oGcJg/mGyfrh9Wn9+/IpgWuO9SVho4QxemJjc2F7Km7tcbM9Nr0hqtJgn 1Li6qRLJIxZSNXEZ7W7ynJLXPCfcoJl7G3MpjFcoloki1JuB9wgW59KlsQqodq7iXEDBC1hmerWO h9vf0pBlw227T/Oqpme5sFpN00xTkRtiT6vEfOKaoXcu+ZKohOhapLF+cmweMKfej1Jxo67iRqXk 6gltlPWJb2TIiHW++1UsPTi3+LvKb4S2cW4NyxRrqf5uH0CVV5U5I5VjgBfmMPz5y4vNQLDaEeQb RsKngjDq0M6WU4FzQSo77EsZtbRSl0rtpWgLpNLHAizArKUPFBMZUa9YLbMA9upcNCNh0hBKZamm UxLa4xRnYM87a9xgaf1dAcM2bk8hwxTEiQB7nx8GamVayvD/FeSdXW3XU+xfi7kxcszC3louYLhU zVCIDbbU1q8+GQesR3RlCMjlY1BYwnvktwTzzvOE9MnIbY+NbO1pQJNvRl91/o1vS7x2d+/AzbV5 Mdzz5/0BUEsHCCv+3Dx3AgAA/QgAAFBLAwQUAAgACADjfLw8AAAAAAAAAAAAAAAAUgAAAG9yZy5h cGFjaGUuem9va2VlcGVyLmNvbmZpZ3VyYXRpb25hZG1pbmJyaWRnZS8uc2V0dGluZ3Mvb3JnLmVj bGlwc2UuamR0LmNvcmUucHJlZnOdkkFLAzEQhe+F/ocF76FbKWohl4oFRUVUvGc3b5eRZLJMkkr/ vVlqz7v1MoRhvnnzZnK1F6pezLFa31b1Znt9t13dVPcPH5/VelWvlgu0joYINQg6CLhFVAdIpMC6 Xi6C9Opc8m2TaoOgBD+Qg5SHRQ9WxI4YT1F2x4QxqcGmcbBzGyQjPdKbM6kL4nWtNnPJzDnCPofW OF08RMgB06wfHJnidY6SRZN7NRp8zb6B6CILMWlS5g8cR/syQuNCLmRjyNJiTxeAg4Si45WJZRXp 0YITdVSmhkiQuTQ4+/+y5YIN2QK/n3+U/jHCxP1Uh5Pd001+AVBLBwhlwfjh9QAAALgCAABQSwME FAAIAAgArXm8PAAAAAAAAAAAAAAAAFMAAABvcmcuYXBhY2hlLnpvb2tlZXBlci5jb25maWd1cmF0 aW9uYWRtaW5icmlkZ2UvLnNldHRpbmdzL29yZy5tYXZlbi5pZGUuZWNsaXBzZS5wcmVmc1WPTQvC MAyG74X+h4JnxU0UGeziUE+CqODFy+gyica1JO3Af+8K4sctIW+eJxltGM2ufpp8abJ5kc2KfGGq 9fFk8mk21aq2AXvYs2uRQEqtwBJ6gYlnaIGhsyCTHljQdWWmVRuJVhGp2bqapPTshoCMA0gYM4iL PPRaYWcpNrBzTUzYdsiCVilAPZwd38XXNmlvYIOUgeN7nPY3SAH4X/Bhm091KZL18JXKHX3lHn74 hPcUr9i9wT/3vwBQSwcIj2arFrsAAAAQAQAAUEsDBBQACAAIAC1rwTwAAAAAAAAAAAAAAAB4AAAA b3JnLmFwYWNoZS56b29rZWVwZXIuY29uZmlndXJhdGlvbmFkbWluYnJpZGdlL3NyYy9tYWluL2ph dmEvb3JnL2FwYWNoZS96b29rZWVwZXIvY29uZmlndXJhdGlvbmFkbWluYnJpZGdlL0FjdGl2YXRv ci5qYXZhlVPRbtsgFH1upPzD3ZsjWfxAuklZGq19aDU1Ux/2EhF847DYgC446Tbt3wcGJ3bltqpk jIwP595zOBguDrxE0FQybrjYI/uj9QHRIDGh1U6WDXEnteJFLdWWZFHifDqZTmRtNDn4xY+cNU5W 7JbbvePbavA78GpbSrYjXuNJ04F9bVRR4UI4eeRO0/x97FIrh8/uTaTHWMeVs2+i1khHKfARS2ld 1DWCtxHFRM3uufL2FGlfq8w020oKEBW3Fs4ywJNUWKPvAF4ohL/TyZWh8IGw7Hu6CJ4m7h/kjwIJ BqanxbbumWJEBNBQUQ/9szvOoRTYceF7+53AUdNRywK8jeSygfOhqTDPwO1JnyysngWatnDQdpW4 4DMoPL1WMetI5mFLGGNSE8d7NnVkeeA5NxCpx2iZNqiyrnR4n+N6vXYkVZlDnL+AIQ8mJ9GmZl6F JsLLBmYal52jyNarx6e75Wrz/e4m/9gVu+SZ3S8eFt9WN5v103LTI4yl++fuu02usLiM1Fk/PAnW Zjc6x0p0D/56ZLO8i0Tec2AW8/FvJCXafCwkcgfZoN1P3t2mqmbx90AKa1QnIXkcO2hJRmPzgmw0 A6LSFi98YfjnP1BLBwiY6mYOzAEAAAMFAABQSwMEFAAIAAgAFGvBPAAAAAAAAAAAAAAAAI8AAABv cmcuYXBhY2hlLnpvb2tlZXBlci5jb25maWd1cmF0aW9uYWRtaW5icmlkZ2Uvc3JjL21haW4vamF2 YS9vcmcvYXBhY2hlL3pvb2tlZXBlci9jb25maWd1cmF0aW9uYWRtaW5icmlkZ2UvQ29uZmlndXJh dGlvbkFkbWluU2VydmljZVRyYWNrZXIuamF2Ya1SyU7DMBA9p1L/wcdUqvwDFQfoGZCAEzfXnqRD EzsaO2FT/x3HcWjaWOWCFGXTe/OWcSPkQZTADJVcNELugX8ZcwBogLg0usCyJeHQaKFq1DtCVcJm uVgusG4MuUA0tkRekKjh3dCB37VaVbA12sGH21xDPgN1KOEJCiDQEhJgO0C4rPl2aue2t5PAtw4r 7sjH8gHi/JfhM9hu2l2FkslKWMvmE88ZzAcArSy7+P29XGQNYSccsNexrnuhfZMqQlkhpDP0GUSz qPqXXn5WHZPDc+0HZNkfOqtgKrOtR+QjMSHIQ3JegnvwW8hXa6bbqlpterLbo+VxHruZJMiO0xSP uzeQjgmlUJfRRn65SkbjW3QWWXLmyCsF1/x84IkfvGHB8gQXtXXCg0yRyBqVsxjEnyU3B+V5ijiX Gmwc+xuBa0knMLOqOoPKN1Gb7ndhV5paj9XGQx/999Hjn//Ie9r3YHU4M/zC5cTU6Cam89cPUEsH CKHVvBhwAQAANgQAAFBLAwQUAAgACAA7a8E8AAAAAAAAAAAAAAAAeAAAAG9yZy5hcGFjaGUuem9v a2VlcGVyLmNvbmZpZ3VyYXRpb25hZG1pbmJyaWRnZS9zcmMvbWFpbi9qYXZhL29yZy9hcGFjaGUv em9va2VlcGVyL2NvbmZpZ3VyYXRpb25hZG1pbmJyaWRnZS9Db25zdGFudHMuamF2YZ2RTWrDMBBG 1zX4DiIH8AVCF0EWqQmVhGSyyMZMZEURcSQhKZuU3r1J6E/ooo29GpgZ3mPmC6AOYDTy0VQQQO11 dfb+oHXQsVLe7aw5RcjWO+iP1m2j7Y2el0VZhNN2sAqpAVJC2LuUweWE3q6zp8/hpZcvZWcdDEjm aJ1BXDDe8aZGz2g2yloF28/mD8A3lNVkPP7sfK8fEmBGKcGtbEVDlxNE9ytOq5xu7Jv6b/vrgi6W pO7kGneSiHWDyaRX/nflvWfD2IoQTkT3wmR7Vf3w9z5lB8eJPM7EL17wMY9ifSX9nd17WXwAUEsH CMgodm3pAAAA0wIAAFBLAwQUAAgACAB7a8E8AAAAAAAAAAAAAAAAhgAAAG9yZy5hcGFjaGUuem9v a2VlcGVyLmNvbmZpZ3VyYXRpb25hZG1pbmJyaWRnZS9zcmMvbWFpbi9qYXZhL29yZy9hcGFjaGUv em9va2VlcGVyL2NvbmZpZ3VyYXRpb25hZG1pbmJyaWRnZS9ab29rZWVwZXJNYW5hZ2VkU2Vydmlj ZS5qYXZhxVdtT+M4EP4cJP6DL182FZV7nw8hHQu9O7RLi+iJlfiCTDJNfaRxZDuFsst/37HjvDZl 29XCSYg0znhennlmPM5Y+MBiIELGlGUsXAB9FuIBIANJQ5HOeZxLprlIWbTk6b3kUQzHhweHB3yZ CanJf2zFKBf0Yjp+CiEzksftj7nmCT3noVUi131f0VCYSwmppokIHxT9jP93ErwG/C1ZqrftSEQc 8zSmn2EFyasC+ATZDK0Xk0/20RPrXghSnmqQKUvo7UREcClSroVsKxMq5nQu2RIehXygH/M0SuBM 4MYn3SOpQK54CDRc0rOm1VNjdQ/5LaF191yyFHkTzYoVC1uW3yc8JGHClCK3JQZtQYIqE1hi0hTp fPl6eOBlkq+YBqI0+hKSIickKR4n7p3GoItfwRYr1Ppg5CYIXzAYWP8q7U3MybLCviGxiSAJ+0Bt bDEEJIaU6GcKj6TFzKDjQSuZRrVLqhEpUNwSWdC7c2DB8/SCK+qW0ItarffSVN0THCK1uRo4tRJ0 LrcA0Na8EjwiqlfXToiWcch18cMzeNpKLwE0S5YD+AhsTdOLyV/TIfFnoDXWMdksOaIF8e1ezzvq s3psP5bodd082Zp6z+NzEjgCkd8w73mSuBg8z63Tfjy2uvFi/r+QOcfukLRwyNMKiUKswP7PWZ5l EpT6wmSKCKjAl+xRrzNQ/qDOjVqn4UKiT88QFYnKswi5GAV1byaZFEg5zUENHCZSPCrS3yAK3/g8 qHeREwfCVwfPBjpdcLTIgmbk5RdSyFexvk4Kk4e+1HVSYsOx1dkfUeD7Q0cUz+9hrCqbmCKp0ORe YDH6Le9nWhoSLoQyFRgUr4MGrqYpmWLADoc9kF6eTk7/Hp/fzW7O7m6n00/j8dX4+u6f6exfp9ZE VmgrYiHfvlntNIE01gusUfzw++4R7mJ6SHaRKoE6Ij5RC5EnEbkHE+mKR9APiz1Nfh6Wq+l1E5ZC Ww2LeX8rWIzpH8NipHaEhUCioHKv4rbnXWDTNg0uY1IBvtgw3S7cFjIdLkhQFyFUQf6iKMsAvF2k STtMlhJe+E9WLMnBrxzfJMNziqfw/myYTM/HDRI4LTUL7MIvpoGxuTX75uNeSa/cxu7HpFZfOHrq j3zr7JyhyP/isHWGPKIz5MPoQ6N+Xz12JbBobU7Ysv1COVGh5qOiEaKRP+oD2JatsWtNFfkzovZX 1dFHoyumF50hzbClsTwo1wvCZDxqEKPa0j0DGrXWOGsQ4uZYGNSOk8LlYe1gc+++x3u9keODswTP 4/ocqwu8c8/Yq8zxFCNgILnEqQCHx2CA7xstpHFjewvt5oIj8wwHjLcwU+LlZlwqIeYKLZZjcj0+ O7Q7N4Kqy7lsDJujjzMyGlX0ynJLr2FJuB928b75psuZFEJd9D7Ltj6pW0O5oJ94Hf68Y27fgZvv wh43ajubE+wSV8JezGubaQZPg2ru7LTA2fhmfI191gh1bNl95b3C+ooLrsr3Ge63Du8RJGCG93Ky wt5XzuNbryQ9pLQQbI7cLePORFU7rVth/xkzG1/fXJyN764uzp06/PsOUEsHCE89DE6YBAAAbBIA AFBLAwQUAAgACABra8E8AAAAAAAAAAAAAAAAfwAAAG9yZy5hcGFjaGUuem9va2VlcGVyLmNvbmZp Z3VyYXRpb25hZG1pbmJyaWRnZS9zcmMvbWFpbi9qYXZhL29yZy9hcGFjaGUvem9va2VlcGVyL2Nv bmZpZ3VyYXRpb25hZG1pbmJyaWRnZS9ab29rZWVwZXJNb25pdG9yLmphdmFtjDsOwkAMBeustHfY Epq9ACU1FV06x+sYK2CvLKch4u4gPh3tvHnTARdgKuZcoQNeqN7NFqJOXtF0Fl4dQkyh3UQnl8Z0 yCmnvk5XwSIa5DMglfH3O5lKmJctp+FrncNFuTDF0VQJ4wN2+1dq+KeNao3e8yOnJ1BLBwg9fSF0 dwAAAKUAAABQSwMEFAAIAAgAi2vBPAAAAAAAAAAAAAAAAIIAAABvcmcuYXBhY2hlLnpvb2tlZXBl ci5jb25maWd1cmF0aW9uYWRtaW5icmlkZ2Uvc3JjL21haW4vamF2YS9vcmcvYXBhY2hlL3pvb2tl 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 blQy68rXvoZzO+9ajwIXvhOO4hW5TwLEUN6LFReJFUX0gwr1qKvyzgKmcUaQInX0KHwXppCbcoPH prwpR0X+LLebGKJZ30RTTSwt+MGqZ4ZJ/cKE0IM+gPUC3HlrMChrPmhkM5gGzajO3IwoNfGd1UdH Fk8v4iZLTxAl2Sx68VLWZIyh3LO0z9/KXBntzZk1IAFh/5HEqToZmXtGp8JA5iX97xn32j7lNqhB yhel/D/VUsI5qAP/LnmF1cW3ufyg0wxqnT3ja0ufTUoXv4KCP38BUEsHCEJjHH3uAQAA4wUAAFBL AwQUAAgACAAwcb88AAAAAAAAAAAAAAAAhQAAAG9yZy5hcGFjaGUuem9va2VlcGVyLmNvbmZpZ3Vy YXRpb25hZG1pbmJyaWRnZS9zcmMvdGVzdC9qYXZhL29yZy9hcGFjaGUvem9va2VlcGVyL2NvbmZp Z3VyYXRpb25hZG1pbmJyaWRnZS9GYWtlQ29uZmlndXJhdGlvbkFkbWluLmphdmGtVE1v1DAQPWel /Q9DT4lYWdzLIlUVFZX4Ej2iHlxnkph17Mh2sl1Q/zv+WKJ1kkVAucSy53nemzcTd5TtaI2gdE1o R1mD5LtSO8QONWFKVrzuNbVcSVq2XD5oXtZ4uV6tV7ztlLbwjQ6UcEVuP719ZNh55GUa7C0X5B01 zQfaLYXOHAtV11zW5L1bUZ9Seq3K1JxUmra4V3pHbuVABS/vDtLSxwUh4xWDeuAMCWvJ9Wl1fwG9 8kYEPV3/IDgDJqgxcEN3OMeByyqwRWkNLER/rFdZp/lALYLz4fWd1a7mTQp9A0kjDGxB4h6Olp65 kxdB4pjdWHfOILoJIi7b497hsozUaOM2X66FhEI97KPzPS9+MUQXEjwwjY71hjKr9CEJ5VEvVDH2 mZdFoLeNVnsDJ3MU3Mk02l5LkL0Qji97+j+cm8B5PBaKBVgBzxfh3Fmk7hwnTPn+pPBZQpep+HcR 52ucmJnstpMR9EMwCsl4BfkEvw1eFTFzNk3mx3c2Y7ltuNnAmDWbUHZ9oNykUiL26cQwNvmvf2PU 13sQ3KRemXFYuLCoz/VoA8tvTtK7SQUO36PJC2LVldb0kHsfUkGv7ue9HRQvoUSBFvO0SdXUw6Ph viGzGLxImxLfAMJlpfKLL9iqwVedtmrPbeM7AhfhSpa9nHP6WXB/VHwP5m3TPjPO5UyuxYrD131+ AlBLBwj4jH5gDAIAAJcGAABQSwECFAAUAAgACACtebw8HjxKPxIBAADFAgAAOAAAAAAAAAAAAAAA AAAAAAAAb3JnLmFwYWNoZS56b29rZWVwZXIuY29uZmlndXJhdGlvbmFkbWluYnJpZGdlLy5jbGFz c3BhdGhQSwECFAAUAAgACADleb88phym//EAAABXAgAANgAAAAAAAAAAAAAAAAB4AQAAb3JnLmFw YWNoZS56b29rZWVwZXIuY29uZmlndXJhdGlvbmFkbWluYnJpZGdlLy5wcm9qZWN0UEsBAhQAFAAI AAgAEWXBPCv+3Dx3AgAA/QgAADUAAAAAAAAAAAAAAAAAzQIAAG9yZy5hcGFjaGUuem9va2VlcGVy LmNvbmZpZ3VyYXRpb25hZG1pbmJyaWRnZS9wb20ueG1sUEsBAhQAFAAIAAgA43y8PGXB+OH1AAAA uAIAAFIAAAAAAAAAAAAAAAAApwUAAG9yZy5hcGFjaGUuem9va2VlcGVyLmNvbmZpZ3VyYXRpb25h ZG1pbmJyaWRnZS8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LmNvcmUucHJlZnNQSwECFAAUAAgA CACtebw8j2arFrsAAAAQAQAAUwAAAAAAAAAAAAAAAAAcBwAAb3JnLmFwYWNoZS56b29rZWVwZXIu Y29uZmlndXJhdGlvbmFkbWluYnJpZGdlLy5zZXR0aW5ncy9vcmcubWF2ZW4uaWRlLmVjbGlwc2Uu cHJlZnNQSwECFAAUAAgACAAta8E8mOpmDswBAAADBQAAeAAAAAAAAAAAAAAAAABYCAAAb3JnLmFw YWNoZS56b29rZWVwZXIuY29uZmlndXJhdGlvbmFkbWluYnJpZGdlL3NyYy9tYWluL2phdmEvb3Jn L2FwYWNoZS96b29rZWVwZXIvY29uZmlndXJhdGlvbmFkbWluYnJpZGdlL0FjdGl2YXRvci5qYXZh UEsBAhQAFAAIAAgAFGvBPKHVvBhwAQAANgQAAI8AAAAAAAAAAAAAAAAAygoAAG9yZy5hcGFjaGUu em9va2VlcGVyLmNvbmZpZ3VyYXRpb25hZG1pbmJyaWRnZS9zcmMvbWFpbi9qYXZhL29yZy9hcGFj aGUvem9va2VlcGVyL2NvbmZpZ3VyYXRpb25hZG1pbmJyaWRnZS9Db25maWd1cmF0aW9uQWRtaW5T ZXJ2aWNlVHJhY2tlci5qYXZhUEsBAhQAFAAIAAgAO2vBPMgodm3pAAAA0wIAAHgAAAAAAAAAAAAA AAAA9wwAAG9yZy5hcGFjaGUuem9va2VlcGVyLmNvbmZpZ3VyYXRpb25hZG1pbmJyaWRnZS9zcmMv bWFpbi9qYXZhL29yZy9hcGFjaGUvem9va2VlcGVyL2NvbmZpZ3VyYXRpb25hZG1pbmJyaWRnZS9D b25zdGFudHMuamF2YVBLAQIUABQACAAIAHtrwTxPPQxOmAQAAGwSAACGAAAAAAAAAAAAAAAAAIYO AABvcmcuYXBhY2hlLnpvb2tlZXBlci5jb25maWd1cmF0aW9uYWRtaW5icmlkZ2Uvc3JjL21haW4v amF2YS9vcmcvYXBhY2hlL3pvb2tlZXBlci9jb25maWd1cmF0aW9uYWRtaW5icmlkZ2UvWm9va2Vl cGVyTWFuYWdlZFNlcnZpY2UuamF2YVBLAQIUABQACAAIAGtrwTw9fSF0dwAAAKUAAAB/AAAAAAAA AAAAAAAAANITAABvcmcuYXBhY2hlLnpvb2tlZXBlci5jb25maWd1cmF0aW9uYWRtaW5icmlkZ2Uv c3JjL21haW4vamF2YS9vcmcvYXBhY2hlL3pvb2tlZXBlci9jb25maWd1cmF0aW9uYWRtaW5icmlk Z2UvWm9va2VlcGVyTW9uaXRvci5qYXZhUEsBAhQAFAAIAAgAi2vBPEg5e0/sBgAAghkAAIIAAAAA AAAAAAAAAAAA9hQAAG9yZy5hcGFjaGUuem9va2VlcGVyLmNvbmZpZ3VyYXRpb25hZG1pbmJyaWRn ZS9zcmMvbWFpbi9qYXZhL29yZy9hcGFjaGUvem9va2VlcGVyL2NvbmZpZ3VyYXRpb25hZG1pbmJy aWRnZS9pbnRlcm5hbC9QaWRNb25pdG9yLmphdmFQSwECFAAUAAgACACaa8E89nvJUSwDAADGDQAA fAAAAAAAAAAAAAAAAACSHAAAb3JnLmFwYWNoZS56b29rZWVwZXIuY29uZmlndXJhdGlvbmFkbWlu YnJpZGdlL3NyYy9tYWluL2phdmEvb3JnL2FwYWNoZS96b29rZWVwZXIvY29uZmlndXJhdGlvbmFk bWluYnJpZGdlL2ludGVybmFsL1V0aWwuamF2YVBLAQIUABQACAAIAKhrwTy453bN/QQAAF4UAACE AAAAAAAAAAAAAAAAAGggAABvcmcuYXBhY2hlLnpvb2tlZXBlci5jb25maWd1cmF0aW9uYWRtaW5i cmlkZ2Uvc3JjL21haW4vamF2YS9vcmcvYXBhY2hlL3pvb2tlZXBlci9jb25maWd1cmF0aW9uYWRt aW5icmlkZ2UvaW50ZXJuYWwvWk5vZGVNb25pdG9yLmphdmFQSwECFAAUAAgACADmasE8BHeYzkoC AAD9BAAAdwAAAAAAAAAAAAAAAAAXJgAAb3JnLmFwYWNoZS56b29rZWVwZXIuY29uZmlndXJhdGlv bmFkbWluYnJpZGdlL3NyYy90ZXN0L2phdmEvb3JnL2FwYWNoZS96b29rZWVwZXIvY29uZmlndXJh dGlvbmFkbWluYnJpZGdlL0V4ZWN1dG9yLmphdmFQSwECFAAUAAgACAAwcb88QmMcfe4BAADjBQAA gAAAAAAAAAAAAAAAAAAGKQAAb3JnLmFwYWNoZS56b29rZWVwZXIuY29uZmlndXJhdGlvbmFkbWlu YnJpZGdlL3NyYy90ZXN0L2phdmEvb3JnL2FwYWNoZS96b29rZWVwZXIvY29uZmlndXJhdGlvbmFk bWluYnJpZGdlL0Zha2VDb25maWd1cmF0aW9uLmphdmFQSwECFAAUAAgACAAwcb88+Ix+YAwCAACX BgAAhQAAAAAAAAAAAAAAAACiKwAAb3JnLmFwYWNoZS56b29rZWVwZXIuY29uZmlndXJhdGlvbmFk bWluYnJpZGdlL3NyYy90ZXN0L2phdmEvb3JnL2FwYWNoZS96b29rZWVwZXIvY29uZmlndXJhdGlv bmFkbWluYnJpZGdlL0Zha2VDb25maWd1cmF0aW9uQWRtaW4uamF2YVBLBQYAAAAAEAAQAKoJAABh LgAAAAA= --0016e68deb901256dc0487f672f1 Content-Type: text/plain; charset=us-ascii --------------------------------------------------------------------- To unsubscribe, e-mail: william16@example.org For additional commands, e-mail: william16@example.org --0016e68deb901256dc0487f672f1-- From william16@example.org Tue Jun 01 12:46:53 2010 Return-Path: <william16@example.org> Delivered-To: william16@example.org Received: (qmail 17164 invoked from network); 1 Jun 2010 12:46:53 -0000 Received: from unknown (HELO mail.apache.org) (83.161.120.155) by 83.161.120.155 with SMTP; 1 Jun 2010 12:46:53 -0000 Received: (qmail 77601 invoked by uid 500); 1 Jun 2010 12:46:52 -0000 Delivered-To: william16@example.org Received: (qmail 77539 invoked by uid 500); 1 Jun 2010 12:46:52 -0000 Mailing-List: contact william16@example.org; run by ezmlm Precedence: bulk List-Help: <mailto:william16@example.org> List-Unsubscribe: <mailto:william16@example.org> List-Post: <mailto:william16@example.org> List-Id: <users.felix.apache.org> Reply-To: william16@example.org Delivered-To: mailing list william16@example.org Received: (qmail 77531 invoked by uid 99); 1 Jun 2010 12:46:51 -0000 Received: from athena.apache.org (HELO athena.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 01 Jun 2010 12:46:51 +0000 X-ASF-Spam-Status: No, hits=0.2 required=10.0 tests=AWL,RCVD_IN_DNSWL_NONE,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of william16@example.org designates 83.161.120.155 as permitted sender) Received: from [83.161.120.155] (HELO outbound-mail-158.bluehost.com) (83.161.120.155) by apache.org (qpsmtpd/0.29) with SMTP; Tue, 01 Jun 2010 12:46:45 +0000 Received: (qmail 3438 invoked by uid 0); 1 Jun 2010 12:46:24 -0000 Received: from unknown (HELO host118.hostmonster.com) (83.161.120.155) by cpoproxy2.bluehost.com with SMTP; 1 Jun 2010 12:46:24 -0000 DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=default; d=ungoverned.org; h=Received:Message-ID:Date:From:User-Agent:MIME-Version:To:CC:Subject:References:In-Reply-To:Content-Type:Content-Transfer-Encoding:X-Identified-User; b=cJfyXqZD7/hHJJcHNpH0qeZfnmrOIILTNJXvL2mTup59q9/43QpgDfygavfAYCBLcz3Hum9nxmqkHIPK1QnbeUI4+BINeIQjehna3Bxf0npOuWRtgcH3m4Tnmu0+Apsf; Received: from [83.161.120.155] (helo=heavyweight.glastender.com) by host118.hostmonster.com with esmtpsa (TLSv1:AES256-SHA:256) (Exim 4.69) (envelope-from <william16@example.org>) id 1OJQrQ-0008PM-MD; Tue, 01 Jun 2010 06:46:24 -0600 Message-ID: <william16@example.org> Date: Tue, 01 Jun 2010 08:46:23 -0400 From: "Richard S. Hall" <william16@example.org> User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:83.161.120.155) Gecko/20100512 Lightning/1.0b1 Thunderbird/3.0.5 MIME-Version: 1.0 To: william16@example.org CC: charbel el_kaed <william16@example.org> Subject: Re: Get a file from another bundle References: <william16@example.org> In-Reply-To: <william16@example.org> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Identified-User: {1027:host118.hostmonster.com:ungovern:ungoverned.org} {sentby:smtp auth 83.161.120.155 authed with william16@example.org} On 5/31/10 19:57, charbel el_kaed wrote: > > Hi, > > I would like to parse a WSDL file located on a another bundle. > I am having the following URL Device WSDLDocumentLocation: bundle://41.0:1/org/soa4d/osgi/dpws/lighting/generated/Lighting.wsdl > > but while parsing it using wsdl4j I am having the following error: > javax.wsdl.WSDLException: WSDLException: faultCode=OTHER_ERROR: Unable to resolve imported document at 'bundle:\41.0:1\org\soa4d\osgi\dpws\lighti > ng\generated\Lighting.wsdl'.: java.io.IOException: No bundle associated with resource: bundle://:-1\41.0:1\org\soa4d\osgi\dpws\lighting\generated > \Lighting.wsdl > > Anybody had similar problem ? > I am not sure why I am having a -1 in the path ? > I'm not sure what to tell you. I would guess that wsdl4j is trying to construct a URL for the imported document and doing so incorrectly. I'm not sure what it is doing. -> richard > Do you know another way to retrieve a file from another bundle and how to parse it ? > I am using the following code > WSDLFactory factory = WSDLFactory.newInstance(); > WSDLReader reader = factory.newWSDLReader(); > > Device_WSDL_Document_Location = ((WebService) dpwsDevice).getWSDLDocumentLocation(); > > System.out.println("Device WSDLDocumentLocation: "+Device_WSDL_Document_Location); > WSDL_file = reader.readWSDL(Device_WSDL_Document_Location.toString()); > > > > > Thanks and regards, > Charbel. > > > > > > > _________________________________________________________________ > Hotmail: Trusted email with powerful SPAM protection. > https://signup.live.com/signup.aspx?id=60969 > --------------------------------------------------------------------- To unsubscribe, e-mail: william16@example.org For additional commands, e-mail: william16@example.org From william16@example.org Tue Jun 01 14:28:27 2010 Return-Path: <william16@example.org> Delivered-To: william16@example.org Received: (qmail 58515 invoked from network); 1 Jun 2010 14:28:27 -0000 Received: from unknown (HELO mail.apache.org) (83.161.120.155) by 83.161.120.155 with SMTP; 1 Jun 2010 14:28:27 -0000 Received: (qmail 73185 invoked by uid 500); 1 Jun 2010 14:28:27 -0000 Delivered-To: william16@example.org Received: (qmail 73151 invoked by uid 500); 1 Jun 2010 14:28:27 -0000 Mailing-List: contact william16@example.org; run by ezmlm Precedence: bulk List-Help: <mailto:william16@example.org> List-Unsubscribe: <mailto:william16@example.org> List-Post: <mailto:william16@example.org> List-Id: <users.felix.apache.org> Reply-To: william16@example.org Delivered-To: mailing list william16@example.org Received: (qmail 73143 invoked by uid 99); 1 Jun 2010 14:28:27 -0000 Received: from athena.apache.org (HELO athena.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 01 Jun 2010 14:28:26 +0000 X-ASF-Spam-Status: No, hits=2.2 required=10.0 tests=FREEMAIL_FROM,HTML_MESSAGE,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of william16@example.org designates 83.161.120.155 as permitted sender) Received: from [83.161.120.155] (HELO mail-yx0-f177.google.com) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 01 Jun 2010 14:28:19 +0000 Received: by yxe42 with SMTP id 42so539790yxe.22 for <william16@example.org>; Tue, 01 Jun 2010 07:27:58 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:received:date:message-id :subject:from:to:content-type; bh=U+6T8QsqGc47JT4BsD0O1odLJyCwq4LpVzYDIYtV/og=; b=tz0WYKBBaC7/3px81vMeStUbH9OND4RoCIVR12b6/MHO+Twxxmvsv2uNmh2z+dcjri 4BYZQoFgYTPk6kwndVfdf8gQaA1b1v7Cpj13W0YKMbnzRrzHxtMA+2g1a1hrWeR56cnU YomGSisWeffHHsalkiNi8kkPPWkMlkkrpZFno= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:date:message-id:subject:from:to:content-type; b=V/MWS9EDFZbD0l89/AEvhAXB1wNZX6FE3BbsrBkMcKI4r+WZaKXptNlIHMTH1YtC9f fLiByyHh+C0V006ZtZqanEMndSy9z64M10rpaUuhhxxmZQtE4Jd0FmjmdrvyABl+kb7L fJpjEV+pqGGH40zFSRHYwzXFxPdU5y51qzcJE= MIME-Version: 1.0 Received: by 83.161.120.155 with SMTP id c31mr6213902ybi.196.1275402476368; Tue, 01 Jun 2010 07:27:56 -0700 (PDT) Received: by 83.161.120.155 with HTTP; Tue, 1 Jun 2010 07:27:55 -0700 (PDT) Date: Tue, 1 Jun 2010 11:27:55 -0300 Message-ID: <william16@example.org> Subject: Integrating Felix with NetBeans From: Romualdo Rubens de Freitas <william16@example.org> To: Apache Felix Users <william16@example.org> Content-Type: multipart/alternative; boundary=000e0cd676a48d9ae30487f8c787 --000e0cd676a48d9ae30487f8c787 Content-Type: text/plain; charset=ISO-8859-1 Hi All, I'm using Felix 2.0.5 and NetBeans 6.8 and I am getting troubles when I try to integrate Felix with NetBeans. I followed the link: https://cwiki.apache.org/confluence/display/FELIX/Integrating+Felix+with+NetBeans but after copying the Felix contents to the newly created project the red exclamation doesn't appear as stated in the steps above. I continue with the steps and try to run Felix but NetBeans doesn't find the main class anyway. Any help would be appreciated. TIA, Romualdo. --000e0cd676a48d9ae30487f8c787-- From william16@example.org Tue Jun 01 14:58:38 2010 Return-Path: <william16@example.org> Delivered-To: william16@example.org Received: (qmail 67461 invoked from network); 1 Jun 2010 14:58:38 -0000 Received: from unknown (HELO mail.apache.org) (83.161.120.155) by 83.161.120.155 with SMTP; 1 Jun 2010 14:58:38 -0000 Received: (qmail 18940 invoked by uid 500); 1 Jun 2010 14:58:38 -0000 Delivered-To: william16@example.org Received: (qmail 18898 invoked by uid 500); 1 Jun 2010 14:58:37 -0000 Mailing-List: contact william16@example.org; run by ezmlm Precedence: bulk List-Help: <mailto:william16@example.org> List-Unsubscribe: <mailto:william16@example.org> List-Post: <mailto:william16@example.org> List-Id: <users.felix.apache.org> Reply-To: william16@example.org Delivered-To: mailing list william16@example.org Received: (qmail 18889 invoked by uid 99); 1 Jun 2010 14:58:37 -0000 Received: from nike.apache.org (HELO nike.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 01 Jun 2010 14:58:37 +0000 X-ASF-Spam-Status: No, hits=-0.0 required=10.0 tests=RCVD_IN_DNSWL_NONE,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of william16@example.org designates 83.161.120.155 as permitted sender) Received: from [83.161.120.155] (HELO outbound-mail-313.bluehost.com) (83.161.120.155) by apache.org (qpsmtpd/0.29) with SMTP; Tue, 01 Jun 2010 14:58:27 +0000 Received: (qmail 17787 invoked by uid 0); 1 Jun 2010 14:58:05 -0000 Received: from unknown (HELO host118.hostmonster.com) (83.161.120.155) by cpoproxy3.bluehost.com with SMTP; 1 Jun 2010 14:58:05 -0000 DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=default; d=ungoverned.org; h=Received:Message-ID:Date:From:User-Agent:MIME-Version:To:Subject:References:In-Reply-To:Content-Type:Content-Transfer-Encoding:X-Identified-User; b=59wrX0c2HkJBeLgijKVlv9vAVa27lWxFwuFOJNYuayfBE9Gx48Cn7jbCgRivSdrrEjRb/6ZVgAli2R757k4TgkGASgkN9572Z5sMc6S4uI3kEZtOX0VyS1uiqN2zjWmK; Received: from clt-ea-fw-1.sun.com ([83.161.120.155] helo=heavyweight.glastender.com) by host118.hostmonster.com with esmtpsa (TLSv1:AES256-SHA:256) (Exim 4.69) (envelope-from <william16@example.org>) id 1OJSur-00030O-2l for william16@example.org; Tue, 01 Jun 2010 08:58:05 -0600 Message-ID: <william16@example.org> Date: Tue, 01 Jun 2010 10:58:02 -0400 From: "Richard S. Hall" <william16@example.org> User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:83.161.120.155) Gecko/20100512 Lightning/1.0b1 Thunderbird/3.0.5 MIME-Version: 1.0 To: william16@example.org Subject: Re: Integrating Felix with NetBeans References: <william16@example.org> In-Reply-To: <william16@example.org> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Identified-User: {1027:host118.hostmonster.com:ungovern:ungoverned.org} {sentby:smtp auth 83.161.120.155 authed with william16@example.org} X-Virus-Checked: Checked by ClamAV on apache.org Perhaps it would be easier to try the NetBeans 6.9 release candidate, since it has built-in support for OSGi and includes the Felix framework... -> richard On 6/1/10 10:27, Romualdo Rubens de Freitas wrote: > Hi All, > > I'm using Felix 2.0.5 and NetBeans 6.8 and I am getting troubles when I try > to integrate Felix with NetBeans. > > I followed the link: > https://cwiki.apache.org/confluence/display/FELIX/Integrating+Felix+with+NetBeans > > but after copying the Felix contents to the newly created project the red > exclamation > doesn't appear as stated in the steps above. I continue with the steps and > try to run > Felix but NetBeans doesn't find the main class anyway. > > Any help would be appreciated. > > TIA, > Romualdo. > > --------------------------------------------------------------------- To unsubscribe, e-mail: william16@example.org For additional commands, e-mail: william16@example.org From william16@example.org Wed Jun 02 06:22:16 2010 Return-Path: <william16@example.org> Delivered-To: william16@example.org Received: (qmail 10510 invoked from network); 2 Jun 2010 06:22:16 -0000 Received: from unknown (HELO mail.apache.org) (83.161.120.155) by 83.161.120.155 with SMTP; 2 Jun 2010 06:22:16 -0000 Received: (qmail 56624 invoked by uid 500); 2 Jun 2010 06:22:16 -0000 Delivered-To: william16@example.org Received: (qmail 56384 invoked by uid 500); 2 Jun 2010 06:22:13 -0000 Mailing-List: contact william16@example.org; run by ezmlm Precedence: bulk List-Help: <mailto:william16@example.org> List-Unsubscribe: <mailto:william16@example.org> List-Post: <mailto:william16@example.org> List-Id: <users.felix.apache.org> Reply-To: william16@example.org Delivered-To: mailing list william16@example.org Received: (qmail 56365 invoked by uid 99); 2 Jun 2010 06:22:12 -0000 Received: from nike.apache.org (HELO nike.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 02 Jun 2010 06:22:12 +0000 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests=FREEMAIL_FROM,SPF_PASS,T_TO_NO_BRKTS_FREEMAIL X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of william16@example.org designates 83.161.120.155 as permitted sender) Received: from [83.161.120.155] (HELO mail-ww0-f49.google.com) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 02 Jun 2010 06:22:06 +0000 Received: by wwi18 with SMTP id 18so212400wwi.22 for <william16@example.org>; Tue, 01 Jun 2010 23:21:45 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:received:in-reply-to :references:date:message-id:subject:from:to:content-type :content-transfer-encoding; bh=rePWMfmOnfYJ6AVIoSX6VXPZXE9jQOxXC8kki/K0HN8=; b=Gjz6Ahnt9NLQQBuiTRjmB8XxhwWZjg3ehgKbLlEZ99ITk1fqb4zy60MoY6QE+xrFZ6 yd6Uv5xTV/0ScmdeXPRfAInOP7oekc9AASGFRoC5EGcLY7rmCJHfEtle14AMQNH/y0Ag qHhSa2gSRtpoRyh/SWz6A0ZdbTb+DMTQU0f+w= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type:content-transfer-encoding; b=JjCtFu9IhOP7oW96Iy3l9tkI6LsiA9/qN9Uu03pFuA5pTaN/YIU2BlbgLsVY9Mh6E/ y5C/uYnc9JSN+7cPvN9uRRCxvVSMYTVOTG8Bt3HjHXCtIuHMAuCslvV9vab8FH2jLO8B m6TNwoMbqBuQaMWkZNyhVIjEAaoXYbLLgmKUE= MIME-Version: 1.0 Received: by 83.161.120.155 with SMTP id t48mr629521wee.59.1275459705677; Tue, 01 Jun 2010 23:21:45 -0700 (PDT) Received: by 83.161.120.155 with HTTP; Tue, 1 Jun 2010 23:21:45 -0700 (PDT) In-Reply-To: <william16@example.org> References: <william16@example.org> Date: Wed, 2 Jun 2010 08:21:45 +0200 Message-ID: <william16@example.org> Subject: Re: Bridge between zookeeper and OSGI configuration admin From: Guillaume Nodet <william16@example.org> To: william16@example.org Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable X-Virus-Checked: Checked by ClamAV on apache.org I actually find the idea very interesting. For some time I was considering writing an LDAP back-end but never got the time to actually do it. If you intend to contribute it, it might make sense to raise a JIRA and attach it there. I actually have hardly used zookeeper, so I have a few questions (bear with me if they are dumb). I guess one of the use case I have in mind is the following: you have several nodes, each of those is configured roughly with the same set of things, but you want to override some values for each node if needed. The question is, can zookeper be used to somehow share some data, or do you need to duplicate all the configurations. Another question: is there any tool that could help pushing some initial data into zookeeper ? On Tue, Jun 1, 2010 at 13:40, Leen Toelen <william16@example.org> wrote: > Hi, > > I have created a proof of concept bridge between zookeeper and the > configurationadmin service, and allows for a centralized configuration > of an osgi system. If anyone is interested in giving it a try, please > go ahead. > > The managed service is created with this PID: > "org.apache.zookeeper.configurationadminbridge" and needs the > following properties > - zookeeper.hostname > - zookeeper.port > - znode > > A ZooKeeper session is created on the given znode, and every znode > child is treated as a key-value pair which is synced with the > configurationadmin, much like fileinstall does. When a pid contains > '-', it is treated as a factory config. > > > Zookeeper structure: > > /com/worlddomination/ =A0 =A0 =A0 =A0 =A0 -> znode > - myservicepid =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0-> chil= d service pid, with child znodes > =A0 =A0 - property1: value > =A0 =A0 - property2: value > - myfactoryservicepid-test =A0 =A0 =A0 =A0 =A0 =A0 =A0-> factory child se= rvice pid, with child znodes > =A0 =A0 - property1: value > =A0 =A0 - property2: value > > The synchronization is one-way so every zookeeper change is pushed to > configurationadmin, but changes to configurationadmin directly are > ignored. > > Regards, > Leen > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: william16@example.org > For additional commands, e-mail: william16@example.org > --=20 Cheers, Guillaume Nodet ------------------------ Blog: http://gnodet.blogspot.com/ ------------------------ Open Source SOA http://fusesource.com --------------------------------------------------------------------- To unsubscribe, e-mail: william16@example.org For additional commands, e-mail: william16@example.org From william16@example.org Wed Jun 02 09:18:22 2010 Return-Path: <william16@example.org> Delivered-To: william16@example.org Received: (qmail 67494 invoked from network); 2 Jun 2010 09:18:22 -0000 Received: from unknown (HELO mail.apache.org) (83.161.120.155) by 83.161.120.155 with SMTP; 2 Jun 2010 09:18:22 -0000 Received: (qmail 71765 invoked by uid 500); 2 Jun 2010 09:18:21 -0000 Delivered-To: william16@example.org Received: (qmail 71544 invoked by uid 500); 2 Jun 2010 09:18:19 -0000 Mailing-List: contact william16@example.org; run by ezmlm Precedence: bulk List-Help: <mailto:william16@example.org> List-Unsubscribe: <mailto:william16@example.org> List-Post: <mailto:william16@example.org> List-Id: <users.felix.apache.org> Reply-To: william16@example.org Delivered-To: mailing list william16@example.org Received: (qmail 71536 invoked by uid 99); 2 Jun 2010 09:18:18 -0000 Received: from nike.apache.org (HELO nike.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 02 Jun 2010 09:18:18 +0000 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests=FREEMAIL_FROM,SPF_PASS,T_TO_NO_BRKTS_FREEMAIL X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of william16@example.org designates 83.161.120.155 as permitted sender) Received: from [83.161.120.155] (HELO mail-gy0-f177.google.com) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 02 Jun 2010 09:18:12 +0000 Received: by gyb11 with SMTP id 11so4186755gyb.22 for <william16@example.org>; Wed, 02 Jun 2010 02:17:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:received:in-reply-to :references:date:message-id:subject:from:to:content-type :content-transfer-encoding; bh=6gdL6GwYdmi2MtYPOmVvqyQPaTOJha3MqmacdU1fL1E=; b=E2Q6cl2KazivYo/RujraMMAfM/PYTjuji2UldPxi+APKNyIi041J+YVFp7DipQrE9F aMQFT0sPHqiTqZFKjc6PgJFsclNSVmYmhQcr8eo3NNsGsKcXLR7VUcz+JoSwmNChnZx/ MDns0tE3m+6LklQ6Xe8yH133lKI4TRvGGNzy8= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type:content-transfer-encoding; b=ZxMp8Oyg4+VoYNOpo2fAfOOKS6UAKnZvkD5tmxajQf2JUZujOeZnpfAmobgYCXBYqd IwXZz0sV+DdRCsu23xQANieO5fhG3K4oFnJ9/BVyg87jia+FyRJj198CKYWBVNgb4aTy xAzIwFhinjoQJVKhU2i3BbzONMeM6Cdi/yuK4= MIME-Version: 1.0 Received: by 83.161.120.155 with SMTP id k5mr8448353ann.169.1275470271347; Wed, 02 Jun 2010 02:17:51 -0700 (PDT) Received: by 83.161.120.155 with HTTP; Wed, 2 Jun 2010 02:17:51 -0700 (PDT) In-Reply-To: <william16@example.org> References: <william16@example.org> <william16@example.org> Date: Wed, 2 Jun 2010 11:17:51 +0200 Message-ID: <william16@example.org> Subject: Re: Bridge between zookeeper and OSGI configuration admin From: Leen Toelen <william16@example.org> To: william16@example.org Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable X-Virus-Checked: Checked by ClamAV on apache.org Hi, there are several uses cases for zookeeper, but my two goals are - publish a service existence and parameters in zookeeper so other services can find it (mostly an ephemeral znode is used here) - configure service parameters centrally I don't think zookeeper has the idea of default values, so what you can do is create a 'default tree' with all the default values and then a per-service tree with overrides for the defaults. This has to be coded in however. Zookeeper comes with a shell tool that can be used to create nodes, I don't know if a bulk insert tool exists. There is also an eclipse plugin that I am using at http://www.massedynamic.org/mediawiki/index.php?title=3DEclipse_Plug-in_for= _ZooKeeper. I am more than willing to contribute the initial code, where should I put the jira ticket? Regards, Leen On Wed, Jun 2, 2010 at 8:21 AM, Guillaume Nodet <william16@example.org> wrote: > I actually find the idea very interesting. =A0For some time I was > considering writing an LDAP back-end but never got the time to > actually do it. > If you intend to contribute it, it might make sense to raise a JIRA > and attach it there. > > I actually have hardly used zookeeper, so I have a few questions (bear > with me if they are dumb). > I guess one of the use case I have in mind is the following: =A0you have > several nodes, each of those is configured roughly with the same set > of things, but you want to override some values for each node if > needed. =A0The question is, can zookeper be used to somehow share some > data, or do you need to duplicate all the configurations. > Another question: is there any tool that could help pushing some > initial data into zookeeper ? > > On Tue, Jun 1, 2010 at 13:40, Leen Toelen <william16@example.org> wrote: >> Hi, >> >> I have created a proof of concept bridge between zookeeper and the >> configurationadmin service, and allows for a centralized configuration >> of an osgi system. If anyone is interested in giving it a try, please >> go ahead. >> >> The managed service is created with this PID: >> "org.apache.zookeeper.configurationadminbridge" and needs the >> following properties >> - zookeeper.hostname >> - zookeeper.port >> - znode >> >> A ZooKeeper session is created on the given znode, and every znode >> child is treated as a key-value pair which is synced with the >> configurationadmin, much like fileinstall does. When a pid contains >> '-', it is treated as a factory config. >> >> >> Zookeeper structure: >> >> /com/worlddomination/ =A0 =A0 =A0 =A0 =A0 -> znode >> - myservicepid =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0-> chi= ld service pid, with child znodes >> =A0 =A0 - property1: value >> =A0 =A0 - property2: value >> - myfactoryservicepid-test =A0 =A0 =A0 =A0 =A0 =A0 =A0-> factory child s= ervice pid, with child znodes >> =A0 =A0 - property1: value >> =A0 =A0 - property2: value >> >> The synchronization is one-way so every zookeeper change is pushed to >> configurationadmin, but changes to configurationadmin directly are >> ignored. >> >> Regards, >> Leen >> >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: william16@example.org >> For additional commands, e-mail: william16@example.org >> > > > > -- > Cheers, > Guillaume Nodet > ------------------------ > Blog: http://gnodet.blogspot.com/ > ------------------------ > Open Source SOA > http://fusesource.com > > --------------------------------------------------------------------- > To unsubscribe, e-mail: william16@example.org > For additional commands, e-mail: william16@example.org > > --------------------------------------------------------------------- To unsubscribe, e-mail: william16@example.org For additional commands, e-mail: william16@example.org From william16@example.org Wed Jun 02 11:58:37 2010 Return-Path: <william16@example.org> Delivered-To: william16@example.org Received: (qmail 14060 invoked from network); 2 Jun 2010 11:58:36 -0000 Received: from unknown (HELO mail.apache.org) (83.161.120.155) by 83.161.120.155 with SMTP; 2 Jun 2010 11:58:36 -0000 Received: (qmail 89978 invoked by uid 500); 2 Jun 2010 11:58:36 -0000 Delivered-To: william16@example.org Received: (qmail 89760 invoked by uid 500); 2 Jun 2010 11:58:34 -0000 Mailing-List: contact william16@example.org; run by ezmlm Precedence: bulk List-Help: <mailto:william16@example.org> List-Unsubscribe: <mailto:william16@example.org> List-Post: <mailto:william16@example.org> List-Id: <users.felix.apache.org> Reply-To: william16@example.org Delivered-To: mailing list william16@example.org Received: (qmail 89752 invoked by uid 99); 2 Jun 2010 11:58:33 -0000 Received: from nike.apache.org (HELO nike.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 02 Jun 2010 11:58:33 +0000 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests=FREEMAIL_FROM,SPF_HELO_PASS,SPF_PASS,T_TO_NO_BRKTS_FREEMAIL X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of william16@example.org designates 83.161.120.155 as permitted sender) Received: from [83.161.120.155] (HELO kuber.nabble.com) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 02 Jun 2010 11:58:27 +0000 Received: from isper.nabble.com ([83.161.120.155]) by kuber.nabble.com with esmtp (Exim 4.63) (envelope-from <william16@example.org>) id 1OJmaE-0007xC-8V for william16@example.org; Wed, 02 Jun 2010 04:58:06 -0700 Message-ID: <william16@example.org> Date: Wed, 2 Jun 2010 04:58:06 -0700 (PDT) From: Norbert Somlai <william16@example.org> To: william16@example.org Subject: Is configuring service properties the Spring DM way possible with Declarative Services MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Nabble-From: william16@example.org X-Virus-Checked: Checked by ClamAV on apache.org Hi, I know how to use FileInstall or the Web Console to reconfigure a component. What I could not find is a way to declaratively configure a component instance in component.xml, so I could keep the reference and the configuration at the same place. Something like <reference interface="com.acme.IInterface" bind="setInterface" unbind="unsetInterface" policy="dynamic" cardinality="1..1" > <property name="param1" value="value1"/> ... </reference> and the ComponentContext on activation would contain this property so the new instance could initialize itself with it. Is there a way to achieve something like this with DS or DS+CM? Thanks, Norbert -- View this message in context: http://old.nabble.com/Is-configuring-service-properties-the-Spring-DM-way-possible-with-Declarative-Services-tp28753396p28753396.html Sent from the Apache Felix - Users mailing list william16@example.org. --------------------------------------------------------------------- To unsubscribe, e-mail: william16@example.org For additional commands, e-mail: william16@example.org From william16@example.org Wed Jun 02 13:23:02 2010 Return-Path: <william16@example.org> Delivered-To: william16@example.org Received: (qmail 53552 invoked from network); 2 Jun 2010 13:23:02 -0000 Received: from unknown (HELO mail.apache.org) (83.161.120.155) by 83.161.120.155 with SMTP; 2 Jun 2010 13:23:02 -0000 Received: (qmail 91801 invoked by uid 500); 2 Jun 2010 13:23:01 -0000 Delivered-To: william16@example.org Received: (qmail 91701 invoked by uid 500); 2 Jun 2010 13:23:00 -0000 Mailing-List: contact william16@example.org; run by ezmlm Precedence: bulk List-Help: <mailto:william16@example.org> List-Unsubscribe: <mailto:william16@example.org> List-Post: <mailto:william16@example.org> List-Id: <users.felix.apache.org> Reply-To: william16@example.org Delivered-To: mailing list william16@example.org Received: (qmail 91685 invoked by uid 99); 2 Jun 2010 13:23:00 -0000 Received: from athena.apache.org (HELO athena.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 02 Jun 2010 13:23:00 +0000 X-ASF-Spam-Status: No, hits=0.2 required=10.0 tests=AWL,RCVD_IN_DNSWL_NONE,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of william16@example.org designates 83.161.120.155 as permitted sender) Received: from [83.161.120.155] (HELO outbound-mail-313.bluehost.com) (83.161.120.155) by apache.org (qpsmtpd/0.29) with SMTP; Wed, 02 Jun 2010 13:22:53 +0000 Received: (qmail 2593 invoked by uid 0); 2 Jun 2010 13:22:32 -0000 Received: from unknown (HELO host118.hostmonster.com) (83.161.120.155) by cpoproxy3.bluehost.com with SMTP; 2 Jun 2010 13:22:32 -0000 DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=default; d=ungoverned.org; h=Received:Message-ID:Date:From:User-Agent:MIME-Version:To:Subject:References:In-Reply-To:Content-Type:Content-Transfer-Encoding:X-Identified-User; b=cCpMCOI3nhjPYmLpSE/rP2roRUotD9mZL/vye+gF2+5KM/zH6JSnRJqMVnumhw+lq99Fb8sIc6asFX/iuKotUTQezf0CtCpURDoN31iJJg6NZ56kowqL2as5N+m408Tx; Received: from clt-ea-fw-1.sun.com ([83.161.120.155] helo=heavyweight.glastender.com) by host118.hostmonster.com with esmtpsa (TLSv1:AES256-SHA:256) (Exim 4.69) (envelope-from <william16@example.org>) id 1OJntw-0006v0-6w for william16@example.org; Wed, 02 Jun 2010 07:22:32 -0600 Message-ID: <william16@example.org> Date: Wed, 02 Jun 2010 09:22:31 -0400 From: "Richard S. Hall" <william16@example.org> User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:83.161.120.155) Gecko/20100512 Lightning/1.0b1 Thunderbird/3.0.5 MIME-Version: 1.0 To: william16@example.org Subject: Re: Is configuring service properties the Spring DM way possible with Declarative Services References: <william16@example.org> In-Reply-To: <william16@example.org> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Identified-User: {1027:host118.hostmonster.com:ungovern:ungoverned.org} {sentby:smtp auth 83.161.120.155 authed with william16@example.org} On 6/2/10 7:58, Norbert Somlai wrote: > Hi, > > I know how to use FileInstall or the Web Console to reconfigure a component. > What I could not find is a way to declaratively configure a component > instance in component.xml, so I could keep the reference and the > configuration at the same place. Something like > > <reference interface="com.acme.IInterface" bind="setInterface" > unbind="unsetInterface" policy="dynamic" cardinality="1..1"> > > <property name="param1" value="value1"/> > ... > </reference> > > and the ComponentContext on activation would contain this property so the > new instance could initialize itself with it. > > Is there a way to achieve something like this with DS or DS+CM? > I thought that _was_ the point of the <property> tag in DS... -> richard > Thanks, Norbert > --------------------------------------------------------------------- To unsubscribe, e-mail: william16@example.org For additional commands, e-mail: william16@example.org From william16@example.org Wed Jun 02 13:52:23 2010 Return-Path: <william16@example.org> Delivered-To: william16@example.org Received: (qmail 64149 invoked from network); 2 Jun 2010 13:52:23 -0000 Received: from unknown (HELO mail.apache.org) (83.161.120.155) by 83.161.120.155 with SMTP; 2 Jun 2010 13:52:23 -0000 Received: (qmail 34059 invoked by uid 500); 2 Jun 2010 13:52:23 -0000 Delivered-To: william16@example.org Received: (qmail 34005 invoked by uid 500); 2 Jun 2010 13:52:22 -0000 Mailing-List: contact william16@example.org; run by ezmlm Precedence: bulk List-Help: <mailto:william16@example.org> List-Unsubscribe: <mailto:william16@example.org> List-Post: <mailto:william16@example.org> List-Id: <users.felix.apache.org> Reply-To: william16@example.org Delivered-To: mailing list william16@example.org Received: (qmail 33997 invoked by uid 99); 2 Jun 2010 13:52:22 -0000 Received: from nike.apache.org (HELO nike.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 02 Jun 2010 13:52:22 +0000 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests=FREEMAIL_FROM,RCVD_IN_DNSWL_NONE,SPF_PASS,T_TO_NO_BRKTS_FREEMAIL X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of william16@example.org designates 83.161.120.155 as permitted sender) Received: from [83.161.120.155] (HELO mail-pw0-f49.google.com) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 02 Jun 2010 13:52:13 +0000 Received: by pwi2 with SMTP id 2so2638916pwi.22 for <william16@example.org>; Wed, 02 Jun 2010 06:51:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from:reply-to :user-agent:mime-version:to:subject:references:in-reply-to :content-type:content-transfer-encoding; bh=yBGNC5GCGew0qt51222NolrCykStCn+H3I7jrvThmEg=; b=qqnOGq2/8BeK6tBaBUimkgpGWPJCAaoieEp2lLV4mceVHTeMURl2BSU1ltvrVUssIH f923LSi3uhzbrTHAAr6X4+UUnCcrmqzgcKKkhWFY5bg4rI0YQ5ro1rVu82WM2ZhUqCZu nh8gN9UcgwYhK8HBZBoRNcEmiCuOymw+kVzWM= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:reply-to:user-agent:mime-version:to:subject :references:in-reply-to:content-type:content-transfer-encoding; b=whuHhCRisXcba+8PDdsC3JBPQ9PZqCh8LZGAPvrAhXGcFtfJnOGXZe10ECGfdS0lid AAwKKD1s4ZpIGhypF90OOuDc90DsUuZPZ+A4I6/kZwox7vs065N1ol1/amVPDE7sWNbL 2dlBPKRQbiVSZUIJEeK6ucm4Lt7gnpCzq6PJk= Received: by 83.161.120.155 with SMTP id f2mr4867410wfg.208.1275486711228; Wed, 02 Jun 2010 06:51:51 -0700 (PDT) Received: from Justin-Edelsons-iMac.local (ool-44c6554e.dyn.optonline.net [83.161.120.155]) by mx.google.com with ESMTPS id y27sm2127690wfi.5.283.161.120.155.51.48 (version=SSLv3 cipher=RC4-MD5); Wed, 02 Jun 2010 06:51:49 -0700 (PDT) Message-ID: <william16@example.org> Date: Wed, 02 Jun 2010 09:51:46 -0400 From: Justin Edelson <william16@example.org> Reply-To: william16@example.org User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:83.161.120.155) Gecko/20100317 Thunderbird/3.0.4 MIME-Version: 1.0 To: william16@example.org Subject: Re: Is configuring service properties the Spring DM way possible with Declarative Services References: <william16@example.org> In-Reply-To: <william16@example.org> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org On 6/2/10 7:58 AM, Norbert Somlai wrote: > > Hi, > > I know how to use FileInstall or the Web Console to reconfigure a component. > What I could not find is a way to declaratively configure a component > instance in component.xml, so I could keep the reference and the > configuration at the same place. Something like > > <reference interface="com.acme.IInterface" bind="setInterface" > unbind="unsetInterface" policy="dynamic" cardinality="1..1" > > > <property name="param1" value="value1"/> > ... > </reference> > > and the ComponentContext on activation would contain this property so the > new instance could initialize itself with it. > > Is there a way to achieve something like this with DS or DS+CM? > > Thanks, Norbert Did you mean to nest the <property> element within the <reference> element like that? That's not valid. <property> elements need to go at the same level as the <reference> element (i.e. directly within the <component> element). Justin --------------------------------------------------------------------- To unsubscribe, e-mail: william16@example.org For additional commands, e-mail: william16@example.org From william16@example.org Wed Jun 02 13:55:45 2010 Return-Path: <william16@example.org> Delivered-To: william16@example.org Received: (qmail 64882 invoked from network); 2 Jun 2010 13:55:45 -0000 Received: from unknown (HELO mail.apache.org) (83.161.120.155) by 83.161.120.155 with SMTP; 2 Jun 2010 13:55:45 -0000 Received: (qmail 41677 invoked by uid 500); 2 Jun 2010 13:55:44 -0000 Delivered-To: william16@example.org Received: (qmail 41539 invoked by uid 500); 2 Jun 2010 13:55:44 -0000 Mailing-List: contact william16@example.org; run by ezmlm Precedence: bulk List-Help: <mailto:william16@example.org> List-Unsubscribe: <mailto:william16@example.org> List-Post: <mailto:william16@example.org> List-Id: <users.felix.apache.org> Reply-To: william16@example.org Delivered-To: mailing list william16@example.org Received: (qmail 41531 invoked by uid 99); 2 Jun 2010 13:55:44 -0000 Received: from nike.apache.org (HELO nike.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 02 Jun 2010 13:55:44 +0000 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests=FREEMAIL_FROM,SPF_HELO_PASS,SPF_PASS,T_TO_NO_BRKTS_FREEMAIL X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of william16@example.org designates 83.161.120.155 as permitted sender) Received: from [83.161.120.155] (HELO kuber.nabble.com) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 02 Jun 2010 13:55:38 +0000 Received: from isper.nabble.com ([83.161.120.155]) by kuber.nabble.com with esmtp (Exim 4.63) (envelope-from <william16@example.org>) id 1OJoPd-00018m-Ie for william16@example.org; Wed, 02 Jun 2010 06:55:17 -0700 Message-ID: <william16@example.org> Date: Wed, 2 Jun 2010 06:55:17 -0700 (PDT) From: Norbert Somlai <william16@example.org> To: william16@example.org Subject: Re: Is configuring service properties the Spring DM way possible with Declarative Services In-Reply-To: <william16@example.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Nabble-From: william16@example.org References: <william16@example.org> <william16@example.org> X-Virus-Checked: Checked by ClamAV on apache.org I would like to configure a component instance from the _referring_ component, not just provide default properties for a component. Where can I specify the properties in the referrers component.xml? The DTD does not seem to allow a <property> element in a <reference> element. Norbert Richard S. Hall wrote: > > On 6/2/10 7:58, Norbert Somlai wrote: >> Hi, >> >> I know how to use FileInstall or the Web Console to reconfigure a >> component. >> What I could not find is a way to declaratively configure a component >> instance in component.xml, so I could keep the reference and the >> configuration at the same place. Something like >> >> <reference interface="com.acme.IInterface" bind="setInterface" >> unbind="unsetInterface" policy="dynamic" cardinality="1..1"> >> >> <property name="param1" value="value1"/> >> ... >> </reference> >> >> and the ComponentContext on activation would contain this property so the >> new instance could initialize itself with it. >> >> Is there a way to achieve something like this with DS or DS+CM? >> > > I thought that _was_ the point of the <property> tag in DS... > > -> richard > >> Thanks, Norbert >> > > --------------------------------------------------------------------- > To unsubscribe, e-mail: william16@example.org > For additional commands, e-mail: william16@example.org > > > -- View this message in context: http://old.nabble.com/Is-configuring-service-properties-the-Spring-DM-way-possible-with-Declarative-Services-tp28753396p28754873.html Sent from the Apache Felix - Users mailing list william16@example.org. --------------------------------------------------------------------- To unsubscribe, e-mail: william16@example.org For additional commands, e-mail: william16@example.org From william16@example.org Wed Jun 02 14:17:50 2010 Return-Path: <william16@example.org> Delivered-To: william16@example.org Received: (qmail 74267 invoked from network); 2 Jun 2010 14:17:50 -0000 Received: from unknown (HELO mail.apache.org) (83.161.120.155) by 83.161.120.155 with SMTP; 2 Jun 2010 14:17:50 -0000 Received: (qmail 82887 invoked by uid 500); 2 Jun 2010 14:17:49 -0000 Delivered-To: william16@example.org Received: (qmail 82842 invoked by uid 500); 2 Jun 2010 14:17:49 -0000 Mailing-List: contact william16@example.org; run by ezmlm Precedence: bulk List-Help: <mailto:william16@example.org> List-Unsubscribe: <mailto:william16@example.org> List-Post: <mailto:william16@example.org> List-Id: <users.felix.apache.org> Reply-To: william16@example.org Delivered-To: mailing list william16@example.org Received: (qmail 82834 invoked by uid 99); 2 Jun 2010 14:17:49 -0000 Received: from nike.apache.org (HELO nike.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 02 Jun 2010 14:17:49 +0000 X-ASF-Spam-Status: No, hits=-0.0 required=10.0 tests=RCVD_IN_DNSWL_NONE,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of william16@example.org designates 83.161.120.155 as permitted sender) Received: from [83.161.120.155] (HELO outbound-mail-01.bluehost.com) (83.161.120.155) by apache.org (qpsmtpd/0.29) with SMTP; Wed, 02 Jun 2010 14:17:41 +0000 Received: (qmail 27157 invoked by uid 0); 2 Jun 2010 14:17:19 -0000 Received: from unknown (HELO host118.hostmonster.com) (83.161.120.155) by cpoproxy1.bluehost.com with SMTP; 2 Jun 2010 14:17:19 -0000 DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=default; d=ungoverned.org; h=Received:Message-ID:Date:From:User-Agent:MIME-Version:To:Subject:References:In-Reply-To:Content-Type:Content-Transfer-Encoding:X-Identified-User; b=qnUfkK0d/WDLTVEFk7mhOfLiTTSQLzttk6ANznK5n+Rpk71PnFFUfUC512p+DeMcQ3i6SjobeL+ljEVfVd5N3VueYixiFffSfkzVMeCwmi8d2ExkH91UMqpy4dhyvh01; Received: from clt-ea-fw-1.sun.com ([83.161.120.155] helo=heavyweight.glastender.com) by host118.hostmonster.com with esmtpsa (TLSv1:AES256-SHA:256) (Exim 4.69) (envelope-from <william16@example.org>) id 1OJokw-0001vR-Sd for william16@example.org; Wed, 02 Jun 2010 08:17:19 -0600 Message-ID: <william16@example.org> Date: Wed, 02 Jun 2010 10:17:16 -0400 From: "Richard S. Hall" <william16@example.org> User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:83.161.120.155) Gecko/20100512 Lightning/1.0b1 Thunderbird/3.0.5 MIME-Version: 1.0 To: william16@example.org Subject: Re: Is configuring service properties the Spring DM way possible with Declarative Services References: <william16@example.org> <william16@example.org> <william16@example.org> In-Reply-To: <william16@example.org> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Identified-User: {1027:host118.hostmonster.com:ungovern:ungoverned.org} {sentby:smtp auth 83.161.120.155 authed with william16@example.org} X-Virus-Checked: Checked by ClamAV on apache.org On 6/2/10 9:55, Norbert Somlai wrote: > I would like to configure a component instance from the _referring_ > component, not just provide default properties for a component. Where can I > specify the properties in the referrers component.xml? The DTD does not seem > to allow a<property> element in a<reference> element. > Ah, sorry, I understand now. Yeah, I don't think that is possibly. The basis is there with component factories, but I think this would require a spec change or be an impl-specific feature. -> richard > Norbert > > > Richard S. Hall wrote: > >> On 6/2/10 7:58, Norbert Somlai wrote: >> >>> Hi, >>> >>> I know how to use FileInstall or the Web Console to reconfigure a >>> component. >>> What I could not find is a way to declaratively configure a component >>> instance in component.xml, so I could keep the reference and the >>> configuration at the same place. Something like >>> >>> <reference interface="com.acme.IInterface" bind="setInterface" >>> unbind="unsetInterface" policy="dynamic" cardinality="1..1"> >>> >>> <property name="param1" value="value1"/> >>> ... >>> </reference> >>> >>> and the ComponentContext on activation would contain this property so the >>> new instance could initialize itself with it. >>> >>> Is there a way to achieve something like this with DS or DS+CM? >>> >>> >> I thought that _was_ the point of the<property> tag in DS... >> >> -> richard >> >> >>> Thanks, Norbert >>> >>> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: william16@example.org >> For additional commands, e-mail: william16@example.org >> >> >> >> > --------------------------------------------------------------------- To unsubscribe, e-mail: william16@example.org For additional commands, e-mail: william16@example.org From william16@example.org Wed Jun 02 14:24:51 2010 Return-Path: <william16@example.org> Delivered-To: william16@example.org Received: (qmail 75372 invoked from network); 2 Jun 2010 14:24:51 -0000 Received: from unknown (HELO mail.apache.org) (83.161.120.155) by 83.161.120.155 with SMTP; 2 Jun 2010 14:24:51 -0000 Received: (qmail 92217 invoked by uid 500); 2 Jun 2010 14:24:51 -0000 Delivered-To: william16@example.org Received: (qmail 92188 invoked by uid 500); 2 Jun 2010 14:24:50 -0000 Mailing-List: contact william16@example.org; run by ezmlm Precedence: bulk List-Help: <mailto:william16@example.org> List-Unsubscribe: <mailto:william16@example.org> List-Post: <mailto:william16@example.org> List-Id: <users.felix.apache.org> Reply-To: william16@example.org Delivered-To: mailing list william16@example.org Received: (qmail 92180 invoked by uid 99); 2 Jun 2010 14:24:50 -0000 Received: from athena.apache.org (HELO athena.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 02 Jun 2010 14:24:50 +0000 X-ASF-Spam-Status: No, hits=0.2 required=10.0 tests=AWL,RCVD_IN_DNSWL_NONE,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of william16@example.org designates 83.161.120.155 as permitted sender) Received: from [83.161.120.155] (HELO outbound-mail-158.bluehost.com) (83.161.120.155) by apache.org (qpsmtpd/0.29) with SMTP; Wed, 02 Jun 2010 14:24:44 +0000 Received: (qmail 27304 invoked by uid 0); 2 Jun 2010 14:24:24 -0000 Received: from unknown (HELO host118.hostmonster.com) (83.161.120.155) by cpoproxy2.bluehost.com with SMTP; 2 Jun 2010 14:24:24 -0000 DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=default; d=ungoverned.org; h=Received:Message-ID:Date:From:User-Agent:MIME-Version:To:Subject:References:In-Reply-To:Content-Type:Content-Transfer-Encoding:X-Identified-User; b=yzs2Qo+50RBqunzxcd7PsZ486omS6NBetFlPl2zWCNPlxq1fWE9LACzYyMHLBuVzNgBau6IPIR9WX3JqjiJ0gafse7UGsclf5w8iGF10meJH7kEqYJxgcXXkRHYOof6O; Received: from clt-ea-fw-1.sun.com ([83.161.120.155] helo=heavyweight.glastender.com) by host118.hostmonster.com with esmtpsa (TLSv1:AES256-SHA:256) (Exim 4.69) (envelope-from <william16@example.org>) id 1OJorn-0004A3-Hl for william16@example.org; Wed, 02 Jun 2010 08:24:24 -0600 Message-ID: <william16@example.org> Date: Wed, 02 Jun 2010 10:24:22 -0400 From: "Richard S. Hall" <william16@example.org> User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:83.161.120.155) Gecko/20100512 Lightning/1.0b1 Thunderbird/3.0.5 MIME-Version: 1.0 To: william16@example.org Subject: Re: Bridge between zookeeper and OSGI configuration admin References: <william16@example.org> <william16@example.org> <william16@example.org> In-Reply-To: <william16@example.org> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Identified-User: {1027:host118.hostmonster.com:ungovern:ungoverned.org} {sentby:smtp auth 83.161.120.155 authed with william16@example.org} Just wondering, rather than creating a bridge, wouldn't it make more sense to just create a new Configuration Admin implementation that uses Zookeeper as its back end? Or is there some other benefit to creating a bridge? -> richard On 6/2/10 5:17, Leen Toelen wrote: > Hi, > > there are several uses cases for zookeeper, but my two goals are > - publish a service existence and parameters in zookeeper so other > services can find it (mostly an ephemeral znode is used here) > - configure service parameters centrally > > I don't think zookeeper has the idea of default values, so what you > can do is create a 'default tree' with all the default values and then > a per-service tree with overrides for the defaults. This has to be > coded in however. > > Zookeeper comes with a shell tool that can be used to create nodes, I > don't know if a bulk insert tool exists. There is also an eclipse > plugin that I am using at > http://www.massedynamic.org/mediawiki/index.php?title=Eclipse_Plug-in_for_ZooKeeper. > > I am more than willing to contribute the initial code, where should I > put the jira ticket? > > Regards, > Leen > > On Wed, Jun 2, 2010 at 8:21 AM, Guillaume Nodet<william16@example.org> wrote: > >> I actually find the idea very interesting. For some time I was >> considering writing an LDAP back-end but never got the time to >> actually do it. >> If you intend to contribute it, it might make sense to raise a JIRA >> and attach it there. >> >> I actually have hardly used zookeeper, so I have a few questions (bear >> with me if they are dumb). >> I guess one of the use case I have in mind is the following: you have >> several nodes, each of those is configured roughly with the same set >> of things, but you want to override some values for each node if >> needed. The question is, can zookeper be used to somehow share some >> data, or do you need to duplicate all the configurations. >> Another question: is there any tool that could help pushing some >> initial data into zookeeper ? >> >> On Tue, Jun 1, 2010 at 13:40, Leen Toelen<william16@example.org> wrote: >> >>> Hi, >>> >>> I have created a proof of concept bridge between zookeeper and the >>> configurationadmin service, and allows for a centralized configuration >>> of an osgi system. If anyone is interested in giving it a try, please >>> go ahead. >>> >>> The managed service is created with this PID: >>> "org.apache.zookeeper.configurationadminbridge" and needs the >>> following properties >>> - zookeeper.hostname >>> - zookeeper.port >>> - znode >>> >>> A ZooKeeper session is created on the given znode, and every znode >>> child is treated as a key-value pair which is synced with the >>> configurationadmin, much like fileinstall does. When a pid contains >>> '-', it is treated as a factory config. >>> >>> >>> Zookeeper structure: >>> >>> /com/worlddomination/ -> znode >>> - myservicepid -> child service pid, with child znodes >>> - property1: value >>> - property2: value >>> - myfactoryservicepid-test -> factory child service pid, with child znodes >>> - property1: value >>> - property2: value >>> >>> The synchronization is one-way so every zookeeper change is pushed to >>> configurationadmin, but changes to configurationadmin directly are >>> ignored. >>> >>> Regards, >>> Leen >>> >>> >>> --------------------------------------------------------------------- >>> To unsubscribe, e-mail: william16@example.org >>> For additional commands, e-mail: william16@example.org >>> >>> >> >> >> -- >> Cheers, >> Guillaume Nodet >> ------------------------ >> Blog: http://gnodet.blogspot.com/ >> ------------------------ >> Open Source SOA >> http://fusesource.com >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: william16@example.org >> For additional commands, e-mail: william16@example.org >> >> >> > --------------------------------------------------------------------- > To unsubscribe, e-mail: william16@example.org > For additional commands, e-mail: william16@example.org > > --------------------------------------------------------------------- To unsubscribe, e-mail: william16@example.org For additional commands, e-mail: william16@example.org From william16@example.org Wed Jun 02 14:26:32 2010 Return-Path: <william16@example.org> Delivered-To: william16@example.org Received: (qmail 76243 invoked from network); 2 Jun 2010 14:26:31 -0000 Received: from unknown (HELO mail.apache.org) (83.161.120.155) by 83.161.120.155 with SMTP; 2 Jun 2010 14:26:31 -0000 Received: (qmail 96453 invoked by uid 500); 2 Jun 2010 14:26:31 -0000 Delivered-To: william16@example.org Received: (qmail 96324 invoked by uid 500); 2 Jun 2010 14:26:31 -0000 Mailing-List: contact william16@example.org; run by ezmlm Precedence: bulk List-Help: <mailto:william16@example.org> List-Unsubscribe: <mailto:william16@example.org> List-Post: <mailto:william16@example.org> List-Id: <users.felix.apache.org> Reply-To: william16@example.org Delivered-To: mailing list william16@example.org Received: (qmail 96316 invoked by uid 99); 2 Jun 2010 14:26:31 -0000 Received: from athena.apache.org (HELO athena.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 02 Jun 2010 14:26:31 +0000 X-ASF-Spam-Status: No, hits=2.2 required=10.0 tests=FREEMAIL_FROM,HTML_MESSAGE,RCVD_IN_DNSWL_NONE,SPF_PASS,T_TO_NO_BRKTS_FREEMAIL X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of william16@example.org designates 83.161.120.155 as permitted sender) Received: from [83.161.120.155] (HELO mail-gw0-f49.google.com) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 02 Jun 2010 14:26:25 +0000 Received: by gwj18 with SMTP id 18so4428701gwj.22 for <william16@example.org>; Wed, 02 Jun 2010 07:26:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:mime-version:received:from:date :message-id:subject:to:content-type; bh=TSVat/WmzY6hIOwHw60AWLgC+v9jXIif5XsD/wHdAfo=; b=EvxdTXJ+CW42u2/ONTBGPvJbKPL3k+DM1AIXj2c82922YdY8oq8VW/0ZeIKuP5363a nb87DvVWucwnuU1Gd114YMps9C04wVQ0FgRj3jJeZE4njML9Ppod5qSqdnSCmG3eEr+5 YcFNgdhDM+x/3hDGCr1sCG/LWlyM9d9E7Y668= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:from:date:message-id:subject:to:content-type; b=DSHfoJ1r+7WT8wPSmTrnBYiciJVNIRabPQvkqTFE7EWxllT+BtiRYP8jAY69KfywaL qehSJn4FZ9Z322oxIRShJus4hbBJWI+dbwQpFyuQ3bmLvFM95AlGxFloiQsK/l8L0PFJ iQNhnG2/IYhsKs17Nt6d43pUTB/fqDzNFZMUo= Received: by 83.161.120.155 with SMTP id p17mr2174396ibz.32.1275488764164; Wed, 02 Jun 2010 07:26:04 -0700 (PDT) MIME-Version: 1.0 Received: by 83.161.120.155 with HTTP; Wed, 2 Jun 2010 07:25:44 -0700 (PDT) From: Jan Goyvaerts <william16@example.org> Date: Wed, 2 Jun 2010 16:25:44 +0200 Message-ID: <william16@example.org> Subject: Automatic bundle installation with Maven To: william16@example.org Content-Type: multipart/alternative; boundary=001485e8d144b3fc3704880cde78 --001485e8d144b3fc3704880cde78 Content-Type: text/plain; charset=ISO-8859-1 I've vainly been trying to use Felix' bundle plugin to install/deploy a bundle Maven artifact to the Felix repository in Glassfish. In the end I've used the Ant run plugin to copy the bundle jar to the deployment directory: <profile> <id>install-on-local-glassfish</id> <build> <plugins> <plugin> <artifactId>maven-antrun-plugin</artifactId> <executions> <execution> <phase>install</phase> <configuration> <tasks> <copy file="target/helloworld-1.0-SNAPSHOT.jar" toDir="/u01/app/glassfish-3.0.1-b19/glassfish/domains/domain1/autodeploy/bundles"/> </tasks> </configuration> <goals> <goal>run</goal> </goals> </execution> </executions> </plugin> </plugins> </build> </profile> But there's probably a much better, cleaner to do this. Or is there ? --001485e8d144b3fc3704880cde78-- From william16@example.org Wed Jun 02 14:29:57 2010 Return-Path: <william16@example.org> Delivered-To: william16@example.org Received: (qmail 77458 invoked from network); 2 Jun 2010 14:29:56 -0000 Received: from unknown (HELO mail.apache.org) (83.161.120.155) by 83.161.120.155 with SMTP; 2 Jun 2010 14:29:56 -0000 Received: (qmail 3150 invoked by uid 500); 2 Jun 2010 14:29:53 -0000 Delivered-To: william16@example.org Received: (qmail 3093 invoked by uid 500); 2 Jun 2010 14:29:53 -0000 Mailing-List: contact william16@example.org; run by ezmlm Precedence: bulk List-Help: <mailto:william16@example.org> List-Unsubscribe: <mailto:william16@example.org> List-Post: <mailto:william16@example.org> List-Id: <users.felix.apache.org> Reply-To: william16@example.org Delivered-To: mailing list william16@example.org Received: (qmail 3050 invoked by uid 99); 2 Jun 2010 14:29:53 -0000 Received: from nike.apache.org (HELO nike.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 02 Jun 2010 14:29:53 +0000 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests=FREEMAIL_FROM,SPF_PASS,T_TO_NO_BRKTS_FREEMAIL X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of william16@example.org designates 83.161.120.155 as permitted sender) Received: from [83.161.120.155] (HELO mail-fx0-f49.google.com) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 02 Jun 2010 14:29:47 +0000 Received: by fxm15 with SMTP id 15so4762034fxm.22 for <william16@example.org>; Wed, 02 Jun 2010 07:29:27 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:received:in-reply-to :references:date:message-id:subject:from:to:content-type :content-transfer-encoding; bh=WiOsK48J0iJr5sMWtO9JHN/COI/F7UELnRNmba8/p40=; b=f+57nccb5CPUUu4IfPHxmMO+74ve90GvFkk+3/9AVleFDkh9UX/LK6OL2J/DYrGGUB kT/pjqNm5epl+madSMOrVqOwgNgypDpVm00Cnrxw/3ArOikeWKQfADv3wFZD7lr/oUoA uyEv2n4GxLx1MamUlO3nKW2jbbvUY4302ViHo= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type:content-transfer-encoding; b=iyV7Mgs47xL1BWPpH96MLI3CV84cJrdSLUsIxqqvPde4Ffi5k9TCrtaSXvYpdErQ0M wfP02ntgzhY/P/e8y59/6EaTKcb83Sc1YE5brOi4jRdgcHTslDWs/c8UkjjVc+NllyqZ yYm3NrcwD7r0kJNvREG9pUpHwgl73VVBMf4hs= MIME-Version: 1.0 Received: by 83.161.120.155 with SMTP id o24mr8771794fan.29.1275488964253; Wed, 02 Jun 2010 07:29:24 -0700 (PDT) Received: by 83.161.120.155 with HTTP; Wed, 2 Jun 2010 07:29:24 -0700 (PDT) In-Reply-To: <william16@example.org> References: <william16@example.org> <william16@example.org> <william16@example.org> <william16@example.org> Date: Wed, 2 Jun 2010 16:29:24 +0200 Message-ID: <william16@example.org> Subject: Re: Bridge between zookeeper and OSGI configuration admin From: Guillaume Nodet <william16@example.org> To: william16@example.org Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable X-Virus-Checked: Checked by ClamAV on apache.org Wouldn't that be a problem to have ConfigAdmin pushing config updates automatically ? The current implementation has a pluggable backend storage, but it can't be used to push changes. Maybe if the interface of the store is enhanced, it would be more usable. On Wed, Jun 2, 2010 at 16:24, Richard S. Hall <william16@example.org> wrote: > Just wondering, rather than creating a bridge, wouldn't it make more sens= e > to just create a new Configuration Admin implementation that uses Zookeep= er > as its back end? Or is there some other benefit to creating a bridge? > > -> richard > > On 6/2/10 5:17, Leen Toelen wrote: >> >> Hi, >> >> there are several uses cases for zookeeper, but my two goals are >> - publish a service existence and parameters in zookeeper so other >> services can find it (mostly an ephemeral znode is used here) >> - configure service parameters centrally >> >> I don't think zookeeper has the idea of default values, so what you >> can do is create a 'default tree' with all the default values and then >> a per-service tree with overrides for the defaults. This has to be >> coded in however. >> >> Zookeeper comes with a shell tool that can be used to create nodes, I >> don't know if a bulk insert tool exists. There is also an eclipse >> plugin that I am using at >> >> http://www.massedynamic.org/mediawiki/index.php?title=3DEclipse_Plug-in_= for_ZooKeeper. >> >> I am more than willing to contribute the initial code, where should I >> put the jira ticket? >> >> Regards, >> Leen >> >> On Wed, Jun 2, 2010 at 8:21 AM, Guillaume Nodet<william16@example.org> =A0wro= te: >> >>> >>> I actually find the idea very interesting. =A0For some time I was >>> considering writing an LDAP back-end but never got the time to >>> actually do it. >>> If you intend to contribute it, it might make sense to raise a JIRA >>> and attach it there. >>> >>> I actually have hardly used zookeeper, so I have a few questions (bear >>> with me if they are dumb). >>> I guess one of the use case I have in mind is the following: =A0you hav= e >>> several nodes, each of those is configured roughly with the same set >>> of things, but you want to override some values for each node if >>> needed. =A0The question is, can zookeper be used to somehow share some >>> data, or do you need to duplicate all the configurations. >>> Another question: is there any tool that could help pushing some >>> initial data into zookeeper ? >>> >>> On Tue, Jun 1, 2010 at 13:40, Leen Toelen<william16@example.org> =A0wrote: >>> >>>> >>>> Hi, >>>> >>>> I have created a proof of concept bridge between zookeeper and the >>>> configurationadmin service, and allows for a centralized configuration >>>> of an osgi system. If anyone is interested in giving it a try, please >>>> go ahead. >>>> >>>> The managed service is created with this PID: >>>> "org.apache.zookeeper.configurationadminbridge" and needs the >>>> following properties >>>> - zookeeper.hostname >>>> - zookeeper.port >>>> - znode >>>> >>>> A ZooKeeper session is created on the given znode, and every znode >>>> child is treated as a key-value pair which is synced with the >>>> configurationadmin, much like fileinstall does. When a pid contains >>>> '-', it is treated as a factory config. >>>> >>>> >>>> Zookeeper structure: >>>> >>>> /com/worlddomination/ =A0 =A0 =A0 =A0 =A0 -> =A0znode >>>> - myservicepid =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0-> = =A0child service pid, with >>>> child znodes >>>> =A0 =A0 - property1: value >>>> =A0 =A0 - property2: value >>>> - myfactoryservicepid-test =A0 =A0 =A0 =A0 =A0 =A0 =A0-> =A0factory ch= ild service pid, >>>> with child znodes >>>> =A0 =A0 - property1: value >>>> =A0 =A0 - property2: value >>>> >>>> The synchronization is one-way so every zookeeper change is pushed to >>>> configurationadmin, but changes to configurationadmin directly are >>>> ignored. >>>> >>>> Regards, >>>> Leen >>>> >>>> >>>> --------------------------------------------------------------------- >>>> To unsubscribe, e-mail: william16@example.org >>>> For additional commands, e-mail: william16@example.org >>>> >>>> >>> >>> >>> -- >>> Cheers, >>> Guillaume Nodet >>> ------------------------ >>> Blog: http://gnodet.blogspot.com/ >>> ------------------------ >>> Open Source SOA >>> http://fusesource.com >>> >>> --------------------------------------------------------------------- >>> To unsubscribe, e-mail: william16@example.org >>> For additional commands, e-mail: william16@example.org >>> >>> >>> >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: william16@example.org >> For additional commands, e-mail: william16@example.org >> >> > > --------------------------------------------------------------------- > To unsubscribe, e-mail: william16@example.org > For additional commands, e-mail: william16@example.org > > --=20 Cheers, Guillaume Nodet ------------------------ Blog: http://gnodet.blogspot.com/ ------------------------ Open Source SOA http://fusesource.com --------------------------------------------------------------------- To unsubscribe, e-mail: william16@example.org For additional commands, e-mail: william16@example.org From william16@example.org Wed Jun 02 14:35:30 2010 Return-Path: <william16@example.org> Delivered-To: william16@example.org Received: (qmail 78740 invoked from network); 2 Jun 2010 14:35:30 -0000 Received: from unknown (HELO mail.apache.org) (83.161.120.155) by 83.161.120.155 with SMTP; 2 Jun 2010 14:35:30 -0000 Received: (qmail 15701 invoked by uid 500); 2 Jun 2010 14:35:30 -0000 Delivered-To: william16@example.org Received: (qmail 15532 invoked by uid 500); 2 Jun 2010 14:35:30 -0000 Mailing-List: contact william16@example.org; run by ezmlm Precedence: bulk List-Help: <mailto:william16@example.org> List-Unsubscribe: <mailto:william16@example.org> List-Post: <mailto:william16@example.org> List-Id: <users.felix.apache.org> Reply-To: william16@example.org Delivered-To: mailing list william16@example.org Received: (qmail 15524 invoked by uid 99); 2 Jun 2010 14:35:30 -0000 Received: from nike.apache.org (HELO nike.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 02 Jun 2010 14:35:30 +0000 X-ASF-Spam-Status: No, hits=-0.0 required=10.0 tests=SPF_HELO_PASS,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of william16@example.org designates 83.161.120.155 as permitted sender) Received: from [83.161.120.155] (HELO mail.prosyst.com) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 02 Jun 2010 14:35:22 +0000 Received: (qmail 3928 invoked from network); 2 Jun 2010 14:30:57 -0000 Received: from wizard.prosyst.com (HELO ?83.161.120.155?) (83.161.120.155) by mail.prosyst.com with (DHE-RSA-AES256-SHA encrypted) SMTP; 2 Jun 2010 14:30:57 -0000 Message-ID: <william16@example.org> Date: Wed, 02 Jun 2010 16:35:01 +0200 From: Roman Roelofsen <william16@example.org> User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:83.161.120.155) Gecko/20100423 Lightning/1.0b1 Thunderbird/3.0.4 MIME-Version: 1.0 To: william16@example.org Subject: Re: Automatic bundle installation with Maven References: <william16@example.org> In-Reply-To: <william16@example.org> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 8bit X-Virus-Checked: Checked by ClamAV on apache.org Hi Jan, I wrote a small utility bundle (TBB) a while ago to simplify this code-test cycle. Whenever a bundle changes in your build directory, TBB will update it in your running target OSGi framework as
{'source': 'Apache Software Foundation Public Mail Archives'}