O problema é que você não consegue obter uma conexão com o banco de dados MYSQL e, portanto, está gerando um erro informando que não é possível criar uma fábrica de sessões.
Por favor, veja o erro abaixo:
Caused by: java.sql.SQLException: Access denied for user ''@'localhost' (using password: NO)
que aponta para
username
não está sendo populated
. Verifique novamente as propriedades do sistema
dataSource.setUsername(System.getProperty("root"));
alguns pacotes parecem estar faltando também apontando para um problema de dependência:
package org.gjt.mm.mysql does not exist
Por favor, execute um
mvn dependency:tree
comando para verificar dependências