Führen Sie die Java EE-Anwendung unter CICS aus

Einführung

Wenn Sie an CICS (CICS Transaction Server für z / OS) denken, denken Sie vielleicht, dass das Schreiben von Anwendungen in Sprachen wie COBOL, PL / I und Assembler der Mainstream ist, aber die Java-Unterstützung wurde schon lange hinzugefügt. .. In neueren Versionen wird Liberty (WAS: eine kompakte Version von WebSphere Application Server) unter CICS ausgeführt. Mit anderen Worten, Sie können Java EE-Anwendungen auf CICS ausführen.

Wenn Sie beispielsweise über eine vorhandene CICS-Anwendung verfügen und eine Schnittstelle für das Web erstellen möchten, um über das Web darauf zuzugreifen, können Sie dies nur mit CICS tun, ohne einen separaten Anwendungsserver zu erwerben.

Hier finden Sie eine Zusammenfassung der Mindesteinstellungen zum Ausführen von Liberty unter CICS und der Schritte zum Ausführen der Beispielanwendung.

CICS TS V5.3 for z/OS Name der CICS-Region: CT53H4A1

Wartung der Ausführungsumgebung

Befolgen Sie grundsätzlich die Beschreibung hier. https://www.ibm.com/support/knowledgecenter/SSGMCP_5.3.0/com.ibm.cics.ts.java.doc/JVMserver/config_jvmserver_liberty.html

Eigenschaftsinformationen und Protokolle des Liberty-Servers, der unter CICS ausgeführt wird, werden in Dateien auf USS verwaltet. Bereiten Sie daher zuerst die Verzeichnisse und Dateien vor, die von der CICS-Liberty-Funktion unter USS (Unix System Service) verwendet werden.

USS-Verzeichnis

Erstellen Sie das folgende Verzeichnis.

  • / var / cicsts / cicsts53 / CT53H4A1 / JVMProfiles / (für die Platzierung von JVM-Eigenschaftendateien)
  • / var / cicsts / cicsts53 / CT53H4A1 / work / (Arbeitsverzeichnis, in dem Protokolle usw. ausgegeben werden)

JVM-Eigenschaftendatei

Bereiten Sie eine Datei vor, um die Eigenschaften von Liberty und die vorausgesetzte JVM festzulegen. Dies liegt daran, dass die vom Produkt bereitgestellte Vorlage im /JVMProfiles/DFHWLP.jvmproperties bereitgestellt wird. Kopieren Sie sie daher nach /var/cicsts/cicsts53/CT53H4A1/JVMProfiles/DFHWLP.jvmproperties und bearbeiten Sie sie. Die minimal erforderlichen Einstellungen sind wie folgt.

DFHWLP.jvmproperties


JAVA_HOME=/usr/lpp/java/J7.1_64/
WORK_DIR=/var/cicsts/cicsts53/CT53H4A1/work
WLP_INSTALL_DIR=/usr/lpp/cicsts/cicsts53/wlp
-Dcom.ibm.cics.jvmserver.wlp.autoconfigure=true
-Dcom.ibm.cics.jvmserver.wlp.server.host=*
-Dcom.ibm.cics.jvmserver.wlp.server.http.port=53481
-Dcom.ibm.cics.jvmserver.wlp.server.https.port=53482

Geben Sie das zu verwendende Java JAVA_HOME, das Arbeitsverzeichnis, die Portnummer, die Liberty abhört, usw. an.

SIT Geben Sie in SIT der CICS-Region das Verzeichnis der oben mit dem Parameter JVMPROFILEDIR vorbereiteten Eigenschaftendatei an.

SIT


JVMPROFILEDIR=/var/cicsts/cicsts53/CT53H4A1/JVMProfiles 

Starten Sie die CICS-Region mit aktiviertem SIT-Parameter.

CICS-Ressourcendefinition: JVM-Serverdefinition

Um Liberty unter CICS auszuführen, müssen Sie eine Ressourcendefinition erstellen und installieren, die als JVM-Serverdefinition bezeichnet wird und die auf USS vorbereitete Eigenschaftendatei angibt. Auch hier wird ein Beispiel für die DFH $ WLP-Gruppe bereitgestellt, damit Sie es kopieren und verwenden können.

Beispiel für eine JVM-Serverdefinition


OBJECT CHARACTERISTICS                                    CICS RELEASE = 0700 
 CEDA  View JVmserver( DFHWLP   )                                             
  JVmserver      : DFHWLP                                                     
  Group          : TAGGRP                                                     
  DEScription    : CICS JVM server to run WLP samples                         
  Status         : Enabled            Enabled | Disabled                      
  Jvmprofile     : DFHWLP                                         (Mixed Case)
  Lerunopts      : DFHAXRO                                                    
  Threadlimit    : 015                1-256                                   
 DEFINITION SIGNATURE                                                         
  DEFinetime     : 01/29/16 09:08:50                                          
  CHANGETime     : 01/29/16 09:08:50                                          
  CHANGEUsrid    : CICSUSER                                                   
  CHANGEAGEnt    : CSDApi             CSDApi | CSDBatch                       
  CHANGEAGRel    : 0700                                                     

Die Datei mit der Erweiterung ".jvmprofile", die zum hier angegebenen Wert von Jvmprofile (DFHWLP im obigen Beispiel) hinzugefügt wurde, wird in dem von JVMPROFILEDIR von SIT angegebenen Verzeichnis durchsucht.

Nachdem Sie die JVMServer-Definition erstellt haben, installieren wir sie. Anschließend wird die folgende Nachricht an das JOBLOG von CICS ausgegeben.

DFHRD0131 I 03/07/2017 19:14:04 CT53H4A1 TCP00045 CICSUSER CEDA INSTALL JVMSERVER(DFHWLP)                                      
0045     CEDA CICSUSER 03/07/17 19:14:04 INSTALL JVMSERVER(DFHWLP) GROUP(TAGGRP)                                               
DFHPG0210 03/07/2017 19:14:04 CT53H4A1  IBMUSER CJSR Resource definition for DFHAXRO has been system autoinstalled.            
DFHSJ0207 03/07/2017 19:14:09 CT53H4A1 JVMSERVER DFHWLP is running Java version 1.7.1.                                         
DFHSJ0919 I 03/07/2017 19:14:17 CT53H4A1 IBMUSER JVMSERVER DFHWLP is processing any queued bundles.                            
DFHSJ0915 03/07/2017 19:14:17 CT53H4A1 IBMUSER JVMSERVER DFHWLP is now enabled and is ready for use.                           
DFHSJ0901 I 03/07/2017 19:14:17 CT53H4A1 JVMSERVER DFHWLP Java full version is: JRE 1.7.0 IBM J9 2.7 z/OS s390x-64 Compressed  
           References 20140410_195893 (JIT enabled, AOT enabled) J9VM - R27_Java727_SR1_20140410_1931_B195893 JIT  -           
           tr.r13.java_20140410_61421 GC   - R27_Java727_SR1_20140410_1931_B195893_CMPRSS J9CL - 20140410_195893. 

Libertys Server ist jetzt auf CICS!

Funktionsprüfung

Wenn Sie die Informationen des Ports, den Sie abhören, mit dem Befehl NETSTAT usw. überprüfen, können Sie feststellen, dass Sie den zuvor in der Eigenschaftendatei angegebenen Port abhören.

NETSTAT-Beispiel


398 00000090  CT53H4A1 000015DC 0.0.0.0..53481         0.0.0.0..0             LISTEN     
398 00000090  CT53H4A1 000015DD 0.0.0.0..53482         0.0.0.0..0             LISTEN   

Der Liberty-Server wird unter CICS ausgeführt. Stellen Sie daher eine Verbindung über den Browser her. Sie können den Startbildschirm anzeigen, indem Sie auf http: // hostname: 53481 / zugreifen. image01.JPG

Wenn Sie auf die standardmäßig bereitgestellte Webanwendung zugreifen, können Sie außerdem die folgenden Umgebungsinformationen überprüfen. image02.JPG

Damit ist die minimale Ausführungsumgebung abgeschlossen. Es ist einfach.

Wartung der Entwicklungsumgebung

Die Beschreibung dieses Gebiets ist die Basis. https://www.ibm.com/support/knowledgecenter/en/SSGMCP_5.3.0/com.ibm.cics.ts.java.doc/topics/installingthelibertyprofile.html

Übrigens, auch wenn es sich um eine CICS-Anwendung handelt, entwickeln wir eine Java EE-Anwendung, die auf Liberty ausgeführt wird. Die Entwicklungsumgebung ist also nicht der 3270-Bildschirm von PCOM, sondern natürlich Eclipse auf dem PC. Für Eclipse wird ein SDK-Plug-In für CICS-Liberty bereitgestellt, sodass Sie durch Hinzufügen eine Entwicklungsumgebung erstellen können. Sie können jede kostenlose Eclipse verwenden (obwohl Versionskonsistenz erforderlich ist), aber da CICS ein Eclipse-basiertes Verwaltungstool (kostenlos) namens CICS Explorer bereitstellt, ist es das. Es ist eine gute Idee, das SDK dort abzulegen.

CICS Explorer Siehe folgende Beschreibung ... Installieren Sie den CICS Explorer (https://www.ibm.com/support/knowledgecenter/SSGMCP_5.3.0/com.ibm.cics.core.help/topics/concepts/install_planning.html).

Es gibt zwei Möglichkeiten, es zu installieren, und es ist möglicherweise schwer zu verstehen, ob Sie Eclipse oder z / OS Explorer im Voraus installiert haben. Der schnellste Weg befindet sich jedoch am Ende der folgenden Site. Wählen Sie unter "Verwenden von Eclipse (p2)" die Option "Ausgehend von Scrach" und laden Sie den CICS-Explorer für diese Plattform herunter. https://developer.ibm.com/mainframe/products/downloads/eclipse-tools/#p2 Jetzt, wo Sie einen Reißverschluss haben, packen Sie ihn einfach aus. Wenn Sie es entpacken, finden Sie zosexplorer.exe. Führen Sie es aus, um es zu starten. (Auch wenn Sie CICS Explorer herunterladen, lautet die ausführbare Datei zosexplorer.exe.)

SDK-Plug-In

Siehe folgende Beschreibung ... Installing the CICS SDK for web and JSP

Wählen Sie im Menü CICS Explorer die Option Hilfe - Neue Software installieren IBM Explorer für z / OS-Update Site-Select http://public.dhe.ibm.com/ibmdl/export/pub/software/htp/zos/tools/aqua/.

Sie müssen mit dem Web verbunden sein, da es von der Website heruntergeladen und installiert wird.

Erweitern Sie IBM CICS Explorer und wählen Sie IBM CICS SDK für Servlet- und JSP-Unterstützung, IBM CICS SDK für Servlet- und JSP-Übersetzungsunterstützung aus und installieren Sie sie. image03.JPG

verschiedene Einstellungen

Nehmen Sie einige Einstellungen vor, um die Entwicklungsumgebung zu verbessern.

Ziel-CICS-Versionseinstellung

Geben Sie in Eclipse (CICS Explorer) an, auf welche CICS-Version die Entwicklung abzielen soll. Wählen Sie eine Einstellung, Plugin-Entwicklung - Wählen Sie eine Zielplattform und Wählen Sie die Ziel-CICS-Version aus. (Hier CICS TS V5.3 mit Liberty und PHP) image04.JPG

image05.JPG

FTP-Konfiguration

Wenn Sie eine Anwendung von CICS Explorer auf dem Ziel-CICS bereitstellen möchten, müssen Sie die erstellte Anwendung über USS übertragen. Erstellen Sie eine FTP-Verbindungskonfiguration, damit Sie sie über CICS Explorer bereitstellen können. Öffnen Sie die Hostverbindungsansicht und definieren Sie die FTP-Konfiguration im z / OS-FTP-Element. image06.JPG

Wenn Sie über CICS Explorer eine FTP-Verbindung herstellen können, wird diese wie unten gezeigt grün markiert. image07.JPG

USS-Verzeichnis

Bereiten Sie ein Verzeichnis auf USS vor, um die Anwendung zu platzieren. Die CICS-Liberty-Anwendung ist einer Ressource mit dem Namen BUNDLE-Definition in CICS zugeordnet. Erstellen Sie daher ein Verzeichnis mit dem Namen Bundles, wie unten gezeigt. /var/cicsts/cicsts53/CT53H4A1/bundles/

Beispiel App

Nachdem die Entwicklungsumgebung eingerichtet ist, erstellen wir ein vom CICS SDK bereitgestelltes Beispiel-App-Projekt, stellen es auf CICS-Liberty bereit und führen es aus.

Beispielprojekt erstellen

Siehe folgende Beschreibung ... Creating the servlet examples

Wählen Sie unter Datei-Neu-Beispiel die Option CICS Hello World aus. image08.JPG

Das CICS Hello World-Beispiel-App-Projekt wird jetzt in Eclipse importiert. Es ist so einfach wie eine App mit nur einem JSP. image09.JPG

Es enthält auch die Definition eines CICS-Bundles (cics.xml) für die Verwaltung als Ressource in CICS.

Bereitstellen

Siehe folgende Beschreibung ... Deploying the servlet examples

Lassen Sie uns diese App bereitstellen. Klicken Sie mit der rechten Maustaste auf das Projekt mit dem Namen xxx.bundle und wählen Sie Gebündeltes Projekt in z / OS UNIX-Dateisystem exportieren aus. image10.JPG

Wählen Sie Exportieren an einen bestimmten Speicherort im Dateisystem und Weiter

Wählen Sie das oben vorbereitete Bereitstellungszielverzeichnis aus und exportieren Sie es. image11.JPG

Die App ist jetzt auf USS platziert.

Fügen Sie schließlich eine Ressourcendefinition mit dem Namen BUNDLE-Definition in CICS hinzu, damit diese App von CICS erkannt wird. Die BUNDLE-Definition für dieses Beispiel finden Sie in der DFH $ WLP-Gruppe. Kopieren Sie sie, bearbeiten Sie sie entsprechend und installieren Sie sie.

Beispiel für eine BUNDLE-Definition


OVERTYPE TO MODIFY                                        CICS RELEASE = 0700 
 CEDA  ALter Bundle( WLPHELLO )                                               
  Bundle         : WLPHELLO                                                   
  Group          : TAGGRP                                                     
  DEScription  ==> CICS Bundle for Liberty Hello servlet                      
  Status       ==> Enabled            Enabled | Disabled                      
  BUndledir    ==> /var/cicsts/cicsts53/CT53H4A1/bundles/com.ibm.cics.server. 
  (Mixed Case) ==> examples.wlp.hello.bundle_1.0.1                        
               ==>                                                            
               ==>                                                            
               ==>                                                            
  BAsescope    ==>                                                            
  (Mixed Case) ==>                                                            
               ==>                                                            
               ==>                                                            
               ==>                                                            
 DEFINITION SIGNATURE                                                         
  DEFinetime     : 03/07/17 21:02:49                                          
  CHANGETime     : 03/07/17 21:04:26                                          
                                                                              
                                                    SYSID=H4A1 APPLID=CT53H4A1

Die folgende Nachricht wird an das CICS-JOBLOG ausgegeben.

+CWWKG0016I: Starting server configuration update.                          
+CWWKG0017I: The server configuration was successfully updated in 636       
 0.031 seconds.                                                             
+CWWKZ0001I: Application com.ibm.cics.server.examples.wlp.hello.war 637     
 started in 0.069 seconds.                                                  

Lauf

Greifen wir über einen Browser auf die auf CICS-Liberty bereitgestellte Anwendung zu.

Greifen Sie über einen Browser auf die folgende URL zu http://hostname:53481/com.ibm.cics.server.examples.wlp.hello/

Es ist in Ordnung, wenn die Anwendung den folgenden Bildschirm zurückgibt. image12.JPG Sie können sehen, dass der CICS-Regionsname (applid) zurückgegeben wird.

abschließend

Hier haben wir eine Reihe von Schritten zum Ausführen der CICS-Liberty-App vorgestellt. Obwohl wir nicht auf den Inhalt der App eingegangen sind, bietet die CICS-Liberty-App eine Java-Schnittstelle, die der EXEC CICS-API namens JCICS entspricht, sodass Sie direkt von Java aus auf CICS-Ressourcen zugreifen können. Durch die Verwendung dieser CICS-Liberty-Funktion ist es möglicherweise einfacher, vorhandene CICS-Apps aus dem Web zu verwenden und Erweiterungen in Java zu entwickeln.

Recommended Posts

Führen Sie die Java EE-Anwendung unter CICS aus
Führen Sie PostgreSQL unter Java aus
Führen Sie das Java-Applet auf Ubuntu aus
So führen Sie Java EE Tutial auf Github unter Eclipse aus
Führen Sie das Shell-Skript von tomcat auf java8 aus
Erstellen von Java-Webanwendungen unter Windows Server 2016
Kompilieren Sie Java und führen Sie es in der Befehlszeile aus
Führen Sie Mecab in der Win10 + Eclipse + Java + cmecab-Java-Umgebung aus (Version Januar 2020).
Führen Sie STS4 auf dem Mac aus
Installieren Sie Java auf dem Mac
Ich habe versucht, Log4j2 auf einem Java EE-Server zu verwenden
Führen Sie kuromoji in der Win10 + Eclipse + Java-Umgebung aus (Version Januar 2020).
Führen Sie die Verarbeitung auf Ant aus
Führen Sie tiscamera unter Ubuntu 18.04 aus
Serverloses Java EE beginnend mit Quarkus und Cloud Run
Führen Sie R von einem Tomcat-basierten Java-Prozess unter Amazon Linux aus
1. Führen Sie schnell Java-Webmodule in Google Kubernetes Engine (GKE) aus.
Java-Versionsverwaltung unter macOS
Installieren Sie OpenJDK7 (JAVA) unter Ubuntu 14.04
Führen Sie Batch mit Docker-Compose mit Java-Batch aus
Downgrade von Java unter openSUSE Linux
Reflexion über die Manipulation von Java-Strings
Aktivieren Sie Java EE mit NetBeans 9
Beim Übergeben von Java Gold SE 8
Führen Sie openvpn unter Docker aus (Windows)
Oracle Java 8 unter Docker Ubuntu
Installieren Sie Java unter WSL Ubuntu 18.04
Java Hallo Welt, kompilieren, ausführen
Fügen Sie Oracle Java 8 in CircleCI 2 ein
Ändern Sie die Java-Version unter CentOS
Führen Sie Eclipse CDT unter Ubuntu aus
CICS-Java-Anwendung ausführen- (5) Verwenden Sie JCICSX
Führen Sie mruby / c auf PSoC 5 aus
Führen Sie Java VM mit Web Assembly aus
Installieren Sie Java 1.8.0 unter Amazon Linux2