2009-12-04 25 views

Trả lời

11

Trên thực tế, việc thực hiện JAX-WS gói trong WebLogic 10,3 dựa trên JAX-WS RI 2.1.4 như được ghi lại trong What's New in WebLogic Server:

Các WebLogic Server thực hiện JAX-WS được dựa trên JAX -WS Reference Implementation (RI), Phiên bản 2.1.4 và bao gồm các cải tiến cho lớp công cụ để đơn giản hóa việc xây dựng và triển khai các dịch vụ JAX-WS và dễ dàng di chuyển từ JAX-RPC sang JAX-WS. Các tính năng và cải tiến sau đây có sẵn từ JAX-WS RI 2.1.4.

Nhưng đây chỉ là một lưu ý phụ :) Bây giờ, để trả lời câu hỏi của bạn, , điều đó là có thể. Về cơ bản, ý tưởng là đóng gói mọi thứ như một EAR và cung cấp một weblogic-application.xml để chỉ định các gói Java cần nạp từ EAR thay vì từ trình nạp lớp mặc định của WebLogic. Để làm như vậy, hãy làm theo các bước sau:

  1. Tạo một EAR với chiến tranh của bạn nhúng vào trong nó
  2. Trong META-INF/weblogic-application.xml của EAR của bạn, đặt

    <?xml version="1.0" encoding="UTF-8"?> 
    <weblogic-application> 
        <application-param> 
        <param-name>webapp.encoding.default</param-name> 
        <param-value>UTF-8</param-value> 
        </application-param> 
        <prefer-application-packages> 
        <package-name>com.sun.xml.*</package-name> 
        <package-name>javax.xml.bind.*</package-name> 
        <package-name>javax.jws.*</package-name> 
        <package-name>javax.xml.soap.*</package-name> 
        </prefer-application-packages> 
    </weblogic-application> 
    
  3. Đặt lọ yêu cầu trong WEB-INF/lib của WAR của bạn.

Nếu WebLogic báo cáo sự cố tải lớp, bạn có thể phải thêm nhiều gói Java hơn theo yếu tố prefer-application-packages.

+0

Câu trả lời rất hữu ích, cảm ơn. Phiên bản jaxws 2.1.1 của tôi được lặp lại bằng cách chuyển đổi wsimport. – Gerard

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