Проект Snaker-SpringMVC основан на интеграции springMVC, spring3, hibernate3 и фреймворка snaker, представляя самый базовый модуль управления процессами, который позволяет легко интегрировать движок процессов.
cglib-nodep-2.2.jar
commons-beanutils-1.8.3.jar
commons-lang-2.5.jar
jackson-core-asl-1.9.4.jar
jackson-mapper-asl-1.9.4.jar
slf4j-api-1.7.2.jar
joda-time-2.3.jar
snaker-core-*.*.*.jar
snaker-hibernate-*.*.*.jar
snaker-spring-*.*.*.jar
commons-dbutils-1.5.jar [необходимо при использовании JdbcAccess]
juel-impl-2.1.2.jar [необходимо при использовании Juel выражений, рекомендован SpELExpression в проектах Spring]
slf4j-log4j12-1.7.2.jar [необходимо при использовании Log4J]
Для Maven-проекта можно добавить зависимости следующим образом:
<dependency>
<groupId>com.github.snakerflow</groupId>
<artifactId>snaker-core</artifactId>
<version>${snaker.version}</version>
</dependency>
<dependency>
<groupId>com.github.snakerflow</groupId>
<artifactId>snaker-spring</artifactId>
<version>${snaker.version}</version>
</dependency>
<dependency>
<groupId>com.github.snakerflow</groupId>
<artifactId>snaker-hibernate</artifactId>
<version>${snaker.version}</version>
</dependency>
Добавьте конфигурационный файл snaker для spring
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd"
default-lazy-init="true">
``` <description>Конфигурация SnakerEngine</description>
<bean class="org.snaker.engine.spring.SpringSnakerEngine">
<property name="processService" ref="processService"/>
<property name="orderService" ref="orderService"/>
<property name="taskService" ref="taskService"/>
<property name="queryService" ref="queryService"/>
<property name="managerService" ref="managerService"/>
</bean> <bean id="dbAccess" class="org.snaker.engine.access.hibernate.Hibernate3Access">
<property name="sessionFactory" ref="sessionFactory"/>
</bean>
``````markdown
<bean id="processService" class="org.snaker.engine.core.ProcessService">
<property name="access" ref="dbAccess"/>
<property name="cacheManager" ref="cacheManager"/>
</bean>
<bean id="orderService" class="org.snaker.engine.core.OrderService">
<property name="access" ref="dbAccess"/>
</bean>
<bean id="taskService" class="org.snaker.engine.core.TaskService">
<property name="access" ref="dbAccess"/>
</bean>
<bean id="managerService" class="org.snaker.engine.core.ManagerService">
<property name="access" ref="dbAccess"/>
</bean>
<bean id="queryService" class="org.snaker.engine.core.QueryService">
<property name="access" ref="dbAccess"/>
</bean>
``````md
Следующие бины конфигурируют менеджер кэша, интерцепторы логирования и другие компоненты:
```xml
<bean id="cacheManager" class="org.snaker.engine.cache.memory.MemoryCacheManager"/>
<bean class="org.snaker.engine.impl.LogInterceptor"/>
<bean class="org.snaker.engine.spring.SpelExpression"/>
<bean class="org.snaker.engine.impl.SurrogateInterceptor"/>
</beans>
Конфигурация Hibernate для сущностей (добавление следующих свойств в конфигурацию sessionFactory):
<property name="mappingResources">
<list>
<value>hbm/snaker.task.hbm.xml</value>
<value>hbm/snaker.order.hbm.xml</value>
<value>hbm/snaker.ccorder.hbm.xml</value>
<value>hbm/snaker.process.hbm.xml</value>
<value>hbm/snaker.taskactor.hbm.xml</value>
<value>hbm/snaker.workitem.hbm.xml</value>
<value>hbm/snaker.surrogate.hbm.xml</value>
</list>
</property>
Настройка транзакций [обратите внимание: конфигурация транзакций влияет на обработку данных процессного движка]:```xml
<tx:advice id="txAdvice" transaction-manager="transactionManager">
<tx:attributes>
<tx:method name="start*" propagation="REQUIRED"/>
<tx:method name="execute*" propagation="REQUIRED"/>
(...)
<tx:method name="*" propagation="REQUIRED" />
</tx:attributes>
</tx:advice>
```
``````markdown
### 3) Вспомогательные утилиты
```java
// Упрощённое упаковывание API процессного движка
com.snakerflow.examples.springmvc.engine.SnakerEngineFacets.java
// Класс для создания JSON данных для отображения диаграммы состояния страницы
com.snakerflow.examples.springmvc.engine.SnakerHelper.java
```
### 4) Интеграция определений процессов
Интеграция переднего конца страницы может включать копирование JSP страниц приложения, замены стилей проекта.
``````html
processList.jsp <!-- Страница списка запросов определений процессов -->
processEdit.jsp <!-- Страница редактирования определений процессов, обычно доступна для изменения состояния, категории, повторной загрузки файла определения процессов -->
processDesigner.jsp <!-- Web-редактор определений процессов, требует зависимости js, css и других файлов -->
processDeploy.jsp <!-- Страница развертывания определений процессов, предоставляет контроллер загрузки файла для загрузки XML файла определения процессов -->
processView.jsp <!-- Страница просмотра определений процессов, используется для просмотра диаграмм состояний процессов и исторических записей задач -->
actor.jsp <!-- Страница динамического добавления участников -->
diagram.jsp <!-- Диаграмма состояния определений процессов -->
```
Интеграция служб сервера
```java
com.snakerflow.examples.springmvc.web.ProcessController.java
```
Интеграция web-редактора
```plaintext
styles/js/snaker папка
styles/js/jquery-ui-1.8.4.custom
styles/js/raphael-min.js
```### 5) Интеграция текущих, совместных, копируемых задач и исторических задач
Интеграция переднего конца страницы
```html
activeTask.jsp <!-- Страница текущих задач (основные, совместные, копируемые) -->
activeTaskMore.jsp <!-- Страница списка текущих задач -->
activeCCMore.jsp <!-- Страница списка копируемых задач -->
historyTask.jsp <!-- Страница списка исторических задач -->
```
Интеграция служб сервера
```java
com.snakerflow.examples.springmvc.web.TaskController.java
```
### 6) Интеграция экземпляров процессов
Интеграция переднего конца страницы
```html
order.jsp <!-- Страница списка экземпляров процессов -->
```
Интеграция служб сервера
```java
com.snakerflow.examples.springmvc.web.FlowController.java
```
### 7) Интеграция функции делегирования
Интеграция переднего конца страницы
```html
surrogateList.jsp <!-- Страница списка делегирований -->
surrogateEdit.jsp <!-- Страница добавления нового делегирования -->
surrogateView.jsp <!-- Страница просмотра делегирования -->
```
Интеграция служб сервера
```java
com.snakerflow.examples.springmvc.web.SurrogateController.java
```
Контакты
---------
* Группа Snaker: 293568574
* snakerflow: <snakerflow@163.com>
Лицензия
--------
Apache License Версия 2.0 <http://www.apache.org/licenses/LICENSE-2.0.html>
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )