integrating web dynpro applications into sap enterprise portal
TRANSCRIPT
![Page 1: Integrating Web Dynpro Applications into Sap Enterprise Portal](https://reader031.vdocuments.us/reader031/viewer/2022012322/551c7a3a4979590c568b481d/html5/thumbnails/1.jpg)
Integrating Web DynproApplications into SAP Enterprise Portal
Dr.-Ing. Oliver StiefboldProduct Management, SAP AG
![Page 2: Integrating Web Dynpro Applications into Sap Enterprise Portal](https://reader031.vdocuments.us/reader031/viewer/2022012322/551c7a3a4979590c568b481d/html5/thumbnails/2.jpg)
© SAP AG 2002, Title of Presentation, Speaker Name 2
Agenda
Integrating Web Dynpro into SAP Enterprise Portal:
Unified Rendering – Portal Themes
Work Protect Mode
Portal Eventing
Navigation
OBN
Outlook: Web Dynpro Portal Personalization
Portal Development Kit and Netweaver Developer Cockpit
![Page 3: Integrating Web Dynpro Applications into Sap Enterprise Portal](https://reader031.vdocuments.us/reader031/viewer/2022012322/551c7a3a4979590c568b481d/html5/thumbnails/3.jpg)
© SAP AG 2002, Title of Presentation, Speaker Name 3
Unified Rendering and Branding
SAP application controls are unified and use portal design service Web Dynpro in Portal thus offers a unified end user experience
Portal
Web Dynpro 4 Java
Portal Page
![Page 4: Integrating Web Dynpro Applications into Sap Enterprise Portal](https://reader031.vdocuments.us/reader031/viewer/2022012322/551c7a3a4979590c568b481d/html5/thumbnails/4.jpg)
© SAP AG 2002, Title of Presentation, Speaker Name 4
Web Dynpro Theme Editor – Custom Corporate Branding
SAP Design
Service.KEYcom.sap.portal.design.portaldesigndata
Custom Design Custom Design
Web Dynpro Theme Editor is available at SDNWeb Dynpro Theme Editor is available at SDN
![Page 5: Integrating Web Dynpro Applications into Sap Enterprise Portal](https://reader031.vdocuments.us/reader031/viewer/2022012322/551c7a3a4979590c568b481d/html5/thumbnails/5.jpg)
© SAP AG 2002, Title of Presentation, Speaker Name 5
Agenda
Integrating Web Dynpro into SAP Enterprise Portal:
Unified Rendering – Portal Themes
Work Protect Mode
Portal Eventing
Navigation
OBN
Outlook: Web Dynpro Portal Personalization
Portal Development Kit and Netweaver Developer Cockpit
![Page 6: Integrating Web Dynpro Applications into Sap Enterprise Portal](https://reader031.vdocuments.us/reader031/viewer/2022012322/551c7a3a4979590c568b481d/html5/thumbnails/6.jpg)
© SAP AG 2002, Title of Presentation, Speaker Name 6
WorkProtect Mode
Web Dynpro applications can use WorkProtect mode to prevent unsaved data in the Web Dynpro application from being lost if the
user navigates to another portal page.
Web Dynpro applications can use WorkProtect mode to prevent unsaved data in the Web Dynpro application from being lost if the
user navigates to another portal page.
12
![Page 7: Integrating Web Dynpro Applications into Sap Enterprise Portal](https://reader031.vdocuments.us/reader031/viewer/2022012322/551c7a3a4979590c568b481d/html5/thumbnails/7.jpg)
© SAP AG 2002, Title of Presentation, Speaker Name 7
Agenda
Integrating Web Dynpro into SAP Enterprise Portal:
Unified Rendering – Portal Themes
Work Protect Mode
Portal Eventing
Navigation
OBN
Portal Personalization
Summary and Outlook
![Page 8: Integrating Web Dynpro Applications into Sap Enterprise Portal](https://reader031.vdocuments.us/reader031/viewer/2022012322/551c7a3a4979590c568b481d/html5/thumbnails/8.jpg)
© SAP AG 2002, Title of Presentation, Speaker Name 8
Web Dynpro and Portal Eventing
1
2
Portal eventing can be used to communicate between Web Dynpro and non Web Dynpro portal content
Portal eventing can be used to communicate between Web Dynpro and non Web Dynpro portal content
Sam Wilson
HELLO ! Sam Wilson
![Page 9: Integrating Web Dynpro Applications into Sap Enterprise Portal](https://reader031.vdocuments.us/reader031/viewer/2022012322/551c7a3a4979590c568b481d/html5/thumbnails/9.jpg)
© SAP AG 2002, Title of Presentation, Speaker Name 9
Web Dynpro Portal Eventing
Several Web Dynpro applications running on one portal page can communicate using portal eventing.
If Web Dynpro Portal eventing is needed, depends on the use case and application design.
loosely coupling
• No predefined user dialog• No defined application flow• Variing page composition• Reuse of iViews
„Let the administrator decide“
strong coupling
• Defined user dialog• Strong linear application flow control• Web Dynpro based page composition• No reuse of components
„Dont let the admin decide“
![Page 10: Integrating Web Dynpro Applications into Sap Enterprise Portal](https://reader031.vdocuments.us/reader031/viewer/2022012322/551c7a3a4979590c568b481d/html5/thumbnails/10.jpg)
© SAP AG 2002, Title of Presentation, Speaker Name 10
EPCF – Portal Client Framework
Enterprise Portal Client Framework provides a JavaScript function for event handling in Pages and iViews:
EPCM.subscribeEvent('namespace', 'eventName', eventHandlingFunctionName);
'namespace' - an text string that uniquely identifies your domain. The recommended namespace format is 'urn:eventURN'.
'eventName' - an text string that uniquely identifies your event name. EventName and namespace together define a unique event type identifier.
eventHandlingFunctionName - the name of a JavaScript function in your HTML code, without the function signature. The named function will be called upon event receival:function eventHandlingFunctionName( evt ) { doSth; }
![Page 11: Integrating Web Dynpro Applications into Sap Enterprise Portal](https://reader031.vdocuments.us/reader031/viewer/2022012322/551c7a3a4979590c568b481d/html5/thumbnails/11.jpg)
© SAP AG 2002, Title of Presentation, Speaker Name 11
EPCF – Raise an Event
To raise an EPCF event the application calls:
EPCM.raiseEvent('namespace', 'eventName', 'eventData');
The arguments of the function are:
'namespace' - a text string that uniquely identifies your domain. The recommended namespace format is 'urn:eventURN'.
'eventName' - a text string that uniquely identifies your event name. EventName and namespace together define a unique event type identifier.
eventData - a JavaScript object identifier. This object is passed on to the event handling method. 'eventData' can be a string or any other JavaScript object type.
![Page 12: Integrating Web Dynpro Applications into Sap Enterprise Portal](https://reader031.vdocuments.us/reader031/viewer/2022012322/551c7a3a4979590c568b481d/html5/thumbnails/12.jpg)
© SAP AG 2002, Title of Presentation, Speaker Name 12
Web Dynpro – Subcribe a Portal Event
You can reuse a Web Dynpro action for several portal events.
WDPortalEventing.subscribe( “urn:myurn.test.portal”, “TestEvent”,
wdThis.wdGetTestEventAction() );
You may define the following parameters for your Web Dynpro action:
Namespace: name space of the received portal event.
Name: This parameter contains the name of the received portal event.
dataObject: the transported parameter of the portal event.
![Page 13: Integrating Web Dynpro Applications into Sap Enterprise Portal](https://reader031.vdocuments.us/reader031/viewer/2022012322/551c7a3a4979590c568b481d/html5/thumbnails/13.jpg)
© SAP AG 2002, Title of Presentation, Speaker Name 13
Web Dynpro – Unsubscribe a Portal Event
Unsubscribing for a portal event is very similar to subscribing:
WDPortalEventing.unsubscribe(“urn:myurn.test.portal”, “TestEvent”, wdThis.wdGetTestEventAction() );
Note: Be sure that you unsubscribe every single Web Dynpro view, as the subscription and unsubscription is valid only for the current view.
![Page 14: Integrating Web Dynpro Applications into Sap Enterprise Portal](https://reader031.vdocuments.us/reader031/viewer/2022012322/551c7a3a4979590c568b481d/html5/thumbnails/14.jpg)
© SAP AG 2002, Title of Presentation, Speaker Name 14
Web Dynpro – Raise a Portal Event
The following example demonstrates how to raise a portal event:
WDPortalEventing.fire ( “urn:myurn.test.portal”, “TestEvent”, “AParameter”);
You can fire a portal event at any place in your Web Dynpro application.
The event is transported with the next response to the client.
You can also raise more than one portal event in one request-response cycle. Typically, you will fire a portal event in a Web Dynpro action event handler (for example, pressing a button).
![Page 15: Integrating Web Dynpro Applications into Sap Enterprise Portal](https://reader031.vdocuments.us/reader031/viewer/2022012322/551c7a3a4979590c568b481d/html5/thumbnails/15.jpg)
© SAP AG 2002, Title of Presentation, Speaker Name 15
Agenda
Integrating Web Dynpro into SAP Enterprise Portal:
Unified Rendering – Portal Themes
Work Protect Mode
Portal Eventing
Navigation
OBN
Outlook: Web Dynpro Portal Personalization
Portal Development Kit and Netweaver Developer Cockpit
![Page 16: Integrating Web Dynpro Applications into Sap Enterprise Portal](https://reader031.vdocuments.us/reader031/viewer/2022012322/551c7a3a4979590c568b481d/html5/thumbnails/16.jpg)
© SAP AG 2002, Title of Presentation, Speaker Name 16
Portal Navigation for Web Dynpro ecosystem
Main window
![Page 17: Integrating Web Dynpro Applications into Sap Enterprise Portal](https://reader031.vdocuments.us/reader031/viewer/2022012322/551c7a3a4979590c568b481d/html5/thumbnails/17.jpg)
© SAP AG 2002, Title of Presentation, Speaker Name 17
Navigation Connector
A custom navigation connector may enhance the portal standard navigation connector Portal Content Directory PCD
A navigation connector can be merged on top level
All functionality is available
Navigation and structure can be created dynamically
Example available in PDK
PCD
Custom Navigation Connector Example
![Page 18: Integrating Web Dynpro Applications into Sap Enterprise Portal](https://reader031.vdocuments.us/reader031/viewer/2022012322/551c7a3a4979590c568b481d/html5/thumbnails/18.jpg)
© SAP AG 2002, Title of Presentation, Speaker Name 18
EPCM - Navigation Client Functionality
Enterprise Portal offers a JavaScript function for Navigation
EPCM.doNavigate = function( target, mode, winfeatures, winname, history, targetTitle, context , postBody)
Target: ROLES://dir1/dir2/role1/page1
Mode: 0/1/2 – new /same window, with/wo portal header
Context: ROLES://dir1/dir2/role1/page2
Winfeatures: Example: "width=400,height=500".
Winname: „this window has my name ☺“
History: a breadcrumb control to help users find back
Postbody: If you dont like „GET“
![Page 19: Integrating Web Dynpro Applications into Sap Enterprise Portal](https://reader031.vdocuments.us/reader031/viewer/2022012322/551c7a3a4979590c568b481d/html5/thumbnails/19.jpg)
© SAP AG 2002, Title of Presentation, Speaker Name 19
EPCM - Navigation Client Functionality
Relative Navigation
EPCM.doRelativeNavigate(basenodename, levelsup, pathnameslist, mode, winfeatures, winname, history, addParams, targetTitle, context)
basenodename = current presented URLlevelsup = Number of levels to ascend in the treepathnameslist = list of all atomic names of children from the point reached by going number of levels up the tree
Rendered link EXAMPLE:
<A HREF="myLink2" onclick="return EPCM.doRelativeNavigate('ROLES://portal_content/Roles/MyRole/Level1/Level2/Level3', 1, '{PortalEventing}',0)"> This is a link using doRelativeNavigate</A>
![Page 20: Integrating Web Dynpro Applications into Sap Enterprise Portal](https://reader031.vdocuments.us/reader031/viewer/2022012322/551c7a3a4979590c568b481d/html5/thumbnails/20.jpg)
© SAP AG 2002, Title of Presentation, Speaker Name 20
Summary and Review of Navigation API
The Navigation API allows application to navigate not only in between a known application, but between the complete Portal content.
Navigation targets are iViews, Pages, Worksets, Roles
Navigation Targets are a Portal Content Directory URL
Dynamic Navigation windows offer an additonal dynamic navigation context for application designers
Related Targets offer also an additonal navigation context.
Object Based Navigation decouples Navigation Link and Navigation Target (next chapter)
![Page 21: Integrating Web Dynpro Applications into Sap Enterprise Portal](https://reader031.vdocuments.us/reader031/viewer/2022012322/551c7a3a4979590c568b481d/html5/thumbnails/21.jpg)
© SAP AG 2002, Title of Presentation, Speaker Name 21
Agenda
Integrating Web Dynpro into SAP Enterprise Portal:
Unified Rendering – Portal Themes
Work Protect Mode
Portal Eventing
Navigation
Object Based Navigation
Outlook: Web Dynpro Portal Personalization
Portal Development Kit and Netweaver Developer Cockpit
![Page 22: Integrating Web Dynpro Applications into Sap Enterprise Portal](https://reader031.vdocuments.us/reader031/viewer/2022012322/551c7a3a4979590c568b481d/html5/thumbnails/22.jpg)
© SAP AG 2002, Title of Presentation, Speaker Name 22
Object Based Navigation – Maintaining Content
![Page 23: Integrating Web Dynpro Applications into Sap Enterprise Portal](https://reader031.vdocuments.us/reader031/viewer/2022012322/551c7a3a4979590c568b481d/html5/thumbnails/23.jpg)
© SAP AG 2002, Title of Presentation, Speaker Name 23
Object Based Navigation – Maintaining Content
The objective of OBN is to determine the Application flow at runtime, based on:
Customizing of the Portal
User Decisions
User Roles
![Page 24: Integrating Web Dynpro Applications into Sap Enterprise Portal](https://reader031.vdocuments.us/reader031/viewer/2022012322/551c7a3a4979590c568b481d/html5/thumbnails/24.jpg)
© SAP AG 2002, Title of Presentation, Speaker Name 24
EPCM - Navigation Client Functionality
Object Based Navigation JavaScript API
EPCM.doObjBasedNavigate = function( systemAlias, businessObjName, objValue, operation ){
EPCM.raiseEvent('urn:com.sapportals:navigation','ObjBasedNavigate', { systemAlias: systemAlias, businessObjName: businessObjName, objValue: objValue, operation: operation} );
}
systemAlias Portal systembusinessObjName ID of the navigation target „businness object“objValue optional – pass a parameteroperation optional specific operation of a BO
![Page 25: Integrating Web Dynpro Applications into Sap Enterprise Portal](https://reader031.vdocuments.us/reader031/viewer/2022012322/551c7a3a4979590c568b481d/html5/thumbnails/25.jpg)
© SAP AG 2002, Title of Presentation, Speaker Name 25
Use Navigation Java API for OBN
// Cast the navigation service object to IClientNavigationGenerator IClientNavigationGenerator navGenerator;
navGenerator = (IClientNavigationGenerator) PortalRuntime
.getRuntimeResources().getService("com.sap.portal.navigation.service.navigation");
// use navGenerator to generate the link String objectNavigateClientCall = navGenerator.createObjectNavigateClientCall(
systemAlias,businessObjectId,parameter,opId);
//Bind to a link object link.setOnClientClick(objectNavigateClientCall);
![Page 26: Integrating Web Dynpro Applications into Sap Enterprise Portal](https://reader031.vdocuments.us/reader031/viewer/2022012322/551c7a3a4979590c568b481d/html5/thumbnails/26.jpg)
© SAP AG 2002, Title of Presentation, Speaker Name 26
Agenda
Integrating Web Dynpro into SAP Enterprise Portal:
Unified Rendering – Portal Themes
Work Protect Mode
Portal Eventing
Navigation
OBN
Outlook: Web Dynpro Portal Personalization
Portal Development Kit and Netweaver Developer Cockpit
![Page 27: Integrating Web Dynpro Applications into Sap Enterprise Portal](https://reader031.vdocuments.us/reader031/viewer/2022012322/551c7a3a4979590c568b481d/html5/thumbnails/27.jpg)
© SAP AG 2002, Title of Presentation, Speaker Name 27
Easy Integration of Web Dynpro Applications
Netweaver 04 -
No automatic Integration of Web Dynpro Applications (see Wizard)
No tight integration into Portal personalization
Netweaver 04 -
No automatic Integration of Web Dynpro Applications (see Wizard)
No tight integration into Portal personalization
![Page 28: Integrating Web Dynpro Applications into Sap Enterprise Portal](https://reader031.vdocuments.us/reader031/viewer/2022012322/551c7a3a4979590c568b481d/html5/thumbnails/28.jpg)
© SAP AG 2002, Title of Presentation, Speaker Name 28
WD Portal Personalization with next Pagebuilder
<component-profile>
<property name="systemalias" value="PDKDummySystem">
<property name="personalization" value="dialog"/>
<property name="inheritance" value="non-final"/>
</property>
<property name="businessobjectid" value="PDKDummyObjectID">
<property name="personalization" value="dialog"/>
<property name="inheritance" value="non-final"/>
</property>
</component-profile>
![Page 29: Integrating Web Dynpro Applications into Sap Enterprise Portal](https://reader031.vdocuments.us/reader031/viewer/2022012322/551c7a3a4979590c568b481d/html5/thumbnails/29.jpg)
© SAP AG 2002, Title of Presentation, Speaker Name 29
Agenda
Integrating Web Dynpro into SAP Enterprise Portal:
Unified Rendering – Portal Themes
Work Protect Mode
Portal Eventing
Navigation
OBN
Outlook: Web Dynpro Portal Personalization
Portal Development Kit and Netweaver Developer Cockpit
![Page 30: Integrating Web Dynpro Applications into Sap Enterprise Portal](https://reader031.vdocuments.us/reader031/viewer/2022012322/551c7a3a4979590c568b481d/html5/thumbnails/30.jpg)
© SAP AG 2002, Title of Presentation, Speaker Name 30
Download PDK and Sneak Preview on SDN
![Page 31: Integrating Web Dynpro Applications into Sap Enterprise Portal](https://reader031.vdocuments.us/reader031/viewer/2022012322/551c7a3a4979590c568b481d/html5/thumbnails/31.jpg)
© SAP AG 2002, Title of Presentation, Speaker Name 31
What is Portal Development Kit ?
What it is:
• a collection of Netweaver Developer samples for released Netweaver Java APIs
• a set of additional tools to ease developers life
• supports the SAP Java Developer Community with the Netweaver 04 Sneak Preview Edition
And it will be:
• a business package with ready to run Netweaver Developer and Business Administrator scenarios
![Page 32: Integrating Web Dynpro Applications into Sap Enterprise Portal](https://reader031.vdocuments.us/reader031/viewer/2022012322/551c7a3a4979590c568b481d/html5/thumbnails/32.jpg)
© SAP AG 2002, Title of Presentation, Speaker Name 32
Portal Development
Portal Development Kit 6.0.x - Example
![Page 33: Integrating Web Dynpro Applications into Sap Enterprise Portal](https://reader031.vdocuments.us/reader031/viewer/2022012322/551c7a3a4979590c568b481d/html5/thumbnails/33.jpg)
© SAP AG 2002, Title of Presentation, Speaker Name 33
Get Support on SDN for Web Dynpro Integration
https://www.sdn.sap.com/sdn/developerareas/webdynpro.sdn?page=webdynpro_EP_integration.htm
![Page 34: Integrating Web Dynpro Applications into Sap Enterprise Portal](https://reader031.vdocuments.us/reader031/viewer/2022012322/551c7a3a4979590c568b481d/html5/thumbnails/34.jpg)
© SAP AG 2002, Title of Presentation, Speaker Name 34
Q&A
Questions?