IBM Software Group IBM Application Development EaseofUse with
IBM Software Group IBM Application Development Ease-of-Use with Java. Server Faces (JSF) “Delivering applications faster, easier and with higher ROI“ Name Title Company © 2003 IBM Corporation
IBM Software Group IBM Application Development Ease-of-Use Executive Overview “Delivering applications faster, easier and with higher ROI“ Name Title Company © 2003 IBM Corporation
IBM Software Group Application Development Challenges It takes too long to deliver applications “We need to Design, Develop and Deploy applications more quickly” VP Development J 2 EE is too complex “We need to leverage open standards, keep it simple and make it easy for Microsoft heritage developers to get on board” Integration is cost prohibitive 3 “We need to integrate our people, processes and information using web services, databases and existing systems” Developer Architect © 2003 IBM Corporation
IBM Software Group Developing Applications More Quickly Drag-n-drop development of J 2 EE applications (No Coding Required) Tabbed Panels Spreadsheet Control Database Query Web Service Graphing Controls 4 © 2003 IBM Corporation
IBM Software Group Simplifying J 2 EE Development Database development drag-n-drop ease-of-use Web Services development drag-n-drop ease-of-use Portals drag-n-drop ease-of-use 5 © 2003 IBM Corporation
IBM Software Group Integrating People, Processes and Information Model your business, simulate a process and assess cost savings Describe everything as a web service and integrate using workflow tools 6 © 2003 IBM Corporation
IBM Software Group Application Development Challenges Addressed It takes too long to deliver applications “We need to Design, Develop and Deploy applications more quickly” VP Development IBM’s new Java. Server Faces (JSF) tools accelerate development using a drag-n-drop approach (no coding required) J 2 EE is too complex “We need to leverage open standards, keep it simple and make it easy for Microsoft heritage developers to get on board” Developer IBM’s new JSF tools make J 2 EE easier than. NET and very attractive to Microsoft heritage developers Architect Integration is cost prohibitive 7 “We need to integrate our people, processes and information using web services, databases and existing systems” © 2003 IBM Corporation
IBM Software Group IBM Application Development End-to-End Development Manager Overview “Delivering applications faster, easier and with higher ROI“ Name Title Company © 2003 IBM Corporation
IBM Software Group Web. Sphere Studio Integrating Multiple Roles and Development Tools into a single IDE 9 © 2003 IBM Corporation
IBM Software Group Customers Partners Suppliers Employees Applications, Graphics, HTML, Applets Development Roles Web Site Application Development Modeling 10 Edge Servers Directory and Security Servers Web Presentation Servers XML, Web Services, Portlets, Servlets, Java Server Faces/Pages Integration Servers Web Application Servers Services, EJBs & Process Flows Middleware Connectors Applications, Transactions and Processes Transaction Servers Data Servers Relational Data Web Services: SOAP, WSDL, UDDI End-2 -End Development Java XML Web Services Portal Business Process Cobol, PL/I Development Integration 4 GL Development © 2003 IBM Corporation
IBM Software Group Web. Sphere Studio Supports Key Rational Roles Analyst Architect Developer Tester Model, simulate and monitor business processes Model applicatio ns and data Visually construct, hand code, and generate code Design, create, and execute tests Project Manager 11 § Follow a common process § Track project status § Manage requirements § Manage change and assets § Manage quality © 2003 IBM Corporation
IBM Software Group Web. Sphere Studio Fundamentals that Accelerate Development The Workbench J 2 EE, Web Services, Portals, BI and beyond Perspectives, Views and Editors Switch between roles and tooling easily Customize and minimize learning curves Bottom Line The Workbench adjusts to fit you… not the other way around! Dynamic Development Automatic, Incremental Build across all artifacts Automatic J 2 EE hot-redeployment Bottom Line Super-Fast Build/Change/Test Cycles! On Demand Code Smarts Contextual code assist & smart editors speed coding Wizards and builders facilitate open standards & best practices Bottom Line Faster Low/High-Level coding & maintenance! 12 © 2003 IBM Corporation
IBM Software Group Web. Sphere Studio Top 10 List “From J 2 EE to Web Services, Web. Sphere Studio has breadth and depth…” Core IDE infrastructure and Java development tools (JDT) Eclipse Web App User Interface tools: Web Pages, Web Sites, Portlets, Struts and Java. Server Faces Web. Sphere Studio J 2 EE and EJB tools Web Services tools XML and XSL tools Relational Databases tools Testing, Debugging and Profiling tools Integrated Servers (J 2 EE App Servers) On-the-fly coding with Hot Method Replace J 2 EE dynamic build engine with incremental compile…while you type Plugin Extensibility: 13 © 2003 IBM Corporation Coding, Modeling, Frameworks, Testing, Teaming, Best Practices, Patterns, IBM Server toolkits and beyond
IBM Software Group Partial List of Studio/Eclipse Toolkit Plugins (>400 Plugins) Rational XDE & Server Toolkits Partner Tools & Middleware Web. Sphere Studio IBM Plugins/Toolkits: Rational XDE Modeler, Testers, Profiling, etc. Web. Sphere Business Integration Adapters Web. Sphere Portal Toolkit WBI Message Broker Tools WBI Modeler and Monitor Host Integration Toolkit (HOD, HATs, etc. ) Web. Sphere Commerce Toolkit Web. Sphere Portal Toolkit Web. Sphere Mobile Device Toolkits Voice Application, Multimodal Access Toolkits Tivoli Monitoring Resource Model Builder Toolkit DB 2 Everyplace Toolkit Single Eclipse IDE IBM Studio + DB 2 Development Client Toolkit Lotus Domino Toolkit 14 Rational XDE & Server Toolkits Partner Tools & Middleware Web. Sphere Studio Other 3 rd Party Plugins: Eclipse Colorer for editing 100+ languages Visual Rules Instantiations Code. Pro Studio Visual Slick. Edit Eclipse Visual Editor SWT Visual Builder (Rich Clients) JDK 1. 5 Eclipse plugin RSS Reader (streaming XML) DBExplorer Versant OO DB en. Jin Versata Business Logic Designer Velocity Framework Editor Canoo Ultra Light Client Catalyst Systems Openmake Build Manager Exaltec J 2 EE Application Generator MMAEclipse Mathematica plugin PHPEclipse plugin Java. Spider Object Application rd Plugins (i. e. Rational, Portal, WBI, 3 parties…) Grapher © 2003 IBM Corporation
IBM Software Group IBM Rational Tools by Discipline Rational XDE & Server Toolkits Partner Tools & Middleware ü Web. Sphere Studio Eclipse Integration Web. Sphere Studio WBI Modeler Requisite. Pro XDE & Studio & Clear. Case & Clear. Quest & Project Console Integration across/within tools (i. e. change requests) 15 © 2003 IBM Corporation
IBM Software Group IBM Software Development Platform Rational Development Disciplines SW (Project Console, Clear. Quest, Clear. Case, etc. ) technology 16 © 2003 IBM Corporation
IBM Software Group IBM Application Development JSF Ease-of-Use In Action Developer/Architect Overview “Delivering applications faster, easier and with higher ROI“ Name Title Company © 2003 IBM Corporation
IBM Software Group J 2 EE Web Development Programming Effort Automated by JSF Input Process Output Input Constructing web page forms, formatting, validation, etc. GUI widget richness Calling appropriate “Action” when button pressed, etc. Passing data to business logic Processing Integrating to web services, databases, backends, biz logic, etc. Maintaining user session and application state information MVC layering, page flow and business logic modularity Output Forwarding control to results screen/page Displaying data, GUI controls, formatting, etc. 18 © 2003 IBM Corporation
IBM Software Group Java. Server Faces (JSR 127) – What Does it Provide? Based on MVC design pattern Clean separation of Model, View, and Controller User Interface Component Model – Set of standard widgets Specification allows extending custom GUI components (i. e. Data. Table, Graphing, Tree, Panel) User Interface components are decoupled from its rendering Allows for other technologies and pervasive devices (e. g. WML, etc) to be used Validation Framework allows server-side validation Server side management of User Interface, session and state info Event driven architecture Server-side rich user interface components respond to client events Actions organize and process business logic Navigation model manages page flow using JSP path aliases 19 © 2003 IBM Corporation
IBM Software Group Java Server Faces- How it works Client 1. Request Page Server JSF Servlet (Faces. Servlet) 2. Invoke 3. Creates / instantiate tree 4. Apply changes from request JSP Page With <JSF Tags> UI Component Tree 5. Process Validations 6. Apply Model Values 7. Run Events 8. Invoke Render. Kit 9. Render Response (HTML) 21 © 2003 IBM Corporation
IBM Software Group Java Server Faces Life Cycle 22 © 2003 IBM Corporation
IBM Software Group Application Developer V 5. 1. 2 JSF Design Points Accelerate GUI, Web Services, Database, Portlet and MVC development Visual drag-n-drop development of UI, events, actions, page navigation, etc. Simplify J 2 EE development for non-Java programmers Enhance Web Application Development for J 2 EE experts Appeal to Microsoft developers (VB/Visual Studio. Net) Reduce development and deployment time and cost Standards based technologies Java. Server Faces - JSR 127 Service Data Objects - JSR 235 Portlets – JSR 168 23 © 2003 IBM Corporation
IBM Software Group Java. Server Faces Tools in Web. Sphere Studio Web Perspective Project Navigator Page Data Page Designer Palette Attributes 24 Event Panel © 2003 IBM Corporation
IBM Software Group Agenda JSF in Action Web Services Creation and Consumption Database App CRUD and UI MVC Web App Rich Thin Clients Portlet Apps and Portal Integration 25 © 2003 IBM Corporation
IBM Software Group Creating New Web Services Generates all web services artifacts 1 Easily choose Java Class/EJB and methods to expose WSDL service definition file for chosen Class/EJB and methods Other infrastructure: Deployment descriptor, JAX/RPC request/response data definitions 26 © 2003 IBM Corporation
IBM Software Group Consuming Existing Web Services – Discover and Test Discovery tools use UDDI, a well known URL or a WSDL file 1 Web Services Explorer automates discovery and testing Launch separately or while building Faces JSPs Browse Web Service operations, request input parameters, response output Great general purpose unit testing environment 27 © 2003 IBM Corporation
IBM Software Group Consuming Existing Web Services – Calling From Application JSF Web Services Wizards Automate Construction 1 Creates web service proxy bean Creates Action method that calls proxy Creates input parameter bean and output results bean Drag-n-drop to create UI controls Binds input, output and action to UI controls 28 © 2003 IBM Corporation
IBM Software Group Web Services Ease-of-Use Examples External Web Services 1 Web Services Explorer Great for unit testing and experimenting Launched separately or while building a new Faces JSP Adding a Web Service to a project Proxy created that knows how to call the Web Service Input Parameters Bean Results Bean Action method created that uses the proxy bean Drag-n-drop is used to create the UI Once a Web Service is added to a project, any Faces JSP can use it Local Web Services 2 Easily explored using Web Services Explorer Easily added from local workspace 29 © 2003 IBM Corporation
IBM Software Group Agenda JSF in Action Web Services Creation and Consumption Database App CRUD and UI MVC Web App Rich Thin Clients Portlet Apps and Portal Integration 30 © 2003 IBM Corporation
IBM Software Group Creating Database Apps – Select “Relational Record List” Relational wizards automate Select queries 1 2 3 Connect to any relational database, select table(s) and columns graphically Construct query without knowledge of SQL, including input parameters and conditions Drag-n-drop to create UI controls for data display (Data. Table) Binds input, output and action to UI controls Format data display for numbers, currency, dates, text, masks, etc. 31 © 2003 IBM Corporation
IBM Software Group Creating Database Apps – Insert, Update, Delete Rows “Relational Record” Relational wizards automate Update queries 1 2 3 Connect to any relational database, select table(s) and columns graphically Construct query without knowledge of SQL, including input parameters and conditions Drag-n-drop to create UI controls for data display (Form) Binds input, output and action to UI controls Format data input/output display for numbers, currency, dates, text, masks, etc. Validate input fields for length, numbers, text, etc. 32 © 2003 IBM Corporation
IBM Software Group Relational Data Ease-of-Use Web. Sphere/Service Data Objects (WDO/SDO) 1 2 3 Records and Record Lists abstract data access Build a query without knowledge of SQL, JDBC, etc. Select, Insert, Update, Delete Drag-n-drop tables and forms of data onto UI UI data display is automatically bound to Record/List queries Supports conditions, relationships, optimistic concurrency, etc. Easy to pass input parameters to queries Drill-down using hyperlinks Format display types like Currency, Decimal, String, Custom Masks, etc. Once created, Record and Record List queries can be re-used across the app/pages Drag-n-drop is granular and iterative…you can change your mind and not be limited by the style of a wizard Foreign Key relationships easy to navigate (leading to complex queries through an easy and intuitive process) Paging controls for automatic cursor control 33 © 2003 IBM Corporation
IBM Software Group What are Web. Sphere Data Objects (WDO)? Framework for simplifying and unifying the client programming model for accessing backend systems/data Automates construction of queries, results, data display, formatting, etc. A high-productivity solution for integrating data into Applications Relational databases available in WDO today EJBs, Domino, JCA, etc. (future) Supports common application patterns Optimistic concurrency Pagination (e. g. only retrieve 20 rows at a time) Web. Sphere Data Objects are consistent with the emerging standard: Service Data Objects (SDO) 34 Joint IBM/BEA submission to the Java Community Process © 2003 IBM Corporation (JSR 235)
IBM Software Group Service Data Objects The Problem Many different models and APIs for Data retrieval, Data representations, Meta-data retrieval, Meta-data representations, logic components No reasonable API available for “typed” XML data Lack of support for standard application patterns Optimistic concurrency, pagination of large data-sets, etc. Data Access APIs Data. APIs Client Data APIs Data Access APIs Meta-Data Access APIs Client Mediator Meta-Data Access APIs Meta-Data APIs (Current Architectures) 35 Meta-Data APIs (SDO) © 2003 IBM Corporation
IBM Software Group Service Data Objects Meta-Data APIs Pluggable Data Mediator Meta-data model Client Meta-Data Access APIs Data model (Data. Object) SDO Data. Object with XSD & EMF provide a single, standard API (& implementation) for data & meta-data that we can use in place of many other APIs Data is stored in a disconnected, source-independent format defined by the Data. Objects are stored in a graph called a Data. Graph Provides both dynamic loosely-typed and static strongly-typed interfaces to the data Remembers change history © 2003 IBMfrom Corporation Data Mediator Service is responsible for filling graph of Data. Objects
IBM Software Group Agenda JSF in Action Web Services Creation and Consumption Database App CRUD and UI MVC Web App Rich Thin Clients Portlet Apps and Portal Integration 37 © 2003 IBM Corporation
IBM Software Group Java. Server Faces Ease-of-Use 1234567 UI Components Standard HTML-like components Richer validation and formatting Extended rich components for graphing, trees, tabbed views, data tables, etc. Binding Data Automatically synchronizes input/output UI components with data (Web. Svcs, DBs, Beans, etc. ) Navigation Simple “Go. To. Page()” and indirect “Alias” approach Session and State Management Very simple, automatic and available at various levels of scope Page Data Makes integrating UI with Web Services, databases, Java. Beans intuitive and well organized Codebehind “Page. Code” Files (One. java file for each. jsp) Event Driven nature eases thin and thick style of interaction Validation and Formatting provide rich capability and alleviate client side programming 38 © 2003 IBM Corporation
IBM Software Group Faces Client Components Included library of rich user interface controls for the Web Developer Easily develop rich interactive User Interfaces in Web Applications Extends Java. Server Faces, allowing a developer to quickly create highly interactive Web pages that run client-side Thin client: low maintenance (no installed client code to upgrade) More responsive web applications Reduced bandwidth (fewer round trips to the server) Components: Data grid, tabbed panel, rich text editor, input formatters, tree control, chart (bar/line/pie), client-side model object 39 © 2003 IBM Corporation
IBM Software Group Faces Client Components Tabbed Panel Tree Control Chart 40 © 2003 IBM Corporation
IBM Software Group Faces Client Component Features Client side infrastructure supporting Browser Runtime Data Tables Web Services Event handling Manages data changes Sends updates to server NLV functions Leverage Java. Script / XML in the Browser Data Grid Table Java. Script Grid Control Web Services Form Macromedia Flash Plug-in 41 © 2003 IBM Corporation
IBM Software Group Demonstration Agenda JSF in Action Web Services Creation and Consumption Database App CRUD and UI MVC Web App Rich Thin Clients Portlet Apps and Portal Integration 42 © 2003 IBM Corporation
IBM Software Group Portlet Ease-of-Use 12 Visual development uses the JSF styles of construction Portlet specific syntax and deployment descriptors are generated Click-2 -Action and People Awareness drag-n-drop development Portal Server Test Environment is turnkey (Improved Portal Toolkit installation) Bottom line: Web Services, UI and MVC enhancements in JSF apply to portlets Portlet development is significantly enhanced and easier than ever before 43 © 2003 IBM Corporation
IBM Software Group Portlet Development JSF and Struts portlet creation by a wizard Visual Portlet JSF editing in Page Designer People Awareness Drag & Drop Click-to-Action 44 © 2003 IBM Corporation
IBM Software Group Demonstration Agenda JSF in Action Web Services Creation and Consumption ü Database App CRUD and UI ü MVC Web App Rich Thin Clients ü Portlet Apps and Portal Integration ü 45 © 2003 IBM Corporation
IBM Software Group J 2 EE Web Development Programming Effort Automated by JSF Input Process Output Input Constructing web page forms, formatting, validation, etc. ü GUI widget richness ü Calling appropriate “Action” when button pressed, etc. ü Passing data to business logic ü Processing Integrating to web services, databases, backends, biz logic, etc. ü Maintaining user session and application state information ü MVC layering, page flow and business logic modularity ü Output Forwarding control to results screen/page ü Displaying data, GUI controls, formatting, etc. ü 46 © 2003 IBM Corporation
IBM Software Group JSF In Action Summary Web. Sphere Studio 5. 1. 2 lays the foundation for taking Web, J 2 EE and Portal development to a new level of productivity Web. Sphere Studio 5. 1. 2 appeals to Web Developers J 2 EE is more powerful than. NET and JSF now makes it both easy and attractive to Microsoft heritage developers JSF Simplifies and enhances RAD development for both J 2 EE newbies and experts Web. Sphere Studio 5. 1. 2 appeals to Portal Developers Improved integration, visual portlet construction and JSF tools provide a comprehensive portlet development environment Bottom Line Accelerates GUI, Web Services, Database, Portlet and MVC Web App development 47 © 2003 IBM Corporation
IBM Software Group Application Development Challenges Addressed It takes too long to deliver applications “We need to Design, Develop and Deploy applications more quickly” VP Development IBM’s new Java. Server Faces (JSF) tools accelerate development using a drag-n-drop approach (no coding required) J 2 EE is too complex “We need to leverage open standards, keep it simple and make it easy for Microsoft heritage developers to get on board” Developer IBM’s new JSF tools make J 2 EE easier than. NET and very attractive to Microsoft heritage developers Architect Integration is cost prohibitive 48 “We need to integrate our people, processes and information using web services, databases and existing systems” © 2003 IBM Corporation
IBM Software Group Resources ibm. com/developer (IBM developer. Works for technologies and products) ibm. com/developer/websphere (Web. Sphere Developers Domain) ibm. com/developer/rational (Web. Sphere Developers Domain) ibm. com/developer/ibm (All other product developer domains) www. redbooks. ibm. com (How To Books) ibm. com/software/ad (IBM App Dev Tools Homepage) ibm. com/websphere (Web. Sphere Family Homepage) Web. Sphere. Central. com (Presentations, references, tutorials, white papers, articles, links, etc. ) 49 © 2003 IBM Corporation
IBM Software Group Backup Charts 50 © 2003 IBM Corporation
- Slides: 49