2014-10-31 16 views
5

Tôi đang gặp vấn đề cụ thể này ngay bây giờ và tôi thực sự không biết liệu có thể đạt được điều này hay không. Nhưng đây là tình huống:JBoss - cách đặt tên thời gian triển khai (không sử dụng CLI, nhưng trực tiếp từ tai/chiến tranh)

Chúng tôi có webapp (Java EE 6) được tổ chức thành hai mô-đun. Một là Mô-đun dịch vụ và mô-đun kia là Mô-đun giao diện người dùng. Các comunicate thông qua ejb từ xa và chúng được triển khai trên các máy chủ jboss khác nhau (cả EAP 6.2). (Các mô-đun chỉ chia sẻ các giao diện ejb (mô-đun dịch vụ thực hiện chúng), và trong mô-đun Frontend, việc triển khai bean dịch vụ thực tế được chèn (@Inject) và được dịch qua bộ định vị JNDI từ xa và sau đó được sử dụng từ xa). Điều này tất cả các công trình như mong đợi.

Nhưng khi chúng tôi đang triển khai các ứng dụng (sử dụng quản trị JBoss console), chúng tôi có tên cuộc chiến ứng dụng như thế này: app-dịch vụ-1.0.war và trong quá trình tải lên, khi JBoss hỏi về "tên "và" runtinme name "chúng tôi cần loại bỏ phần" phiên bản "để tên thời gian chạy sẽ như thế này dịch vụ ứng dụng (tên phải giữ nguyên, với số phiên bản). Nhưng vấn đề là tên thời gian chạy này luôn dựa trên tên triển khai, vì vậy chúng tôi luôn cần xóa phần phiên bản theo cách thủ công. Tôi biết có thể thiết lập tên thông qua CLI nhưng tôi muốn biết nếu nó cũng có thể đặt là một nơi nào đó bên trong triển khai (war/tai file), để các quản trị viên không cần phải thay đổi tên thời gian chạy khi sử dụng bảng điều khiển dành cho quản trị viên web. Cảm ơn

Trả lời

4

Nó chắc chắn là có thể, bạn chỉ cần tạo file có tên jboss-web.xml trong WEB-INF thư mục với nội dung sau:

<?xml version="1.0" ?> 
<jboss-web> 
    <context-root>/app-service</context-root> 
</jboss-web> 

trọn gói, triển khai và ứng dụng của bạn nên có thể truy cập dưới/app-dịch vụ.

Đối với danh sách đầy đủ các tùy chọn nhìn thấy https://docs.jboss.org/jbossweb/7.0.x/appdev/jbossweb.html

-1

Nếu bạn muốn thay đổi tên của cuộc chiến tranh bạn có thể sử dụng shrinkwrap như thế này:

WebArchive wa = ShrinkWrap.create(WebArchive.class,"XXX.war") 

Sau đó,

JBAS015859: Deploiement de "XXX.war" (tên thời gian chạy: "XXX.war")

Các vấn đề liên quan