mqsimigratemsgflows 명령을 사용하여 버전 2.1에서 버전 6.0으로 메시지 플로우를 이주하십시오. 버전 5.0에서 버전 6.0으로 이주할 때는 이 명령을 사용할 필요가 없습니다.
사용자 정의 노드 또는 확장 등록 정보에 등록 정보 편집기가 있으면, XML 속성은 type="MyType"이며 <package>MyTypePropertyEditor.class 클래스가 존재합니다.
등록 정보 편집기(Java 코드로 작성됨) 자체는 이주되지 않습니다. 그러나 동일한 클래스 이름으로 새 편집기가 작성될 경우(Eclipse SWT 툴킷으로), 새 편집기가 발견되어 로드되며 이주된 플로우를 변경하지 않아도 됩니다.
버전 2.1에서는 끌어 놓기 프로세스를 통해 확장 등록 정보를 작성할 때 등록 정보 이름(xmi.label)이 속성 이름을 변환한 이름이 되도록 설정됩니다. 원래의 속성 이름에는 공백이 포함되어서는 안되며, 공백이 포함될 경우에는 브로커에 의해 거부됩니다. 그러나, 프롬프트된 속성은 브로커로 송신되지 않기 때문에 버전 2.1에 공백이 있을 수 있습니다.
플로우가 이주될 때, 원래의 이름은 손실되고 변환된 이름만 보관됩니다. 확장 속성은 여러 속성을 대체할 수 있으므로, 원래 이름이 변환된 이름과 일치해야 합니다.
해결 방법은 공백이나 기타 올바르지 않은 문자를 유니코드 표현으로 바꾸어 적당한 속성 이름을 생성하는 것입니다. propertyDescriptor의 propertyName 속성은 key=Property.<변환된 속성 이름>으로 설정됩니다. UI가 <변환된 속성 이름>을 리턴합니다.
그러나 이주한 메시지 플로우는 속성 시스템 이름은 보유하지 않고 변환된 이름만 보유합니다. 따라서 원래의 속성을 찾기가 어렵거나 불가능합니다. 예를 들면, DataSource 확장 등록 정보는 해당 메시지 플로우가 플러그인 플로우로 적재되고 다른 사용자 플로우가 이 플러그인 플로우에서 이 등록 정보를 확장할 경우에는 변환된 것으로 표시되지 않습니다.
버전 6.0에서는 올바르지 않은 이름이 메시지 플로우 및 등록 정보에 포함될 수 있습니다. 이 경우에는 다음과 같은 변환이 발생합니다. 올바르지 않은 각 문자가 해당 유니코드 코드 포인트를 나타내는 일련의 문자로 바뀝니다. 예를 들면, 느낌표 ("!")는 X0026으로 바뀝니다. 이에 대해서는 생성되는 보고서 파일에서 설명됩니다.
이 변환은 상황에 따라 결정됩니다. 올바르지 않은 문자가 포함된 플로우를 참조하는 또다른 상황에서 임의 메시지 플로우를 이주할 경우, 두 이름은 동일한 방식으로 변환됩니다.
극히 드문 경우를 제외하곤, 이러한 변환으로 인해 이름 충돌이 발생하지는 않습니다. 유니코드 코드 포인트 순서가 포함된 하나의 이름이 있고 이 이름과 동일하나 유니코드 코드 포인트 순서 대신 그에 해당하는 문자가 있는 또 하나의 이름이 있을 때 충돌이 발생할 수도 있습니다. 이 경우에는 이러한 메시지 플로우 또는 등록 정보 중 하나의 이름을 바꾸어 플로우를 다시 내보내야 합니다. 유니코드 코드 포인트 순서('Xnnnn')를 포함하지 않는 새 이름을 선택하고 제어 센터에서 메시지 플로우의 이름을 바꾼 후에 이주하십시오. 파일 시스템에서 .msgflow 파일의 이름을 바꿔서는 안 되며, 항상 제어 센터 또는 Workbench를 사용하여 이름 바꾸기 작업을 수행하십시오.