我試過所有可能的答案this和this,但它沒有爲我工作。現在寫這個問題。編碼jboss 7
private String convertValue(String val){
System.out.println("convert input:" + val);
String res = "";
StringTokenizer st = new StringTokenizer(val,",");
while(st.hasMoreTokens()){
String token = st.nextToken();
if (token.matches("([0-9]*)")) {
char c = (char)Integer.parseInt(token);
res+=c;
}else{
res+=token;
}
}
System.out.println("convert output:" + res);
return res;
}
當運行了JBoss的7它給人的:
convert input:61,1087,1088,1080,1074,1077,1090
convert output:=привет
通過動作運行在JBoss 7:
convert input:61,1087,1088,1080,1074,1077,1090
convert output:=??????
爲什麼它不能正常工作?
我standalone.xml:
<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="true"/>
</system-properties>
添加的Java選擇採用(-Dfile.encoding = UTF-8):
convert input:61,1087,1088,1080,1074,1077,1090
convert output:=–ø—Ä–∏–≤–µ—Ç
EDIT 1:我的環境:
Mac OS X Version 10.7.5
JBoss 7.1.1.Final
java version "1.6.0_33"
Java(TM) SE Runtime Environment (build 1.6.0_33-b03-424-11M3720)
Java HotSpot(TM) 64-Bit Server VM (build 20.8-b03-424, mixed mode)
編輯2:上面的代碼片段在javax.enterprise.context.RequestScoped中使用JSF頁面按下按鈕時返回bean控制器。
您是否嘗試過它寫入文件,而不是檢查,如果它可能是一個問題控制檯本身? –
特別是您看到輸出的位置並不清楚。 –
調用convertValue方法在哪裏?它是servlet,jsp還有其他的東西嗎?你能提供一個代碼示例嗎? – szhem