This session will describe how CICS TS v5.1 can quickly and simply support the creation of modern Mobile Ready interfaces to existing applications. The session will introduce the key technologies including the use of Liberty technology in CICS TS. We will work through a simple scenario to demonstrate the key points. The session will cover the core supporting technologies include in CICS TS v5.1 as well as the Dynamic Scripting Feature Pack and content included in the CICS TS v5.2 Open Beta.
2. Please Note
IBM’s statements regarding its plans, directions, and intent are subject to change
or withdrawal without notice at IBM’s sole discretion.
Information regarding potential future products is intended to outline our general
product direction and it should not be relied on in making a purchasing decision.
The information mentioned regarding potential future products is not a
commitment, promise, or legal obligation to deliver any material, code or
functionality. Information about potential future products may not be incorporated
into any contract. The development, release, and timing of any future features or
functionality described for our products remains at our sole discretion.
Performance is based on measurements and projections using standard IBM
benchmarks in a controlled environment. The actual throughput or performance
that any user will experience will vary depending upon many factors, including
considerations such as the amount of multiprogramming in the user’s job stream,
the I/O configuration, the storage configuration, and the workload processed.
Therefore, no assurance can be given that an individual user will achieve results
similar to those stated here.
5. 5
JVM Server Architecture
CICS TS V4
JVM
LE enclave
CICS
Task PThread
JVM
thread
CICS
Task PThread
JVM
thread
CICS
Task PThread
JVM
thread
Can attach multiple
pthreads/CICS
tasks to the JVM at
the same time
Therefore serve
more requests
using a single JVM
Result is increased
tasks per region –
up to 256 programs
simultaneously on
T8 TCBs
For 3rd
party JVM
technology (CICS
TS V4.1)
and user programs
(CICS TS V4.2)
Heap &
Classes
An alternative to pooled JVMs, not a replacement (yet)
JCICS
API
JVM
thread
JVM
thread
JVM
thread
JVM
thread
15. Presentation
Complex
Services
Simple
As CICS has got smarter, the
level of complexity has
increased.
CICS TS V5 will continue to
deliver more advanced
capabilities.
Hybrid Applications can
both be about presentation
logic and services, as well
as Java or PHP
When to use what and customer use cases
a vision for an easier to use application server
15
Presentation
Servlet
JAX-RSJAX-WS
Dynamic Scripting
JSP
JSF
16. CICS Dynamic Scripting
Java EE /
CICS
Traditional Liberty CICS Dynamic Scripting
StrategicValue,Cost,Complexity,Usage
Number of applications
Time to value is more
important than
enduring value
Strategic, long-
lived applications
Enterprise
Applications
Team/Project
Applications Personal
Applications
Creating reports, dashboards and widgets
Quickly front ending existing applications
Exposing CICS assets in mash-ups
Creating productivity applications
Quickly trying out new business ideas
Introducing new IT staff to CICS via PHP
Developing without a dedicated budget
Porting existing unmanaged PHP into CICS
Departmental
Applications
Can be used to develop and deploy lightweight, ‘fit for
purpose’, situational applications that meet departmental,
team, project and personal requirements, e.g.:
17. Structure of CICS Dynamic Scripting 2.0
JVM
CICS Transaction Server
HTTP
Request
HTTP
Response
Liberty Server CICS
Assets
JCICS
API
PHPServlet PHPWrapper
PHP
P8 Engine
Ext1 Ext2 Ext3 Extn
Web Container
DS FP V2.0 OSGI BundleApp1
App2
App3
App4
JVM
18. PHP In Action
PHP code in Sample
<?php
java_import("com.ibm.cics.server.Region");
echo "Your CICS Dynamic Scripting Example (PHP) is now running in CICS Region
" . Region::getAPPLID() . ".";
?>
36. We Value Your Feedback
Don’t forget to submit your Impact session and speaker
feedback! Your feedback is very important to us – we use it to
continually improve the conference.
Use the Conference Mobile App or the online Agenda Builder to
quickly submit your survey
• Navigate to “Surveys” to see a view of surveys for sessions
you’ve attended
36
In our typical mainframe development, we normally only address mission-critical applications. Because these applications are normally high-volume and are very important to our business, we have surrounded them with procedures with tight controls that insure quality, consistency, availability and all of the other attributes needed for our main applications. These applications are normally written in COBOL running CICS or java running in WebSphere Application Server which provide industrial-strength environments for our applications.
Besides these main applications. there are other applications our business needs for special situations, For example, I want to Creating report asap or create a dashboards to show some progress. This kind of application is commonly called ‘situational applications’. For most of the situational application, time to value is more important than enduring value. In another word, the quicker the better.
The demand for situational applications at some companies becomes more and more important, but due to the procedures and development techniques we use, sometimes it is hard for people to address them.
CICS Dynamic Scripting is intended to address some of these shortcomings. CICS Dynamic Scripting version 1.0 and 1.1, built on Project Zero technology provides a productive environment that can be used to address situational applications. CICS Dynamic Scripting is also a great way to introduce new IT staff to CICS via the PHP and Groovy dynamic scripting languages.
After understand how Liberty runs in CICS. Let’s look at how CICS DS FP 2.0 works. It is packaged as a OSGi Bundle running in Liberty web container. You can see, Here is a CICS, a JVMSERVER runs in CICS. Liberty profile runs in the JVMSERVER, it provides a web container. CICS DF FP 2.0 runs in the web container. When a HTTP which may contains PHP comes into Liberty, it will go into DS FP if it is a PHP request, P8 engine will interpret the PHP and run it. Then send back response to Client. The PHP runs in Liberty can also access CICS assets like Cobol program , TSQ and so on
After user deploy and install the CICS bundle, we can test the PHP page, input URL in a web browse, You will see page as following .It shows the region’s Applid.
Let’s look at the code. In this PHP code, user import a java class first , this java class is part of JCICS jar which is provided by CICS. They PHP code can call JCICS API to get current region’s application id.