2012-04-19 49 views
7

Tôi gặp vấn đề với danh sách không hiển thị dấu phụ một cách xác thực và tôi phát hiện ra rằng khi tôi chèn từ java vào db các giá trị đã bị lỗi.Mã hóa JBOSS 7 không hoạt động như mong đợi

Bài đăng ở đây đã giúp tôi thay đổi thuộc tính dự án của mình -> Mã hóa văn bản -> khác -> UTF-8 và điều này đã khắc phục được sự cố của tôi. Thing là điều này chỉ sửa chữa vấn đề của tôi tại địa phương.

Những gì tôi cần làm là trên máy chủ Jboss của tôi cũng đặt mã hóa bằng cách nào đó. Đây là những gì tôi đưa vào tệp cấu hình của tôi:

<?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> 

//..... 

Điều này không có tác dụng nên có thể tôi cần phải thêm một thứ khác. Tôi đã thử tất cả mọi thứ tôi có thể tìm thấy với không succes nên bất kỳ trợ giúp được đánh giá cao. Cảm ơn.

EDIT: Từ những gì tôi đọc, điều này sẽ chỉ hoạt động trong phiên bản beta 7.1b jboss 1 hoặc cao hơn. (URIEncoding) và tôi sử dụng JBoss 7.0.2 nên tôi cần thay thế cho 7.0.2

Trả lời

8

cho jboss-as-7.1.1.Final tôi đã thêm dòng này để standalone.conf, tập tin này sống dưới thư mục bin:

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

Bạn đã thử đặt mã hóa mặc định cho JVM chưa? Đặt gây nhầm lẫn với tên bất động sản:

-Dfile.encoding=UTF-8 

(. Cho JBoss 5 bạn muốn thiết lập này trong run.conf Tôi không biết nếu điều này là khác nhau cho JBoss 7)

+0

Đây là điều tôi tìm thấy tất cả các loại giải pháp hoạt động trên các phiên bản JBoss khác nhưng không làm việc cho tôi trong JBoss 7 +1 để cố gắng trợ giúp. – Fofole

+1

Bạn đã thử nó ở đâu? Bạn có thể cần đặt nó trong standalone.conf (hoặc domain.conf tùy thuộc vào cái nào bạn đang chạy) trong JAVA_OPTS. –

+0

Như @ JamesR.Perkins nói, bạn có thể đặt nó vào tệp * .conf, điều khiển các tham số thời gian chạy JVM. Bạn cũng có thể chuyển các giá trị này khi khởi động từ dòng lệnh. – ddri

3

Đối với tôi những gì giải quyết vấn đề đã thêm dòng sau vào các components.xml:

<web:character-encoding-filter encoding="UTF-8" 
        override-client="true" 
        url-pattern="*.seam" /> 
Các vấn đề liên quan