Zdravím konferenci.
Začínáme s Acegi, konkrétně s chráněním metod aplikační vrstvy pomocí
MethodSecurityInterceptor. Není mi jasné, jak postupovat v případě potřeby
chránit metody definované v předkovi (a to chránit v kontextu potomka).
class Predek {
public void foo() {
}
}
class Potomek1 extends Predek {
}
class Potomek2 extends Predek {
}
A teď potřebuju, aby k metodě foo() Potomka1 měla přístup ROLE_1 a k
metodě foo() Potomka2 ROLE_2.
Níže uvedená konfigurace neprojde - foo je očekávána pouze na úrovni
Predka (kde ale nemůžu rozlišit ten kontext).
<property name='objectDefinitionSource'>
<value>
(..).Potomek1.foo=ROLE_1
(..).Potomek2.foo=ROLE_2
</value>
</property>
Máte nějaký tip jak to elegantně vyřešit?
Teď mě to nutí foo znovu deklarovat v Potomcích (resp. v jejich rozhraní).
Díky
Jara