How to integrate UI Development toolkit for HTML5 (SAPUI5) with NWDS 7.3?

After Istak explained how to get started with SAUI5, I immediately downloaded SAPUI5 beta toolkit from SDN and read his article further to see how can I do what he had shown on his blog entry. However, I was dumbstruck when I read rest of his “how-to” instructions. He suggested using Visual Studio for running the demo apps delivered by SAP. Clueless I was voraciously searching for any information that can show me how to integrate the SAPUI5 HTML toolkit into NWDS. Well, I am a portal consultant and NWDS is the default place I could have thought of. No other options.

I did not find any documentation on how to enable HTML5 user documentation that I can view in NWDS and start working on SAPUI5 UI components. I also wanted to run the demo components but no respite. I spent couple of hours researching and trying every possible option. Finally using brute force I managed to get thorough can run all the demo applications and also view the HTML5 user documentation so that I can develop my own components. This post details out how you too can integrate SAPUI5 into NWDS.

Let’s get started.

I recommend using NWDS 7.3 though I haven’t tried this in any other NWDS versions but it is safer to use latest version.

I assume that at some point in life you must have written HTML code and a bit of JavaScript as well. This is sufficient to understand what perspective you’d need in NWDS to enable SAPUI5 toolkit. Portal perspective allows you to execute JSP as well as HTML files and that’s precisely what we need. Follow the steps below to get started.

1. Create a new project of type “Portal Application Project

2. After creating the project, your folder structure will look something like this

3. Download SAPUI5 HTML beta toolkit from SDN using following URL –

4. After download is completed, you will have a file named – Make sure you have following contents inside this ZIP file

5. Rename demokit.war to Following contents are available inside User documentation for HTML5 is delivered in this file and can be executed by running index.html.

6. Select all and copy the contents. Now open NWDS Portal Project and paste the content into project. Now unzip the file to find following contents

7. This file contains first demo application that can be executed by running index.html. It is just an information file that explains where sap-core-ui.js file is located in the directory and how can you reuse the code in your future applications. Nothing to get excited about.

8. Select all and copy the contents. Now open NWDS Portal Project and paste the content into project

9. After copying the content from both the files, your project should look something like this

I have renamed the index.html file to doc.html (html file in the demokit file) so that no naming conflicts occur

10. Right click on doc.html and open with web browser

You are all set! SAPUI HTML 5 developer documentations is available now and you can explore further UI elements and applications.

You can also create addition html files to test the functionality provided in Developer Center Tutorials. Copy paste the html code provided in these documents and run the files. I have copied the code from “How to create and run simple HTML5 app in 20 seconds”. Following is the screenshot of the demo application.

The button should fade upon clicking.

Note: If you are directly copy pasting the code from tutorial then you will have to modify the code to call JS file form the correct location. Open the html file in HTML editor and replace the JS URL with resource/sap-ui-core.js. Following is the screenshot.

That’s all about integrating SAPUI5 HTML toolkit in NWDS. Read the developer documentations and get started with your SAPUI5 development. I am yet to explore what all UI elements are available but I am sure it will be fun working on SAPUI5. What do you think?

SAPUI5, HTML5, and future of SAP frontend

I blogged in October last year that WebDynpro Java is no more the strategic UI of SAP. I also mentioned in this post that SAP is working on HTML5 based tool that will soon replace the development framework. Well, it’s out and it’s making noise already. It’s been quiet a while since SAPUI5 beta release is out.

SAP’s HTML 5 tool is named as SAP’s HTML5 development toolkit and we are going to see the discussion around it at least for next couple of months. I have mentioned a number of times earlier that jQuery is the next technological advancement and you got to learn it to be in the front line.

SAPUI5 is compatible with NetWeaver Neo and there are people who have already started application development on SAPUI5 & netWeaver Neo. Checkout this blog link for the reference –SAPUI5 & Netweaver Neo.

It has been argued that WWebdynpro java is getting obsolete and it’s no more the future technology. However, I now feel that there is no thing called as obsolete and outdated. However, I think the change will be triggered by SAPUI5’s development capabilities.

[pullquote3 quotes=”true” align=”center” variation=”orange”]The UI development toolkit for HTML5 supports application developers in creating fast and easy User Interface Applications based on HTML5 and JavaScript.[/pullquote3]

As SAP has quoted that toolkit for HTML5 supports rapid application development and is easy to use. A number of UI features are introduced that were never available in any of the SAP’s front-end framework. Moreover, you will be able to leverage JavaScript power and speed that was missing in edgy UIs of WD Java. Though I am not sure how SAPUI5 will replace WD Java usage, rather it is not correct to say that SAPUI5 will replace WD Java, it is apparent that rapid application development is the future.What is impressive is you can do a lot of things without using JAVA!

SAP’s SAPUI5 homepage has a lot of links and application development tutorials. If you are interested here directly to Developer Center.

I am right away downloading the trial UI development toolkit and getting hands-on. What about you? Are you up for it?

Portal On Device – A deeper look

As I promised, here I am with the post on Portal on Device and a deeper look into its functionalities. To briefly tell you what portal on device is – mobile version of Portal. Though it is much more than that. we can loosely consider this as a mobile version. Let me clarify this by stating an example. Earlier websites had no separate visual structure for mobile browsers.

No matter how you access, you continue to see on your mobile what you could possible be seeing on your desktop. Later when mobile phones turned into smart phones and PDA into tablets, optimized and shorter version of the website was need of the time.

Now most of the websites maintain two separate version of websites – One for desktop browsers & the other one for mobile browsers.

One for online access and the other one, lighter, efficient & faster version for mobile access.

This blog too have a mobile version which you can see from your mobile.

Striking different between desktop version and mobile version is mobile version makes most important content available upfront without wasting up the space by showning images and menus. Mobile version usually have Previous & Next page buttons and so does Portal On Device. They also have a top menu which slide downs upon clicking. There you can find more options for navigation.

SAP Portal on Device Menu
SAP Portal on Device Menu

One more difference you would see in the configuration is ability to choose what to show in desktop version and what to show in mobile version. In short, you can choose not to display privacy Policy which is currently displayed on this blog for mobile version. This concept is also adapted in Portal On Device. There is a separate role structure for both desktop and mobile access.

You will have to create different roles for mobile content. This makes sense as screen space available is very less compared to desktop version. You cannot just consume up the space. Why? What do you think is the primary goal of business? – To convert the lead. More sale. That is the primary objective. You want user to see the discision makeing info. right upfront and let him complete the procees without any glitch. Why to scatter unnecessary info that can easily distract user and make him navigate somewhere else? For the same reason, Mobile version of websites, be it Portal On device or Ameyablog, has put up transactional functionality upfront.

PS: Please note that iView content you are adding to Mobile content should have isolation Method as: URL for Portal On Device

Let us now have a deeper look into features of POD.

One thing you will notice immediately about Portal On Device is – HTML 5 and jQuery.

Though portal does not support HTML 5 right now, implementation of Portal On Device needs HTML5 support. What this mean is, Though portal does not support HTML 5 but your Portal On Device components support HTML 5 as majority of the browser now render HTML5 output. By simply adding a JAR file – com.sapconsulting.portal.utils.html_api.jar you can extend portal to support HTML 5 tags. You will also have to add following code in the doContent() method of your component:

EnhancedPortalResponse epResponse = new
EnhancedPortalResponse(request, true, true);

With this, you are just mapping the portal HTML response to an HTML 5 response by initiating class EnhancePortalResponse.

What are the skills needed to develop Portal On Device Components?

In addition to your portal development skills in JSP & JavaScript, you now need to know jQuery. Let aside Portal On Device components, If you have a look into AFP Code samples available on SDN, you will see jQuery everywhere. Ajax requests are invoked by jQuery. Even the masthead component for 7.3 portal controls visibility of various function links by jQuery.

On Page load, masthead now calls LSAPI plugin that initiates Ajax Framework Page.

Also, in case of function links like Favorites, on move over, it calls a JS function mopen() that further passes identifier id ‘favorite’ to another function written in menu.js JavaScript file. If ‘favorite‘ id is passed, it invokes getFavoritesMenu() which gets all the favorites using yet another function drawFavorites() which then gets favorites Node using Ajax LSAPI as follows:

var selectedNode = EPCM.getSAPTop().LSAPI.AFPPlugin.model.getCurrentLaunchNode();
var title = selectedNode.getTitle();
var url = selectedNode.getName();

Masthead components also makes use of jQuery for creating overlay, assigning the CSS at runtime using .css tag of jQuery. It also controls click event for e.g. adding/removing an item to/from favorite list. In short, entire DOM rendering is controlled by AJAX & jQuery. Let us now move on with the core topic – Portal On Device. I will write a separate post on jQuery functionalities in NetWeaver Portal 7.3 components & masthead.

SAP Portal on Device Favorites
SAP Portal on Device Favorites

How Portal On Device Work?

Portal on Device is an Add-on component for NW 7.3 portal. In case of websites, there are lots of PHP plug-in available that can handle mobile version of your website. Right from detecting the request source, loading either desktop or mobile version to generating the mobile DOM output. On the similar line, Portal On Device is also an add-on that enhance the DOM output of your portal and make it suitable for the mobile version.

Applications like UWL are wrapped by jQuery Mobile to implement a UI that is suitable for mobiles. In the introduction guide to Portal On Device, it is mentioned that every application that is capable of generating HTML5/jQuery output is supported by Portal On Device. Applications like WD ABAP, Portal Componenets & HTMLB, BSP & PRT are compatible on Portal On Device. However, Nothing is mentioned about WD Java Applications compatibility.

I am neither sure if WD Java can generate either HTML5 response or render jQUery scripts. Nor I am aware of any other configuration using which you can run WD Java Applications with HTML5 & jQuery. We have to

wait until SAP answers this question.

Installating and working with contents is pretty easy. If you know how to create URL alias and configure separate Desktop page, you are pretty much there.

  • Creare a mobile framework page from installed components
  • Configure/add components in Mobile Framework Page
  • Add a headerless page
  • Create/configure mobile desktop
  • Create a theme for mobile desktop
  • Create Desktop Rules
  • Configure On Device contents like Home Page, Apps Page etc.

To summarize, Portal On Device is not a full installation product. It’s just an Add=on component that can enhance the UI of your portal so that your customers & users can make most from of portal infrastructure. If we have a look at the bigger picture of SAP Mobility Portfolio, you can clearly see that SAP MI, Portal On Device & SUP never overlap with each other. SAP MI allows you to develop and expose WD Java applications both online & offline. Portal On Device take care of rest of the contents of the PCD. SUP is a business scenario specific and hence it also have its own place in the SAP Portfolio.

In short, SAP has divided the mobility solution largely into above mentioned three offerings.

I will come up with a separate post on how to create and configure these contents and how to start with Portal On Device development.

Socializing in SAP; Follow these SAP experts

Having worked in SAP for quiet a sometime now, I can vouch for the importance of networking. Take the most common scenario, Someone published a blog post or an article about “How to do blah blah blah?” and you either out of curiosity or client requirement start implementing that blah blah..You stumble, take help of your senior or perhaps your mentor. Still if you could not resolve the issue, only way out is reaching out to the author of the post. He/She would be the right person to identify your mistakes or missing configurations. However, how many of us really care to thank them and really appreciate their knowledge? Do we care to stretch out and see what are they up-to? I must admit, not many.

If you are really inclined towards learning and enhancing your skills, these are the people whom you should be looking upon. Be it a technical issue, or consulting expertise, these people are source of great learning. In my journey as an SAP consultant there have been a lot of these experts with whom I communicated, disturbed them or perhaps irritated them by frequent emails. But they still replied me patiently. In this post, I want to express my appreciation of their work and knowledge by mentioning a brief about them and their Twitter Id so that you too can follow them.

Here it goes:

1. First name that come to my mind is Detlev Beutner. You can check his SDN profile here at SAP Profiles. He has gathered over 10,000 points just by answering questions on SDN. This is enough to understand his knowledge and expertise. Folllowing him on Twitter @dbeutner

2. Alvaro Tejada – Blag as everyone knows him is one of the most popular moderators on SDN. You can check his profile here at SAP Profiles and follow him on Twitter @Blag

3. Dolores Correa – I interacted with Dolores when I stumbled at Change Management Process implementation in Solution Manager with BI in a two landscape scenario. Dolores was all ready to answer by countless questions and some of them being totally naive as I am not experienced enough in Solman. You can check Dolores’ Profile here at Collaboration Workspace SAP.

4.Thorsten Franz – He is an SAP mentor & also SAP Press author of ABAP Objects: Application Development from Scratch. You can check is SDN Profile here at SAP Profiles. Follow Thorsten Frazn on Twitter @thorstenster

5. Jarret PazahanickJarret Pazahanick is a SAP HCM consultant, HR Expert Author. ASUG news contributor, SCN Moderator/blogger and managing partner of EIC Experts. You can check his profile at Collaboration Workspace SAP. Follow him on Twitter @SAP_jarret. One thing you will notice about Jarret is his wealth of knowledge of SAP domain and his updates on What is happening in SAP. If you are someone who wants to know what’s SAP cooking. He is the one whom you should follow.

6. Yariv Zur – Yariv is an expert in Portal, Web Dynpro and UI strategies. He is also the in the product management team of SAP Portal On Demand. Yariv, along with Ohad & Vitaly are going to conduct a Portal Tweet Chat on 15th December at 11 AM CET i.e. 3.30 PM IST. You too can join them by using a hashtag #Portalchat. You can check Yariv’s profile here at Collaborative Workspace SAP. You can also follow him on Twitter @vlvl

7. Ohad Yassin – Ohad is also a part of the product management team of SAP Portal On Demand. He is a Development Manager at SAP. You can check is profile at Linked-In. Follow him on Twitter @ohad_yassin

8. Vitaly Vainer – He too is a part of the product management team of SAP Portal On Demand. Vitlay is a program lead and a product strategist in Portal, KMC and Dashboard Builder solution management group in SAP IP&NW Technology Group. You can check is profile here at Collaborative Workspace SAP. Follow him on Twitter @vitalik

9. Tobias Hofmann – Who does not know Tobias on SDN? Tobias is SAP NetWeaver Portal expert, SAP Mentor, SAP Community Network enthusiast. You must have experienced Tobias’ expertise and depth of knowledge on SDN Portal Forums. You can check is profile here at SAP Profiles. Follow him on Twitter @tobiashofmann

10. Portal_SAP – This is an official SAP Portal group moderated and controlled by SAP. Portal_SAP is a one stop shop for all SAP Portal related updates and news. Follow them on Twitter @PORTAL_SAP

11. Aviad Rivlin – Aviad is a Product Manager in the SAP Portal & Knowledge Management product management group responsible for the current and release of the 7.3 NetWeaver Portal. You can check his profile at Collaborative Workspace SAP. Follow him on Twitter @aviadrivlin

12. Sven Kannengiesser – If you are already working on SAP NetWeaver 7.3, you must be knowing Sven by now. Check out his How-To guide on using jQuery for Ajax Framework Page Customizations at AFP WiKi @ SDN. You can check his profile at Collaborative Workspace SAP. Follow him on Twitter @skannengiesser

13. Thomas Hansel – Thomas is a part of the SAP’s Portal marketing team. If you are looking for some information on SAP & its NetWeaver Portal release he is the one who can help you. However, only officially released information :) Check his profile here at SAP Collaborative Workspace.

14. John Moy – John is an SCN Contributer, SAP Mentor &  SAP UI & Mobility Architect. Check his blog on jQuery Mobile & HTML 5 at SDN. Follow him on Twitter @jhmoy

15. Prathamesh Dalvi – Prathamesh is my mentor and he is the person who told me what Portal is all about? He is an expert in Web Dynpro Java, Portal & Flex. He indeed deserves a mention here. You can check his profile here at SAP Profiles & follow him on Twitter @meshtrap – Seems he is yet to tweet :)

I am sure this list is incomplete and there are countless people who deserve mention here. Kindly excuse me if I have missed someone to mention here. Feel free to update the list by posting a comment and twitter link. I hope this list will help you in networking with some of the finest minds in the industry.

In the end, if you find my post worthy, you can also follow me at Twitter @ameyablog :) :)

What is NetWeaver Neo?

Take it or leave it, SAP is making quiet a some news about its new NetWeaver offerings. After a lot of buzz about HANA, it’s time for SAP NetWeaver Cloud based offerings. SAP Cloud is no more just about the ByDesign and mySAP components. SAP NetWeaver Neo – is a PaaS (Platform as a Service) for developing and managing enterprise applications based on Java.  SAP says, NetWeaver Neo will be used by its users to build SaaS applications and sell them to customers. They can also build custom applications so that they can make most of their SAP Business Suit.

In SAP’s words, NetWeaver Neo is a PaaS based cloud solution based on Java and relies on open standards. It leverages industry leading tools to speed up ramp-up and enhance developer productivity. The platform is entirely managed by SAP in its highly secured data centers.

Right now we do not have more information available about how does SAP NetWeaver Neo works? or what are the tools used in SAP NetWeaver Neo? But it seems Portal Application Development would be moved in cloud. Do you think NetWeaver Studio will also be moved into the cloud? Not sure yet but I assume it should be as it is the only application development platform we use right now. Tools like Visual Composer and Web Page Composers are just Application Modeling tools and hence I don’t see them as a part of SAP NetWeaver Neo.

When it comes to version specific application development, I think NetWeaver Neo should offer scalable framework to support development specific to full versions such as 7.0, 7.3 and CE version like 7.1 & 7.2. However there are some serious questions I have about this Neo Program. What if I already have Java Applications running onto Portal and I want to move them in the cloud? What about Application Maintenance? These questions will be answered when we get more insights about SAP NetWeaver Neo.

NetWeaver Neo is currently in Beta release and available for anyone who is interested to be a part of this Beat Program. If you are interested, you can sign-up here participate:

More about NetWeaver Neo later when more information is out officially or when I get accepted in its beta program. Till then you can read more about HANA, River and ByDesign at this post: Sail by River HANA, build ByDesign :)

First SAP Portal TweetChat on SAP “OnDemand Portal”

It’s is first of its kind and it’s here for the first time. Come 15th December 2011 from 11:00 AM to 11:45 AM CET,  SAP Portal team has scheduled a Tweet Chat – The topic of this first tweetchat is “Author Business Sites with SAP on demand Portal”. SAP experts will be on Twitter answering questions about the “SAP on demand Portal” strategy and give a deeper inside into this project. The tweetchat will be moderated by Vera Gutbrod using our Portal Twitter account @Portal_SAP.

During the discussion, following points will be discussed:

  • The new cloud based Portal offering which is planned to be available in Q3 2012 and which is targeting light and ad-hoc business sites
  • The beta program which will start in Q1 2012
  • The SAP on demand Portal strategy and how it fits into the SAP’s general on demand strategy
  • The platform of the new solution
  • And SAP will even share with some interesting new content (new presentations etc.)

So what are you waiting for, choose any of your favorite tweet chatting application and use a hashtag #Portalchat to join the discussion and be part of first Portal TweetChat.

Following experts will be answering all our questions & their twitter profiles:

Vitaly Vainer – @vitalik

Ohad Yassin – @vlvl

Yariv Zur- @ohad_yassin

If you find posts on useful, then you can also follow me at @ameyablog

Go Mobile with Portal On Device

iPhone 4s was released on October 4, 2011 in Cupertino, California. Samsung Galaxy Tab was introduced on 13 February 2011. Apple’s iPad was introduced on January 27, 2010 by non other than Steve Jobs. Next version of iPad i.e. iPad 2 was unveiled on March 2, 2011. In May 2010, SAP announced that it would be acquiring Sybase for $5.8 billion and eventually its new product – SUP (Sybase Unwired Platform). What to we understand from all these releases & acquisitions? Future is Mobile. SAP too considers the need to enable native as well as non-native mobile application development and release for its customers. In line with its road-map, SAP introduced Mobile Infrastructure (Read SAP MI Technical Brief .Pdf) & its various versions like 7.0, 7.1 etc. With SAP SUP, features like  security, device management and rapid mobile application development was possible. Though SAP still sell its MI products, it is more or the less clear that it promotes SAP SUP.

Useful Case Studies:

SAP MI at One GmbH

Slalom’s SAP SUP-Mobility Case Study

Today various organizations give-out devices like iPad to their marketing, sales & technicl executives who can make decisions on the fly based on real-time data. Need of presenting this data without any synchronization delays has made SAP Mobility and mobile solutions a  hot cake. One can access key enterprise functions anywhere and on any device for e.g. iPhone, iPad, Android Tablets or Blackberry.

Whatever we have discuss so far is from the business perspective. Now let us look at it from a technical view. It would be a daunting task for an ABAP developer to get hands-on or gain experties on SAP MI that involves Java Programming. For a Portal Developer it might be a peripheral technology. So is the case for Portal Administrators. However, no matter what, it is still a peripheral technology. If someone is interested to remain in the core technology then it would be impossible to gain experience on technologies like SAP MI.

Architectural View Points:

From the implementation point of view, we can broadly have two options:

  • Online Applications using Web Dynpro Java connected with iPhone or Android Devices (Thin Client)
  • MEAP (Mobile Enterprise Application Platform) based online & offline applications using SAP SUP connected with devices like iPad and Tablets(Thick Client)

Let us quickly have a look at architectural diagrams of each of these options.

Thin Client - Mobility-resized
Mobility Solution Architecture - Thin Client

As you can see in the image above, thin client architecture is basically deployed when your portal/back-end applications are extended over mobile client like an iPhone or a Tablet. These devices connect with your company web server using wireless/mobile networks. Communication is secured by using SSL certificates across the servers. In short, there is nothing new in this architecture which should be pointed out clearly. Development can be accelerated here by using development frameworks like NetWeaver AjaxWeaver for Mobile and Web Dynpro for Java. AjaxWeaver is indeed great tool for development of rich internet application development. You don’t need coding skills for designing an application. All you have to do is drag-drop, connect RFCs & specify input/output parameters. You can have detailed look at AjaxWeaver here and a demo here.

Limitations –

This appraoch is best suited for transaction having minimal data exchange and server round-trips. If you have multi-device strategy then this approach won’t work well. In this case you might have to switch to Thick Client approach based on SAP SUP.

SUP - Highlevel Architecture
SUP - Highlevel Architecture
SUP - Network Diagram
SUP - Network Diagram

Architecture & Network Image Courtesy – SDN Unwired Platform Architecture 2.0

Major advantage of Thick Client or SUP methodology is the flexibility and multi-device support. No matter what device are you using, you can continue to have same user experience and scalable application design. You can access these applications over a Laptop, Tables & Smart Phones. Yet another advantage is both offline and online scenarios are supported unlike only online supported by Thin clients. However, this solution might not be cost effective and hence not suited for minimalistic mobility implementations.

Go Moble with Portal on Device –

Coming to crux of the topic, Portal on Device is a new mobility solution offered by SAP. You might want to ask here what is the need of having yet another mobility solutions? Won’t it be confusing as to what to use when?

My answer to the later part of the question is Yes. At least for right now. I cannot establish a clear cut distinction and use cases of all these mobility solutions. Now, Answer to the first question is – Smart mobile browsers and their capability to run business applications seamlessly. Mobile browser have become smarter and smarter and this indeed as changed the dynamics of mobility solutions. Rendering engines of mobile browser have become powerful to churn heavy data not at the cost of UX and speed of execution. Native application support is also one of the major driving factor for introducing Portal on Device. Features like 3D graphics, Image Processing, Offline execution, Multi-threading, cross domain server access, direct P2P communication are supported almost by all major mobile browsers. (See the entire list of features)

With all these features available at our disposal, we don’t really have to worry about native application development. In simpler words, you don’t have to maintain different apps for Android, iPhone and Desktops. TCI for implementing mobility solutions would be significantly lowered because of this. Cost of hiring too gets reduced as no native development is required. Though in some cases it might be required but not most.

Brief Introduction – Portal on Device

Quoting what SAP says about Portal on DeviceInspired by the exciting new capabilities that modern mobile web browsers offer, SAP NetWeaver Portal development teams have been actively working on a new strategy, known as “portal on device”, which makes SAP NetWeaver Portal accessible on mobile devices.

Portal on Device - Mobile Portal
Portal on Device - Mobile Portal
Portal on Device - Mobile Portal - More Screens
Portal on Device - Mobile Portal - More Screens

As you can see, the UI improved significantly. A new Mobile Framework Page & a Layout is also available along with Mobile contents. Minimum system requirement for working with Portal on Device is Netweaver Portal 7.3 SP05 & a browser with HTML5 support. New mobile theme development is also available and is very easy unlike the regular theme development process. All you have to do is navigate to Theme Editor & set value for property Distance between iView style 0 0 0 0 and you are done.

This was the brief about Portal on Device. We discussed what Portal on Device is and what are its advantages, development ease and lowered TCI. In the next article, I will cover details of Portal on Device, its implementation methodology, system requirements & newly available mobile contents.

I hope you will like this post despite being lengthy. :) :) :)

WebDynpro Java no more the strategic UI of SAP

It’s discussed so many number of times. It’s been ruminated and dissected as well :) It’s almost the time when SAP will call it a day for Web Dynpro for Java. Though it’s not said clearly but it’s better to read between the lines. Recent TechEd @ Las Vegas clearly gave way signals that WebDynpro for Java would no more be strategic UI of SAP and its front-end application development framework. Though SAP is still saying that WDJ is not dead, it is at the same time working on a tool parallel to WD ABAP based on HTML 5 UI. I think this is enough for anyone to guess that the place of WDJ would be discreetly replaced by this new tool. However, SAP is yet to confirm this replacement and this will certainly come in near future.

As for now, we do not know if Java/Portal APIs will be compatible with this new HTML 5 based tool. Development framework will be drag-drop based like WDJ or we will have to code each and every UI field. Though later is quiet unlikely I am still concerned about a lot of things like R/3, MDM and other SAP module connectivity and integration.

Former SAP mentor and one of the most active SDN member Tobias Hofmann has published a blog on SDN stating WDJ will no more be preferred UI for SAP. You can read this blog here: Recap TechEd Las Vegas and SAP Portal news, part 2

Make your developments more scalable with BPM & BRM

Remember those days when programming meant programming majorly HTML? It’s amazing to see how much granularity is now brought into development methodology. MVC Pattern brought great level of classification of code and separated business logic, coding/functional logic & rendering logic. In short, it made life easier for developers. This not only segregated the code but also made debugging/troubleshooting easy.

WebDynpro for Java uses MVC Pattern but the design methodology is quiet confusing for beginners. With the launch of newer versions, newer technologies like BPM – Business Process Management & BRM – Business Rules Management brought into purview of WDJ.


Business Process Management –

BPM as its name signify is a process management engine. If you have worked on SAP EP6 or Netweaver Portal 7.0, you know this as Guided Procedures. BPM replaces Guided Procedures entirely but sadly there is no API support available untill you upgrade to 7.3. You can use BPM functionality with ease but you cannot call an object of your process and manipulate it or its properties.

Need to manipulate BPM process object arises especially when you want to implement BPM Monitoring. BPM Monitoring enables you to track all processes and their corresponding context data. It records historical data which is configurable to some extent.

Imagine a situation where you have a process of Leave Management and there are 2 level of approvers. You have submitted leave request to 1st level of approver and awaiting your leaves getting approved. It’s been over a week and you have no clue of what is happening with your Leave approval. You wished to use BPM Monitoring to see if level 1 approver has approved your leave. If level 1 approver has approved the request, you can see the completion status in monitoring report against approver level 1. However, you do not know if he has rejected the request or sent it to 2nd level of approver. You want to see with whom your request is pending with. BPM falls short here. Though it shows the status of your process, it fails to show you with whom the task is pending.

There is a workaround for this situation. You can configure 2nd level approver’s ID into excluded owners list of task 1 of your process and simply display excluded owners in the monitoring. But there is a catch, this will work only when 2nd level approver is not 1st level approver in any case.

To resolve this issue, you need BPM APIs which are shipped into Netweaver Portal 7.3 as of now and are missing in CE 7.1 and 7.2 versions.

If you just forget the case where you need the support of APIs, BPM is a wonderful tool for process modeling. You can easily define any level of tasks and yet link seamlessly with one another. You can configure Exclusive Choice gateways to determine outcome of a business scenario at the run-time, manage notifications and integrate WDJ components.

BPM components are comprised of tasks. In short, task is crux of BPM. Tasks are the components that perform a business action. However, you would certainly need a UI for making input possible. UI associated with tasks can be generated from WDJ Components. All this can be done using a perspective in NWDS known as Process Development.

BPM can very well manage notification activities, wait activities, tracking process historical data, configuring automated tasks and much more.

Business Rules Management –

Also known as BRM is a next step of MVC pattern. It not only separates the code but also Business Rules. Let us understand this from a live example. You have an application that offers you number of options to input and based on what you enter, it changes to flow of the application. That means, flow of the application is never the same for two users. If you enter that you are an administrator, application should grant you read-write rights and if you say you are an end user, it should give you read-only access. Imagine doing this programmatically! Certainly this is possible but if you use BRM for this, you can save great amount of time. I’d say at least 65% of the time it will take to code this requirement.

BRM manages these conditions on Decision Tables which is a collection of conditions and actions. In our case condition is “Administrator” and its corresponding action is calling read-write component of your WDJ application. In second case, “End-user” is a condition and calling read-only component of WDJ application is its action. All this is tabulated into the table. Now all you have to do is, create a web service by simply right clicking Business Rule folder and select “Create WSDL artifact” option.

Now in your WDJ application, create a Webservice Adaptive model and set the webservice invoke parameters to “request” node. Upon execution, it will return action value, which can either be “read-write” or “Read-only”. Based on value returned you design the further navigation.

Though this example sounds pretty easy as we have considered only 2 conditions, but image a case where you have tens of different inputs and tens of different screens. BRM can be of great help in this case. It picks out business rules and enhances scalability of the code.

It’s just the beginning for BPM and BRM. I am sure more the number of people move to newer version of Netweaver portal, more the number of people interested in BPM and BRM will be.

Comparison between SAP Netweaver portal 7.0 EhP 2 & 7.3

What’s new in 7.3? What’s new in CE 7.1 or CE 7.2? What is the difference between CE 7.1 & CE 7.2? Should I go with EhP1 for 7.0 or EhP2.0 or directly upgrade to Netweaver Portal 7.3? These are the frequently asked questions whenever a newer version of SAP Portal is released. SAP released Enhancement Pack 1 & 2 for NW portal 7.0. We also have Composite Environment 7.1 & 7.2. And finally, we have a full version release of 7.3. When options are too many, it is quiet obviously asked what to choose over what? And most importantly, Why?

I have already written a few posts to answer this question. However, after having a discussion with some senior colleagues & friends, it was observed that SAP has shipped quiet a few features in EhP 2, which are also part of 7.3. So first question that anybody can think of Can I continue to use existing 7.0 infrastructure and yet have some features those are shipped in the latest version i.e. 7.3. Answer is Yes!

You might like to have a look at some of the existing posts:

Upgrade custom developments from any portal version to NW 7.3

Get ready for iGoogle like workspace on Netweaver Portal 7.3

SAP NetWeaver Portal 7.30 is next major release

New enhanced portal development

I have tabulated a comparison between features available in 7.3 and what are available in EhP 2. Using this comparison, you will able to define clear distinction between these two products and decide if you want to upgrade only Enhancement pack or to go with 7.3. Let’s have a look.


Available in 7.3

Available in 7.0 EhP2

Ajax Framework



KMC Improvements



Customizable error messages



Read only mode for downtime



Appl. integration improvements



Accessibility Compliance



New Enterprise search



Activity data collector service via SMD

Nothing mentioned in release guide


Client side versioning

Nothing mentioned in release guide


CTS + Solman integration



Navigation cache improvements



Enterprise workspace



Advanced wizard for role upload, content creation & transports



Dedicated editor for role following  the UX guidelines for workcenter roles of SAP Business suit



Improved WDJ framework



Hot folders – automatic transports



Out-of-the-box support for 3rd party portal integrations



Enhanced FPN framework



Reduction of manual post installation steps


Nothing mentioned in release guide

Integration of the SAP WEKTRA solution



Support of parallel deployment


Nothing mentioned in release guide

Integration of Portal services in NWA


Nothing mentioned in release guide

Consolidation of Visual Admin & Config Tool



Modular installation approach allowing to install only those services which are needed



Enhanced browser support IE8, Firefox & safari



Support for JDK 6



Avg. response time for a reference scenario significantly reduced compared to 7.01 SP5



BOBJ Portal integration kit



New webpage composer




Y = Available

X = Not available

Please let me know if you find any of the major features missing in the comparison or if you find any discrepancy. I hope this post helps you :)