To update a BizTalk artefact, my understanding is that TaskAction="Create" must be used, which deletes and recreates the specified artefact with the specified properties. This doesn't work if:
The artefact is a default adapter handler
There are no other artefacts of the same type in the group to transfer the default to.
Doing this causes a mysterious error message (NullReferenceException: Object reference not set to an instance of an object) to be emitted to the console, and the deployment to be aborted.
I've inspected the code to identify what the problem is here and can PR when I have time. At a minimum, I think this condition should supply a sensible error message. I'm not sure this can be adequately resolved given the way BizTalk works i.e. default handlers cannot be deleted.
IIRC we kept a dummy sendhandler around at all times that was just used to hold the default while we tore down and then recreated artifacts. I agree, the error you are getting is not ideal.
To update a BizTalk artefact, my understanding is that TaskAction="Create" must be used, which deletes and recreates the specified artefact with the specified properties. This doesn't work if:
Doing this causes a mysterious error message (NullReferenceException: Object reference not set to an instance of an object) to be emitted to the console, and the deployment to be aborted.
I've inspected the code to identify what the problem is here and can PR when I have time. At a minimum, I think this condition should supply a sensible error message. I'm not sure this can be adequately resolved given the way BizTalk works i.e. default handlers cannot be deleted.