EJB sem auteticação  XML
Índice dos Fóruns » Desenvolvimento Web
Autor Mensagem
marcosalex
GUJ Expert
[Avatar]

Membro desde: 20/02/2008 12:32:59
Mensagens: 3371
Offline

Tem como fazer uma aplicação com EJB onde eles não precisem de autenticação?

Tenho uma aplicação EJB que utiliza jaas, mas quero fazer uma consulta que o usuário não precise autenticar. Mesmo retirando o Jaas, dá a seguinte mensagem:
javax.ejb.EJBAccessException: Invalid User

[Yahoo!] aim icon [ICQ]
jakefrog
GUJ Expert
[Avatar]

Membro desde: 22/01/2007 22:00:53
Mensagens: 4190
Online

Tentar colocar a anotação @RollesAllowed com javax.annotation.security.PermitAll.

Meu blog sobre java uaiHebert.com
Conceitos OO - Diga, não pergunte!, Lei de Demeter
TDD Primeiros Passos, JUnit com HSQLDB, JPA e Hibernate, Cobertura de testes com JUnit Ant e Emma, Cobrindo seus testes com Cobertura, JUnit, HSQLDB, JPA
Código Limpo: Partes: 01,02,03,04,05
Web/JSF - Criando um WebServer, Tratando Exceções, Autenticação de Usuários (Filter/Servlet), JSF - Hello World, AutoComplete, JSF: Converter e Bean Auto Complete, Validação de Login de Usuário com JSF e JAAS, JSF Exibindo Objeto e Mensagens após Redirect, JSF Exemplos Simples com Ajax, JSF Parametros por Get Request RESTFullAplicação Web Completa JSF EJB JPA JAAS, Lazy JSF Datatable Pagination (Primefaces)
Design Pattern - Strategy, Design Pattern - Observer (Parte 01), Design Pattern - Observer (Parte 02)
Business (JPA)- Hibernate 3 com JPA 2, Create schema script: Ant, Hibernate 3 e JPA 2, TableGenerator Chave Primária Simples, SequenceGenerator,Chave Primária Composta, Mapeando Datas (Date) e Enum, Mapeando Duas Tabelas em uma Classe, @OneToOne Unidirecional e Bidirecional, @OneToMany e @ManyToOne Unidirecional e Bidirecional, @ManyToMany Unidirecional e Bidirecional, Ordernando listas e utilizando Map como atributo mapeado,Uma tabela por herança, JPA Uma Classe por Sub-Classe, JPA Consultas e Dicas, [HOT]Quatro soluções para LazyInitializationException[HOT]

SCJP(1.6 - Ingles - 29/12/2009)
SCWCD(1.5 - Ingles - 30/06/2010)

Vamos em frente que atrás vem gente!
johnny quest
JavaEvangelist
[Avatar]

Membro desde: 01/02/2010 10:48:39
Mensagens: 372
Offline

Na verdade essa exception acontece por erro de autorização, por ter sido chamado o método com role não permitido.

Para se resolver pode se modificar a classe mudando a anotação, como o amigo jakefrog disse usando @PermitAll
ou mais facilmente somente mudando
o arquivo ejb-jar.xml

sobrescrevendo via xml a anotação definido no seu ejb.

adicionando tal parte no seu ejb-jar.xml resolveria seu problema por eliminar a necessidade de estar autorizado.


<ejb-jar ...>
<enterprise-beans>
...
</enterprise-beans>
<assembly-descriptor>

<method-permission>
<unchecked/>
<method>
<ejb-name>YourEJB</ejb-name>
<method-intf>Local</method-intf>
<method-name>yourMethod</method-name>
</method>
</method-permission>

</assembly-descriptor>
</ejb-jar>




[ICQ]
 
Índice dos Fóruns » Desenvolvimento Web
Ir para:   
Powered by JForum 2.1.8 © JForum Team