Wstęp
Strona zawiera dokładna instrukcję tworzenia projektu wdrożeniowego, bazującego na systemie PlusWorkflow 3.1.
System PlusWorkflow od wersji 3.1 budowany jest przy użyciu narzędzia Maven. Zalecane jest zapoznanie się z tym narzędziem korzystając z dokumentacji i dostępnych w sieci kursów.
Wymagania
Środowisko przygotowane zgodnie z instrukcją zawartą na stronie:
- Przygotowanie środowiska - instrukcja przygotowania środowiska do pracy z projektem systemu PlusWorkflow
Utworzenie projektu Maven w środowisku Eclipse
Pierwszym krokiem jest stworzenie nowego projektu typu Maven. W tym celu należy wywołać menu File -> New -> Project:
W nowo otwartym oknie zaznaczamy opcję "Create a simple project..." i przechodzimy do następnej strony klawiszem Next.
Teraz należy nadać odpowiednie atrybuty projektu.
Dokładne zasady nadawania wartości poszczególnym atrybutom opisane są w procedurze tworzenia projektu.TODO:LINK
Klikamy przycisk Finish aby zakończyć tworzenie projektu.
Konfiguracja pliku pom.xml
Stworzony projekt powinien mieć następującą strukturę:
Plik pom.xml zawiera podstawowe atrybuty projektu (nazwa, wersja) oraz definicję wymaganych zależności. Jedyną wymaganą zależnością jest com.suncode:plusworkflow-web:war:
<dependency> <groupId>com.suncode</groupId> <artifactId>plusworkflow-web</artifactId> <type>war</type> </dependency>
Komunikacja z systemem PlusWorkflow musi odbywać się za pomocą Java API. W tym celu musimy zdefiniować odpowiednią zależność, co pozwoli nam na używanie klas API w naszym projekcie:
<dependency> <groupId>com.suncode</groupId> <artifactId>plusworkflow-api</artifactId> </dependency>
Ostatecznie podstawowy plik pom.xml projektu wygląda następująco:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>com.suncode</groupId> <artifactId>plusworkflow</artifactId> <version>3.1.4</version> </parent> <groupId>com.suncode.client</groupId> <artifactId>plusworkflow-rgol</artifactId> <version>3.1.DEV-SNAPSHOT</version> <packaging>war</packaging> <name>Swedwood Goleniow</name> <dependencies> <!-- System PlusWorkflow --> <dependency> <groupId>com.suncode</groupId> <artifactId>plusworkflow-web</artifactId> <type>war</type> </dependency> <!-- PlusWorkflow API --> <dependency> <groupId>com.suncode</groupId> <artifactId>plusworkflow-api</artifactId> </dependency> </dependencies> </project>
FAQ
Zbiór najczęściej zadawanych pytań:
1. Eclipse nie widzi klasy DBManagement:
Wszystkie zależności projektu zdefiniowane są w pliku pom.xml. Należy dowiedzieć się, z jakiego moduły pochodzi interesująca nas klasa i zadeklarować odpowiednią zależność. W przypadku klasy DBManagement jest to:
<dependency> <groupId>com.suncode</groupId> <artifactId>plusworkflow-old-core</artifactId> </dependency>
2. Eclipse nie widzi klas z CUF:
Wszystkie zależności projektu zdefiniowane są w pliku pom.xml. Należy dowiedzieć się, z jakiego moduły pochodzi interesująca nas klasa i zadeklarować odpowiednią zależność. W przypadku klas c CUF jest to:
<dependency> <groupId>com.suncode</groupId> <artifactId>cuf-core</artifactId> </dependency>
Wykorzystywanie klas spoza modułu com.suncode:plusworkflow-api nie jest zalecane. Wszystkie wymagane przez wdrożenie metody powinny być dostępne jako część publicznego PlusWorkflow API lub modułów zewnętrznych (np. CUF). W przypadku braku danej funkcjonalności, należy stworzyć odpowiednie zgłoszenie w systemie JIRA.