For switching between specialisations I do have an acceptable work-around myself: create a microflow with input-object A and output-object B. Then create a Java-call with object A as input, object B as output. Within Java-call :
// BEGIN USER CODE
IMendixObject storeObject = __A;
Core.remove(this.getContext(), __A);
Core.commit(this.getContext(), __A);
return storeObject;
// END USER CODE
Do not forget to import core-class. Continue with Create object (for B), Change object (for B) followed by close form & show form ("in content").