Oracle11g 在Oracle SOA Suite 11g中以编程方式获取用户角色

Oracle11g 在Oracle SOA Suite 11g中以编程方式获取用户角色,oracle11g,soa,roles,oracle-adf,Oracle11g,Soa,Roles,Oracle Adf,有人知道如何从TaskFlow中的支持bean获取Oracle SOA 11g BPMN应用程序中的用户角色 为了激活一些字段,我需要知道用户的角色,我的想法是从支持bean中获取它并做一些事情。有更好的方法吗?您有几种选择: EL: 但不确定是否需要检查用户。 您可以获得实际的角色列表 oracle.adf.share.security.identitymanagement.UserProfile = ADFContext.getCurrent().getSecurityContext().g

有人知道如何从TaskFlow中的支持bean获取Oracle SOA 11g BPMN应用程序中的用户角色

为了激活一些字段,我需要知道用户的角色,我的想法是从支持bean中获取它并做一些事情。有更好的方法吗?

您有几种选择: EL:

但不确定是否需要检查用户。 您可以获得实际的角色列表

oracle.adf.share.security.identitymanagement.UserProfile = ADFContext.getCurrent().getSecurityContext().getUserProfile();

您也可以在VO/EO层使用groovy,但谈到SOA,我不确定这是否真的适用于您……

是的,这解决了没有BPM的ADF应用程序的这个问题。不幸的是,我发现我的问题是BPM没有向人工任务发送身份验证信息,因此当您使用此代码时,UserProfile是空的,而ADFContext.getCurrent().getSecurityContext().getUserName()是匿名的。因此,我在没有结果的情况下问了这个问题:stackoverflow.com/q/3259840/194789
oracle.adf.share.security.identitymanagement.UserProfile = ADFContext.getCurrent().getSecurityContext().getUserProfile();