Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Nao Insere Usuario e Role

no meu DB aparece apenas as tables ( produto, produto_precos e usuario_role) porque nao aparece as roles e usuarios?

UsuarioDao

@Repository
public class UsuarioDAO implements UserDetailsService {

    @PersistenceContext
    private EntityManager manager;

    @Override
    public Usuario loadUserByUsername(String email) {
        List<Usuario> usuarios = manager.createQuery("select u from Usuario where u.email = :email", Usuario.class)
                .setParameter("email", email).getResultList();
        if (usuarios.isEmpty()) {
            throw new UsernameNotFoundException("Usuario " + email + " não foi encontrado");
        }
        return usuarios.get(0);
    }

}

Role

@Entity
public class Role implements GrantedAuthority {

    private static final long serialVersionUID = 7872503757574608017L;

    @Id
    private String nome;

    public String getNome() {
        return nome;
    }

    public void setNome(String nome) {
        this.nome = nome;
    }

    @Override
    public String getAuthority() {
        return this.nome;
    }

}

ServletSpreingMVC

public class ServletSpringMVC extends AbstractAnnotationConfigDispatcherServletInitializer {

    @Override
    protected Class<?>[] getRootConfigClasses() {
        return new Class[] { SecurityConfiguration.class, AppWebConfiguration.class, JPAConfiguration.class };
    }

    @Override
    protected Class<?>[] getServletConfigClasses() {
        return new Class[] {};
    }
...

SecurityConfig.

@EnableWebMvcSecurity
public class SecurityConfiguration extends WebSecurityConfigurerAdapter {
    @Autowired
    private UsuarioDAO usuarioDao;

    @Override
    protected void configure(HttpSecurity http) throws Exception {
        http.authorizeRequests().antMatchers("/produtos/form").hasRole("ADMIN").antMatchers("/carrinho").permitAll()
                .antMatchers(HttpMethod.POST, "/produtos").hasRole("ADMIN").antMatchers(HttpMethod.GET, "/produtos")
                .hasRole("ADMIN").antMatchers("/produtos/**").permitAll().antMatchers("/").permitAll().anyRequest()
                .authenticated().and().formLogin();
    }

    @Override
    protected void configure(AuthenticationManagerBuilder auth) throws Exception {
        auth.userDetailsService(usuarioDao).passwordEncoder(new BCryptPasswordEncoder());
    }
}
3 respostas

o log aparece que criou, mas no DB nao esta aparecendo.. :?

WARNING: Please consider reporting this to the maintainers of org.springframework.cglib.core.ReflectUtils$1
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
Hibernate: drop table if exists Produto
Hibernate: drop table if exists Produto_precos
Hibernate: drop table if exists Role
Hibernate: drop table if exists Usuario
Hibernate: drop table if exists Usuario_Role
Hibernate: create table Produto (id integer not null auto_increment, dataLancamento datetime, descricao varchar(255), paginas integer not null, sumarioPath varchar(255), titulo varchar(255), primary key (id)) engine=MyISAM
Hibernate: create table Produto_precos (Produto_id integer not null, tipo integer, valor decimal(19,2)) engine=MyISAM
Hibernate: create table Role (nome varchar(255) not null, primary key (nome)) engine=MyISAM
Hibernate: create table Usuario (email varchar(255) not null, nome varchar(255), senha varchar(255), primary key (email)) engine=MyISAM
Hibernate: create table Usuario_Role (Usuario_email varchar(255) not null, roles_nome varchar(255) not null) engine=MyISAM
Hibernate: alter table Usuario_Role add constraint UK_jnmoadyberbn5oyaybe8dxskj unique (roles_nome)
Hibernate: alter table Produto_precos add constraint FK553k5h7a8cjy5qgjlavm0v5d9 foreign key (Produto_id) references Produto (id)
Hibernate: alter table Usuario_Role add constraint FK71ew4k231fswbu8x4lw6axoqm foreign key (roles_nome) references Role (nome)
Hibernate: alter table Usuario_Role add constraint FKrsegjot8s70o2whkmbaciul7m foreign key (Usuario_email) references Usuario (email)
jul 27, 2018 2:56:11 PM org.apache.catalina.core.ApplicationContext log
INFORMAÇÕES: Initializing Spring FrameworkServlet 'dispatcher'
jul 27, 2018 2:56:11 PM org.apache.coyote.AbstractProtocol start
INFORMAÇÕES: Starting ProtocolHandler ["http-nio-8080"]
jul 27, 2018 2:56:11 PM org.apache.coyote.AbstractProtocol start
INFORMAÇÕES: Starting ProtocolHandler ["ajp-nio-8009"]
jul 27, 2018 2:56:11 PM org.apache.catalina.startup.Catalina start
INFORMAÇÕES: Server startup in 31059 ms

print do BD https://gyazo.com/aa828cb2cf3f8d455e4acc902bef19c7

solução!

Fala Eduardo, tudo bem ?

Cara que estranho! Os logs realmente dão conta de que as tabelas foram criadas. Pode colocar aqui o código da classe de configuração da JPA ?

Abs

Boa Tarde!

Resetei o DB, e reiniciei o projeto, refiz a aula e voltou ao normal. Busquei alguma alteração e não achei nada, contudo funcionou...Obrigado pela atenção!