38
© 2014 IBM Corporation JSPs, Servlets, & PHP with CICS Transaction Server V5 Fraser Bohm – IBM STSM, CICS TS Lead Architect

IBM Impact Session 2351 hybrid apps

Embed Size (px)

DESCRIPTION

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.