RESOLVIDO - Criar atributos no banco com Hibernate (JPA) pela interface com usuário é possivel?

Galera, venho novamente pedir uma ajuda para vocês…

Preciso criar uma interface, onde o usuário pode criar novos campos (componentes… inputText, calendar) dinamicamente. Consequentemente preciso poder criar novos atributos no BD para estes campos criados. Estou usando hibernate (JPA), primefaces, jsf 2.
Isso é possível? Alguém poderia me dar uma luz?
Não sei se fui claro, mas conto com a ajuda de voces!
Obrigado!!

Isso não seria correto e acarretaria muitos problemas de relacionamento em seu sistema.

Você deve criar atributos dinâmicos para fazer isso da forma correta, seria uma tabela onde seriam guardados o label do atributo, tipo de campo, valores maximos e minimos, etc, e outra com o valor armazenado no campo falando a grosso modo.

espero ter ajudado.

Olá Fábio,

primeiramente obrigado pela ajuda.
Você diz para criar uma tabela com vários atributos “sobrando”, e depois atribuir a eles os novos campos criados?

Na verdade não, seria algo mais ou menos assim

Atributos da tabela Campos:

ID, NOME_CAMPO, TIPO_CAMPO (POR EX, INPUTTEXT, CHECKBOX, ETC)

Atributo da tabela Campo_Valores:

ID, CAMPO_ID, VALOR, OBRIGATÓRIO, TAMANHO_MINIMO, TAMANHO_MAXIMO, VALORES_ACEITOS(NO CASO DE COMBOS E RADIO_BUTTONS POR EX) e o que mais voce precisar

um exemplo de aplicação:

Tabela Campos:

ID, NOME_CAMPO, TIPO_CAMPO, VALORES_ACEITOS

1 NOME, INPUTTEXT

2 SEXO, RADIOBUTTON MASCULINO|FEMININO

Tabela Campo_Valores:

ID, CAMPO_ID, VALOR, OBRIGATÓRIO, TAMANHO_MAXIMO, TAMANHO_MINIMO, PESSOA_ID

1 1 Fábio, TRUE, 5, 50, 1
2 2 Masculino, TRUE, , , 1

A grosso modo seria isso entendeu?

Você vai gerenciar os campos dinamicos por registros na tabela, e recuperar eles conforme o tipo e requisitos que você especificar.

não sei se consegui ser claro.

abraço

Interessante… acho que entendi sim!!

Só uma última dúvida. Ali na tabela Campo_Valores, PESSOA_ID, seria a id de uma tabela PESSOA, certo? O que teria nessa tabela além da id? Já que todos os seus dados estarão na tabela Campo_Valores (pelo o que entendi).

Muito Obrigado mesmo. Me ajudou muito!!!

sim, mas poderia ser um produto, um veiculo, qualquer coisa que tivesse a necessidade de atributos dinamicos, só foi 1 exemplo

Obrigadão pela força Fábio!! Acredito que com essa ideia, eu consiga resolver o meu problema de maneira correta.

Abraços.