Activiti explorer.war 예제 공정 사용 과정 도해

워 크 플 로 가 주로 해결 하 는 주요 문 제 는 특정한 업무 목 표를 실현 하기 위해 컴퓨터 를 이용 하여 여러 참여 자 사이 에서 특정한 예 정 된 규칙 에 따라 문서,정보 또는 임 무 를 자동 으로 전달 하 는 것 이다.
activiti 는 공식 적 으로 예제 공정 activiti-explorer.war 를 제공 합 니 다.이 공 사 를 운영 하면 activiti 의 기본 기능 을 체험 하고 워 크 플 로 의 기본 적 인 사용 을 이해 할 수 있 습 니 다.
본 논문 에서 사용 하 는 것 은 activiti-5.2.0 의 공식 가방 이다.
다운로드 주소
1.개발 환경 구축
예제 공 사 를 실행 하려 면 jdk 8 과 tomcat 를 설치 해 야 합 니 다.그 중에서 jdk 는 jdk 8 이상 이 필요 합 니 다.tomcat 는 tomcat 8 을 사용 합 니 다.tomcat 7 을 사용 할 때 시작 하면 다음 과 같은 오류 가 발생 합 니 다.

  : Exception sending context initialized event to listener instance of class org.activiti.explorer.servlet.WebConfigurer
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'demoDataConfiguration': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: protected org.activiti.engine.IdentityService org.activiti.explorer.conf.DemoDataConfiguration.identityService; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'identityService' defined in class path resource [org/activiti/explorer/conf/ActivitiEngineConfiguration.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.activiti.engine.IdentityService]: Factory method 'identityService' threw exception; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'processEngine' defined in class path resource [org/activiti/explorer/conf/ActivitiEngineConfiguration.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.activiti.engine.ProcessEngine]: Factory method 'processEngine' threw exception; nested exception is java.lang.RuntimeException: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'processEngineFactoryBean': FactoryBean threw exception on object creation; nested exception is java.util.ServiceConfigurationError: org.activiti.engine.cfg.ProcessEngineConfigurator: org.activiti.management.jmx.JMXConfigurator not a subtype
  at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:334)
  at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1202)
  at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:537)
  at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:476)
  at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:303)
  at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
  at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:299)
  at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:194)
  at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:755)
  at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:757)
  at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:480)
  at org.activiti.explorer.servlet.WebConfigurer.contextInitialized(WebConfigurer.java:40)
  at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:5197)
  at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5720)
  at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)
  at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:1018)
  at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:994)
  at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:662)
  at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:1127)
  at org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:2020)
  at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:514)
  at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
  at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
  at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
  at java.base/java.lang.Thread.run(Thread.java:844)
이것 이 무슨 원인 인지 모 르 겠 지만 tomcat 는 8 버 전 으로 업그레이드 되면 정상적으로 시작 할 수 있 습 니 다.
2.예시 공 사 를 실시한다.
activiti-5.2.0 의 공식 패 키 지 를 압축 해제 한 후 activiti-explorer.war 를 로 컬 tomcat 의 webapps 디 렉 터 리 에 복사 한 다음 tomcat 를 시작 합 니 다.브 라 우 저 에서 접근 합 니 다.http://localhost:8080/activiti-explorer/,다음 로그 인 인터페이스 가 나타 납 니 다.기본 계 정 비밀 번 호 를 사용 할 수 있 습 니 다.
kermit/kermit 로그 인

로그 인 에 성공 하면 이 예제 응용 에서 activiti 의 기본 기능 을 체험 할 수 있 습 니 다.
3.예시 공정 기능 시연
이 공 사 는 네 가지 기능 모듈 로 나 뉜 다.임무,절차,보고서,관리

다음은 제 가 일반적인 사용 절차 에 따라 이 몇 가지 기능 모듈 을 설명 하 겠 습 니 다.
1.흐름 도 만 들 기
워 크 플 로 의 정의 에서 특정한 업무 목 표를 실현 하기 위해 컴퓨터 를 이용 하여 여러 참여 자 간 에 특정한 예 정 된 규칙 에 따라 문서,정보 또는 임 무 를 자동 으로 전달 합 니 다.워 크 플 로 를 사용 하기 전에 우 리 는 먼저 규칙 을 정의 해 야 한 다 는 것 을 알 수 있다.여기 서 규칙 은 바로 절차 도 를 말한다.
프로 세 스 관리 모듈 에 들 어가 다음 메뉴 에 따라 프로 세 스 모델 을 새로 만 듭 니 다.
프로 세 스-->프로 세 스 설계 작업 영역-->새 모델

그리고 새 페이지 에 간단 한 휴가 신청 절 차 를 그 려 저장 합 니 다.프로 세 스 그림 을 그 릴 때 사용자 작업 의 속성 에 assignment 를 현재 로그 인 kermit 로 할당 해 야 대리 작업 에서 새로운 작업 을 볼 수 있 습 니 다.
다음은 새로 만 든 휴가 신청 절차 입 니 다.

이렇게 흐름 도 를 만 들 면 됩 니 다.
2.배치 흐름 도
그 려 진 흐름 도 는 배 치 를 거 쳐 야 사용 할 수 있다.프로 세 스 설계 작업 구역 에서 방금 새로 만 든 프로 세 스 를 선택 하고 모델 을 처리 하여 배 치 를 선택 하여 프로 세 스 의 배 치 를 완성 합 니 다.

3.시작 절차
배치 가 완료 되면 이 프로 세 스 를 시작 하여 작업 을 만 들 수 있 습 니 다.'배 치 된 프로 세 스 정의'에서 배 치 된 프로 세 스 를 선택 하고'시작 프로 세 스'를 누 르 면 프로 세 스 를 시작 할 수 있 습 니 다.프로 세 스 가 시작 되면'작업'모듈 의'대리 작업'에 새로운 작업'apply vacation'이 나타 납 니 다.이것 이 바로 우리 가 프로 세 스 맵 에서 정의 한 첫 번 째 사용자 작업 입 니 다.
프로 세 스 그림 을 그 릴 때 사용자 작업 의 assignee 속성 이 지정 되 어 있 지 않 거나 현재 로그 인 id 가 지정 되 어 있 지 않 으 면 로그 인 대행 작업 에 나타 나 지 않 습 니 다.

4.퀘 스 트 완성
퀘 스 트 모듈 에서 퀘 스 트 를 조작 합 니 다.대리 목록 에서 방금 시작 한 프로 세 스 에서 발생 한 임 무 를 찾 습 니 다.임 무 를 완성 하려 면 프로 세 스 가 다음 노드 로 이동 하고 manager agree 의 임 무 를 만 들 고 이 임 무 를 완성 하면 방금 시작 한 프로 세 스 가 끝 납 니 다.
5.사용자 관리
관리 모듈 의 사용자 옵션 에서 사용 자 를 관리 할 수 있 습 니 다.이 사용 자 는 프로 세 스 맵 에 설 정 된 assignees 로 서 해당 계 정 으로 로그 인 하면 각자 의 작업 을 수행 할 수 있 습 니 다.
4.데이터 영구 화
주의해 야 할 것 은 이 예제 프로젝트 는 기본적으로 h2 데이터 베 이 스 를 사용 하고 데이터 가 하 드 디스크 에 오래 지속 되 지 않 기 때문에 tomcat 를 닫 은 후에 방금 조작 한 모든 데 이 터 를 잃 어 버 릴 것 입 니 다.작업 데 이 터 를 하 드 디스크 에 오래 유지 하려 면 데이터 베이스 설정 을 설정 하여 예제 프로젝트 가 본 컴퓨터 의 my sql 데이터 베 이 스 를 연결 하도록 해 야 합 니 다.다음 두 단계 가 필요 합 니 다.
(1)war 패키지 의 프로필 을 수정 합 니 다.activiti-explorer\WEB-INF\classes\\db.properties 의 내용 은 다음 과 같 습 니 다.
db=mysql
jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql:///activiti_explore
jdbc.username=root
jdbc.password=root
이렇게 예제 공 사 는 이 컴퓨터 의 my sql 데이터 베 이 스 를 연결 하 였 다.
(2)이 프로젝트 에 my sql 드라이브 jar 패 키 지 를 추가 합 니 다.
이 예제 프로젝트 는 my sql 의 구동 이 없 기 때문에 설정 후 시작 하면 데이터베이스 구동 오 류 를 찾 을 수 없습니다.드라이버 jar 패키지 복사
activiti-explorer\WEB-INF\lib 디 렉 터 리 에서 추가 가 완 료 됩 니 다.
tomcat 다시 시작,데이터베이스 activitiexplore 에서 보 니 activiti 가 필요 한 표 구 조 를 자동 으로 만 들 었 고 데이터 의 지속 적 인 설정 이 완료 되 었 음 을 설명 합 니 다.
총화
activiti-5.2.0 의 예제 프로젝트 activiti-explorer.war 를 어떻게 사용 하 는 지 보 여 줍 니 다.주의해 야 할 것 은 이 예제 프로젝트 는 기본적으로 h2 데이터 베 이 스 를 사용 하고 데이터 가 하 드 디스크 에 오래 지속 되 지 않 기 때문에 tomcat 를 닫 은 후에 방금 조작 한 모든 데 이 터 를 잃 어 버 릴 수 있 습 니 다.
작업 데 이 터 를 하 드 디스크 에 오래 유지 하려 면 데이터베이스 설정 을 설정 하여 예제 공정 이 이 컴퓨터 의 my sql 데이터 베 이 스 를 연결 하도록 해 야 합 니 다.
이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.

좋은 웹페이지 즐겨찾기