2012-04-19 12 views
7

Ho avuto problemi con i miei listini che non mostravano correttamente i diacritcs e ho scoperto che quando ho inserito da java nel db i valori erano già corretti.La codifica JBOSS 7 non funziona come previsto

Un post qui ha aiutato e ho cambiato le proprietà del mio progetto -> Codifica del testo -> altro -> UTF-8 e questo ha risolto il mio problema. Questo è solo risolve il mio problema a livello locale.

Quello che devo fare è nel mio server Jboss anche impostare la codifica in qualche modo. Questo è quello che ho messo nel mio file di configurazione:

<?xml version='1.0' encoding='UTF-8'?> 

<server name="vali-ubuntu" xmlns="urn:jboss:domain:1.0"> 
    extensions> 
     extension module="org.jboss.as.clustering.infinispan"/> 
     extension module="org.jboss.as.connector"/> 
     extension module="org.jboss.as.deployment-scanner"/> 
     extension module="org.jboss.as.ee"/> 
     extension module="org.jboss.as.ejb3"/> 
     extension module="org.jboss.as.jaxrs"/> 
     extension module="org.jboss.as.jmx"/> 
     extension module="org.jboss.as.logging"/> 
     extension module="org.jboss.as.naming"/> 
     extension module="org.jboss.as.osgi"/> 
     extension module="org.jboss.as.remoting"/> 
     extension module="org.jboss.as.sar"/> 
     extension module="org.jboss.as.security"/> 
     extension module="org.jboss.as.threads"/> 
     extension module="org.jboss.as.transactions"/> 
     extension module="org.jboss.as.web"/> 
     extension module="org.jboss.as.weld"/> 
    /extensions> 
    system-properties> 
     property name="org.apache.catalina.connector.URI_ENCODING" value="UTF-8"/> 
     property name="org.apache.catalina.connector.USE_BODY_ENCODING_FOR_QUERY_STRING" value="tru 
e"/> 
    /system-properties> 

//..... 

questo non funziona così forse ho bisogno di aggiungere qualcos'altro. Ho provato tutto quello che ho trovato senza successo, quindi ogni aiuto è apprezzato. Grazie.

MODIFICA: Da quello che ho letto, questo funzionerà solo in jboss 7.1.0 beta 1 o più in alto. (URIEncoding) e utilizzo JBoss 7.0.2 quindi ho bisogno di una sostituzione per 7.0.2

risposta

8

per jboss-as-7.1.1.Final ho aggiunto questa linea per standalone.conf, questo file vive sotto la directory bin :

JAVA_OPTS="$JAVA_OPTS -Dorg.apache.catalina.connector.URI_ENCODING=UTF-8" 
6

Hai provato a impostare la codifica predefinita per la JVM? Impostare la proprietà confusamente denominata:

-Dfile.encoding=UTF-8 

(. Per JBoss 5 quando si imposta questo run.conf non so se questo è diverso per JBoss 7)

+0

Questa è la cosa che ho trovato tutti i tipi di soluzioni che funzionano su altre versioni di JBoss ma nessuna ha funzionato per me in JBoss 7 +1 per aver cercato di aiutare. – Fofole

+1

Dove l'hai provato? Potrebbe essere necessario inserirlo in standalone.conf (o domain.conf in base a quale stai eseguendo) in JAVA_OPTS. –

+0

Come dice JamesR.Perkins, puoi inserirlo nel file * .conf, che controlla i parametri di runtime JVM. È inoltre possibile passare questi valori all'avvio dalla riga di comando. – ddri

3

Per me quello che ha risolto il problema è stata aggiunta la seguente al components.xml:

<web:character-encoding-filter encoding="UTF-8" 
        override-client="true" 
        url-pattern="*.seam" />