![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 13 Pomógł: 1 Dołączył: 15.11.2004 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Witam,
od pewnego czasu korzystam z aplikacji umożliwiającej użytkownikom zdalną edycję bazy danych. Do tej pory wykorzystywałem mechanizm klasycznych formularzy wspomaganych poprzez JavaScript, ale jestem zmuszony do wprowadzenia funkcjonalności wymagającej zastosowania apletów Javy. Aplet będzie musiał komunikować się z bazą danych MySQL. Dostęp do serwera jest możliwy aktualnie tylko za pośrednictwem Apache + PHP. Od pewnego czasu przeglądam zasoby netu czytając o rożnych metodach wymiany informacji między klientem a serwerem. Aktualnie najczęściej doradzany jest XML i protokół SOAP. Moje pytania są następujące: 1) Czy są znane problemy związane ze współpracą między serwerem SOAP po stronie PHP i klientem SOAP po stronie Javy? 2) Jak wydajnościowo radzi sobie serwer SOAP przy przesłaniu powiedzmy 300 - 500 kB danych ? Zaczynam dopiero moją przygodę z WebServices i z Javą. Przyda mi się każda wskazówka i link do strony, która mi pomoże. Z góry dziękuję. |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 487 Pomógł: 7 Dołączył: 7.01.2004 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Do tej pory problem jaki trafiłem w przypadku SOAP była błędna obsługa kolekcji po stronie PHP. Nie pamiętam tereaz dokładnie kontekstu. Tak czy owak przy prostszych zastosowaniach nie ma najmniejszego problemu. Jeśli idzie o przesyłanie dużych partii danych myślę, że istnieje wsparcie dla tego typu operacji pod nazwą SOAP Messages with Attachments. Standard ten po stronie Javy jest wspierany (trzebaby poszperać odnośnie standardu JAX-WS), nie mam pojęcia jak to wygląda po stronie PHP.
Co do stron: Axis 1.4 - jedna z popularniejszych bibliotek do tworzenia i korzystania z usług sieciowych w Javie Axis 2 - nowsza, bardziej elastyczna wersja, wyżej wymienionej CXF - nowszy projekt do obsługi WS, który powstał z XFire, podobno ma być wydajniejszy... JAX-WS - oficjalna implementacja standardu JAX-WS w Javie. SOAP extension - dedykowane wsparcie dla SOAP w PHP. -------------------- Łukasz Dywicki
Independent Java and open source software consultant. Blog - Java, OSGi, integracja oprogramowania.. |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 144 Pomógł: 30 Dołączył: 5.05.2007 Skąd: Mannheim Ostrzeżenie: (0%) ![]() ![]() |
Witam !
Mam na swoim koncie kilka aplikacji PHP wspolpracujacych z webserwisem napisanym w Javie. Najwiekszym problemem na jaki napotkalem na poczatku to przekazywanie parametrow z SoapClienta php do WebSerwisu. Polegaly te problemy na tym ze SoapClient oczekuje obiektu ze zdefiniowanymi wartosciami pol jako parametrow przakazywanych do WebSerwisu. Tzn: fragment wsdla Kod <xsd:complexType name="ProductInfo"> <xsd:all> <xsd:element name="TotalResults" type="xsd:string" minOccurs="0"/> <xsd:element name="TotalPages" type="xsd:string" minOccurs="0"/> <xsd:element name="ListName" type="xsd:string" minOccurs="0"/> </xsd:all> </xsd:complexType> teraz definicja obiektu z parametrami Kod class MyParam{ private $TotalResults; private $TotalPages; private $ListName; public function setTotalResults ( $TotalResults) { $this->TotalResults= (string)$TotalResults; } public function setTotalPages ( $TotalPages ) { $this->to = (string)$TotalPages; } public function setListName ( $ListName ) { $this->to = (string)$ListName; } } nastepnie budujemy calosc Kod try{ $client = new SoapClient("WSDLadres.wsdl"); }catch (Exception $e){ throw new Exception($e->getMessage()); } $param = new MyParam(); $param->setTotalResults ($totalresults); $param->setTotalPages ($totalpages); $param->setListName ($listname); $res = $client->__soapCall('ProductInfo',array($param)); jako $res otrzmasz STDClass ot i cala tajemnica. Pozdrawiam i powodzenia ----------------- Sorry za nieporozumienie widze ze ty chcesz dzialac w drugim kierunku Server php Klient Java ![]() Ten post edytował zbig 27.01.2008, 22:01:04 -------------------- Flash Flex PHP JAVA RED5 http://www.easyweb24.net
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 19.07.2025 - 16:04 |