1 5 6 7 8 9 40 Previous Next

SAP Enterprise Portal

590 Posts

Background: In the Universal Worklist (UWL) in the configuration setup you are encountering an error exception referencing the ActionInboxConnector.


What you see: The UWL iView displays the error exception "failure in retrieving from ActionInboxConnector" 


Logs: In the defaultTrace log file (\usr\sap\<SID>\<J2EE_instance_number>\j2ee\cluster\<server#>\log\) you see an exception related to ActionInboxConnector with its associated connector status e.g.



#sap.com/com.sap.netweaver.bc.uwl#com.sap.netweaver.bc.uwl.core.connect.aib.ActionInboxConnector#PELLIPE01#0##EB7695EE741711E5BF6E005056141073#52016186741811e5cb6200001a6b6a92##0#Thread[UWL Pooled Thread:4,5,ApplicationThreadGroup]#Plain## while trying to invoke the method com.sap.netweaver.bc.uwl.core.connect.aib.AIBUtils.itemType2Categories(java.lang.String, com.sap.netweaver.bc.uwl.UWLContext) of a null object loaded from field com.sap.netweaver.bc.uwl.core.connect.aib.ActionInboxConnector.aibUtils of an object loaded from local variable 'this'java.lang.NullPointerException: while trying to invoke the method com.sap.netweaver.bc.uwl.core.connect.aib.AIBUtils.itemType2Categories(java.lang.String, com.sap.netweaver.bc.uwl.UWLContext) of a null object loaded from field com.sap.netweaver.bc.uwl.core.connect.aib.ActionInboxConnector.aibUtils of an object loaded from local variable 'this'.




Identifying the issue: Log into Enterprise Portal.  In the portal, navigate to System Administration -> System Configuration -> Universal Worklist & Workflow -> Universal Worklist -> Administration. In the list of systems, select the ActionInboxConnector. The UWL in the Enterprise Portal shows the message  "An error occurred while trying to connect to the provider". While the connector status returns "failure in retrieving from ActionInboxConnector".

Why this is happening: Discrepancy in the attributes associated with the ActionInboxConnector.

Resolving the issue: With the ActionInboxConnector errors exceptions may appear for a wide range of different reasons.

The first point of analysis is to check if you are currently using KM or KMC (pcd:portal_content/com.sap.pct/admin.templates/iviews/com/sap.km.Config). If you are using KMC attempt to deactivate -> then reactivate the ActionInbox Connector > System Administration -> System Configuration -> UWL -> UWL Admin;


Important Point: Computer Monitor Service Under KM must be working. Next navigate to the UWL administration -> select the system 'ActionInbox' -> open the tray for 'Universal Worklist Service Configuration'. Analyze the current value setting for 'Timeout Value for the Connected Systems'. Increase the value presently configured to a new value setting e.g. 300 seconds.Then retest the connector.

Background: In the Universal Worklist (UWL) after you perform an action (Approve/Reject) on a workitem the action window remains open instead of closing automatically.


Expected Behavior:The expected behaviour is that the window closes without any required action instead however you encounter the "Close Window" screen option.




Identifying the issue: Log into Enterprise Portal. In the portal, navigate to System Administration -> System Configuration -> Universal Worklist & Workflow -> Universal Worklist. Launch the main UWL iView and select a workitem of choice. Perform any definite action on the workitem e.g. approval or rejection and the popup window remains open.


Why this is happening: Discrepancy in the property view settings. The Notification/UWL item launches the work item by calling transaction SWNWIEX (Report RSWNWIEX) from a backend system and passes the work item ID. This transaction starts the work item execution by triggering the method of the object, which is defined in the single step task. The transaction SWNWIEX is not aware of the functionality implemented in the method of the object.


Resolution:  Log into Enterprise Portal.  Navigate to the Universal Worklist (UWL) -> select UWL Administration. Open the UWL Standard XML (uwl.standard). In order for the window to be closed automatically as desired the returnToDetailViewAllowed property needs to be maintained in the UWL standard XML setup. Add the correct property to the uwl.standard XML -> returnToDetailViewAllowed="yes". Re-upload the XML with a value of "High" and clear the UWL Cache.

Background: You can use the UserDecisionHandler to handle execution of items of typesUserDecision.The UWL is shipped with the UserDecisionHandler for the WebFlowConnector.Their execution is handled through function modules SAP_WAPI_DECISION_COMPLETE or SAP_DECISION_COMPLETE.


Issue: From the UWL, a task that requires a user decision such as Approve or Reject along with a reason for this action via the UserDecisionNote is failing.

Exception: The system responds with the message "Grounds for refusal - required information failed".


Environment: EP Release Independent & SAP NetWeaver

Encountering the issue: Logon to the Enterprise Portal. Go to Home -> Work -> Universal Worklist .In the "Tasks" tab, select a workflow task.Perform the required action on this task (eg Approve/Reject) and then enter the reason for this decision via the UserDecisionNote field. You receive an error message “":Structure/Table DECISION_NOTE not found for SAP_WAPI_DECISION_COMPLETE".

Why does this issue occur:  The container element Decision_NOTE is not maintained for the relevant workflow item in the back-end system.

Resolving this occurrence:  In the Workflow Builder, you have the option of also specifying whether a note is to be entered for a user decision. There are three options: 'Not required', 'Note should be entered (requested)', 'Note must be entered (required)'.  At runtime, the system opens a note depending on the entry.  If you have already created user decision tasks in the customer namespace, you must also add the container element DECISION_NOTE (Type SOFM, Exporting) to the task container.

Until now session termination in portal required appearance of the pop-up window every time user closed or refreshed the screen with Application Integration iView.

From now on there will be an option to suppress appearance of that pop-up windowwhen executing the above mentioned scenarios.

In the below video you will see how to omit a session termination pop-up



Please refer to SAP Note 2114932 for further details

This blog is for portal end-users and content administrators who would like to learn about the new features developed in the latest Enterprise Portal SP for FLP on EP, their added value, and the configuration required.

The new features include:

  • SAP Smart Business analytics and fact sheets access
  • Enhanced personalization capabilities of Home Page / Tile Catalog
  • SAP Fiori borders in iViews and pages
  • Hiding groups on Home Page
  • Etc.

1 SAP Smart Business Analytical Apps Consumption


Analytical apps are supported in the Fiori Launchpad. These apps present up-to-date data from HANA databases in the home page and thus let end-users monitor business activities and key performance indicators (KPIs) in real time (more information).

This is how the analytic tiles in My Home group might look like:



  1. SAP Web Dispatcher or any other reverse proxy,which is responsible to dispatch the requests between the ABAP FES and Java server (EP).  It has to be configured to access SAP HANA catalogs.
  2. For FES minimum required SP please refer to SAP note 2031108.

To enable this feature administrators have to follow the steps in SP16 blog for Remote ABAP Content Consumption.

To manage HANA catalogs and groups the remote content editor is used. Both runtime and design-time HANA catalogs can be assigned to portal roles. The catalogs and groups can be defined in the SAP Fiori Launchpad Designer.


2 Search for SAP Fiori Fact Sheets


Fact sheets are applications that display contextual information and key facts about central objects of the SAP Business Suite, such as Customers or Suppliers. End-users can open a fact sheet tile and drill down into its details, or navigate from one fact sheet to its related fact sheets (more information here).


  1. SAP Web Dispatcher or any other reverse proxy, which is responsible to dispatch the requests between the ABAP FES and Java server (EP).  It has to be configured to access SAP HANA catalogs.
  2. For FES minimum required SP please refer to SAP note 2031108.


To enable this capability, administrators have to go to Framework Page Configuration, select Fiori Framework Page in dropdown list, check-in Enable Search for Fact Sheets checkbox and save:



In run-time an end-user will be able to search for the fact sheets using the enhanced Quick search bar:



The search result looks as following:


3 SAP Fiori Borders in iViews and Pages


SAP Fiori borders allow to enhance end-user experience with portal iViews and pages. Portal administrators can enable the following:

  • Header bar - contains the iView/page title and a back button
  • Footer bar - can contain the following UI elements:

o Related Links – end-users select this option to open a popup window with the related links

o Dynamic Navigation – end-users select this option to open a popup window with a dynamic navigation iView/page

o Save as Tile – end-users save an iView/page as a tile to the Home page.


In the portal, open an iView/page.

From the Show Category dropdown list, select Personalized Launcher and SAP Fiori Borders property:



  • For all iViews and pages except for SAPUI5 and SAP Fiori iViews, Header and footer bars is the default option.
  • For SAPUI5 and SAP Fiori iViews, No header and footer bars is the default option.
  • In the Launch in New Window property, select one of the following:
    • Display in Portal Content Area
    • Display in Separate Headerless Portal Window (standard mode).

SAP Fiori borders example:


If a user clicks on Related links, the following appears:




4 Home Page Personalization Options


The configuration options are used by the administrators to provide end-users with various personalizing abilities for their home pages. If configured by an administrator, end-users can use:

  • Floating action
  • Option menu action
  • Hide/show groups.

The main switch Enable Personalization should be checked-in for other options to make an effect. If this option is switched off, in run-time there is no access to Tile Catalog and personalization actions:



4.1 Floating Action and Option Menu Action


If portal administrator enabled the following personalization options in FFP:




The end-users have floating action in the low right corner and Option menu action, both allowing to re-arrange the Home page:





4.2  Hiding Groups on Home Page


If the option Enable Hide Groups in Option Menu is checked in FFP configuration, the corresponding entry will appear in Option menu in the Home Page:



By choosing this option end-users can control the groups to be hidden/displayed on the Home Page:


5 Search Options in Tile Catalog and Home Page


Several options allow the administrators to control search abilities for end-users, both in Tile catalog and Home page.

In Tile Catalog there might be no search possibilities at all:


Or three search options in Tile Catalog due to the following configuration on FFP:


End-user experience with full search and filter capabilities will look like this:


Enable Search Icon in Header Bar option is relevant also for the Home Page.

6 Resetting User Personalization


After end-users have logged on to the SAP Fiori Launchpad for the first time, any consequent changes made by administrators are not reflected in the home page.

Personalization Data Cleanup tool is used to clear personalization and reset the home page for end users.

Warning: Resetting user personalization also removes all changes on the Home page made by the end user. There is no Undo for this action.


Navigate to System Administration -> Support -> PCD Tools -> Personalization Data Cleanup.

In the Search for field, type a user login ID, and choose Go.

Select com.sap.portal.navigation.flp.pl.UserData entry, and choose Remove Application Personalization.


7 Role Editor Enhancement

A new Device Groups column displays the device group object IDs defined for objects in a role. A new Remote Content table displays the SAP Fiori catalogs and SAP Fiori groups, assigned to the role.


8 Enabling Fiori Framework Page Extensions


The Fiori Framework Page core capabilities can be extended by enabling custom plugin to load when the SAP Fiori launchpad opens.

This allows the customers to extend the standard FLP functionality, with, for example, an additional action in Option menu, a custom footer, etc.

The extensions are activated by the following FFP configuration (details):

  • Custom SAPUI5 Module Plugin Name
  • Custom Plugin URL.

9 Embedding SAP UI5 Apps


Administrators can embed SAPUI5 applications directly into the SAP Fiori launchpad on Portal without iframes to get a better performance, a harmonized look-and-feel, and good support for mobile browsers.

SAP UI5 application can be hosted on the portal server (Web Resource Repository is a recommended location).

The embedding is enabled with the following iVIew properties (detailed description):

  • Embed iView in SAP Fiori Launchpad
  • SAPUI5 Component Name
  • SAPUI5 URL Path.



Watch also this product demo focusing on the end user features described in this blog:

For more information: see SAP Documentation.

Background: You are utilizing the Universal Worklist and notice that there are no action buttons for the workflow setup e.g. approval/rejection appearing. This change may have be noticed after completing a recent upgrade. From the end-users perspective the buttons are no longer appearing in the Preview Area and after further investigation you notice that the Action Buttons are in in fact placed within the "Context Menu". The action buttons should be viewable and accesible through the context menu. You access the context menu by clicking on the dropdown menu which is beside the task names. Select the task and then select the dropdown. Are the action buttons visible here?

Adding buttons to a description area must be done by defining them in the view.

Buttons of Interest: Approve, Reject, Print Preview, Forward, Resubmit, Assign to me.

Why have the buttons disappeared?  The UWL UI was changed in 7.10 and higher releases so the look and feel of the UWL is different. Some buttons have indeed been removed e.g. the "You Can Also" area has been removed. In this scenario the buttons will appear only if the buttons (actions) are explicity defined within the UWL View in the XML configuration file.

Important Point: The buttons are only in the preview area if UserDecisionHandler is used and the actions are EXPLICITLY defined in the views.


Property of Interest: <Property name="showButtonInPreviewArea" value="yes"/> Important: Add the property showButtonInPreviewArea property as recommended in SAP Note: 1803438 to all Action definitions.

Core Notes:  SAP Note: 1730719 - Action buttons on UWL not visible after upgrade && SAP Note: 1803438 - Showing UWL item action as a button - only in context menu.




Definition: The Universal Worklist (UWL) gives users unified and centralized way to access their work and the relevant information in the portal. It collects tasks and notifications from multiple provider systems – SAPBusiness Workflow, Collaboration Task, Alert Framework and Knowledge Management Recent Notifications - in one list for one-stop access.


The Buttons: A UWL Action defines an activity that can be performed in UWL. Actions can be defined for views and items. Item actions can be displayed in the item preview, detail view and UWLiView as action buttons. Item actions are also displayed as context menu items for a certain workitem. View actions displayed as buttons can have an effect on none, one or multiple selected items. Group actions can be used in views to render decision options directly as check boxes or radio buttons in the item rows, for example, for mass execution scenarios.


Button Placement: Before attempting to move the buttons in terms of place you need to ensure they are defined correctly. Do you have the action defined in the view?


Switching Placement (Sample):



<View name="com.sap.pct.erp.mss.tra.view.TripCheckView" selectionMode="SINGLESELECT" width="98%" supportedItemTypes="uwl.task.webflow.decision.TS00008267" columnOrder="statusIcon, subject, priority, creatorId, createdDate,

dueDate, processor, forwardedDate, attachmentCount, detailIcon, APPROVE, REJECT" sortby="priority:descend, dueDate:ascend, createdDate:descend"

tableDesign="STANDARD" visibleRowCount="10" headerVisible="yes" queryRange="undefined" tableNavigationFooterVisible="yes" tableNavigationType="CUSTOMNAV" refresh="300" dueDateSevere="0" dueDateWarning="0" emphasizedItems="none"

displayOnlyDefinedAttributes="yes" dynamicCreationAllowed="yes" actionPosition="bottom"



<Action reference= "<ACTION BUTTON NAME REQUIRED>"/>






Where I have <ACTION BUTTON NAME REQUIRED> you should have something like forward, etc.


Also if you are using the UserDecisionHandler, you will find that the buttons will appear on the view based on the actionPosition in the xml reference.  Your view name will probably also be different, as I just used this one as an example. Please also remember after changing the XML file to clear the cache and re-register the system.


If your item type is defined like this: <ItemTypes> <ItemType name="uwl.task.webflow.TS10007947.SAP_SRM" connector="WebFlowConnector" defaultView="DefaultView" defaultAction="launchSAPAction" executionMode="default"> <ItemTypeCriteria systemId="SAP_SRM" externalType="TS10007947" connector="WebFlowConnector"/>


For task e.g TS10007947 the buttons will only appear in the context menu. For the buttons to appear in the bottom, you will need to use UserDecisionHandler. 

Buttons that are associated with the task actions will appear at the bottom of the view depending on the action position reference in the XML file as I mentioned above.


The nice thing about the Action Handlers is that you can re-customize them. You can make the task into a decision task in the backend and use the UserDecisionHandler to launch the task in a different way.

Please see the help documentation:


Background: In a setup which involves business requirements managed and accessed through the Enterprise Portal landscapes and environments can quick become diverse and multiplex.


Backdrop: The SAP NetWeaver Portal is one of the building blocks in the SAP NetWeaver architecture. With a Web Browser, users can begin work once they have been authenticated in the portal which offers a single point of access to information, enterprise applications, and services both inside and outside an organization.

Expanding Viewpoint: When using SAP NetWeaver Portal, organizations can give their employees, customers, partners, and suppliers a single point of access to the company applications, services, and information needed for conducting daily work. In addition, the portal offers business users the capability to easily create and manage portal pages and to generate their own portal content.


Why Monitor & Analyse?

The alchemists in their search for gold discovered many other things of greater value -  Arthur Schopenhauer

monitoring users.PNG

What does active monitoring provide?

  • View and analyse usage statistics
  • Identify performance concerns and bottlenecks
  • Identify generic system operation constraints
  • Analyse user activities
  • Reporting
  • Usage trends

The means of monitoring: The Computer Centre Management System in the Solution Manager, SAP’s service and support platform ensures central and efficient monitoring of SAP Enterprise Portal. Log data is displayed and analysed centrally in the Log Viewer (service of the J2EE server).  You can also monitor specific data directly in the portal.

Different Monitoring Technologies:

Troy Cronin

EP: KM Content is Slow

Posted by Troy Cronin Nov 7, 2015

Background: You are utilizing the Enterprise Portal (EP) and the Knowledge Management (KM) service. You begin to notice that the Portal itself or KM related functionality appears slow in functionality e.g. upon navigating to -> Content Administration -> Select KM Content -> any structure selected appears slow and constrained.


First port of call: The first recommendation with any performance related issue is to check for visible errors or exceptions being thrown in the default trace error log files.



High Level Analysis:


With performance issues some core checks to assess include:


  1. Have there been system changes recently e.g. upgrades which may have prompted this issue to begin occurring?
  2. If so Post upgrade did you clear the portal caches/restart the portal service?
  3. Is this issue occurring for all users/in all web browser platform types?
  4. Are customization's/personalizations currently in place?

Analysis Findings


After performing the recommended checks you confirm and determine that the performance impairment is confined ONLY to KM i.e. the rest of the Portal functions accordingly.


KM Performance in General


The primary cause of performance impacts within the KMC is the activation of the AccessStatistic service on the KM repositories.


  • Check if the service is indeed activated in the configuration of the KM repository managers.


If so, we advise removing it wherever possible as it the recommendation in SAP Note 1025290.


After the configuration of these repository managers is updated with the removal of the AccessStatistic service a system restart will be required for the change to take effect.


After this, perform a retest to see if performance improves.


You can find additional information in the documentation outlined below:


Access Statistics Service



Repository Services


Background: In a business environment which utilizes the Enterprise Portal (EP) as a central platform as we know the number of users can vary from a few hundred to a few thousand depending on the business setup. In true essence the SAP NetWeaver Portal is one of the cornerstones in the entire SAP NetWeaver architecture. Through web browser interfaces the EP is the conduit channel through which users begin going about their daily tasks and the portal itself provides such users with a central point of access for all work related procedures and processes.


EP Environment: With the EP offering users a single point of access to information, documents, enterprise applications, processes and services both inside and outside of an organization its understandably easy for a simple environment to become complex quite quickly in terms of a high level perspective. In short the Portal provides access to business processes and information, social collaboration and content management across various consumption channels. Also with the ever-growing number of mobile phone business users the Portal needs to be maintained in an optimal an efficient manner.



monitoring users.PNG

Why Monitor?

"Numbers have an important story to tell. They rely on you to give them a voice.” – Stephen Few


  1. View the system landscape from a high level.
  2. Identify areas of concern, usage statistics, security areas, etc.
  3. Pinpoint errors, low performance areas or bottlenecks.
  4. Planning for the future, are changes needed?
  5. Match requirements with setup, are you operating optimally?
  6. Capacity review
  7. Identify access trends


The Means of Monitoring


Various components, applications and services are shipped with the portal. There are various monitoring and log applications available for monitoring these objects. These applications check and monitor the portal in the background. Applications such as performance monitoring and activity tracing provide information about the status and help locate critical system events. You can use the information delivered by the monitoring, logging, and tracing applications to analyze the system and take appropriate action where necessary. The portal is installed as an application on the AS Java. Therefore, to understand the monitoring methodology and tool availability, see the section AS Java.

Monitoring Tools

The following list provides information on monitoring and logging functions and tools that you can use.


  1. Generic Request & Message Generator (GRMG)
  2. Performance Monitoring
  3. Parameter Reporting
  4. Portal Activity Report
  5. User Overview


Logging & Tracing


  • Activity Tracing: You can sequentially record the activities of individual portal users for a defined time span and then analyze the performance and errors for these activities. Activity tracing is activated and deactivated in the Visual Administrator for a given user or for all users.
  • Logging:  The portal is logged using the standard central logging system of the AS Java, consisting of the Log Manager and the Log Configuration Service

SAP Netweaver 7.5 was released during SAP TechEd Las Vegas two weeks ago. SAP NetWeaver is the technology platform and foundation for the SAP Business Suite and the SAP NetWeaver hubs such as SAP Enterprise Portal, SAP Business Warehouse and SAP Process Orchestration. For more information, have a look at the SAP NetWeaver 7.5 landing page.


These are the top 4 highlights of SAP Enterprise Portal - based on SAP NetWeaver 7.5 - which are planned to be available:


1. SAP Enterprise Portal UX renovation according to SAP Fiori UX paradigm:

  • SAP Fiori as the leading SAP Portal UX, also aligned with S/4 support and UX strategy for UI clients
  • Step-by-step enhancements according to SAP Fiori 2.0 UX paradigm (Fiori Overview Page, notifications and more)


2. S/4 HANA integration by supporting S/4 HANA content (analytical apps, factsheets) using remote catalogs feature.


(click on image for better reading)



3. Cloud Services integrated into SAP Enterprise Portal by SAP Web IDE deployment plugin, enabling developers to create and deploy Fiori-like apps to the Portal.


4. Lean and simplified Portal

  • New Fiori SCA, allowing an easy and lean upgrade of Portal in the context of Fiori scenarios.
  • Deprecation of duplicated or non-used tools and functionality as part of a simplification project (for example the UI Theme Designer replacing the Theme Editor).

        For more information, see note 2204286


Note: most of these features and highlights will not be available on SAP NetWeaver 7.4 or 7.31. Only SAP NetWeaver 7.5 will provide a new visual UI design, based on SAP Fiori 2.0, the integration of S/4 HANA content and a lean and simplified Portal including the new Fiori SCA. SAP NetWeaver 7.5 will also be based on the latest Java version (Java 8).

Recommendation for customers: customers, who are still on EP 7.0 and plan an upgrade, are recommended to upgrade to SAP NetWeaver 7.5. Customers, who are already on SAP NetWeaver 7.4 or 7.31, can still remain there for a while and do not need to upgrade right away, they should however think about a long-term upgrade strategy.



Features in the Support Package Stacks of SAP NetWeaver 7.5

Support Package Stack 00:

A detailed feature overview on Support Package Stack 00 of SAP NetWeaver 7.5 can be found in the Enterprise Portal release notes.

Support Package Stack 01

This new support package stack offers the following new features:

  • Extending SAP Fiori launchpad on Portal
  • Embedding SAP UI5 applications into SAP Fiori launchpad
  • Enable tile personalization
  • Theme migration from the Theme editor to the UI Theme Designer
  • Enhanced Role Editor
  • SAP Web IDE Plug-In which enables to deploy an Web IDE application to the Portal
  • and more

For a detailed outline of the new features, see this blog. For more information, check out the release notes.

Support Package Stack 02

This support package stack offers the following features:

  • Synchronization of Fiori launchpad homepage.
  • Administrators can configure a News iView to run as a news tile that displays article feeds to end users in the SAP Fiori launchpad.
  • End users can set the theme in the SAP Fiori launchpad.

For a detailed outline of the new features, read this blog and check out the release notes.

Support Package Stack 03

This support package offers the following features:

  • Administrators can now configure iViews and pages to appear as links or tiles in the home page.
  • End users can now drag dynamic navigation popups to a new location.
  • Quick links are now supported in the Fiori Framework Page.

and some more. For more information, check out the release notes.

Support Package 04 is planned for July 2016.



The idea for this blog mail came from some emails from SDN friends who wanted to configured Hindi as a Login Language in SAP Portal.

Hindi is a new addition to the supported Languages for SAP Portal. Surprisingly there is no direct way as of today(Through Portal Personalization or UME) to switch the Language to Hindi. The Hindi option doesn't come in the value selector. Needless to say being an Indian I got hooked to the idea of configuring the Portal in my national language and hence this blog


Background Information


As Bill Gates famously said “I choose a lazy person to do a hard job. Because a lazy person will find an easy way to do it.” I am sure i fit the bill but was never approached by Bill . I started looking at SDN and Service Market place to find some quick fix.

SAP Note 1980421 is the place I started with. Alas the fine print in the note says "Note - This correction does not handle adding Hindi to User Management language lists (e.g. Identity Management, User Profile)."

I was left with no other option but to fall back to my tried and tested SAP Login Module solution as mentioned :

Adding Logon Language option on Portal Logon Page

Getting started with Netweaver 7.3 portal Part 3 - Logon Language and Login Module


During SDN migration these two blogs were spoiled and the code became unusable. I have received many emails asking for various jars and codes unfortunately I work on a VMBox and keep on changing my OS and loosing code . At the end of this blog is a drop box link which contains the sca export which is all anybody should need to implement this.




The above mentioned blogs and the attached sca file should help you to set-up the projects and login module, so I won't waste your time and my energy repating myself . Some key points:


1. I extracted the language files from the jar file sap.com~tc~sec~ume~wd~uimodel where there is a file Languages_hi.properties but no entry has been made to set up Hindi as a language in files like Languages_en.properties or Languages.properties and that's the reason you won't get that option in Personalization or UME. Looks like SAP didn't pay the bonus to this particular developer  .

2. If you look at Languages_hi.properties the translations are maintained in Unicode. For your custom objects you will need to maintain these translations by yourself using Translation work bench. I am not sure how to put Unicode there. If any one has any idea please share it in comments.

3. Apparently for WebDynpro applications in nwa the translation for Hindi has not been maintained so they don't appear in Hindi.

4. I have maintained Hindi as a language option only for Languages.properties and Languages_en.properties so you will see the Hindi option in drop-down only if your browser Language is English or oh leave that bit that will confuse quite a few people. In lay man terms if your browser language is set to German or say Hebrew you won't see Hindi as an option.


Some Screen Shots

Login Page



After Successful Login



Logout Confirmation Popup




If anyone knows who maintained the Hindi Translations. Convey my regards for him/her. He/She has done a damn Good job. Hindi is my first language but even I would have stumbled while translating some of the tabs. Hats off.



The sca export can be downloaded from the drop box link. It has got all the Development components needed for this blog. You can import the sca in your NWDS and play around with it.

Dropbox - CTSDEV100_0.sca

Final Words

As always please leave your feedback in comments, bouquets or brick-bats all are welcome.



In my recent project one of the Non functional requirements is to control the number of sessions a user can have, i,e if an user already has a session in portal a new session with the same userid shouldn't be allowed.

As per SAP Note 2052515 the one line answer is It is not possible to avoid multiple logons with the same user. 

This really stumped me as it is one of the key requirements with some financial implications. I can't spell the details as it's a confidential information.

Like all SAP Consultants we have forwarded this note to the client and have requested to handle this requirement outside portal (RSA Token etc).

I still believe handling it outside portal is a better solution but since I investigated this problem in some detail I would like to share my POC.

Let me make it clear from the outset that this solution uses Undocumented APIS,.


While Searching on Google and SDN I came across many threads where people want to implement this, but at all the places the discussion ends with it's not a valid business requirement. Let me assure you it is .

While investigating this, I came across the NWA functionality Session Management (Resource Consumption)


As you can see the WD JAVA application is showing the session information. I still had my doubts w.r.t  what will happen in a Clustered environment.

Like all developers I have a single node installation and I was not sure whether this application can show login details on multiple nodes in a cluster.

I confirmed this in the Preproduction environment in my client landscape that this application indeed shows sessions across nodes in a cluster.

I cannot share those screen shots as those are from client landscape but trust me it does .

Locating the DC (sap.com/tc~lm~itsam~ui~session~mngt~wd) and the jar (sap.com~tc~lm~itsam~ui~session~mngt~wd) was not very difficult but analysing it was a tedious task.

If you decompile the jar ,( Refer to my earlier blog Getting started with Netweaver 7.3 portal Part 2 - NWDS and Logon Page to know how to use jadeclipse.) you will find a number of classes. SessionMngt ,  SessionMngtView  and SessionManagementModel are the key classes.

I also found some useful information here:

Get list of all Logged in Users in SAP Netweaver 7.3 

Solution Design

Since my requirement is to stop the user from login if the same userid already has a portal session, I wanted to implement this in login module.

Here is what I planned:

1. Create a login module

2. Using the above API, check if an user has a HTTP session (Note that the user can have a P4 session also) don't allow him to login.

3. Modify the login page to show an appropriate error message.




Please refer to my earlier blog on login module and it's implementation Getting started with Netweaver 7.3 portal Part 3 -  Logon Language and Login Module

I decompiled the BasicPasswordLoginModule and used the decompiled code to build my own login module.

I have added one method to check if the user already has a session.


public boolean userHasActiveSession()


    CompositeData data[]=null;





    SessionManagementModel model = new SessionManagementModel();

     data = model.getSessions();


        catch(Exception ex)


// If this block gets executed, this means there are some problem accessing the session data.



          return false;






    for(int i=0;i<data.length;i++){




    data[i].get("RootContextID") != null) // This is important as there can be non HTTP sessions which won't have a context id assigned.


    return true;

    //throwNewLoginException((new StringBuilder()).append("Active session exists for user").append(user.getName()).toString(), (byte)15);




  return false;



This method is called after the user has been authenticated successfully (You don't want to show the error if someone is not entering right credentials).


/* To determine if there is already an active session*/



    //User already has an open session. Don't let him login.

    // The message here doesn't make any difference, it gets overwritten by the messages in the jars.

         throwNewLoginException((new StringBuilder()).append("Active session exists for user").append(user.getName()).toString(), (byte)15);



/* Continue with life as usual*/


In case you have a prior experience with Login Modules you will know that The way SAP has developed it the error messages come from a JAR file and it's an error prone and tedious process to modify those jars and place it at server level.

Most amusing part is the method throwNewLoginException() takes a parameter of type String but doesn't make any use of it decompile the class com.sap.engine.interfaces.security.auth.AbstractLoginModule and see it yourself!!.

The only field it makes use of is the byte field. Now for same strange reason only a predefined numbers are allowed, so there is no extensibility here, Say with me Bad Design.

These predefined values are stored in the interface com.sap.engine.lib.security.LoginExceptionDetails.

I choose 15 as it resembles the situation I am handling.

public static final byte USER_ALREADY_LOGGED_IN = 15;

After I deployed my login module and tested it. I didn't get the expected result. I was able to open multiple sessions.

After checking the logs I found that the Guest user doesn't have permission to access the Bean.

Below action needs to be assigned to the Guest user for this code to work.


With the Standard Login Page I got an in-line Error message, while trying to open another session

Authentication failed. Client is already authenticated as a different user

Not the message I was looking for.

I implemented my custom message using JQUERY and modifying the logonPage.jsp.

<script type="text/javascript">




var $d = $(".urTxtMsg").text();

if (($d.length != 0)&& ($d == 'Authentication failed. Client is already authenticated as a different user')) {


$(".urTxtMsg").text("New Session not allowed. You already have a running session!!");

//alert('Cannot create new session. You already have a running session!!');


   title: "Error"






Not very elegant, as we are doing a String comparison with a harcoded value. This will fail if user language is not English but hey this is just a POC



First Login


Second Login Attempt


Post Script

As I mentioned, This blog is result of a POC. It's not a full blown/tested/live solution.  Some key things to keep in mind:

1. Since HTTP is a stateless protocol the session management and session stickiness is implemented through cookies in SAP Portal. That's why if you are running a portal session in a browser say IE and open a new tab with the portal URL it won't be considered as a new session.

2. Consider a scenario where a User A accidentally closes the browser window, the server will not know that the session has been closed and it will not allow a new session for the same user till the session times out or an administrator closes the session.

3. I have not tested this solution in a clustered environment yet for obvious reasons (Need approvals etc). If someone can test and update it will be great. Incase I ever implement this in client environment I will update this blog.



The sca export can be downloaded from the dropbox link. It has got all the Development components needed for this blog. You can import the sca in your NWDS and play around with it.




Final Words


Please leave your feedback in comments, bouquets or brick-bats all are welcome.

Background: You have migrated a Web Dynpro Java application to version Netweaver 730 or higher.

Behaviour Noticed: When viewing the corresponding Web Dydnpro Java iView in the Portal Content Catalogue, this appears to be a Web Dynpro Page.


Areas Affected:  Netweaver 730+ & Enterprise Portal


Reproducing The Behaviour: Logon to the Enterprise Portal. Navigate to Content Administration -> Portal Content Management -> Portal Content. Navigate to Web Dynpro Java Applications -> Java Application. Select the application for which you intend to create the iView. Copy the object and select ‘Paste as PCD Object’ to the required folder. The object appears as a Web Dynpro Page rather than an iView.




Why: From Netweaver 730 onwards the concept for Web Dynpro iViews has changed. They are now known as Web Dynpro Application Pages. The runtime behaviour is identical to that of the old Web Dynpro iViews. The icon representing the new Web Dynpro Application Pages now resemble more a page than an iView.




Summary: As the functionality is the same for the new Web Dynpro Application Pages, you should use them in the same manner as per previous releases.

Background: You are using the SAP Enterprise Portal and are utilizing Knowledge Management (KM) in a document sharing setup and a network file system repository.


Issue Being Encountered: Upon enabling the subscription service across various folders the subscription mail for changed documents returns a user unknown.


Areas Affected: EP Release Independent, SAP NetWeaver, SAP Composition Environment


bloG11 KMEmailSub.PNG






Steps To Encounter Issue: Login into the portal from desktop - http://<host>:<port>/portal. Check if the Subscription Service is enabled -> choose Content Management → Repository Services → (Show Advanced Options) → Subscription Service in the Configuration iView. If the service is enabled and a document change is performed e.g. updated/created/deleted a resource a subscription mail will be sent. The subscription mail is sent accordingly but the action is listed as being performed by 'unknown' rather than a UserID.

Why: File System Repositories don’t support resource properties alongside the modifiedBy property which is a restriction of File System Repository setup.

Solution: If the issue is occuring for all event types (deletion, creation, modification etc.) then is standard and expected behaviour when using subscriptions with File System Repository. The File System Repository does not support "Predefined properties" and the FS repository does not keep track of predefined properties like "last modified by" which is why you see changed by unknown in the notification mail.


Filter Blog

By author:
By date:
By tag: