Porque foi necessário adicionar a anotação de cache de segundo nível para a propriedade categoria, que possui um relacionamento ManyToMany com a classe Produto, mas essa anotação no relacionamento não foi necessária com a propriedade loja, que possui o relacionamento ManyToOne na classe produto?
@ManyToMany
@Cache(usage=CacheConcurrencyStrategy.NONSTRICT_READ_WRITE)
private List<Categoria> categorias = new ArrayList<>();