Looks like something changed between 7.9.13 and 7.9.14 in the way template parameters are handled in the Template Canvas component. The template parameters as shown in the image used to work in 7.9.13
It works as expected in 8.0.13 Nightly
The template parameters were created using the Template Customizer.
I get the following errors:
WARN Vision.TemplateCanvas - Unable to set template property value on template zzz
java.lang.ClassCastException: Cannot coerce value 'true' into type: class java.lang.Boolean
at com.inductiveautomation.ignition.common.TypeUtilities.coerce(TypeUtilities.java:1335)
at com.inductiveautomation.factorypmi.application.binding.DynamicPropertyDescriptor.setValue(DynamicPropertyDescriptor.java:59)
at com.inductiveautomation.factorypmi.application.binding.util.DynamicPropertyUtil.setPropertyValue(DynamicPropertyUtil.java:260)
at com.inductiveautomation.vision.api.client.components.model.AbstractVisionPanel.setPropertyValue(AbstractVisionPanel.java:164)
at com.inductiveautomation.factorypmi.application.components.TemplateCanvas._finishBuilding(TemplateCanvas.java:314)
at com.inductiveautomation.factorypmi.application.components.TemplateCanvas$TemplateLoader.done(TemplateCanvas.java:695)
at javax.swing.SwingWorker$5.run(Unknown Source)
at javax.swing.SwingWorker$DoSubmitAccumulativeRunnable.run(Unknown Source)
at sun.swing.AccumulativeRunnable.run(Unknown Source)
at javax.swing.SwingWorker$DoSubmitAccumulativeRunnable.actionPerformed(Unknown Source)
at javax.swing.Timer.fireActionPerformed(Unknown Source)
at javax.swing.Timer$DoPostEvent.run(Unknown Source)
at java.awt.event.InvocationEvent.dispatch(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$500(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
07:11:13.119 [AWT-EventQueue-2] WARN Vision.TemplateCanvas - Unable to set template property value on template zzz
java.lang.ClassCastException: Cannot coerce value '1234.5678' into type: class java.lang.Double
at com.inductiveautomation.ignition.common.TypeUtilities.coerce(TypeUtilities.java:1335)
at com.inductiveautomation.factorypmi.application.binding.DynamicPropertyDescriptor.setValue(DynamicPropertyDescriptor.java:59)
at com.inductiveautomation.factorypmi.application.binding.util.DynamicPropertyUtil.setPropertyValue(DynamicPropertyUtil.java:260)
at com.inductiveautomation.vision.api.client.components.model.AbstractVisionPanel.setPropertyValue(AbstractVisionPanel.java:164)
at com.inductiveautomation.factorypmi.application.components.TemplateCanvas._finishBuilding(TemplateCanvas.java:314)
at com.inductiveautomation.factorypmi.application.components.TemplateCanvas$TemplateLoader.done(TemplateCanvas.java:695)
at javax.swing.SwingWorker$5.run(Unknown Source)
at javax.swing.SwingWorker$DoSubmitAccumulativeRunnable.run(Unknown Source)
at sun.swing.AccumulativeRunnable.run(Unknown Source)
at javax.swing.SwingWorker$DoSubmitAccumulativeRunnable.actionPerformed(Unknown Source)
at javax.swing.Timer.fireActionPerformed(Unknown Source)
at javax.swing.Timer$DoPostEvent.run(Unknown Source)
at java.awt.event.InvocationEvent.dispatch(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$500(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
07:11:13.121 [AWT-EventQueue-2] WARN Vision.TemplateCanvas - Unable to set template property value on template zzz
java.lang.ClassCastException: Cannot coerce value '1234' into type: class java.lang.Integer
at com.inductiveautomation.ignition.common.TypeUtilities.coerce(TypeUtilities.java:1335)
at com.inductiveautomation.factorypmi.application.binding.DynamicPropertyDescriptor.setValue(DynamicPropertyDescriptor.java:59)
at com.inductiveautomation.factorypmi.application.binding.util.DynamicPropertyUtil.setPropertyValue(DynamicPropertyUtil.java:260)
at com.inductiveautomation.vision.api.client.components.model.AbstractVisionPanel.setPropertyValue(AbstractVisionPanel.java:164)
at com.inductiveautomation.factorypmi.application.components.TemplateCanvas._finishBuilding(TemplateCanvas.java:314)
at com.inductiveautomation.factorypmi.application.components.TemplateCanvas$TemplateLoader.done(TemplateCanvas.java:695)
at javax.swing.SwingWorker$5.run(Unknown Source)
at javax.swing.SwingWorker$DoSubmitAccumulativeRunnable.run(Unknown Source)
at sun.swing.AccumulativeRunnable.run(Unknown Source)
at javax.swing.SwingWorker$DoSubmitAccumulativeRunnable.actionPerformed(Unknown Source)
at javax.swing.Timer.fireActionPerformed(Unknown Source)
at javax.swing.Timer$DoPostEvent.run(Unknown Source)
at java.awt.event.InvocationEvent.dispatch(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$500(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)