38
Creating Web Applications for SAP BW and SAP Enterprise Portal with the SAP Java IDE (A Sneak Peek!) Sam Tingleff Technology Product Management SAP Labs

Creating Web Applications for SAP BW and SAP Enterprise Portal With the SAP Java IDE[1](1)

Embed Size (px)

Citation preview

Page 1: Creating Web Applications for SAP BW and SAP Enterprise Portal With the SAP Java IDE[1](1)

Creating Web Applications for SAP BW and SAP Enterprise Portal with the SAP Java IDE (A Sneak Peek!)

Sam TingleffTechnology Product Management

SAP Labs

Page 2: Creating Web Applications for SAP BW and SAP Enterprise Portal With the SAP Java IDE[1](1)

SAP AG 2003, slide 2

Agenda

SAP Java IDE Overview

Web Dynpro and the J2EE Toolset

Java Dictionary

The Portal Development Kit

Conclusion

Page 3: Creating Web Applications for SAP BW and SAP Enterprise Portal With the SAP Java IDE[1](1)

SAP AG 2003, slide 3

Agenda

SAP Java IDE Overview

Web Dynpro and the J2EE Toolset

Java Dictionary

The Portal Development Kit

Conclusion

Page 4: Creating Web Applications for SAP BW and SAP Enterprise Portal With the SAP Java IDE[1](1)

SAP AG 2003, slide 4

What Is the SAP Java IDE?

New tool from SAP for developing enterprise applicationsFull desktop application – does not use SAPGUIThe Java development tool for SAP

Released with SAP Web Application Server 6.30

Will be used forWeb application development on Web AS 6.30Portal component developmentOther Java development

Page 5: Creating Web Applications for SAP BW and SAP Enterprise Portal With the SAP Java IDE[1](1)

SAP AG 2003, slide 5

ABAP Workbench vs. SAP Java IDE

-+Environment/Infrastructure

-+Support for SAP Technology

+-Private Test Environment

+-Offline Development

+-Support for Standards

+-Local Editing

-+Large Scale Application Support

JAVAABAPABAP

Server-oriented

Design and runtime objects stored in same database

SAP System determines “scope”

Java

Operates on Local File System

Design and runtime objects separated

Development environment organized in local “projects”

Page 6: Creating Web Applications for SAP BW and SAP Enterprise Portal With the SAP Java IDE[1](1)

SAP AG 2003, slide 6

ABAP vs. Java: Some Highlights

ABAPOne frame (SE80) for all design-time toolsLogistics seamlessly integrated into the Development

WorkbenchBuild environment, Deployment, Software Logistics, etc.

Supports SAP technologiesStructured “logical,” not physical, presentation of all SAP design-time

objects

Java Local Development Environment

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

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

Page 7: Creating Web Applications for SAP BW and SAP Enterprise Portal With the SAP Java IDE[1](1)

SAP AG 2003, slide 7

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 for large-scale application development

Preserve the principle of local IDE

Provide local editing support

Enable offline development

Support standard and SAP technologies

Logically structure the presentation of design-time objects

Enable graphical editing

Page 8: Creating Web Applications for SAP BW and SAP Enterprise Portal With the SAP Java IDE[1](1)

SAP AG 2003, slide 8

Local File System

Tool Integration Platform

Overall Java Development Infrastructure

Design-time Repository

(DTR)

ComponentBuild

Service

(CBS)

Software Logistics

(SL)

RunTimeJ2EEServ

er

Deploy

DDICWebDynp

ro

WebServi

ce

DT

R/C

BS

/SL

Inte

gra

tio

n

Generic Model Abstraction Layer

Graphics

Tool Service

Layer

Java J2EE

Page 9: Creating Web Applications for SAP BW and SAP Enterprise Portal With the SAP Java IDE[1](1)

SAP AG 2003, slide 9

IBM’s Eclipse Is the Foundation

Open Source project "donated" by IBM Written in Java

Eclipse is only a framework Very small kernel (Platform Runtime)

Everything is a plug-in!

Own UI approach (SWT/JFace)

Eclipse comes with a full Java (J2SE) IDE comes with Eclipse

Page 10: Creating Web Applications for SAP BW and SAP Enterprise Portal With the SAP Java IDE[1](1)

SAP AG 2003, slide 10

IDE Overview: Java and Debug Perspective

JavaPerspectiv

e DebugPerspecti

ve

Page 11: Creating Web Applications for SAP BW and SAP Enterprise Portal With the SAP Java IDE[1](1)

SAP AG 2003, slide 11

IDE Overview: IDE Features

Refactoring features Move/rename classes and

methods Repackage Extract methods Surround with try/catch

Pretty printing Configurable

Code completion (IntelliSense)

Import management Configurable

Search features References Definitions Read/write access

Javadoc help as tooltip

Page 12: Creating Web Applications for SAP BW and SAP Enterprise Portal With the SAP Java IDE[1](1)

SAP AG 2003, slide 12

SAP Java IDE: Benefits & Considerations

Java will not replace ABAP!

Our goal is to provide maximum flexibility to customersCurrently 3-4 million registered Java developersOften taught as a first language in schools

When should you use Java?ABAP still recommended for core business logicJava excels at user interfaces, integration, etc.Depends on the project and your development team

Page 13: Creating Web Applications for SAP BW and SAP Enterprise Portal With the SAP Java IDE[1](1)

SAP AG 2003, slide 13

SAP Java IDE: Prerequisites & Availability

PrerequisitesSAP Web Application Server 6.30Sun JDK 1.3.1/1.4Java knowledge and experience

Will be available via the service marketplace

Page 14: Creating Web Applications for SAP BW and SAP Enterprise Portal With the SAP Java IDE[1](1)

SAP AG 2003, slide 14

Agenda

SAP Java IDE Overview

Web Dynpro and the J2EE Toolset

Java Dictionary

The Portal Development Kit

Conclusion

Page 15: Creating Web Applications for SAP BW and SAP Enterprise Portal With the SAP Java IDE[1](1)

SAP AG 2003, slide 15

What is Web Dynpro?

One component of the SAP Java IDEGraphical design tool for building Web-based business

applicationsConversion tool to Web-enable ABAP/Dynpro programs

Key featuresComplete toolset based on the Eclipse IDEGraphical design of view composition and navigation flowWYSIWYG view designerStandard Java editor for implementing event handlersEfficient development cycle (edit – build – deploy – run)

Page 16: Creating Web Applications for SAP BW and SAP Enterprise Portal With the SAP Java IDE[1](1)

SAP AG 2003, slide 16

What is Web Dynpro? (cont’d)

Web Dynpro User interfaces are Professional looking Easy-to-use Highly interactive

Web Dynpro IDE Model and develop presentation logic Design and compose user interfaces Backed by usability patterns Based on business datatype information

Runtime services Open standards, runtime infrastructure

Java and ABAP (JSP and BSP*) Tag libraries Device independence Internationalization Easy to deploy and maintain

SAP Web Application Server

PresentationLayer

Web Dynpro

Business Layer

J2EE/ABAP

BSP, JSP*

* ASP planned

Tag libraries

Page 17: Creating Web Applications for SAP BW and SAP Enterprise Portal With the SAP Java IDE[1](1)

SAP AG 2003, slide 17

Web Dynpro Benefits

Web DynproMetadata

Web DynproTools

Multi-Device Internet

Web Dynpro Runtime

J2EE.NET ABAP

Improves User ExperienceBrowser-based front endFlicker-free screen, minimal

refreshesMinimal response timesBuilt-in personalization 508 accessibility compliance

Strategic developmentWeb Dynpro components can be

reusedSupports Web Services & Data-

bindingSeparate Layout & Programming

Logic

IndependenceFrom platformFrom UI technology

Page 18: Creating Web Applications for SAP BW and SAP Enterprise Portal With the SAP Java IDE[1](1)

SAP AG 2003, slide 18

What is the J2EE Toolset?

Contains creation wizards forProjects: EJB, EJB Assembly, Web, Web Assembly, Enterprise

AppsObjects: EJB, Servlet, JSP, Filter, Listener, HTML

Page 19: Creating Web Applications for SAP BW and SAP Enterprise Portal With the SAP Java IDE[1](1)

SAP AG 2003, slide 19

SAP Java IDE

SAP J2EE Engine

Developer’s PC

Local Testing and Debugging

LAN

Deployment

SAP J2EE Engine

SAP J2EE Engine

Includes a Local Test & Debug Environment Specify server settings in the

“Preferences" page Start/stop the local J2EE

Engine from the J2EE View Normal or debug mode

Directly test or debug servlets / JSPs on your local server

What is the J2EE Toolset? (cont’d)

Page 20: Creating Web Applications for SAP BW and SAP Enterprise Portal With the SAP Java IDE[1](1)

SAP AG 2003, slide 20

Demo: J2EE Toolset

Demo

Page 21: Creating Web Applications for SAP BW and SAP Enterprise Portal With the SAP Java IDE[1](1)

SAP AG 2003, slide 21

Agenda

SAP Java IDE Overview

Web Dynpro and J2EE Tools

Java Dictionary

The Portal Development Kit

Conclusion

Page 22: Creating Web Applications for SAP BW and SAP Enterprise Portal With the SAP Java IDE[1](1)

SAP AG 2003, slide 22

What is the Java Dictionary?

Similar to the ABAP data dictionary

Will be part of Web AS 6.30

Will contain a datatype repository

Independent of application code

Content can be used in various places Database persistence Fields of a Web Dynpro form

Page 23: Creating Web Applications for SAP BW and SAP Enterprise Portal With the SAP Java IDE[1](1)

SAP AG 2003, slide 23

Simple Type Example

SimpleType <simpleType name='Airline'>

</simpleType>

Core datatype information

Restriction base

<restriction base='string'>

</restriction>

Restriction baseRestriction baseConstraints

<maxLength value='3'/><enumeration value='LH '/><enumeration value='UA '/><enumeration value='AA '/>

UI-related information

Database-related information

Web Service-related information

<annotation> <fieldlabel value='Airline'/> <col_label value='Airline'/></annotation><annotation> <notNull value='true'/></annotation>

Page 24: Creating Web Applications for SAP BW and SAP Enterprise Portal With the SAP Java IDE[1](1)

SAP AG 2003, slide 24

Java Dictionary – Benefits

Datatypes can be used in all layers of application development

Enhanced application portability Development platform (Web Dynpro for ABAP, Java, .Net) Database platform

Centralized source definition and maintenance Reuse Central points for extension/modification Services are attached centrally

Seamless integration into the Java IDE Java IDE based on Eclipse Local, component-based development process

Fits well into declarative frameworks like Web Dynpro

Page 25: Creating Web Applications for SAP BW and SAP Enterprise Portal With the SAP Java IDE[1](1)

SAP AG 2003, slide 25

Database Layer – SAP’s Goals

Support several RDBMSs Platform-independent access to data Platform-independent definition of database objects

Performance Caching of data Caching of statements SQL trace

Fit into local development process Definition and deployment of database objects Checked usage of database objects

Support relational persistence + object relational persistence

Page 26: Creating Web Applications for SAP BW and SAP Enterprise Portal With the SAP Java IDE[1](1)

SAP AG 2003, slide 26

Database Layer – Open SQL for Java

Object Relational PersistenceRelational Persistence

Java program

RDBMS

Open SQL/ SQLJ

Open SQL Engine Table buffer

Table catalog

Statement cache

SQL trace

SQL Processor

DB access layer

Open SQL/ Native SQL

un

chec

ked

SQ

L

po

rtab

le S

QL

VendorJDBC

JDOEJB CMP

Open SQL for Java

Open SQL/ JDBC

Page 27: Creating Web Applications for SAP BW and SAP Enterprise Portal With the SAP Java IDE[1](1)

SAP AG 2003, slide 27

Database Layer – Defining DB tables

Page 28: Creating Web Applications for SAP BW and SAP Enterprise Portal With the SAP Java IDE[1](1)

SAP AG 2003, slide 28

Database Layer – Defining DB tables (cont’d)

Page 29: Creating Web Applications for SAP BW and SAP Enterprise Portal With the SAP Java IDE[1](1)

SAP AG 2003, slide 29

Database Layer – Defining DB tables (cont’d)

Page 30: Creating Web Applications for SAP BW and SAP Enterprise Portal With the SAP Java IDE[1](1)

SAP AG 2003, slide 30

Database Layer – SQLJ (Embedded SQL)

SAP-specific SQLJ checker Uses database object metadata instead of the database catalog

IDE integration Displays translation errors (-> SQL syntax errors) Navigates to the position of errors in the code

SQLJ Translator

Date

String

Airline

Type

...

TrueFLDATE

4TrueCONNID

3TrueCARRID

LengthIsKeyFieldName

SFlight.dbtable

SAP SQLJ Checker

Test.sqlj

String from, to, conn_id;String carr_id;

#sql { SELECT CITYFROM, CITYTO FROM SFLIGHT INTO :from, :to WHERE CARRID = :carr_id AND CONNID = :conn_id };

System.out.println (from + ", " + to);

Page 31: Creating Web Applications for SAP BW and SAP Enterprise Portal With the SAP Java IDE[1](1)

SAP AG 2003, slide 31

Agenda

SAP Java IDE Overview

Web Dynpro and J2EE Tools

Java Dictionary

The Portal Development Kit

Conclusion

Page 32: Creating Web Applications for SAP BW and SAP Enterprise Portal With the SAP Java IDE[1](1)

SAP AG 2003, slide 32

What Is the Portal Development Kit?

Offline development & runtime environment for customer-specific iViews in Java

Java API for Enterprise Portal

HTML Business for Java

Supports full iView development cycle Code & test

Deploy

upload iViews to PDK

test iViews in the PDK

Page 33: Creating Web Applications for SAP BW and SAP Enterprise Portal With the SAP Java IDE[1](1)

SAP AG 2003, slide 33

Java IDE Apps Can Be Deployed via SAP Enterprise Portal

Enterprise Portal

Client

IRJ

Web

Ap

p

Server

PAR File Developed

with IDEDeplo

y

Test

local computer

Page 34: Creating Web Applications for SAP BW and SAP Enterprise Portal With the SAP Java IDE[1](1)

SAP AG 2003, slide 34

Demo: Building Portal Apps with the SAP Java IDE

Demo

See iviewstudio.com for

specific how-to instructions

Page 35: Creating Web Applications for SAP BW and SAP Enterprise Portal With the SAP Java IDE[1](1)

SAP AG 2003, slide 35

Agenda

SAP Java IDE Overview

Web Dynpro and J2EE Tools

Java Dictionary

The Portal Development Kit

Conclusion

Page 36: Creating Web Applications for SAP BW and SAP Enterprise Portal With the SAP Java IDE[1](1)

SAP AG 2003, slide 36

For More Information

SAP resources Portal Development Kit - http://www.iviewstudio.com/ SAP NetWeaver - http://www.sap.com/solutions/netweaver/ SAP NetWeaver Software – http://service.sap.com/netweaver

Java & J2EE http://java.sun.com/docs/overviews/java/java-overview-1.html http://java.sun.com/j2ee/tutorial/

Other Java development resources Flashline (http://www.flashline.com/) Java Developer's Journal (http://www2.sys-con.com/java/) the serverside.com (http://theserverside.com/home/index.jsp) JavaWorld (http://www.javaworld.com/) O’REILLY (http://www.oreilly.com/)

Page 37: Creating Web Applications for SAP BW and SAP Enterprise Portal With the SAP Java IDE[1](1)

SAP AG 2003, slide 37

For More Information (cont’d)

With Web AS 6.30 SAP will offer a full-featured Java IDE Based on the open source Eclipse platform Used for all NetWeaver Java development (Web AS, EP, etc.) Will include tools for Dynpro screen conversion and generation

Web AS 6.30 will include a Java Dictionary Similar to the ABAP Dictionary Will provide a data type concept

The Portal Development Kit can be used to develop IDEs Can also be used to deploy Java IDE apps via Enterprise Portals

Page 38: Creating Web Applications for SAP BW and SAP Enterprise Portal With the SAP Java IDE[1](1)

SAP AG 2003, slide 38

Q&A

Questions?