2016-11-14 10 views
0

activiti에서 직접 processID를 설정할 수 있습니까?액티비티에서 프로세스 실행을위한 프로세스 ID를 설정하십시오

다른 소프트웨어로 모니터해야하므로 시작된 프로세스의 ID가 필요합니다. 프로세스가 시작되었습니다.

try{ 
       processId = runtimeService.startProcessInstanceByKey(jobsModuleName.toString(), processVariables).getId(); 
      }catch (Exception e){ 
       LOG.error(e, "No Processdefinition found with this Identifier"); 
      } 

이것은 프로세스 인식을 시작하기위한 호출입니다. 나는 프로세스에서 id를 되 찾았지만 프로세스를 시작하기 전에 processID를 설정하려고합니다.

+0

당신이 RuntimeService.addEventListener() API를 살펴나요? 이벤트에서 더 많은 정보를 얻을 수 있기 때문에 외부 모니터 인터페이스를 만드는 것이 더 나은 후보라고 생각합니다. –

답변

0

프로세스 인스턴스 ID는 DbIdGenerator 또는 StrongUuidGenerator 클래스 (엔진 구성 클래스에서 구성을 선택 함)를 사용하여 생성됩니다. 사용자 지정 ID 생성기를 만드는 것을 막을 수는 없지만 모든 인스턴스에서 고유 한 ID를 생성해야한다는 점을 명심하십시오.

정확한 사용 사례를 알 수는 없지만 ID를 변경하지 않고 대신 비즈니스 키를 사용합니다. 비즈니스 키는 사용자가 구성 할 수있는 메타 데이터로 삽입되고 작동하도록되어 있습니다. 비즈니스 키로 인스턴스 및 작업을 검색 할 수 있습니다. ID는 백킹 테이블의 고유 한 열이므로 ID와 동일합니다.

현재 비즈니스 키에 대해 읽을 수 있습니다 :이 도움이

http://www.activiti.org/userguide/#_additional_features

희망, 그렉

+0

iam이 검색 한 내용, 감사합니다. 그렉! –

+0

걱정할 필요가없는 마르셀. –