Outro ponto que observei agora é o seguinte.
Na sua Domain telefone vc diz que "o mesmo telefone pode pertencer a mais de um membro. É isso mesmo que você quer?
Talvez isto esteja influenciando no erro, pois você montou um relacionamento de N -> N, pois o mappedBy é para um relacionamento "Bidirecional", o que seria de chegar ao Membro pelo Telefone ou ao Telefone pelo Membro.
Na verdade eu criei uma tabela de tipos de telefone como segue, e a minha intenção era utilizar o campo tipo na tabela de membros mais de uma vez, ou seja, a cada telefone cadastrado em membros teria o seu respectivo tipo, só que quando não cadastro algum telefone em retorna o erro, pois faz referencia a tabela de tipos, resolvi criando mais um tipo chamado Nao consta, que é o último da tabela para não ficar sem referencia. Mas o que queria mesmo era não precisar de um tipo.
INSERT INTO `telefone_tipo` (`id`, `version`, `tipo`) VALUES
(1,0, 'Igreja'),
(2,0, 'Pastor'),
(3,0, 'Celular'),
(4,0, 'Comercial'),
(5,0, 'Fax'),
(6,0, 'Recado'),
(7,0, 'Residencia'),
(8,0, 'Outros'),
(9,0, 'Nao consta');