Tecnologias que devo utilizar

Olá galera.

Vou desenvolver uma aplicação web aqui na empresa onde eu trabalho e queria que vocês me ajudassem na questão das tecnologias Java que devo utilizar bem como na metodologia.
A aplicação que desenvolverei é uma ferramente web que será disponibilizada para os clientes através de um web service. Essa aplicação conterá vários outros módulos (leia-se componentes) que poderão ser adicionados e utilizados futuramente. Esses módulos serão colocados em uma pasta no diretório da minha aplicação e serão carregados e disponibilizados pra uso assim que aplicação carregar.
Por exemplo, eu posso agregar na minha aplicação um módulo para gerar planilhas no Excel, um módulo para gerar PDF ou para gerar relatórios bastando apenas colocar o .jar do modulo em uma determinada pasta da minha ferramenta.

Não sei se fui claro o suficiente, mas, qualquer dúvida, eu posto mais detalhes aqui.

já conhece a linguagem JAVA? API?

Sim, conheço.
Já me recomendaram trabalhar com EJB3, mas ainda não sei se é um boa idéia.

deixa eu ver se eu entendi…

vc tem uma aplicacao, e quer desenvolver novas aplicacoes q vão utilizar informações do outro sistema atraves de webservice, certo?!

Desconheço EJB, nao sei como funciona, portanto nao sou o melhor para opinar sobre ele… :frowning:

Agora, a sua duvida eh qual? Criar o webservice?

[quote=pardal_nb]deixa eu ver se eu entendi…

vc tem uma aplicacao, e quer desenvolver novas aplicacoes q vão utilizar informações do outro sistema atraves de webservice, certo?!

Desconheço EJB, nao sei como funciona, portanto nao sou o melhor para opinar sobre ele… :frowning:

Agora, a sua duvida eh qual? Criar o webservice?[/quote]

Não!

Quero permitir que minha aplicação seja escalável a ponto de jogar um .jar dentro de uma pasta e ela o disponibilize para utilização, como se fosse um componente. O .jar, por exemplo, poderia ser um módulo para gerar planilhas no Excel.
Minha dúvida é em relação a quais são as melhores tecnologias a se utilizar. Como disse, já me recomendaram utilizar EJB3, porém, ainda não sei se é a melhor opção ou se devo partir para algo mais baixo nível ou, até, quem sabe, alguma outra tecnologia.

bom, a primeira coisa a fazer é uma arquitetura voltada para interfaces!
um exemplo é o jdbc, no jdk tem um monte de interface, quando vc “joga” um .jar do conector mysql no seu classpatch, você implementa essas interfaces, é por isso que não importa qual banco vc está usando para conectar sua aplicação java, todos os drivers de conexão implementam as mesmas interfaces!!

[quote=mcbarsotti]bom, a primeira coisa a fazer é uma arquitetura voltada para interfaces!
um exemplo é o jdbc, no jdk tem um monte de interface, quando vc “joga” um .jar do conector mysql no seu classpatch, você implementa essas interfaces, é por isso que não importa qual banco vc está usando para conectar sua aplicação java, todos os drivers de conexão implementam as mesmas interfaces!!

[/quote]

Ok… obrigado por responder amigo.

Tudo bem, concordo contigo no lance das interfaces ou até fazer uma introspecção e procurar pelos métodos que eu quero executar nas classes do .jar, porém, o meu problema é em relação a quais tecnologias utilizar.
A propósito, aproveitando o embalo do tópico, alguém conhece algum pattern ou alguma forma de se manter o estado entre chamadas a um web service. Como, por exemplo, uma sessão HTTP. (Antes que alguém se antecipe, eu conheço o mínimo sobre web services e sei que eles não mantêm estado. O que eu gostaria de saber é se há alguma forma de contornar isso via programação.)

Olá tico.e.a. blz,

Dá uma olhada nesse site abaixo, eu recomendo.

http://www.springframework.org

Nele vc pode implementar o padrão MVC, tem um excelente controle transacional,
suporte a Hibernate, JPA, Web Services, e por ai vai…

Espero ter ajudado !! :slight_smile:

[quote=tico.e.a.]Quero permitir que minha aplicação seja escalável a ponto de jogar um .jar dentro de uma pasta e ela o disponibilize para utilização, como se fosse um componente. O .jar, por exemplo, poderia ser um módulo para gerar planilhas no Excel.
Minha dúvida é em relação a quais são as melhores tecnologias a se utilizar. Como disse, já me recomendaram utilizar EJB3, porém, ainda não sei se é a melhor opção ou se devo partir para algo mais baixo nível ou, até, quem sabe, alguma outra tecnologia.[/quote]

Quem tem essa característica de colocar jar numa pasta e rodar o seu conteúdo é o Eclipse, que usa o OSGi. Porém, nunca vi isso em web.

Se você quer um componente web, você implementa usando o que a maioria dos frameworks web faz: implemente Filter! E peça pro usuário colocar o seu Filter no web.xml.