Ir para o conteúdo

 Voltar a MDArte Desen...
Tela cheia

Problema com Controle de Acesso

1 de Fevereiro de 2011, 16:38 , por Desconhecido - | Ninguém seguindo este artigo por enquanto.
Visualizado 40 vezes

Olá novamente.

Estou com problemas na minha aplicação em relação ao Controle de Acesso, parece que para cada módulo que eu acesso, eu devo efetuar login novamente. Exemplificando:

  • Acesso http://localhost:8080/aplicacao/

Como esperado, sou redirecionada para http://localhost:8080/aplicacao/secure/entrar-login.jsp

  • Efetuo login

Como esperado, sou redirecionada para http://localhost:8080/aplicacao/ConsultarMarca/ConsultarMarca.do (Marca é meu módulo web principal)

  • Acesso http://localhost:8080/aplicacao/empreendimentos/ConsultarEmpreendimento/ConsultarEmpreendimento.do

Nesse momento eu sou redirecionada novamente para http://localhost:8080/aplicacao/secure/entrar-login.jsp. Caso eu logue de novo e acesse Acesso http://localhost:8080/aplicacao/empreendimentos/ConsultarEmpreendimento/ConsultarEmpreendimento.do dessa vez a página aparece e os demais casos de uso dentro deste módulo podem ser acessados sem um novo login.

 

Existe alguma forma de contornar esse problema? Gostaria de a partir de logar-me uma unica vez tivesse acesso a todos os modulos do sistema.

 

Grata.

Autor: Debora Andrade de Lima


77 comentários

  • 524d045200366b8d318f898ff5377ab3?only path=false&size=50&d=404Rodrigo Salvador Monteiro(usuário não autenticado)
    2 de Fevereiro de 2011, 14:20

     

    Ola Debora,

    vc esta acessando o link loca​lhos​t:80​80/a​plic​acao​/emp​reen​dime​ntos​/Con​sult​arEm​pree​ndim​ento​/Con​sult​arEm​pree​ndim​ento​.do diretamente pelo browser? Se estiver esse deve ser o problema. A transicao entre modulos web diferentes deve ser feita via um link de transicao externa (modelado atraves do estado terminal com as tagged values de transicao preenchidas). Isso deve ser feita para que a passagem de identificacao do usuario seja feita de forma correta pelo codigo gerado. Se vc tentar acessar diretamente um modulo web da aplicacao sem que o contexto da sessao do usuario tenha sido repassada via uma transicao externa o comportamento eh exatamente o que vc esta descrevendo.

     Se nao estiver claro para vc como uma transicao entre modulos web deve ser feita, mande um novo post que eu detalho a explicacao.

    • 5fbd02f249b6c95f8802075a79e03979?only path=false&size=50&d=404Debora Andrade de Lima(usuário não autenticado)
      2 de Fevereiro de 2011, 14:31

       

      Nao está claro nao, nunca fiz uma aplicação com módulos :) Ainda considerei ser esse o problema, mas me levaram a crer que não deveria ser.

      Dei uma olhada na wiki mas n achei documentação sobre. Gostaria sim de uma explicação.

       

      Grata.

      • 524d045200366b8d318f898ff5377ab3?only path=false&size=50&d=404Rodrigo Salvador Monteiro(usuário não autenticado)
        2 de Fevereiro de 2011, 15:22

         

        Ola Debora,

        encontrei no wiki um topico mas a explicação não entra em detalhes. Vamos melhorar esta pagina no wiki. Bom, vamos ao que interessa:

        - Quando uma aplicação é modularizada cada módulo web irá gerar um arquivo .war contendo os casos de uso do módulo.
        - Para o JBoss, cada arquivo war é uma aplicação independente e portanto as sessões não são compartilhadas.
        - Como queremos que os usuários e os desenvolvedores tenham a visão de que se trata de uma única aplicação, criamos um mecanismo que clona a sessão do usuário de um war para outro.
        - O procedimento de cópia de sessão é disparado toda vez que é feita uma transição entre casos de uso de módulos web diferentes. Essas transições são modeladas através de estados finais dos diagramas de atividades onde o caso de uso destino é informado através das tagged values relacionadas a seguir:

        ===============================================================
        @andromda.presentation.view.external_hyperlink.application.name
        ===============================================================
        Aplicável em:
            Estados Finais

        Objetivo:
            Utilizado quando se deseja acessar um caso de uso de outro sistema, o seu conteúdo deve ser o nome do sistema a ser acessado.

        ===============================================================
        @andromda.presentation.view.external_hyperlink.modulo
        ===============================================================
        Aplicável em:
            Estados Finais

        Objetivo:
            Utilizado quando se deseja acessar um caso de uso de outro módulo, o seu conteúdo deve ser o nome do módulo a ser acessado.

        ===============================================================
        @andromda.presentation.view.external_hyperlink
        ===============================================================

        Aplicável em:
            Estados Finais

        Objetivo:
            Utilizado quando se deseja acessar um caso de uso externo, em geral o conteúdo é /<<NOMECASOUSONOMECASOUSO>>/<<NOMECASOUSONOMECASOUSO>>.do.

        ===============================================================

        - No seu caso, como são módulos web da mesma aplicação a tagged values @andromda.presentation.view.external_hyperlink.application.name não precisa ser usada. Basta
        usar as duas outras informando o módulo web e o complemento da URL para o caso de uso destino.

        Pela URL que vc tentou acessar provavelmente vc tera que preencher as tagged values com o conteudo abaixo:

        @andromda.presentation.view.external_hyperlink.modulo=empreendimentos

        @andromda.presentation.view.external_hyperlink=/ConsultarEmpreendimento/ConsultarEmpreendimento.do

        Importante: Não preencha o nome do Estado Final que fizer essa transição, deixe-o em branco. A transição deve ser pelo nome OU pelas tagged values.

         Tente usar com as informações acima. Se tiver algum problema nao deixe de avisar :)

        Ats,
        Rodrigo.

        • 5fbd02f249b6c95f8802075a79e03979?only path=false&size=50&d=404Debora Andrade de Lima(usuário não autenticado)
          2 de Fevereiro de 2011, 15:54

           

          Opa, funcionou direitinho sim. Mas no meu caso todos os módulos deverão ter transições para todos os módulos? Não há uma solução mais elegante para casos assim?

           

          Grata.

          • Bb0d54eb9311d61feb3e8ba4b597ea71?only path=false&size=50&d=404Roque Pinel(usuário não autenticado)
            3 de Fevereiro de 2011, 10:00

             

            Todos os outros módulos devem ser acessados a partir do módulo principal, mesmo que não diretamente.

            No MDArte, conexões entre casos de uso são estabelecidas utilizando-se o elemento UML Final State. A idéia original do AndroMDA estabelecia que o Final State deveria ter o nome do caso de uso seguinte, visto que originalmente não se tem módulos. Dessa forma, a conexão de casos de uso de módulos diferentes é feita pelo uso das Tagged Values mencionadas pelo Rodrigo.

            • 524d045200366b8d318f898ff5377ab3?only path=false&size=50&d=404Rodrigo Salvador Monteiro(usuário não autenticado)
              3 de Fevereiro de 2011, 12:22

               

              Ola Debora,

              complementando a explicacao do Roque, estamos nos baseando na premissa de que todo o fluxo da aplicacao devera estar modelado atraves de diagramas de atividades. Sendo assim, sempre que houver uma transicao entre dois casos de uso esta devera ser feita atraves de alguma informacao contida no Estado Final. Nao modelar essas transicoes nao seria interessante uma vez que perderiamos informacoes de documentacao sobre o fluxo. Vc tem alguma situacao no seu projeto na qual este tipo de representacao nao atenda? De qualquer forma estamos sempre totalmente abertos a sugestoes e contribuicoes. Se tiver alguma outra sugestao de representacao ou algum cenario onde a representacao atual nao atenda os requisitos do seu projeto nao deixe de nos enviar.

          • 5fbd02f249b6c95f8802075a79e03979?only path=false&size=50&d=404Debora Andrade de Lima(usuário não autenticado)
            14 de Fevereiro de 2011, 19:05

             

            Desculpe a demora na resposta.

            No momento esta solução me atende sim. No meu caso o caso de uso principal é como um menu, que tem entao transições para todos os demais modulos.

            obrigada a todos

Checklist para o projeto de interfaces

14 de Dezembro de 2011, 16:00, por Desconhecido

Este é um roteiro básico para verificação dos elementos interface para desenharmos um projeto. Vale lembrar que os projetos do MDArte são basicamente em CRUD (Create, Retrieve, Update e Delete) e não sistemas CMS com outras divisões e exibições. Cada um pode ter a sua lista e seria legal enviar comentários com adendos para ficar cada vez mais completa e padronizada.



Monthly archive for agosto 2010 CSS, Plugins, jQuery Flexigrid – Tabelas inteligentes com CSS e jQuery

14 de Dezembro de 2011, 15:46, por Desconhecido

Essa semana aqui no projeto, estávamos procurando uma solução para algumas tabelas que extrapolavam o tamanho da



Auto-Grid 960

14 de Dezembro de 2011, 15:41, por Desconhecido

Essa dica vai pra quem não tem muita paciência de configurar um js de grid 960 direto no seu código para ver o alinhamento de seus elementos.



Título na tabela do displayTag

14 de Dezembro de 2011, 15:39, por Desconhecido

O MDArte utiliza o displayTag e é possível customiza-lo de diversas maneiras. Uma coisa legal é colocar um título que só será exibido quando a consulta for executada.



CSS3:Textos com sombras

14 de Dezembro de 2011, 15:12, por Desconhecido

Se voce aplicar a propriedade “box-shadow” em um texto, a mesma vai ser aplicada em sua caixa (box). Para isso foi criada a propriedade “text-shadow”.
Seu uso é o seguinte: