jsf 2 - Authorization in JSF2 components -
in our project have jsf2 pages used in internal network of company. going open pages internet. pages available everybody. fields not rendered if user comes internet.
i know possible write rendered attribute each component such "userisinrole". additional "rendered" control doesn't seem efficient , elegant method. plan mark components going rendered online using custom attribute shown below:
<h:inputtext context="internet" /> ...
in renderer of inputtext or component code:
if(user internet && context = "internet") { return true; // or render... whatever }
if component not marked internet, means available (rendered) inside of company.
is possible implement authorization using jsf2 components according given attribute? there better options? or should design separate pages internet users?
we use: primefaces + spring in our project.
thank you
this ridiculous. what's difference in effort of using
<h:inputtext context="internet" />
versus
<h:inputtext rendered="#{intranet}" />
?
if sole problem need repeat whole condition everytime ending in ugly code so
<h:inputtext rendered="#{not (user.hasrole('internet') , context eq 'internet')}" /> <h:inputtext rendered="#{not (user.hasrole('internet') , context eq 'internet')}" /> <h:inputtext rendered="#{not (user.hasrole('internet') , context eq 'internet')}" /> ...
then refactor condition single request scoped variable
<c:set var="intranet" value="#{not (user.hasrole('internet') , context eq 'internet')}" scope="request" /> ... <h:inputtext rendered="#{intranet}" /> <h:inputtext rendered="#{intranet}" /> <h:inputtext rendered="#{intranet}" /> ...
Comments
Post a Comment