BH> The DS spec does not require you to specify both bind and unbind. So the BH> ProSyst implementation is incorrect in this respect. Thais exactly what I concluded ... just did not feel the need to go into the fight :-)
Kind regards, Peter Kriens BH> BJ Hargrave BH> Senior Technical Staff Member, IBM BH> OSGi Fellow and CTO of the OSGi Alliance BH> [EMAIL PROTECTED] BH> office: +1 386 848 1781 BH> mobile: +1 386 848 3788 BH> Peter Kriens <[EMAIL PROTECTED]> BH> 02/23/2007 02:32 AM BH> Please respond to BH> felix-dev@incubator.apache.org BH> To BH> "Steven E. Harris" <[EMAIL PROTECTED]> BH> cc BH> felix-dev@incubator.apache.org BH> Subject BH> Re: Bundle plugin/BND question -- Service-Component header BH> It turned out that the ProSyst implementation of Declarative Services BH> threw an exception if there was a bind method and no unbind method. I BH> think this is wrong, but I was not up for a fight about it so I added BH> the unbind method. I'll update the documentation to reflect this. BH> I find it is no real problem to not implement the unbind method even BH> though it is i the XML file. BH> Kind regards, BH> Peter Kriens BH> SEH>> The BND documentation¹ states that a Service-Component reference with BH> a SEH>> lowercase name provokes a bean-style "set" method to be mentioned in SEH>> the generated XML resource: SEH>> ,----[ Service-Component Header section ] SEH>> | In that case the reference is augmented with a set<Name> method SEH>> | according to the standard bean rules. An unset<Name> method is BH> added SEH>> | when the name appears in the list that is given to the dynamic SEH>> | directive. SEH>> `---- SEH>> Note the second sentence, which says that a corresponding "unset" SEH>> method will be mentioned if the reference is noted as being of SEH>> "dynamic" policy. SEH>> Later the document states that the default policy is "static": SEH>> ,---- SEH>> | The defaults are therefore aligned with the SCR: a cardinality of SEH>> | 1..1, and static policy. SEH>> `---- SEH>> However, I notice that with a maven-bundle-plugin directive like BH> this: SEH>> <Service-Component>com.foo.impl.BarImpl; SEH>> provide:=com.foo.Bar; SEH>> quux=com.foo.Quux</Service-Component> SEH>> The resulting OSGI-INF/com.foo.impl.BarImpl.xml file contains a SEH>> "reference" element like so: SEH>> <reference name='quux' SEH>> interface='com.foo.Quux' SEH>> bind='setQuux' SEH>> unbind='unsetQuux'/> SEH>> Note the presence of the "unbind" attribute. This conflicts with the SEH>> documentation above that states that the unbind method will only be SEH>> mentioned for "dynamic" policies. SEH>> Am I missing something, or is this a bug in BND? SEH>> Footnotes: SEH>> ¹ http://www.aqute.biz/Code/Bnd -- Peter Kriens Tel +33467542167 9C, Avenue St. Drézéry AOL,Yahoo: pkriens 34160 Beaulieu, France ICQ 255570717 Skype pkriens Fax +1 8153772599