Zum Ende der Metadaten springen
Zum Anfang der Metadaten


Lernziel
In diesem Tutorial lernen Sie, wie Sie ein Nuclos-Projekt in die Entwicklungsumgebung IntelliJ IDEA einbinden.
Voraussetzungen

 

Draft
marked by Oliver Brausch on Jan 05, 2018 14:41

Dokumentenstatus


 

 

Bevor Sie mit der Konfiguration von IDEA beginnen, müssen Sie sowohl das git-Repository des Projekts (im folgenden Projekt-git), als auch das git-Repository des Nuclos-Kerns (im folgenden Kern-git) klonen.

Wechseln Sie nun im git zu dem Tag des Kerns, welcher der Nuclos-Version der Projekt-Installation entspricht (git checkout).

 

Nun sind Sie bereit, die Konfiguration von IDEA anzugehen.

Richten Sie maven ein: File -> Settings -> Build, Execution, Deployment -> Build Tools -> Maven

Öffnen Sie das Projekt (Projekt-git) in IDEA: File -> Open...

Importieren Sie das Maven Projekt (ein Popup sollte erscheinen).

Lassen Sie Maven die Quellen generieren.

Bauen Sie das Modul.

Nun kann der Kern-git eingebunden werden. Öffnen Sie zu diesem Zweck die Modul-Einstellungen:

Hier kann der Kern-git importiert werden (Import Module):

Sobald das Modul geladen ist, navigieren Sie ins Verzeichnis /[Pfad zu Kern-git]/nuclos-war/src/main/webapp/META-INF/.

Hier finden sie eine Datei context-template.xml - Erstellen Sie eine Kopie der Datei im selben Verzeichnis und nennen Sie diese context.xml.

Passen Sie nun die vier value-Parameter (von context.xml) an, so dass diese auf die entsprechenden Konfigurationsdateien zeigen, die sich im Verzeichnis ihres installierten Nuclos-Projekts (Projekt-Installation) befinden.

Nun können Sie auch für den Kern die Quellen mit Maven importieren und das Modul bauen.

 

Um den Server einzurichten, gehen Sie auf Run -> Edit Configurations... :

 
 Erstellen Sie einen neuen Tomcat-Server: 
 

Konfigurieren Sie diesen:

Application Serverdas Tomcat-Verzeichnis von Projekt-Installation (z.B.: /[Pfad zum Projekt]/nuclos-isd/tomcat/apache-tomcat-7.0.72)
VM Options-Dfunctionblock.dev=true -mx1024m
Deploy at server startupAdd -> Artifact... -> nuclos-war-exploded
Application context/nuclos-war
 

Zusätzlich muss auch noch ein External Tool unter Before launch eingerichtet werden. Dieses kopiert die zuvor eingerichtete context.xml in ein bestimmtes Verzeichnis.

Programcp
Parameter (durch Leerzeichen getrennt)

/[Pfad zu Kern-git]/nuclos-war/src/main/webapp/META-INF/context.xml

/[Pfad zu Kern-git]/nuclos-war/target/nuclos-war/META-INF

Working directoryJe nachdem, wie die Parameter-Pfade angegeben sind. Wenn hier z.B. /[Pfad zu Kern-git]/ angegeben ist, sind die Paramter nur /nuclos-war/.../

Der Server kann jetzt gestartet werden.

 

Es kann sein das beim Start der folgende Fehler kommt, dann muss im Terminal das Projekt mit "mvn clean" nochmals gesäubert werden.
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.security.filterChainProxy': Invocation of init method failed; nested exception is java.lang.IllegalArgumentException: A universal match pattern ('/**') is defined before other patterns in the filter chain, causing them to be ignored. Please check the ordering in your <security:http> namespace or FilterChainProxy bean configuration

 

Wenn das Nuclos-Projekt über server-extensions verfügt und/oder auf einer Oracle-Datenbank basiert, ist ein weiterer Schritt notwendig:

Die ojdb6.jar (Oracle.db) und alle .jar - Extensions ([Pfad zu Projekt-Installation]/extensions/server bzw. [Pfad zu Projekt-Installation]/extensions/common) müssen ins Tomcat-lib-Verzeichnis kopiert werden (/[Pfad zu Projekt-Installation]/tomcat/apache-tomcat-7.0.72/lib).

Abschließend muss noch der Client erstellt werden:

 

Konfiguration des Clients:

Main classorg.nuclos.client.main.Nuclos
VM options (Port muss ggf. angepasst werden)

-ea
-Xmx600m
-Dserver=http://localhost:8080/nuclos-war
-Dfunctionblock.dev=true
-Dsun.awt.disablegrab=true

Use classpath of modulenuclos-client
  • Keine Stichwörter