Hi,
it seems like that it's not possible to use parameters as default values for other parameters in icegrids XML templating language.
Example:
Unfortunately this leads to the following exception on update:HTML Code:<server-template id="MyTemplate"> <icebox id="${id}Box" exe="/usr/local/bin/icebox" activation="on-demand"> <parameter name="id"/> <parameter name="providedBy" default="${id}"/> <service name="${name}Service" entry="${providedBy}Service:create"> <adapter name="${service}" id="${name}" endpoints="ssl"/> </service> </icebox> </server-template>
Is there any other way to model this in an elegant way, or will I have to define two separate templates? (the background is that there are many similar icebox services, providing one service per instance but a few libraries can provide different services depending on configuration.) So the way I intended to use this would be:Code:error: IceGrid::DeploymentException: node `Node1': invalid value for attribute `default parameter `providedBy'': invalid variable `${id}': undefined variable `id'
cheersHTML Code:<server-instance id="Simple1" template="MyTemplate" /> <server-instance id="Simple2" template="MyTemplate" /> <server-instance id="Simple3" template="MyTemplate" /> <server-instance id="Red" providedBy="Colors" template="MyTemplate"> <properties service="${id}Service"> <property name="ColorHex" value="F00"/> </properties> </server-instance> <server-instance id="Green" providedBy="Colors" template="MyTemplate"> <properties service="${id}Service"> <property name="ColorHex" value="0F0"/> </properties> </server-instance> <server-instance id="Blue" providedBy="Colors" template="MyTemplate"> <properties service="${id}Service"> <property name="ColorHex" value="00F"/> </properties> </server-instance>
Michael

Reply With Quote
