2

Je suis en train de faire un rapport en jaspe la requête de rapport contient cette instruction WHEREJasper Report problème de recherche arabe

where payment='شيك' 

lorsque je tente d'exécuter le rapport à l'aide du JRViewer300 je suis arrivé l'exception suivante

net.sf.jasperreports.engine.fill.JRExpresssionEvalException : Error evaluating expression... 

Quand je change la déclaration à laquelle

where payment='cheque' 

le rapport est sans problèm m. Alors, de quoi s'agit-il?

Merci

+0

Qu'en est-guillemet? – lschin

Répondre

0

Je suppose que la base de données est configuré pour travailler avec le codage UNICODE, en Java, vous devez échapper à la chaîne d'entrée (traiter les caractères spéciaux) et tourner l'encodage UTF-8 (ou 16) Vérifiez this en dehors.

... et aussi essayer ceci:

exporter.setParameter(JRExporterParameter.CHARACTER_ENCODING, "UTF-8");

+0

qu'est-ce que c'est? –

+0

Cela ne fonctionne pas non plus dans Mysql ni dans PostgreSQL –

+0

@Feras Odeh, ceci permet d'échapper, mais vous devez configurer votre pilote DB Vendor pour qu'il prenne en charge un charset approprié. Je ne sais pas qui est votre fournisseur JDBC, mais vous devez probablement configurer le pilote pour "définir client_encoding à iso-8859-8" dans votre cas. – aviad