2010-06-17 3 views
0

propertyTester와 핸들러를 사용하는 데 문제가 있습니다. 이 속성은 areUpdatesAvailable이며이 속성이 true 일 때 처리기가 활성화됩니다. 핸들러가 실행 된 후 areUpdatesAvailable 값은 false가되지만 현재 설정이 어떻게되어 있는지는 선택 항목이 변경 될 때만 검사합니다. 따라서 항목을 마우스 오른쪽 단추로 클릭하고 Update 처리기를 호출 한 다음 내 선택 항목을 변경하지 않고 항목을 다시 마우스 오른쪽 단추로 클릭하면 속성 검사기를 다시 호출하지 않기 때문에 업데이트가 계속 활성화됩니다. 처리기가 실행 된 후 다시 확인하는 방법이 있습니까?실행 후 rcp 핸들러를 다시 확인하십시오.

<handler 
     class="com.cerner.automation.touchstone.handlers.UpdateExternalReference" 
     commandId="com.cerner.automation.touchstone.workflow.Update"> 
     <enabledWhen> 
      <with 
       variable="selection"> 
       <test 
        property="com.cerner.automation.touchstone.testers.nodeItem.areUpdatesAvailable" value="true" forcePluginActivation="true"> 
       </test> 
       <iterate 
        ifEmpty="false" 
        operator="and"> 
        <instanceof 
          value="com.cerner.automation.touchstone.model.ExternalReferenceItem"> 
        </instanceof> 
       </iterate> 
       <test 
       forcePluginActivation="true" 
       property="com.cerner.automation.touchstone.testers.nodeItem.isInternal" 
       value="true"> 
        </test> 
      </with> 
     </enabledWhen> 
</handler> 
+0

안녕하세요 mdamman, 당신이 마음에 들지 않으면 cerner 프로그래밍에 익숙하다면 나에게 이메일 ID를 보낼 수 있습니까? –

답변

1

내가 끝낸 것은 처리기가 완료된 후에 requestEvaluation을 사용하는 것이 었습니다.

final IEvaluationService evaluationService = (IEvaluationService) window.getService(IEvaluationService.class); 
     evaluationService.requestEvaluation(property); 
관련 문제