Skip to content

Commit 00dc5c1

Browse files
SoftlySplinterGitHub Enterprise
authored andcommitted
Update README.md
1 parent 728c2c2 commit 00dc5c1

File tree

1 file changed

+55
-1
lines changed

1 file changed

+55
-1
lines changed

README.md

Lines changed: 55 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1,55 @@
1-
# cics-eventprocessing-java
1+
# cics-eventprocessing-java
2+
Example code of how to use CICS event processing in the Java programming language
3+
4+
## Structure
5+
The project consists of two Maven modules:
6+
7+
1. cics-eventprocessing-java-code - The Java source code for this example
8+
2. cics-eventprocessing-java-bundle - The bundle definition for this example
9+
10+
## Code Structure
11+
The code is built into a WAR file, which can be deployed to a Liberty JVM server as a web application.
12+
13+
There are two Java classes:
14+
15+
1. EventEmitter.java - A servlet which emits CICS events
16+
2. EventConsumer.java - Defines the program `EVNTCONS` which receives CICS events, see [Bundle Structure](#bundle_structure) for more details
17+
18+
## Bundle Structure
19+
The CICS bundle contains several elements
20+
21+
1. `EVNT` - A transaction which targets the `EVNTCONS` program
22+
2. `EVENTADAPTER` - An EP Adapter which starts the `EVNT` transaction
23+
3. `EVENT` - An Event Binding which targets the `EVENTADAPTER` adpater
24+
4. A WARBUNDLE containing the built Java WAR.
25+
26+
## Building
27+
*TODO*
28+
29+
## Configuration
30+
You'll need to define a Liberty JVM server with the name `DFHWLP`. This name can be modified in the `pom.xml` of the cics-eventprocessing-java-bundle module.
31+
32+
The Liberty JVM server will need the `cicsts:core-1.0`, `cicsts:link-1.0` and `servlet-3.1` features installed at minimum. A sample server.xml file is provided below
33+
34+
```xml
35+
<server name="cics-eventprocessing-java">
36+
<featureManager>
37+
<feature>cicsts:core-1.0</feature>
38+
<feature>cicsts:link-1.0</feature>
39+
<feature>servlet-3.1</feature>
40+
</featureManager>
41+
42+
<!-- More configuration -->
43+
</server>
44+
```
45+
46+
## Deploying
47+
*TODO*
48+
49+
## Running
50+
1. Use a browser to target the address http://my.zos:9080/cics-eventprocessing-java-code/emit?name=EVENT replacing `my.zos` with the hostname of your z/OS system and `9080` with the port the Liberty JVM server is listening on.
51+
2. View the JVM server CURRENT.STDOUT file, this should contain two log messages
52+
* Emitted event
53+
* Consumed event
54+
55+
You can also emit an event using `EXEC CICS SIGNAL EVENT(EVENT)` either in another CICS program, or using the `CECI` transaction.

0 commit comments

Comments
 (0)