URL: https://www.overclockers.at/coding-stuff/solvedequinox_3_4_declarative_services_und_nicht_v_198016/page_1 - zur Vollversion wechseln!
Ich hab ein OSGi Bundle, das über Declarative Services eine Component bereitstellt. Die Component Properties finden sich in einer eigenen Datei tool.properties
In der component.xml (die natürlich im Manifest eingetragen ist), findet sich die ZeileCode:miner.toolID=8 miner.toolClass=at.srfg.miner.tool.ITGTool.ITGTool miner.toolConfigSchema=ITGTool.xsd miner.toolResultSpec=ITGToolResult.xml miner.toolDescription=This tool can be used to...
Code:<properties entry="tool.properties"/>
Code:Registered Services {org.osgi.service.component.ComponentFactory}={miner.toolResultSpec=ITGToolResult.xml, component.name=miner.tool, miner.toolID=8, miner.toolDescription=This tool can be used ..., miner.toolClass=at.srfg.miner.tool.ITGTool.ITGTool, miner.toolConfigSchema=ITGTool.xsd, component.id=2, component.factory=miner.tool.factory, service.id=28}
Code:Registered Services {org.osgi.service.component.ComponentFactory}={component.factory=miner.tool.factory, component.name=miner.tool, service.id=35}

nachdem ich es bis jetzt nicht geschafft hab, verwende ich wieder Equinox 3.3 
etwas spaeter:
Mit Equinox 3.4 wurde die alte DS-Implementierung gegen die von der Firma Prosyst gespendete DS-Implementierung ausgestauscht. Diese unterscheidet zwischen ComponentFactory Properties und Component Properties, Equinox 3.3 hat das noch nicht getan.
Meine Loesung war jetzt, das .properties-File selbst einzulesen ..
overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2026