Miten saa joustavasti välitettyä pavun id-arvon
JSP-sivulle, jos servletti luo pavun ja hakee html-lomakkeelta tiedot papuun.
JSP:n pitäisi näyttää pavun sisältö. JSP-sivu ei löydä tätä papua, koska sillä ei ole ilmeisesti oikeaa id-arvoa, joten se luo uuden pavun.
Vastaava täytyisi tehdä myös tietokantatasolle, eli se onnistuu kätevästi välittämällä controllerissa pavun viittaus tietokantatasolle.
JSP-sivulle, jos servletti luo pavun ja hakee html-lomakkeelta tiedot papuun.
JSP:n pitäisi näyttää pavun sisältö. JSP-sivu ei löydä tätä papua, koska sillä ei ole ilmeisesti oikeaa id-arvoa, joten se luo uuden pavun.
Vastaava täytyisi tehdä myös tietokantatasolle, eli se onnistuu kätevästi välittämällä controllerissa pavun viittaus tietokantatasolle.
Vastaukset 4
Vanhimmat
Kokeiles näin:
========================= Servlet
newsSystem.MessageBean message;
...
request.setAttribute("message", message);
========================= JSP
Tosi paljon kiitoksia, homma lähti heti pelittämään, laitoin servlettiin
mainitsemasi metodin:
request.setAttribute("message", message);
Jolloin servletti asetti ilmeisesti pavulle
id:ksi "message".
Sain pavun sisällön näkyviin JSP-sivulla kun servletti oli sitä ensin muuttanut.
Yritän tehdä JSP model 2-arkkitehtuurin mukaista sovllusta, jossa ainoastaan servletti, tai tietokantataso kontrollereina muuttavat pavun sisältöä.
Olen miettinyt vielä sellaista ratkaisua, missä käyttäisin java API:n observeria, mutta täytyy vielä miettiä, koska jos tietokantatasolle viedään tietoa, se on silloin observer, eli kuuntelee papua, jos kantatasolta haetaan tietoa se on kontrollerin ominaisuudessa, eli kirjoittaa papuun ja silloin opserverina on JSP-sivu.
Tästä mielenkiintoisen tekee se kun kerrotaan kaikille observereille että (papu), on muuttunut, niin kantatasolle ei saa kertoa ja/tai se ei saa reagoida siihen kun se on kontrollerin ominaisuudessa eli kun kannasta haetaan dataa.
Mulla on tomcatti integroitu eclipseen, ja tomcatti antaa vaikeasti jäljitettäviä virheilmoituksia, poikkeuksen viesti ei kyllä paljoa kerro, kun jotain on pielessä.
Täytyy kehitellä observer/observable-ideaa, kiitos homma pelittää.
Kiva että olin avuksi. Observer-mallin käyttäminen jäi mietityttämään (en ymmärtänyt mitä hyötyä tässä) ja model 2-arkkitehtuurikin piti palauttaa mieleen sivulta
http://java.sun.com/developer/technicalArticles/javaserverpages/servlets_jsp/
Nykyisin laitan näin
Selain
-> JSP, controller
-> Hibernate, db
-> POJO-papu (Plain Old Java Object), model
->> Freemarker, view
Vastaus selaimelle
Lähinnä observerin kohdalla vain treenaisin sitä, sitä käytetään oman käsitykseni mukaan MVC-mallissa kun halutaan paremmin toteuttaa eri osien vaihdettavuus. Ks. kirja java J2EE Mark Wutka sivu 858. Siinä on käytetty Holder-säiliötä joka on observable. Se tarkkailee sisältämiään tietoalkioita ja ilmoittaa Observer-luokille tietoalkion muutoksista. Näin näkymien ei tarvitse rekisteröityä suoraan tietoalkioon.
Ajattelin myöhemmin kun kerkeän kokeilla vastaavaa ratkaisua java API:sta löytyvien Observer-Opservable rajapintojen ja luokkien avulla.
Mulla ei ole vielä ihmeempiä hienouksia, väännän juttuja eclipsen tomcat-bluginin avulla ja kokeilen log4j- sekä proxool-komponentteja.