Witam! Chciałem się dowiedzieć czy możliwa jest poprawna współpraca Webserviców utworzonych w Netbeansie ( moja wersja to 5.5.1 ) oraz klientem utworzonym w Delphi. Problem wygląda tak. Sam webservice jest BANALNY ( na razie ) i wygląda tak:

/*

NewWebService.java</li> </li> Created on 6 styczeń 2008, 02:53</li> </li> To change this template, choose Tools | Template Manager</li> and open the template in the editor.
*/</li> </ul>

package paka;

import javax.jws.WebService;
import javax.management.StringValueExp;

/**
*

@Author Zbyszek
*/
@WebService()
public class NewWebService {

public int funkcja1(int wartosca, int wartoscb)
{

 return (wartosca+wartoscb);

}

</li> </ul>

}

No i teraz zaczynają się schodki. Delphi 7 W OGÓLE nie chce poprawnie importować WSDLa - ksztusi się i dusi w momencie kiedy trzeba przekonwertować zmienne typu int ALBO JAKIEKOLWIEK INNE które nie wyglądają jak borlandowskie :/ no ok rozumiem - był rok 2002 nie wszystko było idealne. Ale wziąłem sobie Delphi 2007 no i teraz tak:

  • zmienne konwertują się już normalnie ( co prawda String z javy konwertowany jest na WideString - po co nie wiem, a w WSDLu czasem POMIMO ŻE JEST JUŻ DOBRZE PRZEKONWERTOWANE pojawiają się informacje o nieznanych zmiennych typu String lub Int :) ale Delphi je jednak dobrze rozpoznaje i zamienia na swoje zmienne )

  • PROBLEM w tym że nie potrafię przekzać POPRAWNIE do funkcji w webservicie - tutaj - funkcja1 argumentów z poziomu Delphi :/ - Używając komponentu HTTPRIO i ustwaiając tam wszystkie wartości - czyli service, port itd. potrafię odebrać wartość funkcji w momencie gdy zwraca ona konkretne wartości np.

  • Stringa - return("hehe")

  • Inta - return(100)

ale jak do powyższej funkcji zastosuję w kliencie w Delphi takie odwołanie

showmessage(Inttostr(httprio1 as NewWebService).funkcja1(10,20));

dostaję zwrot równy zero :( nawet jeśli do funkcji dam tylko argument i ona go ma tylko zwrócić

public int funkcja1(int wartosca)
{

    return (wartosca);
}</i>

też dostaję zero :( - aha a jak przekazuję jako argumenty Stringa to w ogóle jakiś błąd wywala :(

Dotychcasz robiłęm proste webservicy całkowicie w javie - ale jako że NIE LUBIE javy i wolę delphi próbuję zrobić chociaż klienta w Delphi ( webservice musi być w javie - taki wymóg prowadzącego... ).
Aha - webservice działa na Tomcacie wbudowanym w Netbeansa 5.5.1.

Jeżeli ktoś może mi pomóc to z góry wielkie dzięki!