Sie sind auf Seite 1von 38

SAP's Integrated

Development
Environment for Java

Karl Kessler, SAP AG


Agenda

è Comparison ABAP Workbench /


Typical Java IDE

è Eclipse
è The SAP Framework
è The J2EE toolset

 2002 SAP Labs, LLC , JAVA101, Karl Kessler 2


Comparison ABAP Workbench / Typical Java IDE

ABAP
ABAP JAVA
n Server oriented
n Design Time and Run
Time Objects stored in
same database
Environment/Infrastructure + -
n SAP System Large Scale Application
determines „scope“ support + -
JAVA
n Operates on Local File
Local Editing - +
System Support for Standards - +
Design Time and Run
Time separated Support for SAP
n Development
Technology + -
environment
organized in local
„projects“
Offline Development - +
Private Test Environment - +
 2002 SAP Labs, LLC , JAVA101, Karl Kessler 3
Comparison: ABAP / Java: Some highlights

ABAP
Ì One frame (SE80) for all Design Time Tools
Ì Highly convenient infrastructure environment seamlessly
integrated into Development Workbench
Ì Buildenvironment, 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,...

 2002 SAP Labs, LLC , JAVA101, Karl Kessler 4


SAP Java IDE

Goal: Combine the advantages of both approaches

Ì Provide one frame for all tools and as integration point for all
infrastructure components
Ì Provide convenient integrated infrastructure environment to
support 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

 2002 SAP Labs, LLC , JAVA101, Karl Kessler 5


Overall Java Development Infrastructure

Tool Integration Platform


Software Logistics
(SL)

Component
Java J2EE Web Build

DTR/CBS/SL
Service
Run

Integration
Service Deploy
DDIC Web
(CBS) Time
Dynpro
J2EE
Tool Service Server
Graphics
Layer

Generic Model Abstraction Layer


Design
Time
Repository
Local File System (DTR)

 2002 SAP Labs, LLC , JAVA101, Karl Kessler 6


Topics of this presentation

Tool Integration Platform


Software Logistics
(SL)

Component
Java J2EE Web Build

DTR/CBS/SL
Service
Run

Integration
Service Deploy
DDIC Web
(CBS) Time
Dynpro
J2EE
Tool Service Server
Graphics
Layer

Generic Model Abstraction Layer


Design
Time
Repository
Local File System (DTR)

 2002 SAP Labs, LLC , JAVA101, Karl Kessler 7


Agenda

è Comparison ABAP Workbench /


Typical Java IDE

è Eclipse
è The SAP Framework
è The J2EE toolset

 2002 SAP Labs, LLC , JAVA101, Karl Kessler 8


Eclipse

Tool Integration Platform


Software Logistics
(SL)

Component
Java J2EE Web Build
Service

DTR/CBS/SL
Service Run

Integration
Deploy
DDIC Web
(CBS) Time
Dynpro
J2EE
Tool Service Server
Graphics
Layer

Generic Model Abstraction Layer


Design
Time
Repository
Local File System (DTR)

 2002 SAP Labs, LLC , JAVA101, Karl Kessler 9


Eclipse

n Open Source project "donated" by IBM


n Eclipse is itself written in Java
n Eclipse is only a framework: Everything is a plugin!
n Formally defined Extension Points and Plugin dependencies
n Very small kernel (Platform Runtime): The framework itself is
implemented as a set of plugins
n Own UI approach (SWT / JFace)
n Workbench plugin as generic
framework for any tool
n Complete Java (J2SE) IDE comes with
Eclipse
u Set of plugins
u Open Source
n Eclipse is the basis of IBM‘s IDE WSAD
n Many vendors are providing Eclipse
plugins: Strong Industry drive

 2002 SAP Labs, LLC , JAVA101, Karl Kessler 10


Eclipse: Projects
n Multiple projects can be
opened at the same time
n Project dependencies can be
declared

n Workspace principle: a
workspace defines the scope
of accessible resources

n No workspace switch
at run time

 2002 SAP Labs, LLC , JAVA101, Karl Kessler 11


Eclipse: Perspectives and Views
n Perspective
u Iscomposed of all visual components (views) for one aspect of the
development
u Examples
l Java perspective: Package view, Java editor, Outline pane for Java
source/class files
l Debug perspective: Java editor, thread display, breakpoint list, etc.
n Quick and easy switch
n Perspectives are personalizable
u Add/removeviews
u Compose new perspectives from existing views

n Perspectives allow focussing on a certain aspect of development

 2002 SAP Labs, LLC , JAVA101, Karl Kessler 12


Java and Debug Perspective

Java
Perspective
Debug
Perspective

 2002 SAP Labs, LLC , JAVA101, Karl Kessler 13


Eclipse: Java IDE

n Refactoring features
u Move/rename classes and
methods
u Repackage

u Extract methods
u Surround with try/catch
n Pretty Printing
u Configurable

n Code completion (IntelliSense)


n Import management
u Configurable

n Search features
u References

u Definitions

u Read/write access
n Javadoc help as tooltip

 2002 SAP Labs, LLC , JAVA101, Karl Kessler 14


Eclipse: Java IDE

n Incremental Build
n Ant based build support
n Support for building
archives
n State-of-the-Art Debugger
u Localand remote
debugging

 2002 SAP Labs, LLC , JAVA101, Karl Kessler 15


Eclipse: PlugIn Development

n Runtime Workbench
u debug possibility
n PlugIn Development
Environment (PDE)
n Lazy initialization of
PlugIns
n Easy deployment
n „Everything is a PlugIn“
u PlugIn dependencies
u PlugIn versioning
n Extension Point technology
u Every PlugIn extends other
PlugIns at predefined
Extension Points
u Every PlugIn can provide
Extension Points

 2002 SAP Labs, LLC , JAVA101, Karl Kessler 16


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.
Resource
n No generic abstraction layer Java
Perspective
Perspective

 2002 SAP Labs, LLC , JAVA101, Karl Kessler 17


Agenda

è Comparison ABAP Workbench /


Typical Java IDE

è Eclipse
è The SAP Framework
è The J2EE toolset

 2002 SAP Labs, LLC , JAVA101, Karl Kessler 18


The SAP Framework

Tool Integration Platform


Software Logistics
(SL)

Component
Java J2EE Web Build
Service

DTR/CBS/SL
Service Run

Integration
Deploy
DDIC Web
(CBS) Time
Dynpro
J2EE
Tool Service Server
Graphics
Layer

Generic Model Abstraction Layer


Design
Time
Repository
Local File System (DTR)

 2002 SAP Labs, LLC , JAVA101, Karl Kessler 19


The SAP Framework

Technological Approach
n Use Eclipse as Java IDE (J2SE)
n Use Eclipse as Tool Integration Platform for all development related
tools
u SAP Technology (WebDynpro, Java Dictionary, ...)
u Standard Technologies not supported by Eclipse (J2EE, XML, ...)
u Infrastructure (Repository, Build, Software Logistics, ...)

Drawbacks
n 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 sufficient


n SWT / JFace UI approach instead of Swing
u Little documentation
u APIs less well-known than swing

 2002 SAP Labs, LLC , JAVA101, Karl Kessler 20


IDE overview

Application View Java J2EE


Modeler Designer Dictionary Tools
J2SE
Tools

Model
ModelAbstraction
AbstractionLayer
Layer Service
ServiceLayer
Layer

Eclipse Platform

 2002 SAP Labs, LLC , JAVA101, Karl Kessler 21


Example: WebDynpro Application Modeler

Eclipse
Framework

Model View based on


Model Abstraction
Layer

Diagramming
Diagrammingbased
basedonon
Graphics Grahics
Engine basedon
Engine
Graphics Grahicsbased on
Model Abstraction
Model Abstraction
Layer
Layer

 2002 SAP Labs, LLC , JAVA101, Karl Kessler 22


Service Layer Example: SAP UI layer

n Convenience layer on top of SWT / JFace

 2002 SAP Labs, LLC , JAVA101, Karl Kessler 23


Service Layer Example: XML Editor

n Validation against DTD


n Schema based editing support: XMLInsight
n Pretty Printer
n Used in multiple multi-page editors (J2EE, Component Editor, ...)

 2002 SAP Labs, LLC , JAVA101, Karl Kessler 24


Agenda

è Comparison ABAP Workbench /


Typical Java IDE

è Eclipse
è The SAP Framework
è The J2EE toolset

 2002 SAP Labs, LLC , JAVA101, Karl Kessler 25


J2EE Toolset

Tool Integration Platform


Software Logistics
(SL)

Component
Java J2EE Web Build
Service

DTR/CBS/SL
Service Run

Integration
Deploy
DDIC Web
(CBS) Time
Dynpro
J2EE
Tool Service Server
Graphics
Layer

Generic Model Abstraction Layer


Design
Time
Repository
Local File System (DTR)

 2002 SAP Labs, LLC , JAVA101, Karl Kessler 26


J2EE Toolset

n J2EE 1.3 support


n Diagramming
n Direct support of SAP J2EE Engine 6.30
SAP J2EE Engine
Integration

Application View Java J2EE


Modeler Designer Dictionary Tools
Standard J2EE 1.3
J2SE
Support
Tools

Model Abstraction Layer Service Layer

Eclipse Platform

 2002 SAP Labs, LLC , JAVA101, Karl Kessler 27


J2EE Toolset: Supported J2EE 1.3 features

EJB SAP J2EE Engine


n EJB 2.0 Integration
u Session, Entity, Message Driven
n EJB Assembly (EJBJar)

Web
Standard J2EE 1.3
Support
n Servlet
n JSP
n Filter
n Listener
n HTML
n Web Archive (WAR)

Enterprise
n Enterprise Application (EAR)

 2002 SAP Labs, LLC , JAVA101, Karl Kessler 28


J2EE Toolset

J2EE View and Perspective

 2002 SAP Labs, LLC , JAVA101, Karl Kessler 29


J2EE Toolset

Creation wizards for


n Projects: EJB, EJB Assembly, Web, Web Assembly, Enterprise
Application
n Objects: EJB, Servlet, JSP, Filter, Listener, HTML

 2002 SAP Labs, LLC , JAVA101, Karl Kessler 30


J2EE Toolset

Multi-Page Editors for all deployment descriptors


n ejb-jar.xml, web.xml, application.xml
n Full XML editor functionality in Source View

 2002 SAP Labs, LLC , JAVA101, Karl Kessler 31


J2EE Toolset: SAP J2EE Engine Integration

LAN
SAP J2EE Engine
Integration
SAP J2EE Engine

Standard J2EE 1.3


SAP J2EE Engine Support

Deployment

Developer‘s PC

SAP Java IDE

Deployment
Local testing and debugging

SAP J2EE Engine

 2002 SAP Labs, LLC , JAVA101, Karl Kessler 32


J2EE Toolset: SAP J2EE Engine Integration

LAN EAR Deployment


n Launching of Visual
SAP J2EE Engine
Deployment Tool from J2EE
Perspective
n Local storage and editing of
SAP J2EE Engine Deployment Configurations

Deployment

Developer‘s PC

SAP Java IDE

Deployment
Local testing and debugging

SAP J2EE Engine

 2002 SAP Labs, LLC , JAVA101, Karl Kessler 33


Deployment

 2002 SAP Labs, LLC , JAVA101, Karl Kessler 34


J2EE Toolset: SAP J2EE Engine Integration

LAN Local Test and Debug


Environment
SAP J2EE Engine
n Specify Server Settings in
„Preferences“ page
n Start / Stop local J2EE Engine
SAP J2EE Engine from J2EE View
u Normal or debug mode
Deployment
n Direct testing or debugging of
Developer‘s PC servlets / JSPs on local server

SAP Java IDE

Local Testing and debugging

SAP J2EE Engine

 2002 SAP Labs, LLC , JAVA101, Karl Kessler 35


SAP J2EE engine integration

 2002 SAP Labs, LLC , JAVA101, Karl Kessler 36


Questions?

Q&A

 2002 SAP Labs, LLC , JAVA101, Karl Kessler 37


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

 2002 SAP Labs, LLC , JAVA101, Karl Kessler 38

Das könnte Ihnen auch gefallen