Internal Server Error and NumberFormatException After Defining Item Level Security (ILS) in WebCenter Spaces/Portal File Item or Folder.
(Doc ID 1582501.1)
Last updated on FEBRUARY 02, 2022
Applies to:
Oracle WebCenter Portal - Version 11.1.1.5.0 and laterInformation in this document applies to any platform.
Symptoms
In WebCenter Spaces/Portal, after attempting to define Item Leve lSecurity (ILS) on a Folder or file, the following error occurs:
ERROR - In Browser
Internal Server Error
Error in diagnostic Log
javax.el.ELException: java.lang.NumberFormatException: For input string: "test role with hat"
at com.sun.el.parser.AstValue.invoke(AstValue.java:191)
at com.sun.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:297)
at org.apache.myfaces.trinidad.component.UIXComponentBase.broadcastToMethodExpression(UIXComponentBase.java:1315)
at oracle.adf.view.rich.component.fragment.UIXRegion.broadcast(UIXRegion.java:185)
at oracle.adf.view.rich.component.fragment.UIXRegion.broadcast(UIXRegion.java:169)
at oracle.adf.view.rich.component.fragment.UIXRegion.broadcast(UIXRegion.java:169)
at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent$1.run(ContextSwitchingComponent.java:93)
at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent._processPhase(ContextSwitchingComponent.java:361)
at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent.broadcast(ContextSwitchingComponent.java:96)
at oracle.adf.view.rich.component.fragment.UIXInclude.broadcast(UIXInclude.java:102)
at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent$1.run(ContextSwitchingComponent.java:93)
at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent._processPhase(ContextSwitchingComponent.java:361)
at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent.broadcast(ContextSwitchingComponent.java:96)
at oracle.adf.view.rich.component.fragment.UIXInclude.broadcast(UIXInclude.java:96)
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.broadcastEvents(LifecycleImpl.java:1068)
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:426)
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:210)
.
.
.
Caused by: java.lang.NumberFormatException: For input string: "test role with hat"
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
at java.lang.Integer.parseInt(Integer.java:449)
at java.lang.Integer.valueOf(Integer.java:554)
at oracle.stellent.ridc.convenience.usersecurity.impl.AccessResolverAcl.parseUserAttribInfo(AccessResolverAcl.java:233)
at oracle.stellent.ridc.convenience.usersecurity.impl.AccessResolverAcl.resolveAccessLevel(AccessResolverAcl.java:123)
at oracle.stellent.ridc.convenience.usersecurity.impl.UserSecurityGroupsCache.isAdmin(UserSecurityGroupsCache.java:364)
at oracle.webcenter.content.integration.spi.ucm.UCMBridge.hasAdminAccessToResourceByACL(UCMBridge.java:1124)
at oracle.webcenter.doclib.internal.view.UCMRepositoryLogic.hasAdminAccess(UCMRepositoryLogic.java:1251)
at oracle.webcenter.doclib.internal.view.UCMMainViewItemBean.<init>(UCMMainViewItemBean.java:202)
at oracle.webcenter.doclib.internal.view.UCMRepositoryLogic.createItemBean(UCMRepositoryLogic.java:769)
at oracle.webcenter.doclib.internal.view.UCMRepositoryLogic.createFolderItemBean(UCMRepositoryLogic.java:779)
at oracle.webcenter.doclib.internal.view.UCMRepositoryLogic.getItem(UCMRepositoryLogic.java:540)
at oracle.webcenter.doclib.internal.view.UCMRepositoryLogic.getItem(UCMRepositoryLogic.java:581)
at oracle.webcenter.doclib.internal.view.UCMRepositoryLogic.getItem(UCMRepositoryLogic.java:88)
at oracle.webcenter.doclib.internal.view.action.SecurityUIAction.handleSrmNavigation(SecurityUIAction.java:130)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.sun.el.parser.AstValue.invoke(AstValue.java:187)
at com.sun.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:297)
at org.apache.myfaces.trinidad.component.UIXComponentBase.broadcastToMethodExpression(UIXComponentBase.java:1315)
at oracle.adf.view.rich.component.fragment.UIXRegion.broadcast(UIXRegion.java:185)
at oracle.adf.view.rich.component.fragment.UIXRegion.broadcast(UIXRegion.java:169)
at oracle.adf.view.rich.component.fragment.UIXRegion.broadcast(UIXRegion.java:169)
at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent$1.run(ContextSwitchingComponent.java:92)
at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent._processPhase(ContextSwitchingComponent.java:361)
at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent.broadcast(ContextSwitchingComponent.java:96)
at oracle.adf.view.rich.component.fragment.UIXInclude.broadcast(UIXInclude.java:102)
at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent$1.run(ContextSwitchingComponent.java:92)
at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent._processPhase(ContextSwitchingComponent.java:361)
at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent.broadcast(ContextSwitchingComponent.java:96)
at oracle.adf.view.rich.component.fragment.UIXInclude.broadcast(UIXInclude.java:96)
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.broadcastEvents(LifecycleImpl.java:1068)
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:426)
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:210)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
.
.
The following are the steps (easiest way) to demonstrate the problem:
1. Create a Group named "^test role" with a hat (note the first character is a hat) in Embedded LDAP server in WLS Console :
a. WLS Console - Security Realms - myrealm - Users and Groups - Groups Tab - New
2. Create a user testuser who is a member of the above group.
a. WLS Console - Security Realms - myrealm - Users and Groups - Users - New (Name : testuser)
b. Click on username "testuser" - Groups Tab . Select the group created above and move to right hand side - Save
3. Setup ILS as per WebCenter Admininstration documentation.
4. Access WebCenter Portal as this user: testuser
5. Create a Hidden Space with Documents Service.
6. Click on Documents Page
7. On documents, add a folder.
8. Right Click on the new Folder - Security.
9. Select "Use Custom Permissions" and OK
10. Error is displayed
Further diagnostics:
1. Access WebCenter Content as this user: testuser
2. Click on the user name on top right to display user profile.
Look at the
Roles: , test role with hat, guest, webcenterappUser, webcenterappAuthenUser, PersonalSpacesRole, PersonalSpacesAuthenRole, authenticated
Notice the extra comma in the front of the role.
3. From the same browser session, call the following URL:
http://<UCM_SERVERNAME>:<PORT>/cs/idcplg?NoHttpHeaders=0&IsJava=1&IdcService=GET_USER_PERMISSIONS
The output will have ResultSet UserAttribInfo:
ResultSet UserAttribInfo
2
dUserName
AttributeInfo
testuser
account,#none,15,account,webcenterapp/PU,1,account,PUBLIC,1,account,WCILS,15,account,AUTHEN,1,account,PEWebCenter/PU,1,account,s203b922557574bb680f3ea0fdf3e3768,15,role,,test role with hat,15,role,guest,15,role,webcenterappUser,1,role,webcenterappAuthenUser,1,role,PersonalSpacesRole,1,role,PersonalSpacesAuthenRole,1,role,authenticated,15
end
Notice the extra comma before "test role with hat".
Changes
Cause
To view full details, sign in with your My Oracle Support account. |
|
Don't have a My Oracle Support account? Click to get started! |
In this Document
Symptoms |
Changes |
Cause |
Solution |
References |