SAP NetWeaver Web Dynpro Java
Disclaimer
This presentation outlines our general product direction and should not be relied on in making a purchase decision. This presentation is not subject to your license agreement or any other agreement with SAP. SAP has no obligation to pursue any course of business outlined in this presentation or to develop or release any functionality mentioned in this presentation. This presentation and SAPs strategy and possible future developments are subject to change and may be changed by SAP at any time for any reason without notice. This document is provided without a warranty of any kind, either express or implied, including but not limited to, the implied warranties of merchantability, fitness for a particular purpose, or noninfringement. SAP assumes no responsibility for errors or omissions in this document, except if such damages were caused by SAP intentionally or grossly negligent.
Web Dynpro Java: Unit Objectives
After completing this unit, you will understand: The basic concepts behind Web Dynpro The basic architecture of a Web Dynpro Component New features for Web Dynpro in SAP NW CE.
Agenda
1. Web Dynpro for NetWeaver CE 7.1 2. Architecture of Web Dynpro 3. Status and Outlook
What is Web Dynpro?
Web Dynpro is SAPs standard toolset for UI development and execution.
Runtime
Web Dynpro
Design time
AS Java Client Device
Vi e w As s e mb y l y
NWDS
Web Dynpro Tools Declared Metamodel Generated Code
Wi ndow
VVi i ew Lay La you ou t
Component based Based on MVC Web Dynpro Framework
Custom Code Compile & Deploy
etc
What is Web Dynpro ?
A Programming Model for User Interfaces
Defines a standard structure for user interface applications Derived from the MVC (model-view-controller) design pattern
A Set of Tools for User Interface Design
Focus on graphical modelling Code is generated from meta-model declarations Integrated in SAP NetWeaver Developer Studio
A Runtime Environment for Applications
Framework running on SAPs J2EE server offers common services
A Technology for Software Modularization
Components help structure projects and support pattern-based UIs
Web Dynpro Java Product History From 2003 to Now
CCTS Datatypes, Calendar UI elements, context menus, streamlined component model Implicit personalization, suspend/resume application interoperability, table SAP NetWeaver enrichements, new UI 7.0 elements, Adaptive WS Model Web Dynpro Ajax Client, Drag&Drop, EJB 3 Model SAP NetWeaver CE 7.1 SAP NetWeaver CE 7.1 EhP1
Foundation UI technolgoy for SAP Business ByDesign
Service Pack Stack 16
SAP NetWeaver 04
Foundation UI Technolgoy for WD4VC
Foundation UI technolgoy for SAP applications like ESS/MSS
Service Pack Stack 22
Reached 1000 direct customers 2007 2008
2003
2006
Web Dynpro Java UI Technology Goals and Concepts at Glance
Web Dynpro Main Benefits
Web Dynpro Tools Web Dynpro generated code + custom code J2EE Engine Web Dynpro Runtime
Web Dynpro Application
Deliver an Enterprise Quality Web Development Environment
Minimize coding, maximize design Strict separation between layout and logic Support arbitrary backend systems Support reuse of components Configuration of UI patterns Support web services and data-binding
Achieve Client Independence
Run on multiple platforms Zero client footprint
Improve User Experience through a "High Fidelity Web UI"
Flicker-free screen, minimal refreshes
Multi Channel Access
Demo
Agenda
1. Web Dynpro for NetWeaver CE 7.1 2. Architecture of Web Dynpro 3. Status and Outlook
The Web Dynpro Tools with the NWDS
SAP NetWeaver Developer Studio
Deployable Application
Compile & Build
Web Dynpro Tools
Declared Metamodel
Generated Code Custom Code
Metamodel Declarations
Guarantees that all applications have a standardised architecture Good for graphical tool support
Screen Layout and Nesting Navigation and Error Handling Data Flow Componentization etc...
Custom Coding
Custom business logic implemented within the framework of generated code Good for data-driven, dynamic apps
Implementation of business rules Dynamic screen modifications Access to backend systems (via models) Portal eventing etc...
Access to Backend Systems from Web Dynpro
AS Java
SAP Enterprise Portal
Web Dynpro iView
Deployed Web Deployed Web Dynpro App Dynpro App
Web Dynpro Runtime
RMI
SOAP
RFC
EJB
Web Service Business Data
RFC enabled Function Modules Business Data
AS Java
Web Service Provider
ABAP Business Backend Application Backend Data Server
A Typical Implementation of the MVC Pattern
Communication Layer
Business Interaction Layer
Business System
Data transfer
Model
Data transfer Event subscription
2 4
Request
Controller
Data transfer
View
Editor
Response
User Interaction Layer
MVC as Implemented Within Web Dynpro
Communication Layer
Business Interaction Layer
4
Business System
Client Abstraction Layer
Server Abstraction Layer
Data transfer
Model
Common Model Interface
1
Request
3 Visual Controller
Server side rendering
Non visual Controller
Data transfer
6
Response
Web Dynpro Edit Component or
5
Web Dynpro Framework
User Interaction Layer
Creating a Web Dynpro View - WYSIWYG
A view layout can be constructed in one of three ways. Either by:
Dragging and dropping the individual UI elements onto the screen one at a time By using the Insert Child menu option in the Outline view Using the template wizard to create UI elements based on attributes found in the context
Sharing Data The Web Dynpro Context
Why do Web Dynpro controllers have a context?
To provide a standardized data storage structure common to all controllers To allow data to be shared easily between controllers (context mapping) To act as a data supplier for UI element properties (view controllers only)
Component Controller
Root Node SalesOrders LineItems Description ItemNo Price Quantity OrderNo SalesDate SalesRep LongText Root Node SalesOrders LineItems Description ItemNo Price Quantity OrderNo SalesDate SalesRep LongText
View Controller
View layout
Web Dynpro Component
Web Dynpro Controllers
Externally Visible Internally Visible
V iew Assem bly View
Interface View
Interface View Controller
Interface Controller
Non-Visual Controllers
Visual Controllers
Win dow Windo w
Window
Window Controller
Component Controller
Model
View Layout
View Layout
View Controller
Custom Controller
W e b
D y n p r o
C o m p o n e n t
Visual Entities
Programmatic Entities
Agenda
1. Web Dynpro for NetWeaver CE 7.1 2. Architecture of Web Dynpro 3. Status and Outlook
Web Dynpro Highlights in NW CE
EJB Model Import Enhanced Web Dynpro UI Element Library with new elements and new ColumnLayout
RowRepeater, Calendar, Hierarchical Calendar, MessageBasedTrigger, FormatedTextView, ContextMenu,
Highly Enhanced Component Architecture
Window Controller, Window Plugs View Containers within Component Interface View Definitions Inheritance of Component Interfaces
Support of CCTS Datatypes within Web Dynpro Context and UI Enhanced Context capabilities
Universal context elements overcome separation in value/model elements CMI-based: Paging, Sorting, Filtering
Enhanced Web Dynpro Tools in the NW Dev Studio (name?)
Component Modeler, WYSIWIG View Designer, Context Debugger, (Technical) Documentation Support, Component Migration Tool
Much More .
Web Dynpro: Unit Summary
You should now be able to understand: The basic concept behind Web Dynpro. The basic architecture of a Web Dynpro Component. New features for Web Dynpro in SAP NW CE.
Copyright 2008 SAP AG All rights reserved
No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of SAP AG. The information contained herein may be changed without prior notice. Some software products marketed by SAP AG and its distributors contain proprietary software components of other software vendors. SAP, R/3, mySAP, mySAP.com, xApps, xApp, SAP NetWeaver, Duet, Business ByDesign, ByDesign, PartnerEdge and other SAP products and services mentioned herein as well as their respective logos are trademarks or registered trademarks of SAP AG in Germany and in several other countries all over the world. All other product and service names mentioned and associated logos displayed are the trademarks of their respective companies. Data contained in this document serves informational purposes only. National product specifications may vary. The information in this document is proprietary to SAP. This document is a preliminary version and not subject to your license agreement or any other agreement with SAP. This document contains only intended strategies, developments, and functionalities of the SAP product and is not intended to be binding upon SAP to any particular course of business, product strategy, and/or development. SAP assumes no responsibility for errors or omissions in this document. SAP does not warrant the accuracy or completeness of the information, text, graphics, links, or other items contained within this material. This document is provided without a warranty of any kind, either express or implied, including but not limited to the implied warranties of merchantability, fitness for a particular purpose, or non-infringement. SAP shall have no liability for damages of any kind including without limitation direct, special, indirect, or consequential damages that may result from the use of these materials. This limitation shall not apply in cases of intent or gross negligence. The statutory liability for personal injury and defective products is not affected. SAP has no control over the information that you may access through the use of hot links contained in these materials and does not endorse your use of third-party Web pages nor provide any warranty whatsoever relating to third-party Web pages
Weitergabe und Vervielfltigung dieser Publikation oder von Teilen daraus sind, zu welchem Zweck und in welcher Form auch immer, ohne die ausdrckliche schriftliche Genehmigung durch SAP AG nicht gestattet. In dieser Publikation enthaltene Informationen knnen ohne vorherige Ankndigung gendert werden. Einige von der SAP AG und deren Vertriebspartnern vertriebene Softwareprodukte knnen Softwarekomponenten umfassen, die Eigentum anderer Softwarehersteller sind. SAP, R/3, mySAP, mySAP.com, xApps, xApp, SAP NetWeaver, Duet, Business ByDesign, ByDesign, PartnerEdge und andere in diesem Dokument erwhnte SAPProdukte und Services sowie die dazugehrigen Logos sind Marken oder eingetragene Marken der SAP AG in Deutschland und in mehreren anderen Lndern weltweit. Alle anderen in diesem Dokument erwhnten Namen von Produkten und Services sowie die damit verbundenen Firmenlogos sind Marken der jeweiligen Unternehmen. Die Angaben im Text sind unverbindlich und dienen lediglich zu Informationszwecken. Produkte knnen lnderspezifische Unterschiede aufweisen. Die in diesem Dokument enthaltenen Informationen sind Eigentum von SAP. Dieses Dokument ist eine Vorabversion und unterliegt nicht Ihrer Lizenzvereinbarung oder einer anderen Vereinbarung mit SAP. Dieses Dokument enthlt nur vorgesehene Strategien, Entwicklungen und Funktionen des SAP-Produkts und ist fr SAP nicht bindend, einen bestimmten Geschftsweg, eine Produktstrategie bzw. -entwicklung einzuschlagen. SAP bernimmt keine Verantwortung fr Fehler oder Auslassungen in diesen Materialien. SAP garantiert nicht die Richtigkeit oder Vollstndigkeit der Informationen, Texte, Grafiken, Links oder anderer in diesen Materialien enthaltenen Elemente. Diese Publikation wird ohne jegliche Gewhr, weder ausdrcklich noch stillschweigend, bereitgestellt. Dies gilt u. a., aber nicht ausschlielich, hinsichtlich der Gewhrleistung der Marktgngigkeit und der Eignung fr einen bestimmten Zweck sowie fr die Gewhrleistung der Nichtverletzung geltenden Rechts. SAP bernimmt keine Haftung fr Schden jeglicher Art, einschlielich und ohne Einschrnkung fr direkte, spezielle, indirekte oder Folgeschden im Zusammenhang mit der Verwendung dieser Unterlagen. Diese Einschrnkung gilt nicht bei Vorsatz oder grober Fahrlssigkeit. Die gesetzliche Haftung bei Personenschden oder die Produkthaftung bleibt unberhrt. Die Informationen, auf die Sie mglicherweise ber die in diesem Material enthaltenen Hotlinks zugreifen, unterliegen nicht dem Einfluss von SAP, und SAP untersttzt nicht die Nutzung von Internetseiten Dritter durch Sie und gibt keinerlei Gewhrleistungen oder Zusagen ber Internetseiten Dritter ab. Alle Rechte vorbehalten.
SAP 2008 / Page 22