Creating Web Applications for SAP BW and SAP Enterprise Portal With the SAP Java IDE[1](1)
Transcript of 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
SAP AG 2003, slide 2
Agenda
SAP Java IDE Overview
Web Dynpro and the J2EE Toolset
Java Dictionary
The Portal Development Kit
Conclusion
SAP AG 2003, slide 3
Agenda
SAP Java IDE Overview
Web Dynpro and the J2EE Toolset
Java Dictionary
The Portal Development Kit
Conclusion
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
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”
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.
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
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
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
SAP AG 2003, slide 10
IDE Overview: Java and Debug Perspective
JavaPerspectiv
e DebugPerspecti
ve
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
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
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
SAP AG 2003, slide 14
Agenda
SAP Java IDE Overview
Web Dynpro and the J2EE Toolset
Java Dictionary
The Portal Development Kit
Conclusion
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)
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
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
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
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)
SAP AG 2003, slide 20
Demo: J2EE Toolset
Demo
SAP AG 2003, slide 21
Agenda
SAP Java IDE Overview
Web Dynpro and J2EE Tools
Java Dictionary
The Portal Development Kit
Conclusion
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
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>
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
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
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
SAP AG 2003, slide 27
Database Layer – Defining DB tables
SAP AG 2003, slide 28
Database Layer – Defining DB tables (cont’d)
SAP AG 2003, slide 29
Database Layer – Defining DB tables (cont’d)
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);
SAP AG 2003, slide 31
Agenda
SAP Java IDE Overview
Web Dynpro and J2EE Tools
Java Dictionary
The Portal Development Kit
Conclusion
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
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
SAP AG 2003, slide 34
Demo: Building Portal Apps with the SAP Java IDE
Demo
See iviewstudio.com for
specific how-to instructions
SAP AG 2003, slide 35
Agenda
SAP Java IDE Overview
Web Dynpro and J2EE Tools
Java Dictionary
The Portal Development Kit
Conclusion
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/)
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
SAP AG 2003, slide 38
Q&A
Questions?