Dúvida com JNI  XML
Índice dos Fóruns » Java Avançado
Autor Mensagem
joca_java
JavaChild
[Avatar]

Membro desde: 16/08/2007 14:02:09
Mensagens: 128
Offline

Opa galera blz?

Seguinte,

precisamos fazer com que uma aplicação em Delphi, chame um método de nossa aplicação desenvolvida em Java certo? Então, gostaria de saber se seria possível fazer isto utilizando JNI. Alguem sabe dizer? Comentamos com o cliente sobre WebService mas não foi aceito.

[]´s
asaudate
GUJ Master
[Avatar]

Membro desde: 01/09/2007 19:31:41
Mensagens: 1794
Localização: São Paulo
Offline

Qual o estado das aplicações? Estão fechadas ou ainda em desenvolvimento?

É o seguinte... uma ponte JNI funciona para o Java fazer uma chamada para uma aplicação... não o contrário. Assim, a única maneira talvez seria o Delphi executar o processo Java (.jar) normalmente, e ficar esperando o processo terminar.


Não pensei muito a respeito, mas é uma idéia.

Alexandre Saudate
__________________________

Do not try to bend the spoon - that's impossible. Instead, only try to realize the truth: there is no spoon.

Série quickstart: Spring+Spring Security+Jersey (REST) +Hibernate (JPA) -> https://github.com/alesaudate/kickstart-springjerseyhibernate

Evite usar Axis2!!! Leia aqui para mais detalhes!

@alesaudate
Quer ler um blog especializado em web services e SOA?

joca_java
JavaChild
[Avatar]

Membro desde: 16/08/2007 14:02:09
Mensagens: 128
Offline

asaudate wrote:Qual o estado das aplicações? Estão fechadas ou ainda em desenvolvimento?

É o seguinte... uma ponte JNI funciona para o Java fazer uma chamada para uma aplicação... não o contrário. Assim, a única maneira talvez seria o Delphi executar o processo Java (.jar) normalmente, e ficar esperando o processo terminar.


Não pensei muito a respeito, mas é uma idéia.


Hum entendí asaudate mas nesse caso acho que não iria dar certo já que vou obter informações que estão na aplicação entendesse???

Luca
Moderador
[Avatar]

Membro desde: 06/09/2002 14:30:10
Mensagens: 5810
Localização: São Paulo/SP ou Paraty/RJ
Offline

Olá

joca_java wrote:Opa galera blz?

Seguinte,

precisamos fazer com que uma aplicação em Delphi, chame um método de nossa aplicação desenvolvida em Java certo? Então, gostaria de saber se seria possível fazer isto utilizando JNI. Alguem sabe dizer? Comentamos com o cliente sobre WebService mas não foi aceito.

[]´s


Java pode chamar uma DLL feita em Delphi. Mas não há como Delphi chamar Java.

Para integrar os 2 sistemas há muitos meios:

1) Delphi escreve um arquivo em determinado diretório que o Java lê e depois responde gravando arquivo resposta.

2) XML-RPC. Todas as linguagens tem implementação disto que é uma invenção do mesmo cara que ajudou a criar o SOAP na Microsoft.
Para Delphi: http://portuguese.osstrans.net/software/delphixml-rpc.html
Para Java: http://ws.apache.org/xmlrpc/

3) Sockets. As 2 aplicações trocam mensagens via sockets. Provavelmente é o meio mais simples.

4) Web services. Se o cliente não quer, esquece.

[]s
Luca

Dare Obasanjo (Program Manager at Microsoft)
"The folks I know from across the industry who have to build large scale Web services on the Web today at Google, Yahoo!, Facebook, Windows Live, Amazon, etc are using RESTful Web services. The only times I encounter someone with good things to say about WS-* is if it is their job to pimp these technologies or they have already "invested" in WS-* and want to defend that investment."


CEP, JMS, JMX e coisas afins (ou não)
http://lucabastos.blogspot.com/
[Email] [WWW]
joca_java
JavaChild
[Avatar]

Membro desde: 16/08/2007 14:02:09
Mensagens: 128
Offline

Luca wrote:Olá

joca_java wrote:Opa galera blz?

Seguinte,

precisamos fazer com que uma aplicação em Delphi, chame um método de nossa aplicação desenvolvida em Java certo? Então, gostaria de saber se seria possível fazer isto utilizando JNI. Alguem sabe dizer? Comentamos com o cliente sobre WebService mas não foi aceito.

[]´s


Java pode chamar uma DLL feita em Delphi. Mas não há como Delphi chamar Java.

Para integrar os 2 sistemas há muitos meios:

1) Delphi escreve um arquivo em determinado diretório que o Java lê e depois responde gravando arquivo resposta.

2) XML-RPC. Todas as linguagens tem implementação disto que é uma invenção do mesmo cara que ajudou a criar o SOAP na Microsoft.
Para Delphi: http://portuguese.osstrans.net/software/delphixml-rpc.html
Para Java: http://ws.apache.org/xmlrpc/

3) Sockets. As 2 aplicações trocam mensagens via sockets. Provavelmente é o meio mais simples.

4) Web services. Se o cliente não quer, esquece.

[]s
Luca


Beleza Luca!!! Valeu cara!!!
emersonfxbx
Smalltalk

Membro desde: 26/03/2007 19:07:14
Mensagens: 4
Offline

Ha sim uma forma de uma aplicação delphi chamar um metodo java: Java Invocation API. Basicamente voce carrega a maquina virtual em sua aplicação, carrega as classes, instancia objetos e pode chamar métodos

Aqui a documentação de como utilizar:

http://java.sun.com/javase/6/docs/technotes/guides/jni/spec/invocation.html#wp9502

Aqui bem mastigado para delphi:

http://www.pacifier.com/~mmead/jni/delphi/JEDI/DOCS/delphi-jni-3.html

Conselho: Não sei quanto a você, mas a última vez que precisei acessar uma API em C/C++ no Delphi, eu passei raiva. Então, fica a dica, faz uma DLL em C++ com interface bem simples para o Delphi para fazer a chamada ao código Java, além de ser mais confortável para se trabalhar com a JNI. Nem precisa do VC++, o http://www.mingw.org que é de graça pode ser usado sem susto.
Isso lhe poupará alguns fios de cabelos (hehehe).

This message was edited 1 time. Last update was at 26/05/2008 09:11:31

[MSN]
 
Índice dos Fóruns » Java Avançado
Ir para:   
Powered by JForum 2.1.8 © JForum Team