Difference between Webdynpro ABAP and Webdynpro JAVA
Webdynpro for ABAP and Webdynpro JAVA use the same declarative metamodel concept based on MVC pattern to create web applications. Everything about Webdynpro ABAP is same as Webdynpro JAVA, except that it uses ABAP as programming language instead of JAVA. It also has a graphical interface tool that is integrated with the ABAP Workbench (Transaction Se80). Both Webdynpro ABAP and Webdynpro JAVA applications are run in the Enterprise Portal.
What is the difference between Webdynpro JAVA and Webdynpro ABAP?
The main difference between Webdynpro JAVA and Webdynpro ABAP is that Model doesn’t have much significance in Webdynpro ABAP. In fact there is no option for model available in the Graphical tool set to develop Webdynpro ABAP application. But we still have the option of defining an ABAP class which helps to read data and save data back to table. The instance of this class should be used as model within the component and this is the proper design. Webdynpro ABAP gives new option called Service Call. In Service Call a wizard creates a custom controller based on the BAPI or Web Service that we give. Context of this controller will be generated based on the import – export parameters of BAPI or Web Service. The wizard will also automatically create methods in the controller to execute the BAPI or Web service and pass the data to Context. This Custom controller can be used within other controllers to read and update data.
Other main difference in Webdynpro ABAP is that code is stored centrally in the ABAP server, so it relieves the load from developer’s client machine where code is stored in the case of Webdynpro JAVA. Webdynpro ABAP has much more powerful Version control system than Webdynpro JAVA as the code is stored centrally in the server. In webdynpro JAVA as each developer is checking out and checking in the code, there are chances of conflicts. Webdynpro ABAP uses the same Transport Management system as R/3, so there is no need to maintain parallel Transport Management system which is the case in Webdynpro JAVA. Webdynpro JAVA runs on sun’s proven web server (J2EE engine) which can support large number of web users at a time. But the ABAP server is yet to prove its credential as a reliable Web Server. So if the number of users are large, its better to go for Webdynpro JAVA and if the number is medium or manageable, you can go for Webdynpro for ABAP. Performance and scalability should be the major criteria while choosing between Webdynpro JAVA and Webdynpro ABAP.
Web Dynpro ABAP(Web Dynpro ABAP Applications)
Use
Web Dynpro ABAP or Web Dynpro for ABAP (WD4A, WDA) is the SAP standard UI technology for developing Web applications in the ABAP environment. It consists of a runtime environment and a graphical development environment with special Web Dynpro tools that are integrated in the ABAP Workbench (transaction Object NavigatorSE80).
Developing with Web Dynpro ABAP offers the following advantages for application developers:
- Declarative and graphical tools minimize the implementation effort
- Support of a structured design process
- Strict separation between layout and business data
- Reuse and better maintainability through use of components
- Layout and navigation are easily changed using Web Dynpro tools
- Support of stateful applications because when paging is used, the data required again is kept, which means the whole application can be accessed at any time.
- Data binding enables automatic data transport
- Automatic input checks
- Support of accessible user interfaces
- Full integration into established ABAP development environment
Availability
Web Dynpro JAVA:-
Web Dynpro JAVA is available from the year 2004 with Net Weaver 2004 and Web Application Server (WAS) 6.40, and is used to create applications such as the Employee Self Service (ESS) and Manager Self Service (MSS).SAP has reduced the promotion of Web Dynpro Java; however, they are going to support it till 2018. This makes it clear that Web Dynpro ABAP will be the preferred UI Technology.
Web Dynpro ABAP:-
Web Dynpro ABAP is available from Oct-2005 with Net Weaver 7.0 and Web Application Server (WAS) 7.0, from the day of its availability it is widely used and preferred UI Technology.
Skills Requirement
Web Dynpro JAVA:-
To develop a complete Web Dynpro JAVA application from scratch, a developer should have the knowledge of JAVA development tools and object-oriented concept. Additionally, ABAP skills are required for the development of Function Modules and BAPI’s.
Web Dynpro ABAP:-
To develop a complete Web Dynpro ABAP application from scratch, a developer should have skill set in ABAP programming, ABAP Objects, Database concepts and Development tools.
System Landscape, Version Control and Transport Management
Web Dynpro JAVA:-
The Lifecycle of Web Dynpro JAVA application is managed through SAP Net Weaver Development Infrastructure (NWDI).NWDI has the following three parts:
Design time repository (DTR);
Component based Build (CBS)
Change Management (CMS) systems.
If you want to use Web Dynpro JAVA and to manage its life cycle i.e. of version control and transport management then you will have to additionally install NWDI.
Web Dynpro ABAP:-
Standard ABAP life-cycle concepts of version control and transport management applies to all Web Dynpro based applications. Web Dynpro ABAP components, Applications and other objects can be developed in one system and can be transported to the destination server by using the standard correction and transport system (CTS), just like other ABAP objects like programs or classes.
Design time Environment
Web Dynpro JAVA:-
Installation for SAP Net Weaver Developer Studio (NWDS) is required for designing Web Dynpro JAVA applications. And J2EE Engine is required to configure the runtime environment.
Web Dynpro ABAP:-
Web Dynpro ABAP is integrated to ABAP Workbench (SE80) so no additional installations are required
Database Access
Web Dynpro JAVA:-
While in Web Dynpro JAVA, Business Application Programming Interfaces (BAPI’s) are required in order to consume the same business logic.
Adaptive RFC layer is used to communicate between R3 and the J2EE Engine.
Web Dynpro ABAP:-
As Web Dynpro ABAP is integrated to the ABAP stack, database access is simple, just like in report programs and function module. You can access the database directly using the select statemen
UI Elements and User Experience
Web Dynpro JAVA:-
Almost all the UI elements in Web Dynpro ABAP and Web Dynpro JAVA are sameThe UI elements which are only available with Web Dynpro Java are Analytics Chart UI & Column Layout.No ALV Library.
Web Dynpro ABAP:-
Almost all the UI elements in Web Dynpro ABAP and Web Dynpro JAVA are same.The UI elements which are only available with Web Dynpro ABAP are Select-Options, ACFExecute, ACFUpDownload, ALV library.
Customization
Web Dynpro JAVA:-
Web Dynpro ABAP applications can be customized on both application level and component level. This configuration is done at design time which offers much flexibility and the developers can change the look and feel of the UI to meet with customer’s needs.
Web Dynpro ABAP:-
To customize Web Dynpro JAVA applications custom development component (DC) are created in Net Weaver developer studio.
Additional Functionalities
Web Dynpro JAVA:- Limited FPM based functionality.
Web Dynpro ABAP:- Web Dynpro ABAP includes Floor Plan Manager, POWL and much more additional functionalities with the new 7.3 runtime it has got lots of better functionalities including AJAX style suggest values.
Total Cost of ownership
Web Dynpro JAVA:-
Total cost of ownership is high due to dual stack requiremnets.
Web Dynpro ABAP:-
With the option of portal agnostic deployment and harmonized user interface technology, which does not necessarily requires a separate JAVA stack for Employee Self Service without the total cost of ownership of Web Dynpro Applications is much less.
Summary:
With no doubts we can say that Web Dynpro ABAP is the better choice. All applications in ESS/MSS which were on Web Dynpro JAVA are now offered by SAP in Web Dynpro ABAP with much more customization’s options and superior UI elements.(with FPM, feeder classes, ABAP Launchpad, personalize, Flex features, customizing the standard templates to suit customers needs has been very easy to implement). As a WD Java developer, it may not sound to be of immediate worry as there are still some grey areas like WDABAP may not be vast suitable for mobile application developments(though its expected SAP will turn around the table soon with SUP and SAP Gateway), 3rd party integration, vast amount of WDJ applications to be converted/migrated. It’s right time for technical developers just doing WDJ to keep up with momentum and start doing AJAX, JQuery, HTML5, Web Dynpro ABAP applications.
UI Frameworks Based on Java(Web Dynpro Java is the main development tools in the Java environment)
Use
Java-Based Development
On SAP NetWeaver Application Server Java you develop applications with the following frameworks and tools
- Web Dynpro Java is the SAP standard UI technology for developing Web applications in the SAP NetWeaver Application Server Java environment. It consists of a runtime environment and a graphical development environment with eclipse-based Web Dynpro tools that are integrated in the SAP NetWeaver Developer Studio (NWDS).
User Interfaces on SAP Enterprise Portal
- The focus for SAP Enterprise Portal is on embedding existing applications and adapting them to a common look and feel. But the SAP Enterprise Portal also provides capabilities to develop applications.
More information:-
Developing Java Web Dynpro Applications:
http://help.sap.com/saphelp_nw74/helpdata/en/4b/f37396926f4c88e10000000a42189e/frameset.htm
Developing Web Dynpro ABAP Applications:
http://help.sap.com/saphelp_nw74/helpdata/en/4e/161363b81a20cce10000000a42189c/frameset.htm