[ Boris_ZR @ 06.06.2011. 17:22 ] @
Pročitao sam brdo stvari na netu na ovu temu i ne uspevam da rešim problem... Baza mi je u MySql, preko phpmyadmina podesio sam collation za tabele na utf_general_ci.
Klijent-server aplikacija u NetBeansu lepo čita ćirilična slova iz baze kod select upita, međutim kada pokušavam da uradim insert u bazu, unese samo ?????.
Probao sam da ručno u phpmyadmin-u unesem insert sql naredbu i sve lepo radi, unese sva ćirilična slova.
Ova ista aplikacija je radila super na desktop računaru, ali kada sam se prebacio na laptop, nikako neće da upiše ćirilična slova. Laptop radi na windows 7 64bit, ako je to bitno, takođe NetBeans je 7.0 dok je na desktopu 6.9.1.
Pročitao sam i Bogdanovu stranicu o "smeću", ali to je rešenje vezano za php aplikacije.
Ima li pomoći?

Hvala unapred.
[ bogdan.kecman @ 06.06.2011. 17:32 ] @
ista je prica kao za php .. ne valja ti enkoding izmedju aplikacije i baze

kako ti izgleda URI kojim se kacis na bazu ?
[ Boris_ZR @ 06.06.2011. 17:42 ] @
Prvo, hvala na ovako ažurnom odgovoru, Bogdane. Pratio sam i Vaše predavanja na FON-u pre par meseci, svaka čast.
Na bazu se iz aplikacije kačim na sledeći način:

Connection konekcija = DriverManager.getConnection(url, korisnik, sifra);
gde su url, korisnik i sifra podaci dobijeni iz nekog txt fajla.

A URI u Services tabu u NetBeansu je:
jdbc:mysql://localhost:3306/bazaOrdinacije, driver je: com.mysql.jdbc.Driver.
[ bogdan.kecman @ 06.06.2011. 17:59 ] @
Citat:

jdbc:mysql://localhost:3306/bazaOrdinacije


There's your problem!!! nigde nisi rekao da hoces utf8!

treba ti ili ako koristis proprty fajl nesto ovako
Code:

      <property name="useUnicode" value="true"/>
      <property name="characterEncoding" value="UTF-8"/>


ili u uri da dodas

Code:

jdbc:mysql://localhost:3306/bazaOrdinacije?useUnicode=true&characterEncoding=UTF-8


(obrati paznju na velikamala slova, neki jdbc drajveri gledaju to case sensitive)
[ Boris_ZR @ 06.06.2011. 21:49 ] @
Hvala puno, ali to nažalost nije rešilo problem. Šta bi još moglo da bude problem?

edit poruke:
Zanimljiva stvar je da kada pokrenem upit u okviru NetBeans services tab-a, tj. izvršim sql insert komandu odatle, sve radi kako treba...
Pošto je u pitanju Client-Server aplikacija i objekti se prenose kroz mrežu, da li je moguće da je tu problem? Da se negde kroz mrežu pogubi encoding?
Takođe, primetio sam da ne mogu da pristupim bazi kada mi je ugašen WAMP server, dok na desktop računaru to mogu.
Ne razumem se previše, ali zar ne bih trebao da mogu da pristupim mysql bazi čak iako je wamp server ugašen (instanca mysql servera se vrti na windowsu)? Wamp server sam instalirao jer mi je zgodno da koristim phpmyadmin kao alat za rad sa mysql bazom.
Znam da je ovo puno pitanja. :)

[Ovu poruku je menjao Boris_ZR dana 06.06.2011. u 23:02 GMT+1]
[ bogdan.kecman @ 06.06.2011. 21:59 ] @
jedini razlog da ti java posalje ? umesto unicode karaktera u bazu je da se nisi okacio na bazu sa pravilnim enkodingom. Dakle proveri da li si napravio konekciju kako treba.
[ Boris_ZR @ 06.06.2011. 22:19 ] @
Hvala puno! Uspeo sam. Naime, šta sam bio pogrešno uradio... Ja sam se kačio iz NetBeansa na bazu sa tim encoding i to je radilo, kao što sam napisao, ali MOJ program nije uspostavljao konekciju odatle, već iz txt fajla. U taj txt fajl sam dodao string koji ste mi dali sa utf encodingom i proradilo je!
Hvala još jednom, nadam se da će tema nekome biti od pomoći, a za Vas, Bogdane, samo reči pohvale kao i do sada.

Srdačan pozdrav.
[ tarla @ 07.06.2011. 09:30 ] @
Prije dok sam čačkao malo sa Javom sam imao slične probleme

Pogledaj ovaj link malo http://stackoverflow.com/quest...-utf-8-working-in-java-webapps
[ Boris_ZR @ 19.06.2011. 23:25 ] @
Hvala, ali kao što rekoh, rešio sam problem, tj. Bogdan ga je rešio.

Pozdrav