2010-02-10 9 views
6

Jestem względnie nowy w działaniu usług internetowych, więc skorzystałem z samouczka z http://blog.saminda.org/2008/07/light-weight-osgi-based-axis2-powered.html , który konfiguruje usługę WWW, która drukuje Witaj.Uzyskiwanie dostępu do usługi sieci Web za pomocą przeglądarki

Kod do wydrukowania "cześć" to here. W tym samym projekcie here jest inna usługa internetowa, która dodaje dwie liczby razem.

Aby uzyskać dostęp do usługi sieciowej "cześć", po prostu przejdź do przeglądarki i przejdź do http://localhost:8080/bridge/services/Version/getVersion.

Ale jak to zrobić w serwisie internetowym kalkulatora? Jaki jest adres URL? Czy muszę zrobić coś ekstra, aby zarejestrować to jako usługę?

+2

Być może zechcesz dodać tag java do swojego pytania. Może nawet osgi i znaczniki osi2, jeśli istnieją. Nie mam wystarczającej liczby punktów rep do jeszcze retagowania. –

+0

Linki do przykładowego kodu dla "cześć" i kalkulatora nie są już dostępne, niestety –

Odpowiedz

7

Wygląda byłoby http://localhost:8080/bridge/services/Calculator/add

Wydaje się spodziewać parametrów, ale nie ma żadnego wskazania, w jaki sposób przekazać je w url - możesz spróbować dodanie X = 2 & y = 3 do niego i zobaczyć, czy? zwraca 5

UPDATE: Tak że wydaje się słuszne, zobacz wpis w http://blog.saminda.org/2008/08/exposing-osgi-service-as-web-service.html na przykład kalkulatora

UPDATE 2: Jak już skomentował pierwotnego pytania, linki do kodu, który dzwonisz są nie dostępny. Wydaje się jednak, że istnieje ogólna zasada nazywania tego. Format wydaje się być

http://server:port/bridge/services/ClassName/MethodName?parameter=value&anotherparam=value

więc w dodawaniu numerów przykład ClassName jest Kalkulator MethodName jest dodać, a X i Y parametry (czyli kod dodaje razem) są przekazywane jako parametry URL.

Ja sam nie jestem programistą Java, więc nie wiem, czy najpierw trzeba skompilować kod usługi sieciowej, zanim będzie można go wywołać, ale jeśli masz już działający kod "cześć", to ty. poznam odpowiedź na to.

0

Cóż, jeśli dopiero zaczynasz pracę z usługami sieciowymi, powinieneś spojrzeć na servicestack.net, która jest strukturą usług internetowych o otwartym kodzie źródłowym, która zmniejsza krzywą uczenia się podczas tworzenia i korzystania z usług internetowych. Oto przykład "na żywo" pokazujący cały kod źródłowy wymagany do tworzenia i zadzwonić prostych usług internetowych z Ajax, Android iOS lub aplikacji Silverlight:

https://github.com/ServiceStackApps/LiveDemos

+0

Wygląda na to, że jest dla mnie przydatny (zakładka!), Ale twierdzi, że jest. Net i Mono, podczas gdy oryginalny plakat wykorzystuje framework, który wydaje się być oparty na Javie (Apache TomCat). –

+0

o tak, nie widziałem tagu Java, założono .NET, moje złe. – mythz

+0

To dobrze, nie otagowano java jako takiej, ale podstawowa platforma jest oparta na java. W każdym razie rzeczy z serwisów są dla mnie przydatnym łączeniem ;-) –