08 01 WebDynpro Java (1)

22
SAP NetWeaver Web Dynpro Java

description

dyn

Transcript of 08 01 WebDynpro Java (1)

Page 1: 08 01 WebDynpro Java (1)

SAP NetWeaver Web Dynpro Java

Page 2: 08 01 WebDynpro Java (1)

Disclaimer

This presentation outlines our general product direction and should not be relied on inmaking a purchase decision. This presentation is not subject to your licenseagreement or any other agreement with SAP. SAP has no obligation to pursue anycourse of business outlined in this presentation or to develop or release anyfunctionality mentioned in this presentation. This presentation and SAP’s strategyand possible future developments are subject to change and may be changed bySAP at any time for any reason without notice. This document is provided without awarranty of any kind, either express or implied, including but not limited to, theimplied warranties of merchantability, fitness for a particular purpose, or non-infringement. SAP assumes no responsibility for errors or omissions in thisdocument, except if such damages were caused by SAP intentionally or grosslynegligent.

Page 3: 08 01 WebDynpro Java (1)

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.

Web Dynpro Java: Unit Objectives

Page 4: 08 01 WebDynpro Java (1)

1. Web Dynpro for NetWeaver CE 7.1

2. Architecture of Web Dynpro

3. Status and Outlook

Agenda

Page 5: 08 01 WebDynpro Java (1)

What is Web Dynpro?

Web Dynpro is SAP’s standard toolset for UI development and execution.

Web Dynpro Design timeRuntime

Componentbased

Win d o wWin d o w

View As s embl yView As s embly

View La you tV iew Lay ou t

AS Java

Based onMVC

NWDSWeb Dynpro Tools

Web DynproFramework

Client Device

etcCompile & Deploy

DeclaredMetamodel

Generated CodeCustom Code

Page 6: 08 01 WebDynpro Java (1)

What is Web Dynpro ?

A Programming Model for User InterfacesDefines a standard structure for user interfaceapplications

Derived from the MVC (“model-view-controller”)design pattern

A Set of Tools for User Interface DesignFocus on graphical modelling

Code is generated from meta-model declarationsIntegrated in SAP NetWeaver Developer Studio

A Runtime Environment for ApplicationsFramework running on SAP’s J2EE server offerscommon services

A Technology for Software ModularizationComponents help structure projects and supportpattern-based UIs

Page 7: 08 01 WebDynpro Java (1)

Web Dynpro Java Product HistoryFrom 2003 to Now

SAP NetWeaverCE 7.1 EhP1

2003 2006 2007 2008

Reached 1000direct customers

SAP NetWeaver04

Service PackStack 22

SAP NetWeaverCE 7.1

SAP NetWeaver7.0

Service PackStack 16Foundation UI Technolgoy

for WD4VC

Foundation UI technolgoyfor SAP Business ByDesign

CCTS Datatypes, Calendar UIelements, context menus,

streamlined component model

Web Dynpro Ajax Client,Drag&Drop, EJB 3 Model

Implicit personalization,suspend/resume appli-cation interoperability, tableenrichements, new UIelements, AdaptiveWS Model

Foundation UI technolgoyfor SAP applications like

ESS/MSS

Page 8: 08 01 WebDynpro Java (1)

Web Dynpro Java UI TechnologyGoals and Concepts at Glance

Page 9: 08 01 WebDynpro Java (1)

J2EE Engine

Web Dynpro Main Benefits

Web Dynprogenerated code+ custom code

WebDynproTools

Web Dynpro Runtime

Deliver an Enterprise QualityWeb Development Environment

Minimize coding, maximize designStrict separation between layout and logicSupport arbitrary backend systemsSupport reuse of componentsConfiguration of UI patternsSupport web services and data-binding

Achieve Client IndependenceRun on multiple platformsZero client footprint

Improve User Experiencethrough a "High Fidelity Web UI"

Flicker-free screen, minimal refreshes

Web DynproApplication

Multi Channel Access

Page 10: 08 01 WebDynpro Java (1)

Demo

Page 11: 08 01 WebDynpro Java (1)

1. Web Dynpro for NetWeaver CE 7.1

2. Architecture of Web Dynpro

3. Status and Outlook

Agenda

Page 12: 08 01 WebDynpro Java (1)

SAP NetWeaver Developer Studio

WebDynproTools

The Web Dynpro Tools with the NWDS

Custom CodingCustom business logic implemented withinthe framework of generated code

Good for data-driven, dynamic appsImplementation of business rulesDynamic screen modificationsAccess to backend systems (via models)Portal eventingetc...

Metamodel DeclarationsGuarantees that all applications have astandardised architecture

Good for graphical tool supportScreen Layout and NestingNavigation and Error HandlingData FlowComponentizationetc...

DeclaredMetamodel

Com

pile&

Build

Deployable

Application

Generated Code

Custom Code

Page 13: 08 01 WebDynpro Java (1)

AS Java

Access to Backend Systems from Web Dynpro

WebServiceProviderAS Java

Web DynproRuntime

Deployed WebDynpro AppDeployed Web

Dynpro App

SAP Enterprise Portal

Web Dynpro iView

Backend ApplicationBackend ApplicationABAPBackendServer

WebService

RMI SOAP RFC

RFC enabledFunction ModulesEJB

BusinessData

BusinessData

BusinessData

Page 14: 08 01 WebDynpro Java (1)

A Typical Implementation of the MVC Pattern

E d i t o r

ControllerRequest

Response

Eventsubscription

Datatransfer

Model

View

Datatransfer

Datatransfer

BusinessSystem

CommunicationLayer

Business Interaction Layer

User Interaction Layer

1

2

3

4

4

5

Page 15: 08 01 WebDynpro Java (1)

CommunicationLayer

Business Interaction Layer

User Interaction Layer

Web Dynpro Framework

ServerAbstractionLayer

CommonCommonModelModel

InterfaceInterface

MVC as Implemented Within Web Dynpro

E d i t o rWeb Dynpro Component

Non visualController

Request

Response

Datatransfer

Model

VisualController

Datatransfer

BusinessSystem

Clie

ntA

bstr

actio

nLa

yer

Serv

er s

ide

Serv

er s

ide

rend

erin

gre

nder

ing

1 23

4

56

Page 16: 08 01 WebDynpro Java (1)

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 timeBy using the “Insert Child” menu option in the Outline viewUsing the template wizard to create UI elements based on attributes found in the context

Page 17: 08 01 WebDynpro Java (1)

Sharing Data – The Web Dynpro Context

Why do Web Dynpro controllers have a context?To provide a standardized data storage structure common to all controllersTo allow data to be shared easily between controllers (context mapping)To act as a data supplier for UI element properties (view controllers only)

W e b D y n p r o C o m p o n e n t

ComponentController

View Controller

View layout

Root Node

SalesOrders

LongText

OrderNo

SalesDate

SalesRep

LineItems

Description

ItemNo

Price

Quantity

Root Node

SalesOrders

LongText

OrderNo

SalesDate

SalesRep

LineItems

Description

ItemNo

Price

Quantity

Page 18: 08 01 WebDynpro Java (1)

Web Dynpro Controllers

W e b D y n p r o C o m p o n e n t

WindowController

WindowWindow

InterfaceController

ExternallyVisible

InternallyVisible

InterfaceView

Controller

CustomController

ViewController

View LayoutView Layout

ComponentControllerWindow

ViewLayout

Visual Entities Programmatic Entities

Model

Non-VisualControllers

VisualControllers

View AssemblyView Assembly

InterfaceView

Page 19: 08 01 WebDynpro Java (1)

1. Web Dynpro for NetWeaver CE 7.1

2. Architecture of Web Dynpro

3. Status and Outlook

Agenda

Page 20: 08 01 WebDynpro Java (1)

Web Dynpro Highlights in NW CE

EJB Model ImportEJB Model Import

Enhanced Web Dynpro UI Element LibraryUI Element Library with new elements and new ColumnLayoutRowRepeater, Calendar, Hierarchical Calendar, MessageBasedTrigger, FormatedTextView,ContextMenu,

Highly Enhanced ComponentComponent ArchitectureArchitectureWindow Controller, Window PlugsView Containers within Component Interface View DefinitionsInheritance of Component Interfaces

Support of CCTSCCTS DatatypesDatatypes within Web Dynpro Context and UI

Enhanced ContextContext capabilitiesUniversal context elements overcome separation in value/model elementsCMI-based: Paging, Sorting, Filtering

Enhanced Web Dynpro ToolsWeb Dynpro Tools in the NW Dev Studio (name?)Component Modeler, WYSIWIG View Designer, Context Debugger, (Technical) DocumentationSupport, Component Migration Tool

Much More ….

Page 21: 08 01 WebDynpro Java (1)

You should now be able to understand:

The basic concept behind Web Dynpro.

The basic architecture of a Web DynproComponent.

New features for Web Dynpro in SAP NW CE.

Web Dynpro: Unit Summary

Page 22: 08 01 WebDynpro Java (1)

© SAP 2008 / Page 22

Copyright 2008 SAP AGAll rights reservedNo 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 hereinmay 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 mentionedherein 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 productand service names mentioned and associated logos displayed are the trademarks of their respective companies. Data contained in this document serves informationalpurposes 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 withSAP. This document contains only intended strategies, developments, and functionalities of the SAP® product and is not intended to be binding upon SAP to any particularcourse of business, product strategy, and/or development. SAP assumes no responsibility for errors or omissions in this document. SAP does not warrant the accuracy orcompleteness of the information, text, graphics, links, or other items contained within this material. This document is provided without a warranty of any kind, either expressor 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 thesematerials. 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 linkscontained 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 Vervielfältigung dieser Publikation oder von Teilen daraus sind, zu welchem Zweck und in welcher Form auch immer, ohne die ausdrückliche schriftlicheGenehmigung durch SAP AG nicht gestattet. In dieser Publikation enthaltene Informationen können ohne vorherige Ankündigung geändert werden.Einige von der SAP AG und deren Vertriebspartnern vertriebene Softwareprodukte können Softwarekomponenten umfassen, die Eigentum anderer Softwareherstellersind.SAP, R/3, mySAP, mySAP.com, xApps, xApp, SAP NetWeaver, Duet, Business ByDesign, ByDesign, PartnerEdge und andere in diesem Dokument erwähnte SAP-Produkte und Services sowie die dazugehörigen Logos sind Marken oder eingetragene Marken der SAP AG in Deutschland und in mehreren anderen Ländern weltweit.Alle anderen in diesem Dokument erwähnten 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 können länderspezifische Unterschiede aufweisen.

Die in diesem Dokument enthaltenen Informationen sind Eigentum von SAP. Dieses Dokument ist eine Vorabversion und unterliegt nicht Ihrer Lizenzvereinbarung odereiner anderen Vereinbarung mit SAP. Dieses Dokument enthält nur vorgesehene Strategien, Entwicklungen und Funktionen des SAP®-Produkts und ist für SAP nichtbindend, einen bestimmten Geschäftsweg, eine Produktstrategie bzw. -entwicklung einzuschlagen. SAP übernimmt keine Verantwortung für Fehler oder Auslassungen indiesen Materialien. SAP garantiert nicht die Richtigkeit oder Vollständigkeit der Informationen, Texte, Grafiken, Links oder anderer in diesen Materialien enthaltenenElemente. Diese Publikation wird ohne jegliche Gewähr, weder ausdrücklich noch stillschweigend, bereitgestellt. Dies gilt u. a., aber nicht ausschließlich, hinsichtlich derGewährleistung der Marktgängigkeit und der Eignung für einen bestimmten Zweck sowie für die Gewährleistung der Nichtverletzung geltenden Rechts.SAP übernimmt keine Haftung für Schäden jeglicher Art, einschließlich und ohne Einschränkung für direkte, spezielle, indirekte oder Folgeschäden im Zusammenhang mitder Verwendung dieser Unterlagen. Diese Einschränkung gilt nicht bei Vorsatz oder grober Fahrlässigkeit.Die gesetzliche Haftung bei Personenschäden oder die Produkthaftung bleibt unberührt. Die Informationen, auf die Sie möglicherweise über die in diesem Materialenthaltenen Hotlinks zugreifen, unterliegen nicht dem Einfluss von SAP, und SAP unterstützt nicht die Nutzung von Internetseiten Dritter durch Sie und gibt keinerleiGewährleistungen oder Zusagen über Internetseiten Dritter ab.Alle Rechte vorbehalten.