mruellan
mruellan

Reputation: 379

Use complex expression with Spring EL (conditional & parenthesis)

I'm using spring-EL with spring security

Is it possible to make 'complex' conditional expressions with parentesis?

@PreAuthorize("( hasRole('ROLE_USER') and ( isOwnerDocumentUUID( #docUuids ) ) or hasRole('ROLE_ADMIN')  ")

throw an java.lang.IllegalArgumentException:

Failed to parse expression

but

@PreAuthorize("hasRole('ROLE_USER') and ( isOwnerDocumentUUID( #docUuids ) ")

is accepted.

Upvotes: 6

Views: 3663

Answers (1)

axtavt
axtavt

Reputation: 242686

You have one extra (, the following should work:

@PreAuthorize("( hasRole('ROLE_USER') and isOwnerDocumentUUID( #docUuids ) ) or hasRole('ROLE_ADMIN')  ") 

Upvotes: 7

Related Questions