Autor |
Mensagem |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 20/07/2007 17:38:15
|
rogel.garcia
Xiita
Membro desde: 17/04/2007 16:35:03
Mensagens: 275
Offline
|
no @Controller vc tem um atributo chamado authorizationModule
coloque assim
@Controller(path="...", authorizationModule=CrudAuthorizationModule.class)
Isso irá criar uma autorização para essa tela no banco de dados... na tabela de permissoes
vc pode entao alterar no banco de dados as permissoes para esse crud..
existem outro módulos de autorização e vc pode até criar o seu próprio..
será explicado na segunda parte do tutorial de autorizaçao...
|
|
 |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 23/07/2007 08:50:47
|
vinicius.janones
Template
![[Avatar]](/forum/images/avatar/182be0c5cdcd5072bb1864cdee4d3d6e.jpg)
Membro desde: 25/06/2007 12:55:10
Mensagens: 105
Localização: Uberlândia - MG
Offline
|
Rogel,
Obrigado, vou testar do geito que vc disse.
A[]s
|
Vinícius O. Janones
 |
|
 |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 14/09/2007 08:19:09
|
vinicius.janones
Template
![[Avatar]](/forum/images/avatar/182be0c5cdcd5072bb1864cdee4d3d6e.jpg)
Membro desde: 25/06/2007 12:55:10
Mensagens: 105
Localização: Uberlândia - MG
Offline
|
Rogel,
Desculpe a pergunta, mas poderia me explicar como ficaria uma autorização de uma tela para que eu possa entender como será a edição das tabelas relacionadas a isso?
A[ ]s
|
Vinícius O. Janones
 |
|
 |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 15/09/2007 13:42:36
|
pedro.goncalves
Equipe
Membro desde: 17/04/2007 16:12:20
Mensagens: 539
Localização: Belo Horizonte - MG
Offline
|
Segunda te mando as tabelas que usamos para fazer autorização...
|
Pedro Gonçalves
http://pedrogoncalves.com.br
 |
|
 |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 17/09/2007 08:16:46
|
vinicius.janones
Template
![[Avatar]](/forum/images/avatar/182be0c5cdcd5072bb1864cdee4d3d6e.jpg)
Membro desde: 25/06/2007 12:55:10
Mensagens: 105
Localização: Uberlândia - MG
Offline
|
Bom dia,
Obrigado... Pedro!
|
Vinícius O. Janones
 |
|
 |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 18/09/2007 13:49:38
|
pedro.goncalves
Equipe
Membro desde: 17/04/2007 16:12:20
Mensagens: 539
Localização: Belo Horizonte - MG
Offline
|
Desculpe a demora, pois cheguei hoje em BH.
Code:
CREATE TABLE papel (
cdpapel integer NOT NULL,
descricao character varying(80) NOT NULL
) WITHOUT OIDS;
ALTER TABLE ONLY public.papel ALTER COLUMN cdpapel SET STATISTICS 0;
ALTER TABLE ONLY public.papel ALTER COLUMN descricao SET STATISTICS 0;
--
-- Structure for table permissao (OID = 713431) :
--
CREATE TABLE permissao (
cdpermissao integer NOT NULL,
stringpermissao character varying(80) NOT NULL,
cdtela integer NOT NULL,
cdpapel integer NOT NULL
) WITHOUT OIDS;
ALTER TABLE ONLY public.permissao ALTER COLUMN cdpermissao SET STATISTICS 0;
ALTER TABLE ONLY public.permissao ALTER COLUMN stringpermissao SET STATISTICS 0;
ALTER TABLE ONLY public.permissao ALTER COLUMN cdtela SET STATISTICS 0;
ALTER TABLE ONLY public.permissao ALTER COLUMN cdpapel SET STATISTICS 0;
--
-- Structure for table tela (OID = 713433) :
--
CREATE TABLE tela (
cdtela integer NOT NULL,
"path" character varying(80) NOT NULL,
descricao character varying(80) NOT NULL
) WITHOUT OIDS;
ALTER TABLE ONLY public.tela ALTER COLUMN cdtela SET STATISTICS 0;
ALTER TABLE ONLY public.tela ALTER COLUMN "path" SET STATISTICS 0;
ALTER TABLE ONLY public.tela ALTER COLUMN descricao SET STATISTICS 0;
CREATE TABLE usuario (
cdusuario integer NOT NULL,
nome character varying(80) NOT NULL,
login character varying(50) NOT NULL,
senha character varying(50) NOT NULL,
email character varying(80) NOT NULL,
bloqueado boolean DEFAULT false
) WITHOUT OIDS;
ALTER TABLE ONLY public.usuario ALTER COLUMN nome SET STATISTICS 0;
ALTER TABLE ONLY public.usuario ALTER COLUMN login SET STATISTICS 0;
ALTER TABLE ONLY public.usuario ALTER COLUMN senha SET STATISTICS 0;
ALTER TABLE ONLY public.usuario ALTER COLUMN email SET STATISTICS 0;
--
-- Structure for table usuariopapel (OID = 713446) :
--
CREATE TABLE usuariopapel (
cdusuariopapel integer NOT NULL,
cdusuario integer NOT NULL,
cdpapel integer NOT NULL
) WITHOUT OIDS;
ALTER TABLE ONLY public.usuariopapel ALTER COLUMN cdusuariopapel SET STATISTICS 0;
ALTER TABLE ONLY public.usuariopapel ALTER COLUMN cdusuario SET STATISTICS 0;
ALTER TABLE ONLY public.usuariopapel ALTER COLUMN cdpapel SET STATISTICS 0;
Se estiver faltando algo me avise.
[]'s
|
Pedro Gonçalves
http://pedrogoncalves.com.br
 |
|
 |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 18/09/2007 13:59:00
|
vinicius.janones
Template
![[Avatar]](/forum/images/avatar/182be0c5cdcd5072bb1864cdee4d3d6e.jpg)
Membro desde: 25/06/2007 12:55:10
Mensagens: 105
Localização: Uberlândia - MG
Offline
|
Tranguilo Pedro,
Obrigado, vou testar aqui e te falo...
A[]s
|
Vinícius O. Janones
 |
|
 |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 18/09/2007 14:20:37
|
pedro.goncalves
Equipe
Membro desde: 17/04/2007 16:12:20
Mensagens: 539
Localização: Belo Horizonte - MG
Offline
|
ok
|
Pedro Gonçalves
http://pedrogoncalves.com.br
 |
|
 |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 18/09/2007 17:26:47
|
vinicius.janones
Template
![[Avatar]](/forum/images/avatar/182be0c5cdcd5072bb1864cdee4d3d6e.jpg)
Membro desde: 25/06/2007 12:55:10
Mensagens: 105
Localização: Uberlândia - MG
Offline
|
Pedro,
No exemplo que o Rogel passou não tem essa tabela "TELA"...
|
Vinícius O. Janones
 |
|
 |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 18/09/2007 19:08:43
|
pedro.goncalves
Equipe
Membro desde: 17/04/2007 16:12:20
Mensagens: 539
Localização: Belo Horizonte - MG
Offline
|
pode fazer sem ela se quisr..
tem problema nao
|
Pedro Gonçalves
http://pedrogoncalves.com.br
 |
|
 |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 19/09/2007 11:02:54
|
vinicius.janones
Template
![[Avatar]](/forum/images/avatar/182be0c5cdcd5072bb1864cdee4d3d6e.jpg)
Membro desde: 25/06/2007 12:55:10
Mensagens: 105
Localização: Uberlândia - MG
Offline
|
Bom dia,
Pedro,
Fiz como no exemplo do Rogel:
- Na tabela PERMISSAO fiz um insert com os dados(id=1, role_id=1, permissionString=ADM, path=/secured/crud/bairro);
- Na tabela PAPEL fiz um insert com os dados(id=1, description=ADM, name=Administrador);
- Na tabela USUARIO ficou assim(id=2, login=vinicius);
- E na tabela USUARIOPAPEL assim(id=1, usuario_id=1, papel_id=1).
Quando fiz o login apareceu o seguinte erro:
Code:
10:52:20,730 INFO [STDOUT] Hibernate: select permissao0_.id as id4_, permissao0_.path as path4_, permissao0_.role_id as role4_4_, permissao0_.permissionString as permissi3_4_ from sistemas.permissao permissao0_ where permissao0_.role_id=? and permissao0_.path=?
10:52:20,734 ERROR [STDERR] java.lang.RuntimeException: Erro ao gerar menu /WEB-INF/menu.xml
10:52:20,735 ERROR [STDERR] at br.com.linkcom.neo.view.menu.MenuTag.doComponent(MenuTag.java:102)
10:52:20,735 ERROR [STDERR] at br.com.linkcom.neo.view.BaseTag.doTag(BaseTag.java:568)
10:52:20,735 ERROR [STDERR] at org.apache.jsp.WEB_002dINF.jsp.secured.base_jsp._jspx_meth_n_menu_0(base_jsp.java:330)
10:52:20,735 ERROR [STDERR] at org.apache.jsp.WEB_002dINF.jsp.secured.base_jsp._jspx_meth_c_if_1(base_jsp.java:304)
10:52:20,735 ERROR [STDERR] at org.apache.jsp.WEB_002dINF.jsp.secured.base_jsp._jspService(base_jsp.java:130)
10:52:20,735 ERROR [STDERR] at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
10:52:20,735 ERROR [STDERR] at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
10:52:20,735 ERROR [STDERR] at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:334)
10:52:20,735 ERROR [STDERR] at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
10:52:20,735 ERROR [STDERR] at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
10:52:20,736 ERROR [STDERR] at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
10:52:20,736 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
10:52:20,736 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
10:52:20,736 ERROR [STDERR] at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:672)
10:52:20,736 ERROR [STDERR] at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:463)
10:52:20,736 ERROR [STDERR] at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:398)
10:52:20,736 ERROR [STDERR] at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:301)
10:52:20,736 ERROR [STDERR] at org.springframework.web.servlet.view.InternalResourceView.renderMergedOutputModel(InternalResourceView.java:97)
10:52:20,736 ERROR [STDERR] at org.springframework.web.servlet.view.AbstractView.render(AbstractView.java:250)
10:52:20,736 ERROR [STDERR] at org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:961)
10:52:20,736 ERROR [STDERR] at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:738)
10:52:20,736 ERROR [STDERR] at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:658)
10:52:20,736 ERROR [STDERR] at br.com.linkcom.neo.controller.DispatcherServlet.doService(DispatcherServlet.java:59)
10:52:20,737 ERROR [STDERR] at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:392)
10:52:20,749 ERROR [STDERR] at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:347)
10:52:20,749 ERROR [STDERR] at javax.servlet.http.HttpServlet.service(HttpServlet.java:697)
10:52:20,749 ERROR [STDERR] at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
10:52:20,749 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
10:52:20,749 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
10:52:20,749 ERROR [STDERR] at br.com.linkcom.neo.authorization.AuthorizationFilter.doFilter(AuthorizationFilter.java:77)
10:52:20,749 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
10:52:20,749 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
10:52:20,749 ERROR [STDERR] at br.eti.janones.santarem.filter.AuthenticationFilter.doFilter(AuthenticationFilter.java:23)
10:52:20,749 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
10:52:20,749 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
10:52:20,750 ERROR [STDERR] at br.com.linkcom.neo.core.web.NeoFilter.doFilter(NeoFilter.java:95)
10:52:20,750 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
10:52:20,750 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
10:52:20,750 ERROR [STDERR] at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
10:52:20,750 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
10:52:20,750 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
10:52:20,750 ERROR [STDERR] at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
10:52:20,750 ERROR [STDERR] at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
10:52:20,750 ERROR [STDERR] at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175)
10:52:20,750 ERROR [STDERR] at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74)
10:52:20,750 ERROR [STDERR] at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
10:52:20,750 ERROR [STDERR] at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
10:52:20,750 ERROR [STDERR] at org.jboss.web.tomcat.tc5.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:156)
10:52:20,751 ERROR [STDERR] at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
10:52:20,751 ERROR [STDERR] at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
10:52:20,751 ERROR [STDERR] at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
10:52:20,751 ERROR [STDERR] at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
10:52:20,751 ERROR [STDERR] at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
10:52:20,751 ERROR [STDERR] at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
10:52:20,751 ERROR [STDERR] at java.lang.Thread.run(Thread.java:595)
10:52:20,752 ERROR [STDERR] Caused by: java.lang.ArrayIndexOutOfBoundsException: 1
10:52:20,752 ERROR [STDERR] at br.com.linkcom.neo.authorization.impl.AbstractPermission.getPermissionmap(AbstractPermission.java:49)
10:52:20,752 ERROR [STDERR] at br.com.linkcom.neo.authorization.impl.AbstractPermission.getPermissionvalue(AbstractPermission.java:72)
10:52:20,752 ERROR [STDERR] at br.com.linkcom.neo.authorization.crud.CrudAuthorizationModule.createAuthorization(CrudAuthorizationModule.java:65)
10:52:20,752 ERROR [STDERR] at br.com.linkcom.neo.authorization.crud.CrudAuthorizationModule.createAuthorization(CrudAuthorizationModule.java:1)
10:52:20,752 ERROR [STDERR] at br.com.linkcom.neo.authorization.impl.AuthorizationManagerImpl.createAuthorization(AuthorizationManagerImpl.java:149)
10:52:20,752 ERROR [STDERR] at br.com.linkcom.neo.authorization.impl.AuthorizationManagerImpl.isAuthorized(AuthorizationManagerImpl.java:90)
10:52:20,752 ERROR [STDERR] at br.com.linkcom.neo.authorization.impl.AuthorizationManagerImpl.isAuthorized(AuthorizationManagerImpl.java:120)
10:52:20,753 ERROR [STDERR] at br.com.linkcom.neo.view.menu.MenuTag.verificarAutorizacao(MenuTag.java:159)
10:52:20,753 ERROR [STDERR] at br.com.linkcom.neo.view.menu.MenuTag.verificarAutorizacao(MenuTag.java:164)
10:52:20,753 ERROR [STDERR] at br.com.linkcom.neo.view.menu.MenuTag.doComponent(MenuTag.java:88)
10:52:20,753 ERROR [STDERR] ... 54 more
10:52:21,111 INFO [STDOUT] Tempo: /santarem/secured/crud/usuario = 0.6s
O que pode ser isso? Ele monta o menu dinamicamente?
|
Vinícius O. Janones
 |
|
 |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 19/09/2007 11:52:42
|
pedro.goncalves
Equipe
Membro desde: 17/04/2007 16:12:20
Mensagens: 539
Localização: Belo Horizonte - MG
Offline
|
me manda a ddl do suas tabelas de autorização, o authorization dao.
O menu é gerenciado dinamicamente.. ele verifica se você tem permissão de acessar o path do menu..,. ae caso senha ele mostra.
Até!
|
Pedro Gonçalves
http://pedrogoncalves.com.br
 |
|
 |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 19/09/2007 13:39:46
|
vinicius.janones
Template
![[Avatar]](/forum/images/avatar/182be0c5cdcd5072bb1864cdee4d3d6e.jpg)
Membro desde: 25/06/2007 12:55:10
Mensagens: 105
Localização: Uberlândia - MG
Offline
|
Code:
CREATE TABLE `teste`.`papel` (
`id` int(10) unsigned NOT NULL auto_increment,
`description` varchar(45) default NULL,
`name` varchar(45) default NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
INSERT INTO `teste`.`papel` VALUES (1,'ADM','Administrador');
CREATE TABLE `teste`.`permissao` (
`id` int(10) unsigned NOT NULL auto_increment,
`role_id` int(10) unsigned NOT NULL,
`permissionString` varchar(45) default NULL,
`path` varchar(45) default NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
INSERT INTO `teste`.`permissao` VALUES (1,1,'ADM','/secured/crud/bairro');
CREATE TABLE `teste`.`usuario` (
`id` int(10) unsigned NOT NULL auto_increment,
`login` varchar(45) NOT NULL,
`password` varchar(45) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
INSERT INTO `teste`.`usuario` VALUES (1,'teste','123');
CREATE TABLE `teste`.`usuariopapel` (
`id` int(10) unsigned NOT NULL auto_increment,
`usuario_id` int(10) unsigned NOT NULL,
`papel_id` int(10) unsigned NOT NULL,
PRIMARY KEY (`id`),
KEY `usuario_id` (`usuario_id`),
KEY `papel_id` (`papel_id`),
CONSTRAINT `papel_id` FOREIGN KEY (`papel_id`) REFERENCES `papel` (`id`),
CONSTRAINT `usuario_id` FOREIGN KEY (`usuario_id`) REFERENCES `usuario` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
INSERT INTO `teste`.`usuariopapel` VALUES (1,2,1);
|
Vinícius O. Janones
 |
|
 |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 19/09/2007 14:59:08
|
pedro.goncalves
Equipe
Membro desde: 17/04/2007 16:12:20
Mensagens: 539
Localização: Belo Horizonte - MG
Offline
|
cara.. o ideal era que tivesse uma tabela de tela..
ve se tu consegue montar a autorização da maneira que lhe mandei o banco .. caso não consiga lhe mando uma app para ver te ajudar..
teh
|
Pedro Gonçalves
http://pedrogoncalves.com.br
 |
|
 |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 19/09/2007 15:34:26
|
vinicius.janones
Template
![[Avatar]](/forum/images/avatar/182be0c5cdcd5072bb1864cdee4d3d6e.jpg)
Membro desde: 25/06/2007 12:55:10
Mensagens: 105
Localização: Uberlândia - MG
Offline
|
Pedro,
Me diz uma coisa, como é a estrutura do arquivo menu.xml para se usar a autorização? Tem alguma coisa de diferente?
|
Vinícius O. Janones
 |
|
 |
|
|
|