Aplet servlet komunikacja

0

Witam.

Potrzebuje wykonac komunikacje na zasadzie:

wyslij String - odbierz odpowiedz
wyslij long - odbierz odpowiedz
wysij byte[] - odbierz odpowiedz

Oczywiscie az prosi sie aby wykonac z tego serializowany obiekt nowej klasy i wyslac to w calosci.
Mimo wszystko jednak musze zrobic to na zasadzie wyslanie pojdenczych danych i wykonania 3-4 zapytan i odpowiedzi jedno po drugiej. Pytanko:

Jak rozpoznac na servlecie ktora dana zawiera request tak aby wykonac dla niego odpowiedni fragment kodu. W przypadku pol formularzy wysylanych w requescie poslugujemy sie metoda getParameter() czy istnieje mozliwosc jakiegos nazwania powyzszych danych i rozpoznania po stronie servletu ktora dana jest wyslana w requescie?

Dziekuje.

0

Wyślij je jako parametry o różnych nazwach requestu. Tak jak robi to przeglądarka.

0
Koziołek napisał(a)

Wyślij je jako parametry o różnych nazwach requestu. Tak jak robi to przeglądarka.

Dzieki za podpowiedz. Oczywiscie zdaje sobie sprawe ze powyzsze rozwiazanie jest tym czego szukam.
Zapytalem poniewaz nie wiem jak to zaimplementowac, jakich metod uzyc. W chwili obecnej posluguje sie ogolnie dostepnych schematem komunikacji tzn:

Aplet:

URL urlServlet = new URL("http://...");
con = (HttpURLConnection) urlServlet.openConnection();
con.setRequestMethod("POST"); (...)

OutputStream os=con.getOutputStream();
ObjectOutputStream oos=new ObjectOutputStream(os);
oos.writeObject(mojedane);

Czy powyzszy schemat daje mozliwosc nazwania zapisywanych obiektow i odczytania ich nazw po stronie servletu?

0

Workaround jaki zastosowalem to ustalenie wlasnego naglowka ktory przetrzymuje informacje, ktory krok jest wykonywany.

connection.setRequestProperty("Krok:","1")
...
connection.setRequestProperty("Krok:","2")
...

a po stronie servletu oczywiscie

request,getHeader("Krok");

Dlaczego wczesniej o tym nie pomyslalem? Nie wiem :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1