U prvom tjednu cilj rada je bio upoznavanje sa svrhom i načinom rada aplikacije. Instalirala sam NetBeans te pokrenula projekt. Upoznala sam se s načinom izrade web aplikacija u NetBeansu te letimice prošla kroz dosadašnji kod da steknem neku općenitu sliku o načinu rada aplikacije.
Kada se pokrene, aplikacija ne radi kako bi trebala te je potrebno vidjeti u čemu je problem i kako ga ispraviti. Također planiram malo detaljnije proučiti kod projekta i bolje se upoznati sa JSF tehnologijom.
Proučila sam kod i shvatila sam kako aplikacija radi. Još uvijek postoji problem u radu aplikacije na mom računalu te sam pokušavala naći riješenje.
Pokušavam ponovno instalirati Netbeans. Pošto nailazim na neke errore pri pokušavanju pokretanja projekta iako sam ga nakon prve instalacije pokrenula bez problema, tražim riješenje. Ukoliko ni nakon reinstalacije aplikacija ne bude radila dobro pokušat ću pokrenuti projekt u Netbeansu IDE 7.4
Iako reinstaliranje Netbeansa nije pomoglo, problem je riješen.
Pri specificiranju namespace-a u datoteci index.html, trebalo je umjesto dotadašnjeg (“http://xmlns.jcp.org/jsf/core”) ubaciti sljedeći URI: xmlns:f=“http://java.sun.com/jsf/core”. Iz toga razloga nisu radili neki tagovi s prefiksom f, pa nije bilo moguće učitati case.
Također sam ubacila dio koji je dotad bio zakomentiran u datoteci web.xml:
<context-param> <param-name>javax.faces.FULL_STATE_SAVING_VIEW_IDS</param-name> <param-value>/case_solving.xhtml</param-value> </context-param>
Dotad nije bilo moguće učitati više od jednog parametra.
Potrebno je učitati sve dijagnoze iz case-a te napraviti padajući izbornik uz svaku od njih sa stavkama: very likely, somewhat likely, very unlikely. Ovisno o svakom parametru, korisnik bi odabrao koliko smatra da je neka dijagnoza vjerojatna. Također je potrebno pamtiti njegov izbor za svaki parametar.
Prvo sam napravila klasu Dijagnoze u koju bi se trebale učitavati dijagnoze te informacija jesu li točne ili ne za navedeni slučaj. Pošto case-ovi iz baze iz koje se učitavaju nisu u dobrom formatu, tj. nemaju ponuđeno više dijagnoza, već samo jednu točnu, pokušala sam učitati neki case sa mog računala. No dobivam neki error pri tom pokušaju kad pokušam učitati case u aplikaciji, pa sam zasad manualno dodala par dijagnoza u polje dijagnoza u kodu, a s ovim problemom ću se pozabaviti kasnije.
Dosad sam napravila padajući izbornik uz svaku dijagnozu u aplikaciji.
Trebalo bi smisliti kako da se pamti odabrana stavka u izborniku za određeni parametar i određenu dijagnozu. Mislila sam to ostvariti pomoću forEach taga (za svaku dijagnozu) u u kojem bi se iscrtavao izbornik i pamtila određena stavka za trenutno aktivni parametar i učitau dijagnozu. Nisam jos sigurna kako da to spremim pa sam zasad na googlanju navedenog problema.
Korisnikov odabir se sada sprema u polje History svake dijagnoze na gumb “Spremi odabir”.
Pokušat ću napraviti da se korisnikov odabir sprema pri odabiru novog parametra, a ne na gumb “Spremi odabir”.
Prebacila sam dio koda koji se izvršava na gumb “Spremi odabir” u metodu koja se poziva pri odabiru novog parametra, no to ne radi. Debugiranjem sam utvrdila da se pri korisnikovom odabiru stavke u izborniku njegov odabir uopce ne sprema u privremenu varijablu svake dijagnoze.
Pokušat ću riješiti spomenuti problem, ali i jedan novi na koji sam naišla. Naime, neki parametri se mogu više puta dodati u dostupne, što se ne bi smjelo događati. Postoji metoda koja pri odaberu parametara provjerava je li on već dodan u dostupne parametre tako da ne razumijem zašto ona ne radi. Također, potrebno je napraviti da se stavke u izbornicima učitavaju iz liste.
Stavke u padajućim izbornicima se sada učitavaju iz liste, ali dva spomenuta problema još uvijek nisam uspjela riješiti zbog nedostatka vremena.
Zasada ću malo čitati o JSF-u i proučiti nekoliko tutoriala u svrhu razumijevanja tagova koji se koriste i njihovih atributa pa mi možda bude jasnije zašto djelovi koda ne rade dobro.
Posljednja 2 tjedna sam proučavala neke mogućnosti u JSF-u svrhu razumijevanja spomenutih problema na koje nailazim
U nastavku planiram rješiti problem višestrukog dodavanja istog parametra te spremanje korisnikovog odabira vjerojatnosti dijagnoza.
Uspjela sam rješiti problem višestrukog dodavanja parametara. Problem je bio banalan, parametri se nisu prepoznavali kao već dostupni zbog razlike u velikom/malom početnom slovu. Prvo sam mislila da postoji problem u postavkama projekta u Netbeansu pa zbog toga nisam ranije razmatrala ovu mogućnost.
Sljedeći korak je rješavanje problema spremanja korisnikovog odabira vjerojatnosti dijagnoza.
Korištenjem taga ajax uspjela sam postići da se pri svakoj promjeni korisnikovog odabira za neku dijagnozu to pohranjuje u odgovarajuću varijablu te se sad to izvodi na odgovarajući način.
Potrebno je osmisliti prikazivanje multimedijskih sadržaja kao vrijednosti parametra.
Jedna od mogućnosti je da se unutar odgovarajućeg bloka za prikaz vrijednosti parametra one prikazuju u iframe-u. Potrebno je to urediti da se prikazuju na najbolji mogući način ovisno o veličini slike/videa u iframe-u u odnosu na veličinu bloka gdje je iframe smješten.
Potrebno je razmotriti i druge mogućnosti prikaza multimedijskih sadržaja.
Kao bolja opcija čini se korištenje lightbox-a za prikaz multimedijskih sadržaja preko iframe-a pošto je veličina bloka gdje se prikazuju vrijednosti parametra premala. Potrebno je urediti veličinu lightboxa tako da se bolje prilagođava sadržaju te eventualno ostvariti njegov prikaz automatski prilikom unosa parametra, a ne tek prilikom klika na proizvoljnu poruku.
Potrebno je napraviti dokumentaciju o dosadašnjem radu, napraviti (već spomenute) preinake vezane uz prikaz multimedijskih sadržaja te ovisno o mogućnostima vidjeti koji su daljnji koraci ukoliko ću se baviti aplikacijom i tijekom ljeta.