[Java lista] String karakter konverzio
Stef
stefhun at gmail.com
2006. Nov. 24., P, 14:14:48 CET
Szia!
Mivel kezdo vagyok, ezert alapveto hibakat ejtek :-(
Felvazolom a teljes kepet:
Adott egy tapestry4-es alkalmazas, mely hibernate-et hasznal, es az
egyik POJO property-jet a tacos autocompleter komponensevel jeleniti
meg.
Ezen komponens egy "forrasa" a kovetkezo lehet: "Object, String[], or
Collection".
En a collection-ra szavaztam.
Atadom a forrast, a komponens megjeleniti azt, majd a felhasznalo ha
elkezd gepeli, akkor az egy kerest kuld, hogy az adott karakterre
milyen ajanlatokat kell megjeleniteni, majd a kapott eredmenyt
megjeleniti, es a felhasznalo vagy tovabb gepel, vagy a listabol
valaszt egy erteket.
Ezen keres soran egy hibat dob a hibernate:
12:38:29,180 ERROR JDBCExceptionReporter:72 - ERROR: character 0xc3a3
of encoding "UTF8" has no equivalent in "WIN1250"
Hiba a helységek listázásánál : could not execute query
Arra gondoltam, hogy a szoveget kellene atkodolni, de ez ertelmetlenne
valik, mivel az unicode formatumu (tenyleg mondtak ezt a tanfolyamon
:-) ). A logbol pedig lehet latni, hogy ket karakter lesz az ekezetes
betukbol, mintha az UTF-8 2 byte-ja lenne az adott string adott
poziciojaban... tudom, ez is ertelmetlen.
Az autocompleter a dojo-t hasznalja, mely olvasatomban a kereseket
UTF-8-ra kodolja.
Arra gyanakszom, hogy a tapestry engine nem jol kodolja vissza az
url-t, es rossz lesz a fuggvenyhivas, hiszen az en kereso fugvenyemet
a tapestry engine hivja meg az adott parameterrel.
Ha jol tudom valami ilyesmi kapcsolat all fennt:
dojo request -> tomcat -> tapestry engine -> my_search()
Udv!
Stef
2006/11/24, bognár attila <attila at netalfa.hu>:
>
> Szia,
>
> amit leírtam az alapján az alábbi kódnak semmi értelme.
>
> az első probléma abban rejlik, hogy amit visszaadsz, az String, annak pedig
> semmi köze az akármilyen kódoláshoz, kivéve a Unicode-ot.
>
> mit akarsz elérni, miből - mert ez sem tiszta?
>
> üdv,
>
> attila
>
>
> Stef írta:
> Sziasztok!
>
> Koszonom a sok valaszt, de sajnos nem jutottam eredmenyre.
> Olyan, mintha csak az ekezetes karakter lenne mas kodolasba.
> Eredetileg ezt lattam a logban: "G?¶" - 0xc3a3
> Az atkodolas utan pedig: "G�¶" - 0xefbfbd
> Tehat tovabb kodolta a kodolast :-(
>
> Ezt alkottam a javaslatokbol:
> private String convertUTFWin1250(String value){
> byte[] utf8 = null;
> String win1250 = null;
> try {
> utf8 = value.getBytes("UTF-8");
> win1250 = new String(utf8, "windows-1250");
> } catch (UnsupportedEncodingException e) {
> e.printStackTrace();
> }
> return win1250;
> }
>
> Udv!
> Stef
>
> 2006/11/24, Fisha <fisha at freemail.hu>:
>
>
> Hello!
>
> Szerintem a String.getBytes a baratod.
>
> Fisha mailto:fisha at freemail.hu
>
>
>
> Sziasztok!
>
>
> Segitsetek....
> Hogyan lehetseges egy String-et atkonvertalni egyik kodolasrol a
> masikra. Jelen esetben az UTF-8 kodlaprol kellene win1250-re, de csak
> az URLenocder-t, talaltam, ami nem String konverzio, hanem web-app url
> kodolasra valo.
> Pontosabban nem a teljes String-et kellene átkódolni, mert nem minden
> karakter utf8.
> Ezt latom a logban: "H??" Ami valojaban a "Há" lenne.
>
>
> A JDBC-s hiba uzenetem: 11:02:28,292 ERROR JDBCExceptionReporter:72 -
> ERROR: character 0xc3a3 of encoding "UTF8" has no equivalent in
> "WIN1250"
>
>
> Esetleg a magyar ekezetes karakterekre sajat konvertert kell irnom,
> ami karakterenkent elemez, es ha kell konvertal?
>
>
> Udv!
> Stef
> _______________________________________________
> Javalist mailing list
> Javalist at javagrund.hu
> http://javagrund.hu/mailman/listinfo/javalist
>
> _______________________________________________
> Javalist mailing list
> Javalist at javagrund.hu
> http://javagrund.hu/mailman/listinfo/javalist
>
>
> _______________________________________________
> Javalist mailing list
> Javalist at javagrund.hu
> http://javagrund.hu/mailman/listinfo/javalist
>
>
> _______________________________________________
> Javalist mailing list
> Javalist at javagrund.hu
> http://javagrund.hu/mailman/listinfo/javalist
>
>
>
További információk a(z) Javalist levelezőlistáról