UML에서 WSDL로 변환에 대한 사용자 정의 바인딩 작성

기존 바인딩을 사용자 정의하거나 UML에서 WSDL로 변환이 WSDL 아티팩트를 생성하기 위해 사용하는 바인딩을 작성할 수 있습니다.
시작하기 전에
다음 프로시저에서는 사용자가 플러그인을 작성, 테스트 및 분배하는 방법을 알고 있으며 Eclipse PDE(Plug-in Development Environment)에 익숙한 것으로 가정합니다.

사용자가 모델링 Perspective에 있어야 합니다.

이 태스크 정보
사용자 정의 바인딩을 작성하려면 다음을 수행하십시오.
  1. Eclipse 작업공간에서 플러그인 프로젝트를 작성하십시오. 이 플러그인 프로젝트에는 사용자 정의 바인딩의 구현이 포함됩니다.
  2. 플러그인의 plugin.xml 파일에서 다음 확장점을 작성하십시오.
    <extension point="com.ibm.xtools.transform.core.transformationExtensions"></extension>
  3. 확장점에서 다음 정보를 포함하는 TransformationExtension 요소를 작성하십시오.
    <TransformationExtension version="7.0.0" 
    	name="MY-NEW-BINDING binding extension" 
    	enabled="true"  
    	targetTransformation="com.ibm.xtools.transform.uml2.wsdl.internal.Uml2WsdlTransform.RS" 
    	id="com.ibm.xtools.transform.uml2.wsdl.extension.MY-NEW-BINDING">
  4. TransformationExtension 요소에서, 다음 정보를 포함하는 특성을 작성하십시오.
    <Property 
    	id="com.ibm.xtools.transform.uml2.wsdl.bindings.MY-NEW-BINDING" 
    	metatype="string" 
    	name="com.ibm.xtools.transform.uml2.wsdl.bindings" 
    	readonly="true" 
    	value="MY-NEW-BINDING"/>
  5. 이전 단계에서 작성한 특성에서 다음 규칙을 정의하십시오.
    <RuleDefinition 
    	class="org.someuri.MyAddressExtensionRule" 
    	id="MyAddressExtensionRule" 
    	name="MyAddressExtensionRule"/>
    <RuleDefinition 
    	class="org.someuri.MyBindingExtensionRule" 
    	id="MyBindingExtensionRule" 
    	name="MyBindingExtensionRule"/>
    <RuleDefinition 
    	class="org.someuri.MyBindingOperationExtensionRule" 
    	id="MyBindingOperationExtensionRule" 
    	name="MyBindingOperationExtensionRule"/>
  6. TransformationExtension 요소에서 다음 ExtendTransform 요소를 작성하십시오.
    <ExtendTransform 
    	targetTransform="AddressExtensionTransform"> 
    	<AddRule id="MyAddressExtensionRule"/>
    </ExtendTransform>
    <ExtendTransform 
    	targetTransform="BindingExtensionTransform">
    	<AddRule id="MyBindingExtensionRule"/>
    </ExtendTransform>
    <ExtendTransform 
    	targetTransform="BindingOperationExtensionTransform">
    	<AddRule id="MyBindingOperationExtensionRule"/>
    </ExtendTransform>
  7. 파일 > 저장을 클릭하십시오. 다음에 변환 구성 파일을 열 때 변환 구성 편집기의 특성 페이지에는 45 단계에서 작성한 특성이 표시됩니다.
  8. 5 단계에서 정의하는 클래스마다, 1 단계에서 작성하는 플러그인에서 해당되는 Java™ 클래스를 작성하십시오. 작성하는 Java 클래스는 해당되는 추상 클래스를 확장하고 com.ibm.xtools.transforms.uml2.wsdl.utility 플러그인에서 해당되는 추상 메소드를 구현합니다. 다음 예제를 고려하십시오.
    • 5 단계에서 정의하는 org.someuri.MyAddressExtensionRule 클래스는 com.ibm.xtools.transforms.uml2.wsdl.utility 플러그인에서 AbstractExtensionRule 클래스를 확장해야 합니다.
    • 5 단계에서 정의하는 org.someuri.MyBindingExtensionRule은 AbstractBindingExtensionRule 메소드를 확장해야 합니다.
    • 5 단계에서 정의하는 org.someuri.MyBindingOperationExtensionRule 클래스는 AbstractOperationExtensionRule 메소드를 확장해야 합니다.
결과
다음에 변환 구성 파일을 열 때 WSDL 옵션 페이지에 새 바인딩이 표시됩니다. 이제 UML에서 WSDL로 변환이 이 사용자 정의 바인딩을 사용하도록 지정할 수 있습니다.

피드백