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.
Citation preview
1. 2014 IBM Corporation Interfaces Using JSPs, Servlets, &
PHP with CICS Transaction Server V5 Fraser Bohm IBM STSM, CICS TS
Lead Architect
2. Please Note IBMs statements regarding its plans, directions,
and intent are subject to change or withdrawal without notice at
IBMs 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 users 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.
3. 3 2012 IBM Corporation Agenda The CICS Java Web Container
based on WAS Liberty technology What is a Hybrid Application anyway
and why would I want one? Options for Hybrid Applications and when
to use them Nought to Web App
4. 4 2012 IBM Corporation Introduction to the JVM Server &
CICS use of the Liberty Profile
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
6. 7 2012 IBM Corporation Configuration by Exception This is
the entire configuration needed to run Liberty as a Web-container
with Servlet support.
7. Convergence Of features, fix packs and timing
8. 10 2012 IBM Corporation What is a Hybrid Application anyway
and why would I want one?
9. Liberty in CICS a Hybrid Runtime What do you see, CICS or
Liberty? ...It's all a matter of perspective
10. 05/22/1412 2012 IBM Corporation Hybrid Threads JVM task T8
TCB Worker thread attach change-mode attachCurrentThread LE enclave
CICS Task Same Task Context JDBC Link to COBOL Etc. Liberty Web
Feature (CICS)ExecutorService.execute (Runnable) HttpListener
Thread Dispatcher (task generator) XMATURIMAP
11. 13 2012 IBM Corporation Each 'Invocation' (think Servlet
Request) on a Hybrid Thread is also a CICS Transaction (Has a
Tranid, Task Context etc). This gives you A single common
Transaction (UOW) and CICS Managed JDBC Which can cross between
Java and Cobol Full JCICS API Access In particular, LINK and access
to VSAM WLM (CICS WLM, Performance Classes etc). Monitoring /
Statistics CICS Transaction Tracking / Association Data Benefits of
Hybrid Threads
12. 14 2012 IBM Corporation Options for Hybrid Applications and
when to use them
13. 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
14. 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.:
15. 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
16. PHP In Action PHP code in Sample
17. 19 2012 IBM Corporation Nought to Web-App
18. 20 2012 IBM Corporation 1) Create a JVM server resource in
Explorer, CEDA, or CPSM.
19. 21 2012 IBM Corporation 2) Configure the JVMProfile - Copy
the sample DFHWLP - Check JAVA_HOME is correct. - Ensure Auto
Configure option is set to true for first time - Point your JVM
server definition at the new JVMProfile
20. 22 2012 IBM Corporation 3) Enable the JVM server
21. 23 2012 IBM Corporation 4) Liberty is running! (check the
logs). Server defaultServer created. Launching defaultServer
(wlp-1.0.0.20120428-1251/websphere-kernel_1.0.0) on IBM J9 VM,
version pmz6470sr1- 20120302_01 (SR1) (en_US) [AUDIT ] CWWKE0001I:
The server defaultServer has been launched. [AUDIT ] CWWKG0028A:
Processing included configuration resource:
file:/u/ivanh/IYK3ZIH1/LIBERTY1/wlp/usr/servers/defaultServer/installedApps.xml
[AUDIT ] CWWKG0028A: Processing included configuration resource:
file:/u/ivanh/IYK3ZIH1/LIBERTY1/wlp/usr/servers/defaultServer/cicsSecurity.xml
[AUDIT ] CWWKZ0058I: Monitoring dropins for applications. [AUDIT ]
CWWKF0011I: The server defaultServer is ready to run a smarter
planet.
22. 24 2012 IBM Corporation 5) Install Eclipse 3.6.2 -
preferably JEE version, but Classic will suffice.
http://www.eclipse.org/downloads/packages/release/helios/sr2
23. 25 2012 IBM Corporation 6) Install IBM CICS SDK for
WebSphere Application Server Liberty profile v5.1
24. 26 2012 IBM Corporation 7) Create a Dynamic Web Project, or
choose one of the Examples
25. 27 2012 IBM Corporation 8) Export the CICS bundle
project
26. 28 2012 IBM Corporation 9) Pick a zFS location for the CICS
bundle project
27. 29 2012 IBM Corporation 10) Create a CICS bundle definition
to control the life-cycle of the Application
28. 30 2012 IBM Corporation 11) Install the CICS bundle
definition
29. 31 2012 IBM Corporation 12) Run the application! [AUDIT ]
CWWKT0016I: Web application available (default_host):
http://winmvs2c.hursley.ibm.com:27245/com.ibm.cics.server.example.wlp.tsq.web/
30. 32 2012 IBM Corporation zFS zOS App App App CICS Liberty
JVM server Deploy Eclipse with Liberty Tools Use CICS Resources
Enable Putting it all together
31. 33 2012 IBM Corporation Summary and Future
32. 34 2012 IBM Corporation Summary of Key Benefits Local.
Lightweight. Fast. Web Applications run locally in CICS with direct
access to CICS data and resources. No adapters, no converters, same
address space. Standard tools for developers. Familiar, industry
standard tools with Eclipse and Dynamic Web Projects. CICS Explorer
SDK enhances the deployment experience. Portable. Presentation
logic in Servlets, business logic in OSGi bundles. Servlets are
portable across runtimes. Bundles provide componentization. Modular
design. Architected in a modular way using OSGi, the server only
enables and starts the features required by the applications and
configuration. If you're not using a feature, it won't start in
your server runtime Dynamic runtime. Features can be added to the
server dynamically, using the OSGi framework, while the server is
running, with zero downtime and server restarts. Similarly server
and application config can be updated without the need to restart.
Eclipse based tools. The eclipse tools for the Liberty Profile are
small and very well integrated with the Liberty Profile
environment
33. Questions?
34. We Value Your Feedback Dont 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
youve attended 36
35. Thank You
36. Legal Disclaimer IBM Corporation 2014. All Rights Reserved.
The information contained in this publication is provided for
informational purposes only. While efforts were made to verify the
completeness and accuracy of the information contained in this
publication, it is provided AS IS without warranty of any kind,
express or implied. In addition, this information is based on IBMs
current product plans and strategy, which are subject to change by
IBM without notice. IBM shall not be responsible for any damages
arising out of the use of, or otherwise related to, this
publication or any other materials. Nothing contained in this
publication is intended to, nor shall have the effect of, creating
any warranties or representations from IBM or its suppliers or
licensors, or altering the terms and conditions of the applicable
license agreement governing the use of IBM software. References in
this presentation to IBM products, programs, or services do not
imply that they will be available in all countries in which IBM
operates. Product release dates and/or capabilities referenced in
this presentation may change at any time at IBMs sole discretion
based on market opportunities or other factors, and are not
intended to be a commitment to future product or feature
availability in any way. Nothing contained in these materials is
intended to, nor shall have the effect of, stating or implying that
any activities undertaken by you will result in any specific sales,
revenue growth or other results. If the text contains performance
statistics or references to benchmarks, insert the following
language; otherwise delete: 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. If the text includes any customer examples, please confirm we
have prior written approval from such customer and insert the
following language; otherwise delete: All customer examples
described are presented as illustrations of how those customers
have used IBM products and the results they may have achieved.
Actual environmental costs and performance characteristics may vary
by customer. Please review text for proper trademark attribution of
IBM products. At first use, each product name must be the full name
and include appropriate trademark symbols (e.g., IBM Lotus Sametime
Unyte). Subsequent references can drop IBM but should include the
proper branding (e.g., Lotus Sametime Gateway, or WebSphere
Application Server). Please refer to
http://www.ibm.com/legal/copytrade.shtml for guidance on which
trademarks require the or symbol. Do not use abbreviations for IBM
product names in your presentation. All product names must be used
as adjectives rather than nouns. Please list all of the trademarks
that you use in your presentation as follows; delete any not
included in your presentation. IBM, the IBM logo, Lotus, Lotus
Notes, Notes, Domino, Quickr, Sametime, WebSphere, UC2,
PartnerWorld and Lotusphere are trademarks of International
Business Machines Corporation in the United States, other
countries, or both. Unyte is a trademark of WebDialogs, Inc., in
the United States, other countries, or both. If you reference Adobe
in the text, please mark the first use and include the following;
otherwise delete: Adobe, the Adobe logo, PostScript, and the
PostScript logo are either registered trademarks or trademarks of
Adobe Systems Incorporated in the United States, and/or other
countries. If you reference Java in the text, please mark the first
use and include the following; otherwise delete: Java and all
Java-based trademarks are trademarks of Sun Microsystems, Inc. in
the United States, other countries, or both. If you reference
Microsoft and/or Windows in the text, please mark the first use and
include the following, as applicable; otherwise delete: Microsoft
and Windows are trademarks of Microsoft Corporation in the United
States, other countries, or both. If you reference Intel and/or any
of the following Intel products in the text, please mark the first
use and include those that you use as follows; otherwise delete:
Intel, Intel Centrino, Celeron, Intel Xeon, Intel SpeedStep,
Itanium, and Pentium are trademarks or registered trademarks of
Intel Corporation or its subsidiaries in the United States and
other countries. If you reference UNIX in the text, please mark the
first use and include the following; otherwise delete: UNIX is a
registered trademark of The Open Group in the United States and
other countries. If you reference Linux in your presentation,
please mark the first use and include the following; otherwise
delete: Linux is a registered trademark of Linus Torvalds in the
United States, other countries, or both. Other company, product, or
service names may be trademarks or service marks of others. If the
text/graphics include screenshots, no actual IBM employee names may
be used (even your own), if your screenshots include fictitious
company names (e.g., Renovations, Zeta Bank, Acme) please update
and insert the following; otherwise delete: All references to
[insert fictitious company name] refer to a fictitious company and
are used for illustration purposes only.