cliente em java para serviço em delphi com stdcall  XML
Índice dos Fóruns » Java Avançado
Autor Mensagem
rbamartins
JavaEvangelist
[Avatar]

Membro desde: 01/03/2007 16:10:11
Mensagens: 362
Localização: Salvador
Offline

Pessoal, bom dia!

Estou tendo um problema. Tenho uma dll (um serviço) feito em delphi 7. Além dos parametros do metodo ele usa um stdcall (standard call).

O problema é que não estou conseguindo criar o cliente para o mesmo.
Tento fazer e sempre me cai em uma excpetion de AXIS FAULT : bad definitions params.

Alguém pode me indicar qual a melhor forma de implementar esse cliente??

[]'s

This message was edited 1 time. Last update was at 17/06/2008 15:12:31


Rafael Britto A. Martins
http://rafaelmartinsjava.blogspot.com


"Um homem forte se defende sozinho, o homem mais forte defende os outros."
[Email] [WWW] [MSN]
thingol
Moderador

Membro desde: 29/07/2004 16:10:13
Mensagens: 17543
Offline

O que o stdcall (que é o método tradicional de se declarar um método de uma DLL que pode ser chamado a partir de várias linguagens) tem a ver com Web Services (Axis)?
[WWW]
rbamartins
JavaEvangelist
[Avatar]

Membro desde: 01/03/2007 16:10:11
Mensagens: 362
Localização: Salvador
Offline

thingol wrote:O que o stdcall (que é o método tradicional de se declarar um método de uma DLL que pode ser chamado a partir de várias linguagens) tem a ver com Web Services (Axis)?


Thigol, na verdade eu não entendi muito bem isso do stdcall. A empresa que possui esse sistema e, que criou esse serviço em delphi, me passou que para que meu cliente em java funcionasse eu teria que além dos parametros do metodo passar um parametro do tipo standard call (stdcall).

E é isso que não estou entendendo muito bem.

Tento criar o cliente dessa forma:



... no ponto do


é gerada a exceção mostrada abaixo:


E não consegui entender o motivo desse erro.

Foi ai que o pessoal lá da empresa me disseram que se não fosse passando um parametro do tipo standard call nao ia funcionar. Desde então tenho pesquisado no google sobre e não acho muita coisa.

Poderia me dar uma luz??

[]'s

This message was edited 1 time. Last update was at 17/06/2008 12:29:37

[Email] [WWW] [MSN]
rbamartins
JavaEvangelist
[Avatar]

Membro desde: 01/03/2007 16:10:11
Mensagens: 362
Localização: Salvador
Offline

Thigol, estou tirando as dúvidas com um outro moderador aqui neste post antigo que encontrei http://www.guj.com.br/posts/list/0/80393.java#504253

Se souber de algo e puder ajudar.

Seria o caso de tentar JNI ?

Rafael Britto A. Martins
http://rafaelmartinsjava.blogspot.com


"Um homem forte se defende sozinho, o homem mais forte defende os outros."
[Email] [WWW] [MSN]
thingol
Moderador

Membro desde: 29/07/2004 16:10:13
Mensagens: 17543
Offline

stdcall é uma coisa que se põe na declaração do Delphi, não no JNI. (Pelo menos é o que vi depois de fuçar um pouco na Internet).

O problema é que o Delphi deve estar gerando uma interface de web services que não é compatível com o perfil WS-I (que é o que o Java e o .NET têm de suportar). Seria interessante que as interfaces do Delphi fossem regeradas, para poder ser compatíveis com clientes Java e .NET.
[WWW]
rbamartins
JavaEvangelist
[Avatar]

Membro desde: 01/03/2007 16:10:11
Mensagens: 362
Localização: Salvador
Offline

thingol wrote:stdcall é uma coisa que se põe na declaração do Delphi, não no JNI. (Pelo menos é o que vi depois de fuçar um pouco na Internet).

O problema é que o Delphi deve estar gerando uma interface de web services que não é compatível com o perfil WS-I (que é o que o Java e o .NET têm de suportar). Seria interessante que as interfaces do Delphi fossem regeradas, para poder ser compatíveis com clientes Java e .NET.


Desculpe, thingol. Eu que nao postei direito.

Quando eu perguntei se nao era o caso de usar JNI era pra tentar uma integracao com o servico dele atraves do java.

Eu cheguei a esse ponto com a empresa que gerou o serviço, mas eles parecem nao aceitar muito bem o fato do servico deles nao estar compativel.

Mas vou tentando aqui para ver o que vai dar.

Obrigado pela resposta

Estava precisando de uma resposta assim para poder argumentar mais fortemente com eles.

Problemao isso viu. Mas valeu pela ajuda.

Abracos, depois posto aqui a resolucao disso.

[]`s
[Email] [WWW] [MSN]
rbamartins
JavaEvangelist
[Avatar]

Membro desde: 01/03/2007 16:10:11
Mensagens: 362
Localização: Salvador
Offline

Só para constar.

Realmente, criar o cliente de um serviço feito em Delphi não foi possível, pelos problemas relatados neste post.
A solução que encontramos foi a que meu fornecedo criou o serviço em .NET para que eu pudesse consumi-lo em JAVA.



Abraços e obrigado pela ajuda.

Rafael Britto A. Martins
http://rafaelmartinsjava.blogspot.com


"Um homem forte se defende sozinho, o homem mais forte defende os outros."
[Email] [WWW] [MSN]
 
Índice dos Fóruns » Java Avançado
Ir para:   
Powered by JForum 2.1.8 © JForum Team