State of Node changes during loading of workflow.

Hi,

The state of some custom nodes which were executed earlier changes to non-configured when loading the workflow.

I have to execute the nodes again after loading, this only happens when I load the workflow again.

If anyone has come across this issue request you to please help in resolving this issue

 

WARN      LoadWorkflowRunnable     Warnings during load: Status: Warning: KNIME_project7 0 loaded with warnings
WARN      LoadWorkflowRunnable       Status: Warning: KNIME_project7 0
WARN      LoadWorkflowRunnable         Status: Warning: Some node states were invalid
WARN      LoadWorkflowRunnable         Status: Warning: State has changed from CONFIGURED to IDLE

Logs:::

2014-05-02 13:59:12,204 DEBUG main ConnectionContainerEditPart : modelling info: null
2014-05-02 13:59:12,204 DEBUG main ConnectionContainerEditPart : refreshing visuals for: STD[0:24(1) -> 0:27( 2)]
2014-05-02 13:59:12,204 DEBUG main ConnectionContainerEditPart : modelling info: null
2014-05-02 13:59:12,205 DEBUG main ConnectionContainerEditPart : refreshing visuals for: STD[0:26(1) -> 0:27( 3)]
2014-05-02 13:59:12,205 DEBUG main ConnectionContainerEditPart : modelling info: null

This error seems to be due to a Custom Port object implementation.

Can someone please suggest a custom port object implementation which saves a POJO as a PortObject content.

Is there any reason for custom port objects to affect loading of workflow.

This issue occurs when the node is saved in an executed state and is reopened later.

Have a look at org.knime.ext.weka37.ports.WekaClustererModelPortObject (part of the weka extension).

PS: Saving a POJO comes with risk that you can't guarantee backward compatibility in the future (at least it becomes more tricky).