Looking at the @Restrict annotation I see that any objects in the Seam Context can be
referenced (such as 'selectedAccount' below):
@Name("account")
| public class AccountAction {
| @In Account selectedAccount;
|
@Restrict("#{s:hasPermission('account','modify',selectedAccount)}")
| public void modify() {
| selectedAccount.modify();
| }
| }
However, I can't see a way to pass in an arbitrary number of Seam Context objects
without explicity specifying the componentName and methodName as part of a
"s:hasPermission" in the @Restrict value.
This is a bit of a limitation when trying to secure components on a derived EntityHome
class. I've specified a number of instances in components.xml which use my derived
EntityHome, but their name is not available to pass to the annotation.
I'd rather not have to write a separate derived EntityHome class with @Name annotation
specified to get around this limitation for each EJB entity I'm dealing with.
Am I missing something simple here? Or should I log this as a feature request?
View the original post :
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4062997#...
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&a...