Skip to Content
0

KM Personal Folder with File System Repository Error

Dec 14, 2017 at 03:24 PM

39

avatar image

hello everybody,

we just upgraded a SAP Enterprise Portal (NW) from 7.01 to 7.5.

In the past we created a File System Repository in KM (with W2K ACL) the Userhome Filter , the Entry Point Provider and the Document Iview with path:

/~alias~/disegni/test/<user.id>/disegni

This is necessary because each user need access only to respective folder.

Everything worked fine before upgrade, but now... we have an error:

Item not found /~alias~/disegni/test/<user.id>/disegni The item you are attempting to access is not available. Check that the name or link is correct. You might also check whether the associated repository is currently accessible.

I tried to change ACL, restart server.

The Repository is available. From Content Administration - KM Content is visible. But seem the File System Repository is no more able to translate the parameter <user.id>.

Any suggestion?

regards

Alessandro

10 |10000 characters needed characters left characters exceeded
* Please Login or Register to Answer, Follow or Comment.

1 Answer

Best Answer
Cathal Kelly
Mar 12 at 09:02 PM
0

Hi Alessandro,

I've discussed this with you directly through the official support channel but I just want to update the forum here with our findings. As discussed, the format of the user directories has changed in EP 7.30 upwards with the folders being identified as "USER.PRIVATE_DATASOURCE.un: <username>" instead of the previously used "<username>".

When calling the property <user.id>, the full username string as shown above is now called. When calling this parameter in the userhome repository (eg, in relation to users favorites) there is no issue as the users folders have also been updated accordingly and are also using the new structure.

The change only has an impact if attempting to call resources from a custom created file structure based on the end users usernames. Instead of naming the folders simply '<username>' it would be necessary to name them using the structure 'USER.PRIVATE_DATASOURCE.un: <username>' as used by the portal.

Unfortunately, in your scenario you have encountered a restriction in the Windows file system naming convention which prevents you from doing so. It's not possible to create a folder name incorporating the ':' character in Windows file system. This means that it is not possible to call the users folders using the <user.id> parameter to dynamically generate the url.

While it's not possible to generate the url pointing to <username> using the sap provided properties, it may be possible to achieve your goal using a custom solution. If it's an option for you to change the way you obtain use information then there is a way to obtain user unique ID (‘USER.PRIVATE_DATASOURCE.un:username1’) from user logon ID (‘username1’).

With the following methods you can get IUser object from username:

UMFactory.getUserFactory()
https://help.sap.com/doc/2f39047ed6b141cb83658041d2d4e029/7.5.9/en-US/CE/se/com.sap.se/com/sap/security/api/UMFactory.html

IUserFactory.getUserByLogonID(String logonid)
https://help.sap.com/doc/2f39047ed6b141cb83658041d2d4e029/7.5.9/en-US/CE/se/com.sap.se/com/sap/security/api/IUserFactory.html

And then from the IUser object you can get whatever user property you want.

Kind regards,

Cathal

Share
10 |10000 characters needed characters left characters exceeded