Developers can build their own portal components for displaying custom content, as well as portal services for providing custom processing. These custom components and services can make use of dozens of built-in portal services, such as for creating navigation links, transforming XML content or scripting client-side eventing.
Basics for Portal Developer
The Portal Developer's Guide (see SAP NetWeaver 7.0, see SAP NetWeaver 7.3) provides an overview on the portal architecture. It describes how to build a portal application and how the portal handles requests for this application. You can find information on the available portal APIs and how deployment of portal applications works.
How to Develop for the Portal
Portal applications (that is, those that are designed only to run within the portal and make use of the Portal Runtime engine) are built as follows:
- Run NetWeaver Developer Studio, and use the Enterprise Portal perspective.
- In NWDS, create an Enterprise Portal project (portal application), and add components and services. Compile the project into a PAR, and upload it to the portal.
You can also develop applications for the portal with other technologies. Check out the following SCN resources:
- net interoperability page on SCN
- Web Dynpro page on SCN (please also refer to Web Dynpro and SAP NetWeaver Portal from a portal perspective)
- Visual Composer page on SCN
Please also have a look at the Javadocs for the SAP NetWeaver stack. The main groups of the portal Javadocs are Enterprise Portal (includes PRT and portal APIs), PCD and HTMLB.
You can also have a look at the API References.To share ideas and discuss topics with other developers around the world, go to the Forum Portal Content Development or read weblogs about the portal here on SCN.
Portal Content Directory (PCD)
The PCD is the repository for all portal content. When administrators create iViews, pages and systems, when portal applications are uploaded, when user's personalize the portal -- all this information is stored in the PCD. The PCD is accessed by the PCD GL (generic layer), which is a JNDI provider that offers Personalization, Delta Links and Locking as additional capabilities.
The portal provides an API for working with PCD objects. You can create, lookup and delete objects, as well as modify attributes and meta-attributes of objects.
You can perform searches within the PCD. You can add iViews to pages, change the layouts of pages and other tasks.Useful Information:
- In the Portal Developer's Guide (Managing iViews and other PCD objects) you can find out how to create or lookup iViews, how to change attributes and how to work with layouts, pages, iViews or systems.
- The PCD Javadocs contain documentation on working with the PCD, including Searching the PCD, changing attributes, delta links, permissions and personalization
- This Overview on the PCD provides information on the PCD and how it is designed
- Automatic Content Creation via XML: check the How-To Guide about the Content and Action Upload
Here you can find out how to create or lookup iViews, how to change attributes and how to work with layouts, pages, iViews or systems.
Contain documentation on working with the PCD, including Searching the PCD, changing attributes, delta links, permissions and personalization
Provides information on the PCD and how it is designed
Integration with Web Dynpro
Web Dynpro applications can easily be integrated into SAP NetWeaver Portal. With SAP NetWeaver 7.0 (2004s) the Web Dynpro Page Builder concept was introduced. You can find some basic information on the help.sap.com (Portal Integration of Web Dynpro Applications). In addition, please visit the SDN Page about Web Dynpro integration into the portal.
Migration of Portal Applications
Due to the new Java basis in SAP NetWeaver 7.3, you probably need to adjust your custom application. SAP Library contains a comprehensive documentation for migrating your Java, Portal and Web Dynpro applications.
Note that portal applications have a slightly different directory structure in SAP NetWeaver 7.3. They include additional files and are packaged in WAR format, which are ZIP files with a .war extension. WAR (Web Application Archive) is the standard format for packaging web components for Java EE servers. The portal provides a migration tool for converting PARs into such WARs.
In addition we streamlined the existing portal APIs, released few new services and cleaned up deprecated APIs. Thus we recommend to check the latest available JavaDocs in SAP NetWeaver 7.3 and notes for portal (note 1503649) or KM (note 1372388).
Connector Framework (Link to The Help Portal)
The connector framework provides the infrastructure to create platform independent connectors, which constitute the middleware that enable access to Web applications, whether these be the back-end applications of your organization or applications available through external Web services. The connectors comply with the Java 2 Platform Enterprise Edition (J2EE) standard which includes the J2EE Connector Architecture (JCA) specifications.
The Javadocs for the Connector Framework API is the primary reference for developers, with more detailed information for the writer of code.
With the Connector Wizard, a plug-in to SAP NetWeaver Developer Studio, you will be able to create a development project for a new connector. The project loads with the required source files and is automatically adjusted, according to your input, to the capabilities of the target enterprise information system.
You can find more information on this athelp.sap.com (Connector Wizard)
Important Notes (SAP Netweaver 7.3)
1295662 - Interoperability between 2 portals in FPN
1086644 - Checking database consistency for the PCD (7.0)
1473054 - Checking database consistency for the PCD for CE 7.1 & above
1503649 - SAP NetWeaver Portal 7.30 DCs and References
1504295 - PRT SOAP APIs are no longer public
1504296 - SAP Netweaver Portal 7.30 - Removed APIs
1554013 - API Changes in Search service and Favorites service
Portal Development Kit
With the delivery of SAP NetWeaver 7.0 SP13, the PDK Development samples are no longer supported.
Please see the Portal Developer's Guide for more information.