Migrar sistema para web, como fazer? o que usar?

9 respostas
R

Eai pessoal, tudo certo?

Não tenho muita experiência em JAVA, na verdade tenho apenas um projeto desenvolvido em SE. É um controle de estoque pequeno, onde uso um framework de persistência de dados O.O. O nome é Perola, esta disponível no SourceForge.

Eu gostaria muito de disponibilizar o sistema via web, na intranet da empresa, mas sem ter que refazer todo o software. Acho que deve ser possível aproveitar minha camada de negócios e desenvolver a camada de apresentação para web.

A dúvida é a seguinte, com o que e como eu posso fazer isto?

Li os tutoriais sobre Thinwire e sobre Google Web Toolkit e me pareceu interessante, já que acredito que não teria grandes dificuldades. Sei, também, que poderia desenvolver algo em JSP, que continua sendo JAVA mas amplia o conhecimento. E acredito que poderia ser feito até em PHP.

Gostaria de saber dos mais experientes qual o melhor caminho e o que preciso para começar.

Agradeço muito a atenção.
Rafael Novello.

9 Respostas

P

Depende muito da arquitetura que vc utilizou no seu sistema desktop. Se foi desnvolvico em 3 camadas, já é um começo para facilitar a migração.

mInEiRo

Bom

se sua aplicação foi bem separada e usada corretamente o MVC, não será muito complicado.

Para desenvolvimento web hoje é muito utilizado no mercado o STRUTS. Mas tem outros.

Eu indicaria vc instalar o struts e configura-lo para sua camada de persistencia e fazer alguns testes. Ou até mesmo fazer uns cadastros em cima da sua aplicação, até vc sentir firmesa.

Struts + JSP

R

paulohrl:
Depende muito da arquitetura que vc utilizou no seu sistema desktop. Se foi desnvolvico em 3 camadas, já é um começo para facilitar a migração.

Bom, me corrija se eu falar besteira, mas 3 camadas seriam apresentação, negócios e persistência correto?
Eu utilizei apenas duas, a persistência é feita na camada de negócios. Olha um exemplo:

public void alteraCotacao(PerolaList cotacoes){ this.cotacoes = cotacoes; Perola.saveObj(this); }

Este é um método da camada de negócios, a 3ª linha faz a persistência.

Obrigado.

R

mInEiRo:
Bom

se sua aplicação foi bem separada e usada corretamente o MVC, não será muito complicado.

Para desenvolvimento web hoje é muito utilizado no mercado o STRUTS. Mas tem outros.

Eu indicaria vc instalar o struts e configura-lo para sua camada de persistencia e fazer alguns testes. Ou até mesmo fazer uns cadastros em cima da sua aplicação, até vc sentir firmesa.

Struts + JSP

Oi Mineiro,

Não sei se só isso responde a questão do MVC, mas nada da camada de negócios mexe com a camada de apresentação, apenas o contrário.

Já andei mexendo um pouco com JSP (Struts não) mas até onde eu fui, com os tutoriais me ajudando, não passei dos Hello Word. Gostaria de ver como uma aplicação JAVA Web trabalha com os dados, como a informação passaria do browser para minha camada de negócios, entende?

Obrigado pela força.

P

Rafael Novello:

Bom, me corrija se eu falar besteira, mas 3 camadas seriam apresentação, negócios e persistência correto?
Eu utilizei apenas duas, a persistência é feita na camada de negócios. Olha um exemplo:

public void alteraCotacao(PerolaList cotacoes){ this.cotacoes = cotacoes; Perola.saveObj(this); }

Este é um método da camada de negócios, a 3ª linha faz a persistência.

Obrigado.

Se vc manteve a sua camada de apresentação bem separada do modelo de negócios, e é modelo quem faz a persistência, ainda assim você pulou uma camada certo, o controle? Na sua resposta ao outro amigo ai em cima vc citou que a camada de apresentação mexe no modelo, então acredito que sua apresentação esteja somando a função de controle. Não é o ideal, mas da pra migrar sim. Na verdade o melhor seria vc manter sua camada de negocio com a persistencia, mas refazer a visualização e o controle.

Eu acho uma boa opção usar JSP na visualização. No controle vc pode usar algum framework ou só servlet puro mesmo. Se vc não conhece nada ainda de web, eu indicaria servlet para começar a aprender e realmente aprender, entende? Caso queira partir direto para um framework, sem saber servlets direito, o que eu não recomendo, eu te indico fortemente o VRaptor, que é um framework muito bom e de fácil aprendizado (pelo menos para as tarefas básicas). Tem uma porção de outros bons frameworks e espero que não comece aqui mais uma discussão de qual é melhor, mas a questão é mais com qual vc se da bem trabalhando.

B

Apresentação, Controlador e Modelo

Basicamente o que você quer fazer com o sistema é exatamente o que o MVC propõe a solucionar.

Não mudando uma linha de código das camadas de negócio e persistência (as duas juntas formam a camada Modelo), você deve fazer com que as outras duas camadas montem as páginas a partir dos dados retornados por ela, e que transformem os dados recebidos das páginas para os parâmetros que a sua camada de negócios deve receber.

Ao final você terá um código que funcione da mesma maneira tanto na Web quanto no Desktop.

R

paulohrl:

Se vc manteve a sua camada de apresentação bem separada do modelo de negócios, e é modelo quem faz a persistência, ainda assim você pulou uma camada certo, o controle? Na sua resposta ao outro amigo ai em cima vc citou que a camada de apresentação mexe no modelo, então acredito que sua apresentação esteja somando a função de controle. Não é o ideal, mas da pra migrar sim. Na verdade o melhor seria vc manter sua camada de negocio com a persistencia, mas refazer a visualização e o controle.

Eu acho uma boa opção usar JSP na visualização. No controle vc pode usar algum framework ou só servlet puro mesmo. Se vc não conhece nada ainda de web, eu indicaria servlet para começar a aprender e realmente aprender, entende? Caso queira partir direto para um framework, sem saber servlets direito, o que eu não recomendo, eu te indico fortemente o VRaptor, que é um framework muito bom e de fácil aprendizado (pelo menos para as tarefas básicas). Tem uma porção de outros bons frameworks e espero que não comece aqui mais uma discussão de qual é melhor, mas a questão é mais com qual vc se da bem trabalhando.

Entendi!!! Acho que agora já tenho uma idéia pra começar a estudar. É isso mesmo que eu queria fazer, reescrever apenas a apresentação (e o controle tbm). Acho que aqui mesmo no GUJ encontro bons materiais sobre servlet e até MVC, vc tem alguma fonte para indicar?

Agradeço a força.

R

Bruno Laturner:

Apresentação, Controlador e Modelo

Basicamente o que você quer fazer com o sistema é exatamente o que o MVC propõe a solucionar.

Não mudando uma linha de código das camadas de negócio e persistência (as duas juntas formam a camada Modelo), você deve fazer com que as outras duas camadas montem as páginas a partir dos dados retornados por ela, e que transformem os dados recebidos das páginas para os parâmetros que a sua camada de negócios deve receber.

Ao final você terá um código que funcione da mesma maneira tanto na Web quanto no Desktop.

Isso!!! É bem assim que quero aprender a programar, acho que vou estudar o MVC com mais calma. Eu tenho um livro que fala um pouco sobre, é o Head First Design Patterns, vc conhece outra fonte boa?

B
Criado 10 de setembro de 2008
Ultima resposta 12 de set. de 2008
Respostas 9
Participantes 4