Subversion Repositories bacoAlunos

Compare Revisions

Ignore whitespace Rev 1581 → Rev 1582

/branches/v3/impl/conf/WEB-INF/tags/examples/objectAttribute.tag
New file
0,0 → 1,43
<%@tag description="Body Tag Page template" pageEncoding="UTF-8"%>
<%@taglib prefix="t" tagdir="/WEB-INF/tags/examples" %>
 
<!--Includes normais -->
<%@attribute name="user" type="pt.estgp.estgweb.domain.User" %>
 
<!-- Tags do Struts (utilização classica) -->
<%@ taglib uri="/WEB-INF/tlds/struts-html.tld" prefix="html" %>
<%@ taglib uri="/WEB-INF/tlds/struts-nested.tld" prefix="nested" %>
<%@ taglib uri="/WEB-INF/tlds/struts-logic.tld" prefix="logic" %>
<%@ taglib uri="/WEB-INF/tlds/struts-bean.tld" prefix="bean" %>
<%@ taglib uri="/WEB-INF/tlds/struts-tiles.tld" prefix="tiles" %>
 
<html>
<body>
<div id="header">
Teste a um User com Roles (<bean:message key="profile.roles"/>)
</div>
<div id="body">
<p>Nome ${user.name}</p>
<!--O use Bean é necessário apenas para o autocomplete das tags de struts no Editor-->
<jsp:useBean id="user" type="pt.estgp.estgweb.domain.User"/>
<p>Papéis</p>
<ul>
<logic:iterate id="role" name="user" property="rolesList">
<li>${role}</li>
</logic:iterate>
</ul>
 
<p>Papéis usando as keys do MessageResourses ou do Roles Module. O Baco tem um Módulo de Roles que é administravel nos serviços (Gestão de Papeis Institucionais)
, esse Módulo define um interceptor para as mensagens de Multilingua do Struts, sempre que uma
key começa por user.role.X o modulo carrega a tradução da base de dados de roles, desta forma
podemos adicionar traduções manualmente e roles manualmente na interface em vez de termos de adiconar ao ficheiro de configuração.
Se este JSP não funcionar deve entrar nos serviços e carregar pela primeira vez o Módulo de Papeis fazendo "Carregar Novos Papeis":
<html:link action="/user/configurationUserRoles">Aqui</html:link></p>
<ul>
<logic:iterate id="role" name="user" property="rolesList">
<li><bean:message key="user.role.${role}"/></li>
</logic:iterate>
</ul>
</div>
</body>
</html>
/branches/v3/impl/src/web/examples/examples.jsp
39,6 → 39,7
<li><html:link page="/examples/tagsTemplates/helloTag.jsp">Utilização de um template simples (Hello)</html:link></li>
 
<li><html:link page="/examples/tagsTemplates/bodyTag.jsp">Utilização de um template com body (BodyTag)</html:link></li>
<li><html:link page="/examples/tagsTemplates/objectAttributeTag.jsp">Utilização de um template passando um objecto complexo /objectAttributeTag)</html:link></li>
 
 
 
/branches/v3/impl/src/web/examples/tagsTemplates/objectAttributeTag.jsp
New file
0,0 → 1,26
<%@ page import="pt.estgp.estgweb.domain.User" %>
<%@ page import="pt.estgp.estgweb.domain.UserImpl" %>
<%@ page import="java.util.List" %>
<%@ page import="java.util.ArrayList" %>
<%@ page import="jomm.utils.StringsUtils" %>
<%@ page import="pt.estgp.estgweb.utils.RoleManager" %>
<%@taglib prefix="t" tagdir="/WEB-INF/tags/examples" %>
 
<html>
<body>
<h1>Exemplos de passagem de Objectos complexos às Tags</h1>
 
<%
User user = new UserImpl();
user.setName("Jonh Doe");
List<String> roles = new ArrayList<String>();
roles.add("admin");
roles.add("services");
user.setRoles(RoleManager.getSerialRoles(roles));
request.setAttribute("user",user); //para se poder usar nas scriplets
%>
 
<t:objectAttribute user="${user}"/>
 
</html>