Java Development Tools in Detail

Similar documents
SAP Enterprise Portal 6.0 KM Platform Delta Features

How To Develop In Java (J2Ee) And J2Ee (Sap) Together (Sapp)

Working in a ubiquitous computing environment

Management and Monitoring of a J2EE Server and Applications Using JMX. Reinhold Kautzleben, Gregor Frey Speaker Title, SAP AG

Multiple Components in One Database -

" # Portal Integration SAP AG 2004, 3

Michael Collet 28th January 2005, Frankfurt, GI -Fachgruppe SECMGT

Closed-Loop Engineering Integrated Product Development at a Vehicle Manufacturer

Leveraging Utilibill. Tim Vanderheide Bluewater Power V.P. Client Services

Sabine Reich SAP. Test Workbench - Introduction

Application Map Release 2005

SAP NetWeaver Gateway Throughput & Scalability. David Freidlin

The Way to New ERP Horizons

High Availability for Databases. Uwe Schulz SAP AG

mysap Supply Chain Management Solution Map Release 2005

Building a multi-source universe

Applied IT Project Management

SAP BusinessObjects Dashboards Influence Session. Scott Leaver Solution Management François Imberton Product Management

Growing pressures that are here to stay

Global Transport Label - General Motors -

Unstructured information management

Sales Rush Sales Order Processing S01- Lean Baseline Package. SAP Lean Baseline Package Version: V1.500 Country: UK Language: EN Date: February 2006

Setup Guide for Business Process Operations Dashboards SAP Solution Manager 7.1. SAP AG August, 2011

Capital Project and Portfolio Management

mysap Customer Relationship Management - Enterprise Solution Map Edition 2004

Innovation Summit Philadelphia, July 12 th 13 th User Experience

SAP's Journey of Implementing SAP Disclosure Management and Notes Management Session 2002

mysap ERP Technology Facts

Jörg Hoffmeister SAP AG

Job Scheduling Management Integration with SAP CPS by Redwood SAP Solution Manager 7.1. SAP AG August, 2011

ITSCM at SAP Best practices

Simplifying Workflow with SAP NetWeaver. Alan Rickayzen Product Manager, SAP AG

SEM and Budget Preparation. David Reifschneider Sr. Consultant, SAP SI America

DATA ARCHIVING IN SAP R/3 ENTERPRISE. Georg Fischer PM Data Archiving SAP AG

SAP Master Data Governance for Financials: What's New with SAP ERP 6.0 Enhancement Package 4 and 5

SAP NetWeaver MDM 5.5 SP3 SAP Portal iviews Installation & Configuration. Ron Hendrickx SAP NetWeaver RIG Americas Foundation Team

Settlement in TM 9.0 New functionalities with TM 9.0. Ananth Bhat SAP Development, Transportation & Logistics December 2012

SAP Web SAP Logging & Tracing API. Jeff Gebo SAP Labs, LLC.

Download and Install Crystal Reports for Eclipse via the Eclipse Software Update Manager

Service Level Reporting for Business Process Monitoring

SAP NetWeaver Landscape. Jeff Anders/Solution Management January 2012

CREATING A PURCHASE ORDER STORE RECORD WEB SERVICE

E-Recruiting Job Board Integration using XI

Performance Best Practices Guide for SAP NetWeaver Portal 7.3

How to Create Web Dynpro-Based iviews. Based on SAP NetWeaver 04 Stack 09. Jochen Guertler

R&D Logistics: Clinical Trial Supply Management for the Life Sciences Industry. SAP Online Conference October 7, 2003

SAP xapp Resource and Portfolio Management (SAP xrpm)

BC450 ABAP Performance: Analysis and Optimization

Configuring Distribution List in Compliant User Provisioning

Setting an Enterprise Content Management Strategy. John Fiske, SAP ECM Solution Management

3 rd party Service Desk interface

Implementing Outlook Integration for SAP Business One

Developing Applications for Integration between PI and SAP ERP in Different Network Domains or Landscapes

How To Configure MDM to Work with Oracle ASM-Based Products

BC407 Reporting: QuickViewer, InfoSet Query and SAP Query

BC481 SAP Interactive Forms by Adobe

SAP Master Data Governance- Hiding fields in the change request User Interface

Process Archiving using NetWeaver Business Process Management

mysap PLM Lifecycle Collaboration: Transparente Produktentwicklung mit der cproject Suite Andreas Vetter Product Manager, SAP AG

Posting Messages into XI

Business One in Action - How can we post bank fees and charges while posting Incoming or Outgoing Payment transactions?

How to Set Up an Authorization for a Business Partner in Customer Relationship Management (CRM) Internet Sales: Sample Case

Integrate Third Party Collaboration Tools in the SAP NetWeaver Portal. SAP NetWeaver Product Management

Integration of SAP central user administration with Microsoft Active Directory

Ronald Bueck SBO Product Definition

NWBC10 NetWeaver Business Client

Data Archiving in CRM: a Brief Overview

Learning Management Systems. SAP Learning Solution overview. Integration. Demonstration. 5 Wrap-up. SAP AG 2002, Title of Presentation, Speaker Name 2

Extract Archived Data from SAP ERP

SCUR203 Why Do We Need Security Standards?

BW370 BI Integrated Planning

Backup & Restore with SAP BPC (MS SQL 2005)

Methodology to Implement SAP Process Integration

UI Framework Simple Search in CRM WebClient based on NetWeaver Enterprise Search (ABAP) SAP Enhancement Package 1 for SAP CRM 7.0

Budget Control by Cost Center

Maintaining Different Addresses and Ids for a Business Partner via CRM Web UI

SAP NetWeaver BRM 7.3

Utilities for downloading and uploading OO ABAP classes in XML format

Grants Management - Grantee Workshop. Keith Harmon Product Manager, SAP Labs LLC

Third Party Digital Asset Management Integration

SAP Service and Asset Management Solution Map. Release 2005

FSC130 SAP Bank Communication Management

Using SAP Logon Tickets for Single Sign on to Microsoft based web applications

mysap Business Solutions on Linux

Analyzing Sales Data for Choosing Forecast Strategies

Create a New Portal Desktop

USDL XG WP3 SAP use case. Kay Kadner

How to configure BusinessObjects Enterprise with Citrix Presentation Server 4.0

Implementing a Federated Portal Network

Security Audit Log (BC-SEC)

Table of Contents. How to Find Database Index usage per ABAP Report and Creating an Index

Integrating Easy Document Management System in SAP DMS

SAP GRC Access Control: Background jobs for risk analysis and remediation (formerly Virsa Compliance Calibrator)

prioritize XI messages on integration server

Understanding HR Schema and PCR with an Example

Integrated Offshore Consulting Services Help Companies To Focus On Their Business

User Experience in Custom Apps

TM111. ERP Integration for Order Management (Shipper Specific) COURSE OUTLINE. Course Version: 15 Course Duration: 2 Day(s)

Alert Notification in SAP Supply Network Collaboration. SNC Extension Guide

Transcription:

Nov. 12-15, 2002 Java Development Tools in Detail Joachim Jakob, SAP AG SAP Labs, LLC. SAP TechEd 2002 November 12-15, 2002 (JAVA102) / 1

Overall Java Development Infrastructure Tool Integration Platform Software Logistics (SL) Java Java Dictionary J2EE Web Dynpro Web Service DTR/CBS/SL Integration Component Build Service (CBS) Deploy Run Time J2EE Server Graphics Tool Service Layer Generic Model Abstraction Layer Local File System Design Time Repository (DTR) 2002 SAP Labs, LLC, JAVA102, Joachim Jakob 2

Learning Objectives As a result of this workshop, you will be able to: Know which development tools for Java will by offered by SAP beyond the J2EE toolset Describe how these tools fit into SAP s new development infrastructure Get a feeling of how you can work with these tools 2002 SAP Labs, LLC, JAVA102, Joachim Jakob 3

Agenda Why J2EE is not enough The Java Dictionary The idea The Type System The Database Layer Developing database objects Accessing data with SQLJ The Business Layer Web Services The Presentation Layer Web Dynpro Summary 2002 SAP Labs, LLC, JAVA102, Joachim Jakob 4

Agenda Why J2EE is not enough The Java Dictionary The idea The Type System The Database Layer Developing database objects Accessing data with SQLJ The Business Layer Web Services The Presentation Layer Web Dynpro Summary 2002 SAP Labs, LLC, JAVA102, Joachim Jakob 5

Why J2EE is not enough The J2EE programming models provides mechanisms for all aspects of business applications... User Interface Servlet + JSP as base mechanism Taglibraries Business logic Development and deployment of enterprise Java beans (EJB) Session Beans Entity Beans Java persistence J2EE Container managed persistence (CMP) Dynamic database access using JDBC Presentation layer Servlet, JSP Business layer Session Beans Entity Beans JDBC Database layer 2002 SAP Labs, LLC, JAVA102, Joachim Jakob 6

Why J2EE is not enough but the J2EE programming model is not sufficient for SAP s needs! Platform independence Support for several databases Support for different browsers Cross-platform development (Java, ABAP) Performance Large-scaled applications require a very efficient database layer Efficiency in development Lack of higher levels of abstraction Lack of efficient development infrastructure SAP has to support higher-level programming models SAP has to provide a highly productive development infrastructure 2002 SAP Labs, LLC, JAVA102, Joachim Jakob 7

Agenda Why J2EE is not enough The Java Dictionary The idea The Type System The Database Layer Developing database objects Accessing data with SQLJ The Business Layer Web Services The Presentation Layer Web Dynpro Summary 2002 SAP Labs, LLC, JAVA102, Joachim Jakob 8

Java Dictionary The Idea Content exists independent of program code Describe content outside of program code Generate programming language specific access layer Usage of content description in declarative programming environments (Web Dynpro, Web Services, Persistence Frameworks) Content has many aspects Extend content description with framework specific information Generate appropriate interfaces for different scenarios, e.g. Metadata interface (e.g. field length in Web Dynpro) UI Service interfaces (e.g. field labels, value help,...) Use standards for content description XML Schema is the recommended type system for Web Service description XML Schema is the supported type system of SAP s Interface Repository 2002 SAP Labs, LLC, JAVA102, Joachim Jakob 9

Java Dictionary Simple Type example SimpleType Core datatype information Restriction base Restriction base Restriction base Constraints UI related information Database related information Web Service related information <simpletype name='airline'> <restriction base='string'> <maxlength value='3'/> <enumeration value='lh '/> <enumeration value='ua '/> <enumeration value='aa '/> </restriction> <annotation> <fieldlabel value='airline'/> <col_label value='airline'/> </annotation> <annotation> <notnull value='true'/> </annotation> </simpletype> 2002 SAP Labs, LLC, JAVA102, Joachim Jakob 10

Java Dictionary Simple Type example 2002 SAP Labs, LLC, JAVA102, Joachim Jakob 11

Java Dictionary Simple Type example 2002 SAP Labs, LLC, JAVA102, Joachim Jakob 12

Java Dictionary Simple Type example 2002 SAP Labs, LLC, JAVA102, Joachim Jakob 13

Java Dictionary Simple Type example 2002 SAP Labs, LLC, JAVA102, Joachim Jakob 14

Java Dictionary - The Type System DataType ScalarType ComplexType BuiltinType SimpleType Structure List FlatStructure User-defined Type Abstract Type 2002 SAP Labs, LLC, JAVA102, Joachim Jakob 15

Java Dictionary Services attached to datatypes Classification Value Services Text Services Other Services Service Format / Parse Validate Simple value sets Complex value sets History Default value Field label Column label Value description Quick info Help texts / documentation Metadata Access Parameters Data Source, Locale Data Source Data Source, Locale Data Source, Locale Locale, Sector,... Locale, Sector,... Locale, Sector,... Locale, Sector,... Locale, Sector,... Locale, Sector, 2002 SAP Labs, LLC, JAVA102, Joachim Jakob 16

Java Dictionary Benefits Datatypes can be used in all layers of application development Enhance portability of application development regarding Development platform (Web Dynpro for ABAP, Java,.Net) Database platform Central source of definition Reuse Central points for extension/modification Services are attached centrally Seamless integration into Java development infrastructure Java IDE based on Eclipse Local, component-based development process Fits well into declarative frameworks like Web Dynpro 2002 SAP Labs, LLC, JAVA102, Joachim Jakob 17

Agenda Why J2EE is not enough The Java Dictionary The idea The Type System The Database Layer Developing database objects Accessing data with SQLJ The Business Layer Web Services The Presentation Layer Web Dynpro Summary 2002 SAP Labs, LLC, JAVA102, Joachim Jakob 18

Database Layer - Requirements Support for 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 for relational persistence as well as for object relational persistence 2002 SAP Labs, LLC, JAVA102, Joachim Jakob 19

Database Layer Open SQL for Java Java program Relational Persistence Object Relational Persistence unchecked SQL Open SQL/ Native SQL Open SQL/ JDBC Open SQL/ SQLJ Open SQL Engine SQL Processor DB access layer EJB CMP JDO Table buffer Table catalog Statement cache portable SQL Vendor JDBC Open SQL for Java SQL trace RDBMS 2002 SAP Labs, LLC, JAVA102, Joachim Jakob 20

Database Layer Support for database objects Development tool integrated into IDE DB platform independent maintenance of database objects Database tables Indexes Database views For very limited scenarios it should be possible to bypass DB platform independence Fieldtypes can bound to datatypes of the Java Dictionary Generation of deployment information and runtime objects Deployment of DB objects based on deployment information Analysis of existing DB catalog Generation of DDL-Statements DB table conversion if necessary Catalog Reader for Open SQL for Java layer 2002 SAP Labs, LLC, JAVA102, Joachim Jakob 21

Database Layer Support for database objects Designtime Build Phase Deployment Eclipse Based IDE Project Browser Table/index editor Checker Build Server Archive Pool Deployment Tools: SDM Dictionary Deployment Tools Designtime Repository DB 2002 SAP Labs, LLC, JAVA102, Joachim Jakob 22

Database Layer Definition of DB tables 2002 SAP Labs, LLC, JAVA102, Joachim Jakob 23

Database Layer Definition of DB tables 2002 SAP Labs, LLC, JAVA102, Joachim Jakob 24

Database Layer Definition of DB tables 2002 SAP Labs, LLC, JAVA102, Joachim Jakob 25

Database Layer SQLJ (embedded SQL) 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 }; SFlight.dbtable FieldName IsKey Type Length CARRID True Airline 3 CONNID True String 4 FLDATE True Date... System.out.println (from + ", " + to); Editing SQLJ sources Features of standard Java source editor SQLJ-specific features, e.g. syntax coloring of SQL-blocks Debugging of SQLJ sources Setting of breakpoints in SQLJ source Display of SQLJ source instead of Java source in Debugger Step by step debugging (step over single sql-statement) 2002 SAP Labs, LLC, JAVA102, Joachim Jakob 26

Database Layer SQLJ (embedded SQL) 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 }; SFlight.dbtable FieldName IsKey Type Length CARRID True Airline 3 CONNID True String 4 FLDATE True Date... System.out.println (from + ", " + to); SQLJ Translator SAP SQLJ Checker SAP-specific SQLJ checker Uses database object metadata instead of not database catalog IDE integration of SQLJ checker Display of translation errors (-> SQL syntax errors) Navigation to error position in coding 2002 SAP Labs, LLC, JAVA102, Joachim Jakob 27

Database Layer SQLJ Tool support 2002 SAP Labs, LLC, JAVA102, Joachim Jakob 28

Database Layer SQLJ Tool support 2002 SAP Labs, LLC, JAVA102, Joachim Jakob 29

Database Layer SQLJ Tool support 2002 SAP Labs, LLC, JAVA102, Joachim Jakob 30

Agenda Why J2EE is not enough The Java Dictionary The idea The Type System The Database Layer Developing database objects Accessing data with SQLJ The Business Layer Web Services The Presentation Layer Web Dynpro Summary 2002 SAP Labs, LLC, JAVA102, Joachim Jakob 31

Business Layer The Web Service Paradigm Service Discovery Service Publication Service Directory UDDI WSDL XML/ SOAP HTTP Service Requestor Service Invocation Service Provider 2002 SAP Labs, LLC, JAVA102, Joachim Jakob 32

Business Layer Web Service Development WS Development IDE WS Usage IDE WS Definition Virt. Endpoint Configuration Publish UDDI Lookup Proxy generation Generate WS Endpoint (e.g. EJB) Checkin DTR Get definition WS Proxy Checkin WS Client WS Server SAP Web AS Deploy WS Client SAP Web AS WS Endpoint SOAP Framework SOAP SOAP Framework WS Client 2002 SAP Labs, LLC, JAVA102, Joachim Jakob 33

Business Layer Web Service Toolset Tools for Web Service definition Web Service creation wizard Virtual endpoint definition Tools for calling Web Services Browsing of UDDI directory Client proxy generation Efficient development process Server configuration UDDI publishing Web Service build and deployment Web Service test environment 2002 SAP Labs, LLC, JAVA102, Joachim Jakob 34

Agenda Why J2EE is not enough The Java Dictionary The idea The Type System The Database Layer Developing database objects Accessing data with SQLJ The Business Layer Web Services The Presentation Layer Web Dynpro Summary 2002 SAP Labs, LLC, JAVA102, Joachim Jakob 35

Presentation Layer - Web Dynpro Improve User Experience through a "High Fidelity Web UI" browser based frontend, zero footprint flicker-free screen, minimal refreshs client-side dynamics minimal response times personalization of the user interface 508 accessibility compliance Web Dynpro Tools Web Dynpro Meta-Data Web Dynpro Runtime.NET J2EE ABAP Deliver an Enterprise Quality Web Development Environment minimize coding, maximize design support reuse of components support web services and data-binding separate layout and programming logic Achieve Independence... from platform from UI technology 2002 SAP Labs, LLC, JAVA102, Joachim Jakob 36 Multi Device Internet

Presentation Layer Web Dynpro Toolset Key features Complete toolset based on Eclipse IDE Graphical design of view composition and navigation flow WYSIWYG view designer Standard Java editor for implementing event handlers Efficient development cycle (edit build deploy run) 2002 SAP Labs, LLC, JAVA102, Joachim Jakob 37

Demo Demo 2002 SAP Labs, LLC, JAVA102, Joachim Jakob 38

Agenda Why J2EE is not enough The Java Dictionary The idea The Type System The Database Layer Developing database objects Accessing data with SQLJ The Business Layer Web Services The Presentation Layer Web Dynpro Summary 2002 SAP Labs, LLC, JAVA102, Joachim Jakob 39

Summary Extended SAP J2EE programming model Presentation Layer Servlet JSP Web Dynpro Java Dictionary Business Layer Session Beans Entity Beans JDBC Business Layer Web Services JDO SQLJ Open SQL Datatypes Schema SAP supports standard J2EE In addition SAP supports higher-level programming models 2002 SAP Labs, LLC, JAVA102, Joachim Jakob 40

Summary The Java Dictionary provides a uniform datatype system for all layers of business applications The Java Dictionary allows the definition and deployment of platform-independent database objects Tool support for SQLJ enables checked access to data from relational database tables Benefit from the active information market using the Web Service toolset Web Dynpro is the toolkit for rapid user interface development 2002 SAP Labs, LLC, JAVA102, Joachim Jakob 41

Questions? Q&A 2002 SAP Labs, LLC, JAVA102, Joachim Jakob 42

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, JAVA102, Joachim Jakob 43

Copyright 2002 SAP AG. All Rights Reserved No 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 herein may be changed without prior notice. Some software products marketed by SAP AG and its distributors contain proprietary software components of other software vendors. Microsoft, WINDOWS, NT, EXCEL, Word, PowerPoint and SQL Server are registered trademarks of Microsoft Corporation. IBM, DB2, DB2 Universal Database, OS/2, Parallel Sysplex, MVS/ESA, AIX, S/390, AS/400, OS/390, OS/400, iseries, pseries, xseries, zseries, z/os, AFP, Intelligent Miner, WebSphere, Netfinity, Tivoli, Informix and Informix Dynamic ServerTM are trademarks of IBM Corporation in USA and/or other countries. ORACLE is a registered trademark of ORACLE Corporation. UNIX, X/Open, OSF/1, and Motif are registered trademarks of the Open Group. Citrix, the Citrix logo, ICA, Program Neighborhood, MetaFrame, WinFrame, VideoFrame, MultiWin and other Citrix product names referenced herein are trademarks of Citrix Systems, Inc. HTML, DHTML, XML, XHTML are trademarks or registered trademarks of W3C, World Wide Web Consortium, Massachusetts Institute of Technology. JAVA is a registered trademark of Sun Microsystems, Inc. JAVASCRIPT is a registered trademark of Sun Microsystems, Inc., used under license for technology invented and implemented by Netscape. MarketSet and Enterprise Buyer are jointly owned trademarks of SAP AG and Commerce One. SAP, SAP Logo, R/2, R/3, mysap, mysap.com and other SAP products and services mentioned herein 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 product and service names mentioned are trademarks of their respective companies. 2002 SAP Labs, LLC, JAVA102, Joachim Jakob 44

Copyright 2002 SAP AG. Alle Rechte vorbehalten Weitergabe und Vervielfältigung dieser Publikation oder von Teilen daraus sind, zu welchem Zweck und in welcher Form auch immer, ohne die ausdrückliche schriftliche Genehmigung durch SAP AG nicht gestattet. In dieser Publikation enthaltene Informationen können ohne vorherige Ankündigung geändert werden. Die von SAP AG oder deren Vertriebsfirmen angebotenen Softwareprodukte können Softwarekomponenten auch anderer Softwarehersteller enthalten. Microsoft, WINDOWS, NT, EXCEL, Word, PowerPoint und SQL Server sind eingetragene Marken der Microsoft Corporation. IBM, DB2, DB2 Universal Database, OS/2, Parallel Sysplex, MVS/ESA, AIX, S/390, AS/400, OS/390, OS/400, iseries, pseries, xseries, zseries, z/os, AFP, Intelligent Miner, WebSphere, Netfinity, Tivoli, Informix und Informix Dynamic ServerTM sind Marken der IBM Corporation in den USA und/oder anderen Ländern. ORACLE ist eine eingetragene Marke der ORACLE Corporation. UNIX, X/Open, OSF/1 und Motif sind eingetragene Marken der Open Group. Citrix, das Citrix-Logo, ICA, Program Neighborhood, MetaFrame, WinFrame, VideoFrame, MultiWin und andere hier erwähnte Namen von Citrix-Produkten sind Marken von Citrix Systems, Inc. HTML, DHTML, XML, XHTML sind Marken oder eingetragene Marken des W3C, World Wide Web Consortium, Massachusetts Institute of Technology. JAVA ist eine eingetragene Marke der Sun Microsystems, Inc. JAVASCRIPT ist eine eingetragene Marke der Sun Microsystems, Inc., verwendet unter der Lizenz der von Netscape entwickelten und implementierten Technologie. MarketSet und Enterprise Buyer sind gemeinsame Marken von SAP AG und Commerce One. SAP, SAP Logo, R/2, R/3, mysap, mysap.com und weitere im Text erwähnte SAP-Produkte und -Dienst-leistungen sowie die entsprechenden Logos sind Marken oder eingetragene Marken der SAP AG in Deutschland und anderen Ländern weltweit. Alle anderen Namen von Produkten und Dienstleistungen sind Marken der jeweiligen Firmen. 2002 SAP Labs, LLC, JAVA102, Joachim Jakob 45