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

Anotação @PostConstruct

Bom dia, fiz o download do projeto, porém estou com um problema na classe CriadorDeProdutos.java. Há uma anotação @PostConstruct com erro. O quick fix do eclipse me dá a opção create annotation 'PostConstruct'

5 respostas

Olá Paulo!

Consegue me mandar o código que está abaixo dessa anotação por favor?

Esse:

@PostConstruct

public void init() {

    TransactionTemplate template = new TransactionTemplate(transactionManager);
    template.execute(new TransactionCallbackWithoutResult() {
        @Override
        protected void doInTransactionWithoutResult(TransactionStatus status) {

            Loja casaDoCodigo = new Loja();
            casaDoCodigo.setNome("Casa do Código");

            em.persist(casaDoCodigo);

            Loja musicalAlegre = new Loja();
            musicalAlegre.setNome("Musical Alegre");

            em.persist(musicalAlegre);

            Categoria tecnologia = new Categoria("Tecnologia");
            em.persist(tecnologia);

            Categoria musica = new Categoria("Música");
            em.persist(musica);

            Produto cursoDeViolao = new Produto();
            cursoDeViolao.setNome("Curso de Violão");
            cursoDeViolao.setLoja(musicalAlegre);
            cursoDeViolao.setPreco(49.0);
            cursoDeViolao
                    .setDescricao("Estude com os melhores professores e aprenda no seu ritmo, sem sair de casa.");
            cursoDeViolao.adicionarCategorias(tecnologia, musica);
            cursoDeViolao.setLinkDaFoto(
                    "https://pbs.twimg.com/profile_images/378800000825434860/12136ee913ed4f44860914d44650144e.png");

            em.persist(cursoDeViolao);

            Produto livroDeArquitetura = new Produto();
            livroDeArquitetura.setNome("Introduçao a Arquitetura Java e Design de projetos com Java");
            livroDeArquitetura.setLoja(casaDoCodigo);
            livroDeArquitetura.setPreco(30.0);
            livroDeArquitetura.adicionarCategorias(tecnologia);
            livroDeArquitetura.setDescricao("Neste livro, os autores, conhecidos especialistas da "
                    + " área, apresentam muitos tópicos que aparecem com frequência"
                    + " na plataforma Java, incluindo desde modelagem e design das "
                    + "classes, até detalhes importantes das tecnologias mais utilizadas."
                    + "  Sempre com uma visão técnica e prática capaz de elucidar muitas "
                    + "questões enfrentadas tanto pelo profissional iniciante quanto por "
                    + "aquele que está adquirindo mais experiência na plataforma.");

            livroDeArquitetura.setLinkDaFoto("http://www.arquiteturajava.com.br/img/capa-livro.png");

            em.persist(livroDeArquitetura);

            Produto livroDeSpring = new Produto();
            livroDeSpring.setNome("Vire o jogo com Spring Framework");
            livroDeSpring.setLoja(casaDoCodigo);
            livroDeSpring.setPreco(30.0);
            livroDeSpring.adicionarCategorias(tecnologia);
            livroDeSpring.setDescricao("Criado para simplificar o desenvolvimento de aplicações Java, "
                    + "o Spring se tornou um dos frameworks de mais destaque dentro desse grande ambiente.  "
                    + "Aprenda muito mais que o básico do Spring, desde o tradicional Container de Inversão "
                    + "de Controle e Injeção de Dependências, passando pelos robustos módulos de segurança, "
                    + "transações, programação orientada a aspectos e também o fantástico módulo MVC, o SpringMVC.");

            livroDeSpring.setLinkDaFoto(
                    "http://cdn.shopify.com/s/files/1/0155/7645/products/spring-framework-featured_large.png?v=1411567960");

            em.persist(livroDeSpring);

            Produto violao = new Produto();
            violao.setNome("Violão");
            violao.setLoja(musicalAlegre);
            violao.setDescricao("Excelente violão");
            violao.setPreco(500.0);
            violao.adicionarCategorias(musica);
            violao.setLinkDaFoto("http://www.marillac.g12.br/imgs/atividade%20complementar/violao.jpg");

            em.persist(violao);

            Produto flauta = new Produto();
            flauta.setNome("Flauta Doce");
            flauta.setLoja(musicalAlegre);
            flauta.setDescricao("Flauta doce");
            flauta.setPreco(300.0);
            flauta.adicionarCategorias(musica);
            flauta.setLinkDaFoto(
                    "http://i.mlcdn.com.br/1500x1500/flauta-doce-germanicayamaha-yrs-23g-204013000.jpg");

            em.persist(flauta);

        }
solução!

Olá Paulo!

Tenta colocar esse dependência no seu pom.xml e veja se depois disso é possível importar a anotação:

<dependency>
  <groupId>javax.annotation</groupId>
  <artifactId>javax.annotation-api</artifactId>
  <version>1.3.2</version>
</dependency>

Lembrando que esse trecho deve ficar dentro da tag dependencies

Olá Paulo!

Conseguiu resolver o problema?

Sim, obrigado.