Boa tarde Pessoal… Esse é meu primeiro post e eu estou começando a programar em Java.
Eu preciso desenvolver um sistema em java para Desktop que rode todo no servidor. O que meu cliente quer é que o sistema fique centralizado no servidor e que cada usuário acesse o sistema pela rede, sem ter que ficar instalando a aplicação em cada máquina… Como eu estou iniciando, não sei se existe essa possibilidade. Sei que posso deixar o banco num servidor e fazer a conexão, mas não é isso que o cliente quer. Ele me disse também que não quer um sistema via browser, (site) quer uma tela como a de um sistema Desktop (Vai entender o cara rsrs). Alguém teria uma solução para o meu problema? Alguma dica por onde posso procurar? Grato.
Java Rodando no Servidor
16 Respostas
Use jnlp.
http://download.oracle.com/javase/tutorial/deployment/webstart/deploying.html
Veja um exemplo:
http://www.pontov.com.br/files/outros/vinigodoy/particles/particles.html
PS: Você realmente achava que isso era Java básico quando abriu o tópico? Temos um fórum para “Interface Gráfica”, “Java Avançado” e “Desenvolvimento Web”. Sua dúvida se encaixaria melhor em qualquer um dos três. Por favor, leia atentamente a descrição dos fóruns antes de postar.
Como sem Site!?..Nesse caso, acho que você ter que programar tudo na Nuvem meu chapa (Cloud Computing)…
Talvez possa estar errado nesse conceito pois sou novo na área como você, mais eu acredito que a solução seja essa…
O que esse rapaz deseja é que a máquina dele não seja hospedeira de nenhuma aplicação, presumo eu
Opa… desculpe ai ViniGodoy pelo post no lugar errado… eu postei pois achei que era para os novatos… Mas vou dar uma olhada nesse material que vc me passou…
slashjvc… o que é esse esquema de Cloud Computing? o que o cliente quer é que tenha um ícone e quando ele clicar abra a janela do sistema, sem que ele esteja instalado na máquina dele.
Obrigado por enquanto
Então azaleski…
Nesse conceito, a sua aplicação trabalharia dentro de um servidor, no qual ficaria em um local diferente da empresa, em um servidor na Nuvem (Internet).
O seu desenvolvimento seria praticamente o mesmo, mais o acesso seria em um servidor, conforme seu cliente citou…
Acredito eu que nesse caso, tendo um servidor para armazenar a sua aplicação para que ela possa ser usada em um âmbito empresarial sem necessidade de estar rodando em Local, “Programar na Nuvem”, que é um jargão comum, seria ideal…
Mais o ViniGodoy é muuuito experiente…nesse caso, posso dizer que o que ele falou, tá falado!!!.. 
Ele que me ajuda nas aplicações que desenvolvo!
Realmente slashjvc, o que o ViniGodoy falou é o que eu preciso… dentro do link da Oracle que ele me passou, tem um exemplo exatamente do que eu tava procurando… agora vou atraz da documentação para aprender sobre isso. Obrigado aos dois e com certeza vou ter muitas dúvidas daqui pra frente… Obrigado novamente.

Só uma curiosidade… A cidade da sua localização é o meu sobrenome!

Só uma curiosidade… A cidade da sua localização é o meu sobrenome!
Eheh…
Vinícius Godoy Ivoti?
Não, dei quote no slashjvc.
Vinícius Godoy de Mendonça
Oh, eu lí umas duas vezes pra ter certeza que olhei do cara certo… Mas convenhamos, azaleski e slashjvc não são muito diferentes… rs
=)
Até mais!
Bom dia ViniGodoy… Só uma dúvidazinha básica… eu tava procurando sobre o que vc me passou e achei um tal de RMI… isso tem alguma coisa a ver ou não? Grato.
RMI serve pra você fazer chamadas remotas a procedimentos que estão em outra máquina. É um procedimento básico pra fazer algo cliente servidor. No seu caso, você ainda vai instalar a aplicação na máquina do usuário.
Aliás, você não precisar deixar na nuvem, no GAE ou em qualquer lugar. Você pode colocar em uma máquina um pouco mais parruda (o servidor) os processamentos ‘pesados’. E o cliente faz essas chamadas usando o JNLP. Se estiver com bastante vontade de aprender Java, dê uma pesquisada em Servidores de Aplicação (mas aqui é um pouco mais avançado. Sugiro ficar com o JNLP e, se algum dia precisar de toda a força de um Servidor de Aplicação, você estuda).
Bom dia Andre Brito.
Na verdade o cliente não quer nada instalado na máquina dele… quer que tudo fique num servidor. Por isso que eu abri esse tópico. O JNLP, pelo que eu vi, faz isso, a única cosisa que eu precisei foi instalar a máquina virtual java no meu note. A não ser que eu esteja errado… e realmente eu não tenho muito conhecimento… Mas vou começar a estudar isso… e tomara que eu consiga desenvolver… ainda bem que tenho até Dezembro pra terminar o sistema… rsrs… Mas me diz uma coisa… pra eu deixar rodando no servidor eu não tenho que fazer um servidor de aplicação?
Obrigado.
Você não precisa de um servidor de aplicação. É uma alternativa, mas no seu caso acho que você deve usar algo mais simples que já resolve seu problema (que pode ser o JNLP).
O que eu quis dizer é que com RMI você vai precisar instalar na máquina cliente a parte que faz as chamadas pro servidor (que é o que você não quer). Portanto, é uma alternativa que você deve possivelmente deve descartar.
Andre Brito, agora sim eu entendi o que você quis dizer… Só me tira uma dúvidazinha (rsrs de novo) como eu não sei ainda usar o JNLP, eu desenvolvo o sistema normalmente e instalo ele numa máquina com banco e tudo certo? dai depois eu crio um arquivo com JNLP para buscar o sistema atravéz de outra máquina, ou eu tenho que desenvolver o sistema todo com JNLP?
Grato novamente
O JNLP é só a ‘porta’ de entrada pro sistema. O ideal, no seu caso, é desenvolver o sistema todo, sem JNLP. E depois, quando pronto, implementar os recursos do JNLP pra comunicar. Ou seja, você constrói todo o sistema e deixa ele e o banco numa máquina. Mas a ‘porta’ de entrada, o JNLP nesse caso, você tem que colocar na máquina cliente.
Dessa forma, se precisar mudar de JNLP pra outra coisa (vamos supor um bat que faz download da app e, no final, deleta ela), você só tem que mudar essa forma de fazer a comunicação.
Você falou que não pode ser nem no browser, certo? Não sei se JNLP pode ser acessado sem o browser, precisa dar uma verificada. Se não puder, uma boa é fazer isso do bat que falei acima (pra Windows - pra Linux você usa um sh mesmo). Você cria o arquivo que, quando o usuário clicar 2x, vai fazer um download (tipo uma atualização) e vai executar. No final, deleta os arquivos.
Andre Brito… valeu pela dica… me tirou uma baaaaita dúvida. A respeito do não usar browser eu vi que o JNLP dá pra executar de um atalho na area de trabalho, pelo menos é o que diz no site da Oracle. Valeu pela ajuda… muito obrigado mesmo…
Att
Alexandro