38
SAP's Integrated Development Environment for Java Karl Kessler, SAP AG

SAP NetWeaver Developer Studio

Embed Size (px)

Citation preview

Page 1: SAP NetWeaver Developer Studio

SAP's Integrated Development Environment for Java

Karl Kessler, SAP AG

Page 2: SAP NetWeaver Developer Studio

2002 SAP Labs, LLC, JAVA101, Karl Kessler 2

Agenda

èComparison ABAP Workbench /Typical Java IDE

èEclipse

èThe SAP Framework

èThe J2EE toolset

Page 3: SAP NetWeaver Developer Studio

2002 SAP Labs, LLC, JAVA101, Karl Kessler 3

Comparison ABAP Workbench / Typical Java IDE

-+Environment/Infrastructure

-+Support for SAP Technology

+-Private Test Environment

+-Offline Development

+-Support for Standards

+-Local Editing

-+Large Scale Application support

JAVAABAPABAPn Server oriented

n Design Time and Run Time Objects stored insame database

n SAP Systemdetermines „scope“

JAVAn Operates on Local File

System

Design Time and Run Time separatedn Development

environment organized in local„projects“

Page 4: SAP NetWeaver Developer Studio

2002 SAP Labs, LLC, JAVA101, Karl Kessler 4

Comparison: ABAP / Java: Some highlights

ABAPÌ One frame (SE80) for all Design Time ToolsÌ Highly convenient infrastructure environment seamlessly

integrated into Development WorkbenchÌBuild environment, Deployment, Software Logistics, ...ÌProven environment for large-scale application development

Ì Strong support for SAP TechnologiesÌStructured „logical“, not physical, presentation of all SAP Design

Time Objects

JavaÌ Local Development Environment

ÌEditing support: Syntax Highlighting, Code Completion, ...ÌOffline developmentÌPrivate test environment (partially)

Ì Support for Standard TechnologiesÌJ2SE, J2EE, HTML, XML,...

Page 5: SAP NetWeaver Developer Studio

2002 SAP Labs, LLC, JAVA101, Karl Kessler 5

SAP Java IDE

Goal: Combine the advantages of both approaches

Ì Provide one frame for all tools and as integration point for allinfrastructure components

Ì Provide convenient integrated infrastructure environment tosupport large scale application development

Ì Preserve principle of local IDEÌLocal editing supportÌOffline development

Ì Optimal support for standard and SAP technologiesÌ Logically structured presentation of all Design Time ObjectsÌ Graphical editing support

Page 6: SAP NetWeaver Developer Studio

2002 SAP Labs, LLC, JAVA101, Karl Kessler 6

Local File System

Tool Integration Platform

Overall Java Development Infrastructure

DesignTime

Repository(DTR)

ComponentBuild

Service(CBS)

Software Logistics(SL)

RunTimeJ2EEServer

DeployDDIC Web

Dynpro

WebService

DT

R/C

BS

/SL

Inte

gra

tion

Generic Model Abstraction Layer

GraphicsTool Service

Layer

Java J2EE

Page 7: SAP NetWeaver Developer Studio

2002 SAP Labs, LLC, JAVA101, Karl Kessler 7

Tool Integration Platform

Topics of this presentation

DesignTime

Repository(DTR)

ComponentBuild

Service(CBS)

Software Logistics(SL)

RunTimeJ2EE

Server

DDIC WebDynpro

WebService

DT

R/C

BS

/SL

Inte

gra

tion

Generic Model Abstraction Layer

Graphics

Deploy

Tool ServiceLayer

Local File System

Java J2EE

Page 8: SAP NetWeaver Developer Studio

2002 SAP Labs, LLC, JAVA101, Karl Kessler 8

Agenda

èComparison ABAP Workbench /Typical Java IDE

èEclipse

èThe SAP Framework

èThe J2EE toolset

Page 9: SAP NetWeaver Developer Studio

2002 SAP Labs, LLC, JAVA101, Karl Kessler 9

Tool Integration Platform

Eclipse

DesignTime

Repository(DTR)

ComponentBuild

Service(CBS)

Software Logistics(SL)

RunTimeJ2EE

Server

DDIC WebDynpro

WebService

DT

R/C

BS

/SL

Inte

grat

ion

Generic Model Abstraction Layer

Graphics

Deploy

Tool ServiceLayer

Local File System

Java J2EE

Page 10: SAP NetWeaver Developer Studio

2002 SAP Labs, LLC, JAVA101, Karl Kessler 10

Eclipse

n Open Source project "donated" by IBMn Eclipse is itself written in Javan Eclipse is only a framework: Everything is a plugin!

n Formally defined Extension Points and Plugin dependenciesn Very small kernel (Platform Runtime): The framework itself is

implemented as a set of pluginsn Own UI approach (SWT / JFace)n Workbench plugin as generic

framework for any tooln Complete Java (J2SE) IDE comes with

Eclipseu Set of plugins

uOpen Source

n Eclipse is the basis of IBM‘s IDE WSADn Many vendors are providing Eclipse

plugins: Strong Industry drive

Page 11: SAP NetWeaver Developer Studio

2002 SAP Labs, LLC, JAVA101, Karl Kessler 11

Eclipse: Projectsn Multiple projects can be

opened at the same time

n Project dependencies can bedeclared

n Workspace principle: aworkspace defines the scopeof accessible resources

n No workspace switchat run time

Page 12: SAP NetWeaver Developer Studio

2002 SAP Labs, LLC, JAVA101, Karl Kessler 12

Eclipse: Perspectives and Views

n PerspectiveuIs composed of all visual components (views) for one aspect of the

developmentuExamples

l Java perspective: Package view, Java editor, Outline pane for Javasource/class files

l Debug perspective: Java editor, thread display, breakpoint list, etc.

n Quick and easy switchn Perspectives are personalizable

uAdd/remove viewsuCompose new perspectives from existing views

n Perspectives allow focussing on a certain aspect of development

Page 13: SAP NetWeaver Developer Studio

2002 SAP Labs, LLC, JAVA101, Karl Kessler 13

Java and Debug Perspective

JavaPerspective

DebugPerspective

Page 14: SAP NetWeaver Developer Studio

2002 SAP Labs, LLC, JAVA101, Karl Kessler 14

Eclipse: Java IDE

n Refactoring featuresuMove/rename classes and

methods

uRepackage

u Extract methods

u Surround with try/catch

n Pretty PrintinguConfigurable

n Code completion (IntelliSense)n Import management

uConfigurable

n Search featuresuReferences

uDefinitions

uRead/write access

n Javadoc help as tooltip

Page 15: SAP NetWeaver Developer Studio

2002 SAP Labs, LLC, JAVA101, Karl Kessler 15

Eclipse: Java IDE

n Incremental Buildn Ant based build supportn Support for building

archivesn State-of-the-Art Debugger

uLocal and remote debugging

Page 16: SAP NetWeaver Developer Studio

2002 SAP Labs, LLC, JAVA101, Karl Kessler 16

Eclipse: PlugIn Development

n Runtime Workbenchudebug possibility

n PlugIn Development Environment (PDE)

n Lazy initialization ofPlugIns

n Easy deploymentn „Everything is a PlugIn“

uPlugIn dependenciesuPlugIn versioning

n Extension Point technologyuEvery PlugIn extends other

PlugIns at predefinedExtension Points

uEvery PlugIn can provideExtension Points

Page 17: SAP NetWeaver Developer Studio

2002 SAP Labs, LLC, JAVA101, Karl Kessler 17

Eclipse: Presenting the Workspace

n Direct presentation of files and folders structure (Resource Perspective)

n Special abstraction layer for Java Perspective:package -> class -> method / attr.

n No generic abstraction layerResource

Perspective JavaPerspective

Page 18: SAP NetWeaver Developer Studio

2002 SAP Labs, LLC, JAVA101, Karl Kessler 18

Agenda

èComparison ABAP Workbench /Typical Java IDE

èEclipse

èThe SAP Framework

èThe J2EE toolset

Page 19: SAP NetWeaver Developer Studio

2002 SAP Labs, LLC, JAVA101, Karl Kessler 19

Tool Integration Platform

The SAP Framework

DesignTime

Repository(DTR)

ComponentBuild

Service(CBS)

Software Logistics(SL)

RunTimeJ2EE

Server

Java

DDIC

J2EE

WebDynpro

WebService

DT

R/C

BS

/SL

Inte

grat

ion

Generic Model Abstraction Layer

Graphics

Deploy

Tool ServiceLayer

Local File System

Page 20: SAP NetWeaver Developer Studio

2002 SAP Labs, LLC, JAVA101, Karl Kessler 20

The SAP Framework

Technological Approachn Use Eclipse as Java IDE (J2SE)n Use Eclipse as Tool Integration Platform for all development related

toolsu SAP Technology (WebDynpro, Java Dictionary, ...)

u Standard Technologies not supported by Eclipse (J2EE, XML, ...)

u Infrastructure (Repository, Build, Software Logistics, ...)

Drawbacksn Lack of generic Model Abstraction Layer

u No generic support for presenting Design Time Objects in a logical (not physical) way

u No basis for generic graphics enabling

Service Layer not sufficientn SWT / JFace UI approach instead of Swing

u Little documentation

u APIs less well-known than swing

Page 21: SAP NetWeaver Developer Studio

2002 SAP Labs, LLC, JAVA101, Karl Kessler 21

IDE overview

Eclipse Platform

J2SETools

Model Abstraction LayerModel Abstraction Layer

J2EETools

JavaDictionary

ViewDesigner

Service LayerService Layer

ApplicationModeler

Page 22: SAP NetWeaver Developer Studio

2002 SAP Labs, LLC, JAVA101, Karl Kessler 22

Example: WebDynpro Application Modeler

Diagramming based onGraphics Engine

Diagramming based onGraphics Engine

EclipseFramework

Model View based onModel Abstraction

Layer

Grahics based onModel Abstraction

Layer

Grahics based onModel Abstraction

Layer

Page 23: SAP NetWeaver Developer Studio

2002 SAP Labs, LLC, JAVA101, Karl Kessler 23

Service Layer Example: SAP UI layer

n Convenience layer on top of SWT / JFace

Page 24: SAP NetWeaver Developer Studio

2002 SAP Labs, LLC, JAVA101, Karl Kessler 24

n Validation against DTDn Schema based editing support: XMLInsightn Pretty Printern Used in multiple multi-page editors (J2EE, Component Editor, ...)

Service Layer Example: XML Editor

Page 25: SAP NetWeaver Developer Studio

2002 SAP Labs, LLC, JAVA101, Karl Kessler 25

Agenda

èComparison ABAP Workbench /Typical Java IDE

èEclipse

èThe SAP Framework

èThe J2EE toolset

Page 26: SAP NetWeaver Developer Studio

2002 SAP Labs, LLC, JAVA101, Karl Kessler 26

Tool Integration Platform

J2EE Toolset

DesignTime

Repository(DTR)

ComponentBuild

Service(CBS)

Software Logistics(SL)

RunTimeJ2EE

Server

Java

DDIC WebDynpro

WebService

DT

R/C

BS

/SL

Inte

grat

ion

Generic Model Abstraction Layer

Graphics

Deploy

Tool ServiceLayer

Local File System

J2EE

Page 27: SAP NetWeaver Developer Studio

2002 SAP Labs, LLC, JAVA101, Karl Kessler 27

J2SETools

J2EE Toolset

n J2EE 1.3 supportn Diagramming

n Direct support of SAP J2EE Engine 6.30

Eclipse Platform

Model Abstraction Layer

J2EETools

JavaDictionary

ViewDesigner

Service Layer

ApplicationModeler

Standard J2EE 1.3Support

SAP J2EE EngineIntegration

Page 28: SAP NetWeaver Developer Studio

2002 SAP Labs, LLC, JAVA101, Karl Kessler 28

J2EE Toolset: Supported J2EE 1.3 features

EJBn EJB 2.0

uSession, Entity, Message Driven

n EJB Assembly (EJBJar)

Webn Servletn JSPn Filtern Listenern HTMLn Web Archive (WAR)

Enterprisen Enterprise Application (EAR)

Standard J2EE 1.3Support

SAP J2EE EngineIntegration

Page 29: SAP NetWeaver Developer Studio

2002 SAP Labs, LLC, JAVA101, Karl Kessler 29

J2EE Toolset

J2EE View and Perspective

Page 30: SAP NetWeaver Developer Studio

2002 SAP Labs, LLC, JAVA101, Karl Kessler 30

J2EE Toolset

Creation wizards forn Projects: EJB, EJB Assembly, Web, Web Assembly, Enterprise

Applicationn Objects: EJB, Servlet, JSP, Filter, Listener, HTML

Page 31: SAP NetWeaver Developer Studio

2002 SAP Labs, LLC, JAVA101, Karl Kessler 31

J2EE Toolset

Multi-Page Editors for all deployment descriptorsn ejb-jar.xml, web.xml, application.xmln Full XML editor functionality in Source View

Page 32: SAP NetWeaver Developer Studio

2002 SAP Labs, LLC, JAVA101, Karl Kessler 32

J2EE Toolset: SAP J2EE Engine Integration

Standard J2EE 1.3Support

SAP J2EE EngineIntegration

SAP J2EE Engine

Developer‘s PC

DeploymentLocal testing and debugging

SAP J2EE Engine

SAP J2EE Engine

LAN

Deployment

SAP Java IDE

Page 33: SAP NetWeaver Developer Studio

2002 SAP Labs, LLC, JAVA101, Karl Kessler 33

SAP Java IDE

SAP J2EE Engine

Developer‘s PC

DeploymentLocal testing and debugging

SAP J2EE Engine

SAP J2EE Engine

LAN

Deployment

EAR Deploymentn Launching of Visual

Deployment Tool from J2EEPerspective

n Local storage and editing ofDeployment Configurations

J2EE Toolset: SAP J2EE Engine Integration

Page 34: SAP NetWeaver Developer Studio

2002 SAP Labs, LLC, JAVA101, Karl Kessler 34

Deployment

Page 35: SAP NetWeaver Developer Studio

2002 SAP Labs, LLC, JAVA101, Karl Kessler 35

SAP Java IDE

SAP J2EE Engine

Developer‘s PC

Local Testing and debugging

LAN

Deployment

SAP J2EE Engine

SAP J2EE Engine

Local Test and Debug Environmentn Specify Server Settings in

„Preferences“ page

n Start / Stop local J2EE Engine from J2EE Viewu Normal or debug mode

n Direct testing or debugging ofservlets / JSPs on local server

J2EE Toolset: SAP J2EE Engine Integration

Page 36: SAP NetWeaver Developer Studio

2002 SAP Labs, LLC, JAVA101, Karl Kessler 36

SAP J2EE engine integration

Page 37: SAP NetWeaver Developer Studio

2002 SAP Labs, LLC, JAVA101, Karl Kessler 37

Q&A

Questions?

Page 38: SAP NetWeaver Developer Studio

2002 SAP Labs, LLC, JAVA101, Karl Kessler 38

Feedback

Please complete your session evaluation and drop it in the box on

your way out.

Be courteous — deposit your trash, and do not take the handouts for the

following session.

The SAP TechEd ’02 New Orleans Team