Boa tarde,
Estou neste momento a terminar o curso .
E chegou a fase do projecto final…
Vou tentar explicar o que me foi pedido desenvolver.
A empresa para a qual estou a estagiar pretende uma interface Web para poder gerir uma aplicação que se encontra em Servidores remotos.
A aplicaçao tem ficheiros de configuração (cerca de 40 TXT).
Basicamente gero os ficheiros e envio-os…
-
A parte do envio vou utilizar o rsync usando o ANT.
-
A parte da gestão de configuraçoes, vou utilizar EJBs 3.0 .
EJB’s Sim - porque assim me foi requisitado. -
A parte do portal… portal dinâmico (java - jsp’s / servlets) , porque cada
configuraçao e diferente.
// ----------- O MODELO ----------------- //
Cada aplicação tem ficheiros de configuraçao diferentes e o que me foi pedido foi uma GUI - uma página - Portal , que me permitisse criar/alterar estas configuraçoes, de uma forma “USER-friendly”, e posteriormente após terem sido executadas as alteraçoes, estas seriam enviadas para o servidor ao qual se desejava alterar a sua configuração.
As configuraçoes são dinamicas (podem ter ficheiros diferentes, e dentro de cada ficheiro, os campos com os valores ex.“xpto=3do” , podem existir num ficheiro de uma dada configuraçao e noutra já não),
E PEDIRAM UMA BASE DE DADOS …
PORQUE? Porque numa da dada configuraçao podem existir valores de um dado ficheiro que estao “ligados” a valores/restriçoes impostas por outro valor de um dado campo podendo este ser de um ficheiro diferente, basicamente relacionamento entre Campos sem base de dados…
MAIS, assim como existe a ligaçao entre atributos de um dado ficheiro,
tambem foi pedido para implementar esta ligaçao com partes do ficheiro
(género de INCLUDE de uma porçao bem definida do ficheiro, num outro ficheiro)
Arranjei uma maneira …
Vou tentar explicar o Modelo que vou implementar:
-
Configuraçoes (conjunto de todas as configuraçoes).
-
Configuração : IP , Nome-Servidor, Versao, ArrayList
-
File: MAP<String nomeModulo, Modulo MODULO> , ArrayList NomeModulo
-
Modulo : Map <String nome,Field>, ArrayList NomeField, Arraylist
-
Field : Nome, Value , Arraylist , TipoHtml, Arraylist
-
Rule : ArrayList Path , String Aplication
RULE - o começo da minha B.D.
- Rule : ArrayList PAth: guarda o path ate ao campo desejado:
Por exemplo
“quero criar um campo com nome FrutaKeuGosto, e quero que esse campo tenha ligaçao a todas as frutas existentes na frutaria do Supermercado, do Shoping(13)”
// O conteudo do modulo Frutaria:
Banana
Maca
goiaba
Campo : nome=FrutaKeuGosto, value=“emptyyet” tipoHtml=combobox, rule=rule1
rule1= Path=[Configuraçao(13),File(Supermercado.txt),Modulo(Frutaria)]
,Aplication=OneOfthem;
Para que na criaçao Do frutaKeuGosto no meu portal quero ter uma combobox com os items disponiveis na frutaria. - por exemplo
O oneOFthem para escolher apenas uma das disponiveis.
Escolhia e o value do campo a ser criado passaria de “emptyyet” para “goiaba” por exemplo
- O constraints -> para não estragar a BD
Ao adicionar uma rule a um campo ou modulo, vou adicionar uma constraint no modulo ao qual eu estou a fazer o link para o campo/modulo que lhe fez o pedido da rule
por ex. ao modulo frutaria iria ser adicionada a constraint:
[configuracao(13),Ficheiro(pessoas),Modulo(Ricardo),FrutaKeuGOsto]
para caso haja alguma alteraçao no Modulo Frutaria, possa “activar” uma operaçao para por ex:
- Verificar k a minha fruta n foi removida;
- Poder trocar a minha fruta por outra melhor;
Fim da minha bd
Inicio da sua (vossa) ajuda.
Eu tenho estes objectos em J2SE , agora mapear isto para EJBS…
COMO È K EU O O FAÇO ???
Tenho estas classes todas feitas…
Perguntas:
- cada Classe Java -> Uma entity+DTO?
- O ké eu ponho em cada uma entitiy ou dto?
- persistênia da classe MAP ?
Interface Web - O k é isso? xD - Estou a pensar em algum jsp que vai iterar o ficheiro de uma dada configuraçao e por cada campo vai construir um objecto do tipoHTML (combo,textbox,checkbox…) conforme o k esteja esteja definido