Project

General

Profile

Actions

Defect #1597

closed

Attribute mapping without defined script can be modified or deleted

Added by Ondřej Kopr over 5 years ago. Updated over 5 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Ondřej Kopr
Category:
Provisioning
Target version:
Start date:
04/08/2019
Due date:
% Done:

100%

Estimated time:
Affected versions:
Owner:

Description

While is defined new attribute with merge strategy (role mapping), this attribute can't be deleted or modified.

Now exists only one workaround deleted this record by database.

Exception:

java.lang.IllegalArgumentException: [Assertion failed] - this argument is required; it must not be null
    at org.springframework.util.Assert.notNull(Assert.java:115)
    at org.springframework.util.Assert.notNull(Assert.java:126)
    at eu.bcvsolutions.idm.acc.service.impl.DefaultSysAttributeControlledValueService.addHistoricValue(DefaultSysAttributeControlledValueService.java:123)
    at eu.bcvsolutions.idm.acc.service.impl.DefaultSysAttributeControlledValueService$$FastClassBySpringCGLIB$$a7beb621.invoke(<generated>)
    at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204)
    at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:720)
    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157)
    at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:99)
    at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:281)
    at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96)
    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
    at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:655)
    at eu.bcvsolutions.idm.acc.service.impl.DefaultSysAttributeControlledValueService$$EnhancerBySpringCGLIB$$ea16396f.addHistoricValue(<generated>)
    at eu.bcvsolutions.idm.acc.service.impl.DefaultSysRoleSystemAttributeService.delete(DefaultSysRoleSystemAttributeService.java:239)
    at eu.bcvsolutions.idm.acc.service.impl.DefaultSysRoleSystemAttributeService.delete(DefaultSysRoleSystemAttributeService.java:79)
    at eu.bcvsolutions.idm.acc.service.impl.DefaultSysRoleSystemAttributeService$$FastClassBySpringCGLIB$$7abae34b.invoke(<generated>)
    at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204)

Affected version: 9.5.0, 9.5.1 and lower probably

Actions #1

Updated by Ondřej Kopr over 5 years ago

  • Status changed from New to In Progress
Actions #2

Updated by Ondřej Kopr over 5 years ago

  • Status changed from In Progress to Needs feedback
  • Assignee changed from Ondřej Kopr to Vít Švanda
  • % Done changed from 0 to 90

I added check for null values. Tests are included.

Commit: https://github.com/bcvsolutions/CzechIdMng/commit/e58ac95aea1ef6a6a5e4f2eb9391ef88923058c8 (branch: develop)

Please Vitek could you check the new behavior and do feedback.

Actions #3

Updated by Vít Švanda over 5 years ago

  • Status changed from Needs feedback to Resolved
  • Assignee changed from Vít Švanda to Ondřej Kopr
  • % Done changed from 90 to 100

I reviewed it. That was my fault, so thanks for this nice fix.

Actions #4

Updated by Ondřej Kopr over 5 years ago

  • Status changed from Resolved to Closed
Actions

Also available in: Atom PDF