2009-07-20 8 views
15

Tôi đã cài đặt Apache Tomcat 6 như một dịch vụ trong một máy tính Windows XP (tiếng Pháp)Setting locale mặc định cho dịch vụ Tomcat trong Windows XP

Vấn đề của tôi là Tomcat bản thân và tất cả các ứng dụng web (Sonar và Hudson) bây giờ hiển thị tiếng Pháp tin nhắn. tôi muốn thông điệp bằng tiếng Anh tất nhiên vì vậy tôi đã đi đến cửa sổ "Regional Settings" trong bảng điều khiển và thay đổi mọi thứ để English (US) tuy nhiên

Tomcat là vẫn bằng tiếng Pháp. Không có gì thay đổi cả.

Tôi nghi ngờ rằng vì nó hoạt động như một dịch vụ nên không chọn cài đặt từ bảng điều khiển.

Vậy có cách nào để lừa JVM Tomcat để sử dụng tiếng Anh thay vì tiếng Pháp không? Tôi có quyền truy cập admin sys vào máy (XP PRO Pháp)

Cảm ơn bạn

Trả lời

26

Bạn cần phải thiết lập user.languageuser.region một cách thích hợp,

ví dụ

java -Duser.language=en -Duser.region=CA 

khi khởi động Tomcat (có thể là catalina.bat). Hãy kiểm tra this link để biết thêm thông tin và để tham khảo các tập hợp mã ISO hợp lệ cho phần trên.

+0

Không có catalina.bat vì Apache là một dịch vụ. Tôi đặt chúng vào hộp thoại GUI cấu hình. Ngoài ra để làm việc họ phải là lựa chọn đầu tiên trong dòng lệnh java. Strange ... – kazanaki

+0

Nó làm việc cho tôi để chỉ đặt -Duser.language = vi trong màn hình khay Tomcat (GUI), nó đã ở giữa các thông số khác (như -Xmx và vv) và nó hoạt động tốt. –

+1

Thực ra nó phải được đặt trong 'setenv.bat' (hoặc' setenv.sh' trong linux). Xem: http://stackoverflow.com/a/13164237/333296 – Nux

1

Chỉ định tùy chọn ngôn ngữ trong thông số dịch vụ.

$ Tomcat/bin/javaw.exe chuyển sang tab Java và chỉ định -Duser.language = en -Duser.region = CA tại Java Options:

1

Regional Settings là mỗi người dùng và các dịch vụ đang chạy như một khác nhau người dùng (cái nào được sử dụng cho mỗi dịch vụ có thể được kiểm tra trong Control Panel/Administrative Tools/Services).

Vì vậy, bạn đã thay đổi cài đặt cho tài khoản người dùng bạn đã sử dụng để đăng nhập, trong khi dịch vụ Tomcat được chạy trong một tài khoản khác.

2

Người quản lý Tomcat đã hiển thị bằng tiếng Pháp cho tôi, mặc dù thực tế là tôi đã thử một số đề xuất ở trên. Vấn đề hóa ra là trình duyệt cụ thể. Chrome đã "tiếng Pháp" được liệt kê là một trong những ngôn ngữ của tôi và ngay sau khi tôi xóa nó khỏi danh sách trong các tùy chọn và làm mới trang, Tomcat xuất hiện bằng tiếng Anh. Tôi hy vọng điều đó sẽ hữu ích cho bất kỳ ai khác trong tương lai, những người đang gặp phải vấn đề này.

0

Thật không may, catalina.bat (hoặc catalina.sh) không được Windows thực hiện khi chạy dịch vụ Tomcat, do đó sửa đổi catalina.bat không giải quyết được vấn đề này.

Giải pháp là chạy dịch vụ theo cách thủ công (hoặc cài đặt lại dịch vụ) thêm các tham số này vào việc thực hiện dịch vụ.Dưới đây đó là đặc điểm kỹ thuật về cách dịch vụ phải được chạy hoặc cài đặt để làm điều này:

https://tomcat.apache.org/tomcat-6.0-doc/windows-service-howto.html (Tomcat 6) https://tomcat.apache.org/tomcat-7.0-doc/windows-service-howto.html (Tomcat 7)

Theo đặc tả này, để chạy dịch vụ Tomcat6 lập en_US locale , bạn nên thực hiện:

> $PATH_TO_TOMCAT/bin/tomcat6.exe //TS//Tomcat6 ++JvmOptions -Duser.language=en;-Duser.region=US 

Trong liên kết ở trên, có một số ví dụ về cách cài đặt và xóa dịch vụ.

Hy vọng điều này sẽ hữu ích!