Search This Blog

Sunday, October 28

Knowledge management component of SAP Enterprise portal

Knowledge management component of SAP EP provides central and role specific management of unstructured content from various data sources. To run knowledge management, TREX engine is required. This is used for searching the documents.

Following are the functions of Knowledge management

Integrating Reporsitories:
As already told, documents are stored in various repositories life file servers etc. In order to access documents and manage them, repository managers are needed. Open application programming interfaces are used to create repository managers.

Navigating in Folders:
Users can navigate within the folders of documents to reach the required document. They can access documents based on the role they have. The UI for navigating in folders can be configured.

Search can be performed on the documents name and content. Even websites can be searched using web crawlers.

Taxonomies and Classification:
A taxonomy is a hierarchical classification of categories based on content, organization etc.

knowledge management services:
Services like subscriptions, ratings, public reviews, feedback, and personal notes are available in the KM component of SAP EP.

Document creation and publishing:
Based on the permission and role that you have in portal, you can upload documents and create information by filling forms in the portal.

related posts:
Knowledge management component of SAP Enterprise portal
Implementing external facing portal
Creation of custom navigation connector
Navigation in sap enterprise portal
Trust between sap ep and backend system
J2ee course content it training
It training sap training ear training
Java api to retrieve work sets assigned
Could not find system alias
Sap ep web dynpro java error srm portal
Unsupportedclassversionerror in sap
Sap ep 73 upgrade related error

Tuesday, October 23

Implementing of an External facing portal- Things to remember

As already known to us that SAP EP is a central point of access to resources of the company be it structured information or unstructured documents. So basically it collaborates all the people and information of the company on single user interface. Using SAP EP, it is also possible to collaborate or to work with people who are not within the company or who are not employees of the company. These people can be vendors or partners. This is possible by using an external facing portal. Yes, it is possible to project SAP EP as web site. By doing this, standard functions of the browser become applicable to SAP EP also. Just to give an example, user can navigate back and forth using the Back and forward buttons of the browser.

Few of the nice features that can be used while implementing such a portal are Ajax Framework page (AFP), Light Framework Page (LFP), Resource sensitive page builder, JSP Tag libraries, Navigation cache and quick links. We will discuss about each of these features in brief in this blog post.

Ajax Framework page :
This page is based on the Ajax technology. We know that portal or SAP EP runs on portal server that is SAP WAS or web application server. We also know that the user interface of portal consists of masthead, Top level navigation, detailed level navigation and then the main portal area where portal applications or web dynpro applications or applications built using various technologies are shown. Now it may happen that the portal is left idle for sometime and then after an hour or so the user clicks on a link in the TLN or DLN. Guess what will happen ?
 The browser will show a page saying “page has expired” or “session time out etc” ? The answer is NO. All the standard components of user interface of SAP EP will remain intact ie the masthead, TLN, DLN etc will remain in which ever condition they were. And the action of click on a link on the DLN or TLN or anywhere on the UI of portal will start appropriate navigation. This is AJAX technology. And such a page built using AJAX technology is called Ajax framework page. This improves server scalability, speeds up navigation, and enhances the user experience.

Light Framework Page :
Light framework page is shipped with standard SAP EP installation. Light framework page does not contain many frames as the standard one contains (masthead, top level navigation, detailed navigation). It is single frame page. This is why it uses less resources to render portal content. It does not use HTMLB and client side eventing. The EPCFLevel property is set to 0 in portalapp.xml file when using external facing portals. For light framework page, light content is developed in portal content studio. So basically light iviews are created. Light iviews do not use HTMLB. The users of external facing portal are anonymous users. They are stored in the company’s user store. Portal administrator can assign roles to these anonymous users. Anonymous users can additionally register themselves on the portal to get access to more portal content. Heavy content like web dynpro views and KM iviews etc should not be displayed on a external facing portal else the performance of the portal will be pathetically slow.

Quick Links:
To each navigation node in portal, a quick link can be assigned. Quick link is nothing but a direct URL to the navigation node. For example, there is a navigation node called “Ticketbooking” within the portal. Quick link for this navigation node will be

Navigation Cache:
Navigation cache should be turned on after the installation of SAP EP. This caches the navigation hierarchies and navigation nodes. So when a user navigates to a particular iview or page, corresponding navigation node is stored in the cache. And when another user having same role logs in, his navigation to the cached nodes is quicker. This is recommended in a external facing portal implementation.

related posts:
Knowledge management component of SAP Enterprise portal
Implementing external facing portal
Creation of custom navigation connector
Navigation in sap enterprise portal
Trust between sap ep and backend system


Tuesday, October 9

Creation of a Custom Navigation Connector in SAP Enterprise Portal

A default navigation connector called a Roles connector is supplied with the SAP Enterprise portal. This navigation connector retrieves navigation nodes based on the roles that are assigned to the user. These navigation nodes are then visible in navigation iviews. It is possible to create a custom navigation connector. Using custom navigation connector, you can retrieve and display navigation nodes as per custom requirements. So in addition to the nodes which are retrieved by roles connector, more navigation nodes can be retrieved for the logged in user using a custom navigation connector. There are 3 steps to create a custom navigation connector. A navigation connector is packaged in a portal application (PAR file).

·         Create Navigation connector node
·         Create navigation connector
·         Register Navigation connector

Create Navigation Connector Node
Create a class that extends AbstractNavigationConnectorNode. Each object of this class is a Navigation node. There is a method called listBindings() in this class. Implement this method. This method returns javax.naming.NamingEnumeration of nodes related to the current node. Nodes or set of nodes that can be available for the current node are Children of the current node, first child of the current node, dynamic navigation iviews for the current node, drag and relate targets of the current node etc.  So listBinding() method should be implemented in to return relevant set of nodes. An example implementation is shown below

1.  public NamingEnumeration listBindings(String binding, String mode,
2.                Hashtable filterParameters)
3.                        throws NamingException {
5.      if (mode.equals(NAVIGATION_GET_CHILDREN))
6.          return new NavigationEnum(childrenBindings);
7.      if (mode.equals(NAVIGATION_GET_RELATED_SEE_ALSO))
8.          return new NavigationEnum(SeeAlsoNodeBindings);
9.      if (mode.equals(NAVIGATION_GET_RELATED_DR_TARGETS))
10.        return new NavigationEnum(TargetNodeBindings);
11.    if (mode.equals(NAVIGATION_GET_FIRST_CHILD)){
12.        return new NavigationEnum(
13.            Collections.singletonList(childrenBindings.get(0)));
14.    }
15.    else
17.throw new NamingException("Unknown mode named "+mode);

Create navigation connector
Create a class that extends AbstractNavigationConnector. Methods available in this class aregetInitialNodes(),getNode()getNodes()getNodeByQuickLink(),getConnectorCacheDiscriminators()These methods need to be implemented.
Example of getInitialNodes() implementation is given below
1.  public NamingEnumeration getInitialNodes(Hashtable environment) {
2.      if (isUserInJavaDeveloperRole(environment))
3.          return new NavigationEnum(initialNodes);
4.      else
5.          return NavigationEnum.EMPTY_ENUM;
6.  }
getNode() returns a InavigationConnectorNode. getNodes() returns a javax.naming.NamingEnumeration of INavigationConnectorNode objects.
Example of getNodes() implementation is shown below
1.  public NamingEnumeration getNodes(
2.              Hashtable environment, Vector connectorNodeURLs) {
3.      myConnectorNode node;
5.      int size = connectorNodeURLs.size();
6.      List nodeBindings = new ArrayList(size);
8.      for (int i = 0; i < size; i++) {
9.          node = (myConnectorNode) getNode(
10.                        environment, (String) connectorNodeURLs.get(i));
11.        if (node != null) nodeBindings.add(
12.                        new Binding(node.getName(), node));
13.    }
15.    return new NavigationEnum(nodeBindings);

Register Navigation connector
Create a portal service which implements IService. In the Init() method of the service, create an instance of INavigationConnector class.
1.  public void init(IServiceContext serviceContext) {
2.      mm_serviceContext = serviceContext;
3.      myConnector = new myConnector();
4.  }

Register the navigation connector in the afterInit() method of the connector.
1.  public void afterInit() {
2.      INavigationConnectorRegistration service =
3.          (INavigationConnectorRegistration)
4.              getContext().getService(INavigationService.KEY);
5.      if (service != null) {
6.          service.registerConnector(
7.              NAV_FILE_CONNECTOR_PREFIX, myConnector);
8.      }
9.  }

Monday, October 8

Navigation in SAP Enterprise Portal

Navigation in portal is controlled by navigation service. There are set of tools using which the user can see his navigation hierarchy in the portal. These tools are navigation service, navigation tag library and navigation iviews. One must of be aware of the Navigation Model, Navigation hierarchy, Navigation URLs, navigation service etc for understanding Navigation in portal.

Navigation Model
Navigation model can be at 3 levels. Data level, Integration level and visualization level. At Data level, navigation connectors are available which are used to connect navigation hierarchies with the navigation services. At integration level, navigation nodes are retrieved from the navigation  connectors and create a final navigation hierarchy. At visualization level, navigation iviews are used to display the navigation hierarchy.

Navigation hierarchy
Navigation hierarchy is structure of navigation nodes. There are different type of nodes inside a navigation structure:

Valid and visible: Navigation iViews display a link to the content for these type of nodes.
Valid and Invisible: navigation iViews do not display a link to the content. But content of these type of folder can be visible by supplying the correct navigation URL.
Invalid: user is not allowed to see the content of such a node.

Navigation URL
A navigation URL navigates to a specific navigation node. A navigation URL looks like below
http:////irj/portal/NavigationTarget  = “

Such a URL consists or 2 parts
1)    The base URL of portal ie http:////irj/portal/
2)    Navigation Target

Navigation Service
Navigation Service enables you to fetch navigation hierarchy for a specified user. Navigation hierarchy is nothing but a structure of navigation nodes. Following lines of code can be used to get the handle of navigation service.
INavigationService service = (INavigationService)

There are various methods in navigation service which can be used to get information about the nodes of navigation hierarchy. All these methods take a Hashtable of environment variables as a parameter. There are various interfaces which can be implemented by the navigation service to access more methods which can be used to perform more operations on navigation hierarchy nodes.
These interfaces are :
Sap ep web dynpro java error srm portal
Unsupportedclassversionerror in sap
Sap ep 73 upgrade related error


Sunday, October 7

Trust between SAP EP and a backend system

For the portal to communicate with backend systems, a trust has to established between them. This is done by public-key certificate. The party wishing to start communication has to present this certificate and the other party has to accept it.  There is only one certificate, the only default certificate called as SAPLOGONTICKETKEYPAIR-CERT.
Now there are 2 ways to establish trust ie automatic and manual.
Automatic :
In system landscape overview, choose a system and say establish trust, username and password will be asked to connect to the backend system. Supply and trust will be established.

Manual :
Export the certificate from SAP Netweaver administrator and Import it into the backend system. In SAP Netweaver administrator, go to Configuration-security-certificates and keys. Go to the Key Storage tab, to the table Key Storage Views and the details of the TicketKeystore view.Choose the default certificate SAPLogonticketKeypair-cert.Choose Export Entry.

The sertificate has been exported. You need to import it in the backend system. Login to the system, run transaction strustsso2 and choose Import Certificate and select the certificate that you previously exported. Choose Add to Certificate List. Choose Add to ACL.

 System Alias
System Alias is a name given to a system. using this name, Portal objects refer to the system using its Alias. A system can have more than 1 system Alsias. but a Alias can not be assigned to more that 1 system.
Alias is a unique idntifier of a System. So for a R/3 development system, the Alias will be differen from that of a R/3 Quality system. So during transport, Alias will not get transported. So new system Aliases has to be defined after transport.
Portal components identify backend system using its Alias. These Alias are defined at design time in the PCD. But SAP EP also provides the option of dynamic system resolution.

dynamic system resolution
At design time, portal component refers to a Alias. At runtime, this Alias resolves to a system based on the conditions. For this resolution to happen, a custom service must exist. At runtime, the portal runtime checks in the PCD whether a custom service is associated with an Alias or not. If a custom service is there, it is used to resolve the Alias to a system. If it is not there, Alias is resolved to the system that is defined in PCD.
Managing System Aliases

Saturday, October 6

SAP Enterprise portal System Administration

SAP EP System Landscape

System adminstrator does the configuration of portal and its landscape. SAP EP as we know contains applications from various resources. These resources can be within the company or outside the company. The information is fetched into portal from various systems. These systems are all called the SAP enterpirse portal system landscape. System administrator manages these.

When you navigate to system admin->system config, you will see system landscape overview. This will list down all the systems avaialble in the current landscape. Here you can, create new system, modify system properties, associate systems with system alias.

SLD synchronization with portal
The system landscape directory stores information about all the systems available in current landscape of the company. It also stores information about the Java connectors. Java connectors are also called JCos. In order to integrate SLD with portal, some ocnfiguration need to be done. Based on business demands, it may happen that a company decides to remove or add new systems in the system landscape. In such cases, a synchronization between portal and SLD has to happen. This can be done in System landscape overview. Also if the properties of existing system has changed, synchronization should be done to make those changes take effect in the portal PCD.

Creating a system in portal
You can create a system in portal by Use an existing template, using existing data from the system landscape directory, Duplicating an existing system, Creating and uploading an XML file that describes the system. For the first option a relevant system template exists in the portal content directory.

For creating a system based on the SLD, there are 2 templates that are available in the PCD :
  1. The Load Balancing template requires the configuration of the properties Message Server Host and Group.
  2. The Dedicated Host template requires the configuration of the properties Application Server Host, Gateway Host, and Gateway Service

related posts:
Knowledge management component of SAP Enterprise portal
Implementing external facing portal
Creation of custom navigation connector
Navigation in sap enterprise portal
Trust between sap ep and backend system
J2ee course content it training
It training sap training ear training
Java api to retrieve work sets assigned
Could not find system alias
Sap ep web dynpro java error srm portal
Unsupportedclassversionerror in sap
Sap ep 73 upgrade related error

SAP Enterprise portal URL, Logging on and off

The URL of SAP enterprise portal looks like shown below

http://:/irj/. Also it can look like below
http:// address of the server>:/irj/.   But as a portal adminstrator, you can restrict your users from using the IP address to logon by setting false in below mentioned application and service.
Portal application:
Portal service: PortalLauncherService
 Portal can be configured to be used by anonymous users. if it is configured to be used by anonymous users, portal content authorized for anonymous users will be displayed. But if it is not configured to be used by anonymous users, a portal welcome logon page will appear.

The welcome page of portal also consists of the new registration link. This link can used to create new user in the portal and get a password for it. Portal masthead has a log off link which can be clicked to log off. A third party authentication server can be used to authenticate the user. So if a authentication server is used, the log out action will trigger a hidden url which will re-direct the information to the authentication which will then actually perform the log off.

SAP Enterprise portal can be personalized by a user. Using this feature he can make portal look the way he wants. There are 2 options available: personalize the entire portal or personalize a particular page of the portal.

When you go for the peronalization of entire portal, following are the options availalble to you:

change portal theme, user profile, logon language, Usr password, User mapping, work protect mode.
When you go for page personalization, you can ad or remove portal or re-arrange portal content on that page.

related posts:
Knowledge management component of SAP Enterprise portal
Implementing external facing portal
Creation of custom navigation connector
Navigation in sap enterprise portal
Trust between sap ep and backend system
J2ee course content it training
It training sap training ear training
Java api to retrieve work sets assigned
Could not find system alias
Sap ep web dynpro java error srm portal
Unsupportedclassversionerror in sap
Sap ep 73 upgrade related error

The portal interface looks like below.



SAP Enterprise portal 7.3 SAP library study notes

There are two usage types of SAP enterprise portal.

EPC or EP core - when full portal capabilities are not needed. This will have Portal and Universal Worklist.
EP - when full capabilities are needed. This will in addition have Knowledge management and collaboration.

SAP EP 7.3 provides Providing Unified Access to Applications and Processes. SAP EP 7.3 also provides web page composer which is used by business users  to create portal pages which is a composition of business custom generated content. Based on the business understandin a a business user has, he can create a portal page which he wants without involving a developer. SAP EP 7.3 also helps more in Building Communities with Wikis and Forums

SAP EP 7.3 provides Knowledge management services for managing the content within and outside the organization. Portal can be accessed from desktop and also from mobile devices. This feature is called portal on device. It can run on various operating systems like windows and UNIX  so it is platform independent. Portal supports many languages. It can be deployed in almost all the countries of the world. Clustering and caching mechanisms provide high performance and high availability. Using authentication, single sign-on, authorization, integrated user management, and secure communications, portal can provide secured access to confidential company information to its users.

Immediately after the portal has been installed, following tasks need to be perfomred :

  1. Configuration of functional units.
  2. Primary tasks.
  3. Secondary tasks

Security is one of the most important feature a SAP EP must have. This can be acheived by authorizations, secure network and communication, security on data storage, operating systems and trace and log files.

SAP EP consists of a open architechture. It is open to accept information from Web sites, groupware applications, legacy systems, enterprise applications, databases, and document directories.
If a company has both the usage types of portal ie EP core and EP installed in its landscape, it is possible to use applications running on EP Core to run on EP. This can be done using federated portal network.

SAP Enterprise portal - general introduction

SAP Enterprise portal is the central point of access to various information inside and outside the organization. SAP EP can serve as a single platform to showcase and run applications from various application resources like web dynpro abap applications, web dynpro java application. BI reports, .NET application, microsoft outlook etc.

SAP EP porvides data to its users in a roles based manner. Each individual in a company has a speficis role to perform. Based on the role he has, he needs to access various applications. So one of the initial steps in a portal project is to decide the group or the role of the stekeholders (employess, partners, customers etc).

Based on the role that are created, content is created in the portal. Major development in a portal project is done using web dynpro java and web dynpro ABAP technologies. This blog discussed about these topics in details in various posts.

SAP EP is now coming in mobile flavour also. Entemerprise applications can be run on mobile using SAP mobile platform. SAP enterprise portal administration mainly consists of the portal content administration, system administration and user adminstration. Using portal system administration, various backend systems (which supply data and functionality) to portal can be integrated into portal. So basically the system adminstrator has to add the backend system to the portal.

SAP EP User administration is used to create and modify users. Any corporate directory can used to supply users to the portal. SAP UME is a component which is supplied with SAP WAS. UME stands for user management engine. User management can be used to manage (add or delete roles assigned to the user, add or remove permissions etc, lock, unlock password) users of the portal

related posts:
Knowledge management component of SAP Enterprise portal
Implementing external facing portal
Creation of custom navigation connector
Navigation in sap enterprise portal
Trust between sap ep and backend system
J2ee course content it training
It training sap training ear training
Java api to retrieve work sets assigned
Could not find system alias
Sap ep web dynpro java error srm portal
Unsupportedclassversionerror in sap
Sap ep 73 upgrade related error

Friday, October 5

Creating a Sample Portal project

Creating a Portal project:
Open the developer studio.
1) Create a New Project. File -> New -> Project -> Portal Application.
2) Select 'Create a Portal Application project' and click Next.
3) Specify project name as 'MyFirstPortalProject' and project root folder can remain default as it is. Click Finish. The created project is displayed in Package Explorer.
4) Right click the project and select New -> Other -> Portal Application. Choose 'Create a new Portal Application Object' on the right side. Click Next.
5) Choose MyFirstPortalProject and click Next.
6) In the next page, click the + sign near 'Portal Component' to expand. Select JSPDynPage and click Next.
7) Specify name for JSPDynPage.
Name: FirstJSPDynPage
Location: Core
JSPDynPage class name: FirstJSPDynPage
JSPDynPage package name: com.mysap.pages
JSP: firstjsp
Click Next.
8) In the next page, choose 'Generate bean statements'
Bean name: myBean
Bean scope: application
Choose 'Generate bean class' radio button.
Location: Core
Class name: UserBean
Package name: com.mysap.bean
Click Finish.
You can see, and firstjsp.jsp created.
  • is the bean class - model
  • is the dynpage class - servlet
  • firstjsp.jsp is the jsp - view
Now we will first create UI in JSP, do some eventing and then use model to store and retrieve values.
Creating UI screen:
Open firstjsp.jsp. This has two tabs at the bottom. Click on Source tab. Since we are going to use htmlb tags for creating UI elements, we have to add taglib for htmlb in the jsp and its reference in portalapp.xml.
In JSP, add in the first line.
<%@ taglib uri= "tagLib" prefix="hbj" %>
Open portalapp.xml from MyFirstPortalProject -> dist -> PORTAL-INF. Go to Source tab. Replace with this.

"tagLib" value="/SERVICE/htmlb/taglib/htmlb.tld"/>
Now open JSP and continue adding tags for creating a textview, input field and a button. Place them in grid layout for arranging them in the same row.
Here is the source code. I am not including since as of now, there are no changes made in it.
<%@ taglib uri= "tagLib" prefix="hbj" %>
"myBean" scope="application" class="com.mysap.bean.UserBean" />
"myContext" >
"myFormId" >



text="User Name"




tooltip="Submit Button"


name="PrivateSharingReference" value=""/>


name="ClassName" value="com.mysap.pages.FirstJSPDynPage"/>
name="ComponentType" value="jspnative"/>
name="JSP" value="pagelet/firstjsp.jsp"/>

name="tagLib" value="/SERVICE/htmlb/taglib/htmlb.tld"/>

Configure Enterprise Portal in NWDS:
Make sure Enterprise portal server is configured in studio. If not, go to Window Menu -> Preferences. Choose SAP Enterprise Portal. Click Add button.
Alias: ABC
Host: pc014235
Port: 50000
Login: john
Description: ABC
Click Ok. Then choose checkbox on the left of this server as default server for deploying portal applications. Click Apply and Ok.
Host and port refer to host name of the server and port in which the portal server runs. Alias can be used to differentiate if there are more than one server instance on the same host. Description can be any text about server. Logon is the portal user id which is used to deploy portal applications to server.
Build Project:
You need to build project before deploying. Right click on the project -> Build project.
If any of the imports are missing, you can add them. Here, two jars may be required for htmlb classes if you get red marks (which means error for missing imports here) in FirstJSPDynPage class.
Right click project -> Properties -> Java Build Path -> 'Libraries' tab -> Click on 'Add External Jars' and add these two jars.
1) - C:\Program Files\SAP\IDE\IDE70\eclipse\plugins\
2) htmlb.jar - C:\Program Files\SAP\IDE\IDE70\eclipse\plugins\\comp\SAP_JTECHS\DCs\\com.sapportals.htmlb_comp\gen\default\public\default\lib\java
Click Ok and rebuild the project.
Note: The path of the jars may change depending on the developer studio location and version.
Deploy Project:
We can now deploy the project to the portal server.
Right click project -> Export -> Par File -> MyFirstPortalProject.
PAR file will be coming automatically corresponding to this project.
Check the box for 'Deploy PAR'.
In the table below, click on password cell and enter the password. Click Finish.
The project is deployed to server.
To check the output, go to portalapp.xml -> Overview tab.
Click Run button near the DynPage component, which is 'FirstJSPDynPage' in our case. This will launch the browser for portal. Enter password for authentication. You can then view the output.

related posts:
Knowledge management component of SAP Enterprise portal
Implementing external facing portal
Creation of custom navigation connector
Navigation in sap enterprise portal
Trust between sap ep and backend system
J2ee course content it training
It training sap training ear training
Java api to retrieve work sets assigned
Could not find system alias
Sap ep web dynpro java error srm portal
Unsupportedclassversionerror in sap
Sap ep 73 upgrade related error

Thursday, October 4

SAP EP Administration and Development IT Training

  • Portal authorization
  • User administration and authentication
  • Sign-On with back-end systems
  • Integration of SAP applications
  • Solution management
  • Advanced scenarios
  • Design changes and branding
  • Secure system management

Below category  should take above course

  • NetWeaver Administrators
  • Tech Consultants

  • SAP NetWeaver Visual Composer
  • Overview and positioning of development tools
  • The SAP NetWeaver Developer Studio and PDK
  • Enterprise Portal Client Framework
  • Usage of standard portal services
  • Developing portal components and services
  • Portal applications an the IView Runtime for Java (IRJ)
  • Introduction to Web Dynpro. Both Java and ABAP
  • Java Web Dynpro Adaptive RFC
  • Visualizing the Java Web Dynpro through the SAP Portal
  • ABAP Web Dynpro

Below category  should take above course