Naming conventions in NW Portal 7.3
Background
In general the naming convention feature enables creating new content with predefined list of names used as content prefix in content object id.
Display predefined names during creation of new content in wizards for different types of principals (like users, groups, roles) according to definitions provided in XML file.
Basically a XML file is simply a configuration that provides us the information about which naming convention will be displayed to the user.
XML convention:
Tag |
Description |
definitions |
The root element. |
namespace |
Defines a prefix. All principals (users, groups or roles) that are defined in the body of the tag are authorized to use this prefix. The following attributes are defined for this tag: ● Id (required): A prefix |
principal |
Defines a principal (user, group or role) that is authorized to use the prefix The following attributes are defined for this tag: ● uniqueName (required): A name of a user (user ID), group (group ID) or role (PCD address). ● typeID (required): The type of principal. Valid values are USER, GROUP or ROLE. ● scope (optional): Indicates that the user, group or role is authorized to use the current prefix but no additional sub-prefixes that are defined within the current element. See below for more information. |
XML Example:
<definitions>
<namespace id=”a” >
<principal uniqueName=”pcd:portal_content/roman/trole2″ typeId=”ROLE”/>
<principal uniqueName=”G1″ typeId=”GROUP”/>
<principal uniqueName=”Administrator1″ typeId=”USER”/>
<principal uniqueName=”user02″ typeId=”USER” scope=”current”/>
<namespace id=”b” description=”here is a.b namespace”>
<principal uniqueName=”Fin1″ typeId=”GROUP”/>
<principal uniqueName=”demo” typeId=”USER” scope=”current”/>
<namespace id=”c” description=”here is a.b.c namespace”>
<principal uniqueName=”Administrator1″ typeId=”USER” scope=”current”/>
<namespace id=”d” description=”here is a.b.c.d namespace”>
<principal uniqueName=”pcd:portal_content/every_user/general/eu_role” typeId=”ROLE” scope=”current”/>
<namespace id=”e” description=”here is a.b.c.d.e namespace”>
</namespace>
</namespace>
</namespace>
</namespace>
</namespace>
<namespace id=”x.y” >
<principal uniqueName=”pcd:portal_content/every_user/general/eu_role” typeId=”ROLE”/>
</namespace>
<namespace id=”v” >
<principal uniqueName=”pcd:portal_content/administrator/super_admin/super_admin_role” typeId=”ROLE”/>
<namespace id=”u” description=”here is v.u namespace”>
</namespace>
</namespace>
</definitions>
Service configuration:
Once you created XML contains configuration of naming conventions (see example below) – Save the file to your server under location:
\usr\sap\…\J..\j2ee\cluster\apps\sap.com\com.sap.portal.namingconventions\
servlet_jsp\com.sap.portal.namingconventions\root\xml
It is possible to manage file out of the component path by providing full path to the file.
Example: create namespaces.xml file contains naming conventions and save it under “C:\configuration” folder.
Set com.sap.portal.namespace.default.xml.file value – use full file path to point the xml file “C:\configuration\namespaces.xml”
Set proper permissions to the file to be accessible by Portal.
Open SAP NetWeaver Administrator -> Java Applications
(1) Search for “namingconvention” service and (2) click on Portal Service Configuration
(1) Change service settings to use your xml file and (2) set it active value true
Restart service (stop and start):
Stop service
Start service
The user “demo” assigned to
1) pcd:portal_content/administrator/content_admin/content_admin_role
2) pcd:portal_content/every_user/general/eu_role
receives only relevant naming conventions:
Another user assigned to:
1) pcd:portal_content/roman/trole2
2) pcd:portal_content/administrator/super_admin/super_admin_role
3) pcd:portal_content/every_user/general/eu_role
receives all predefined names
Thanks for sharing this!
I assume that these prefixes are then displayed when you create any type of PCD content where a prefix is an option is that right (not just folders like you show here)? Also are you still able to leave the prefix empty and not choose one?
Thanks,
Simon
Hi Simon,
Yes – prefix used for naming convention and it part of most PCD object types.
It is possible to leave prefix empty if it defined in XML
</namespace>
<namespace id="" >
<principal uniqueName="pcd:portal_content/every_user/general/eu_role" typeId="ROLE"/>
</namespace>