2010-10-21 16 views
6

Tôi đang làm việc trong ứng dụng Máy tính để bàn cung cấp Sao lưu dữ liệu trực tuyến. Trong ứng dụng của tôi, tôi đang cố gắng triển khai tính năng cập nhật phần mềm tự động. Đối với điều này tôi đang sử dụng java web bắt đầu. Tôi đã thực hiện quy trình sau để bắt đầu sử dụng java web.Ngoại lệ AWTPermission trong khi triển khai Tự động cập nhật ứng dụng máy tính để bàn bằng cách sử dụng java web start

1> tạo jar với tất cả các tài nguyên. 2> tạo tập tin jnlp như:

 <?xml version="1.0" encoding="UTF-8"?> 
    <jnlp spec="1.0+" 
       codebase="http://cmswebusa.com/kapil" 
       href="PixelVaultJNLP.jnlp"> 
       <information> 
         <title>PixelVault</title> 
          <vendor>globussoft</vendor> 
          </information> 
         <resources> 
        <!-- Application Resources -->  
          <jar href="PixelVault.jar" main="true" /> 

        </resources> 
        <application-desc 
        name="PixelVault" 
        main-class="com.pixelvault.systemtray.SysTray"> 
        </application-desc> 
        <update check="background"/> 
       </jnlp> 

nơi PixelVault.jar là jar của ứng dụng đó là vào vị trí máy chủ http.

trong khi tôi đang cố gắng để tải về ứng dụng của tôi sử dụng lệnh tùy chọn chạy nhanh chóng bằng cách gõ: javaws, tôi đang nhận AWT phép ngoại lệ như:

java.security.AccessControlException: Truy cập bị từ chối "java.awt.AWTPermission"

nó nói "java.awt.AWTPermissionException" "accessSystemTray". Tôi không nhận được làm thế nào tôi có thể cho phép ứng dụng của tôi sử dụng khay hệ thống.

Vui lòng hướng dẫn thực hiện thay đổi trong tệp jnlp hoặc thực hiện bất kỳ thay đổi nào khác trong đơn đăng ký của tôi.

Tôi cảm ơn tất cả các đề xuất có giá trị của bạn sẽ giúp tôi giải quyết vấn đề này.

Trả lời

2

Để thoát khỏi lỗi rằng:

  • Các JNLP sẽ cần phải khai báo tất cả-quyền trong vòng một yếu tố an ninh.
  • Mã sẽ cần phải được ký điện tử.

Lưu ý rằng tệp JNLP có các phần tử theo đúng thứ tự. Sử dụng JaNeLA để kiểm tra tính hợp lệ của tệp cũng như các khía cạnh khác của lần khởi chạy.

+0

Cảm ơn bạn đã trả lời câu hỏi của tôi nhưng tôi đang gặp sự cố khác với chữ ký điện tử. tôi đang theo quy trình được bảo trì bởi http://wiki.plexinfo.net/index.php?title=How_to_sign_JAR_files và trong bước 5> ký vào tệp JAR với chứng chỉ kiểm tra tôi đang gặp lỗi jarsigner: không thể mở tệp jar: http://cmswebusa.com/kapil/PixelVault.jar. Có cách nào để kiểm tra những gì có thể là lý do cho lỗi này. Xin vui lòng hướng dẫn tôi cho việc này. – Toman

+0

Thông báo cho thấy rằng bạn đang cố gắng ký một tệp Jar đã có trên mạng. Để thành công, Jar phải nằm trên hệ thống tệp cục bộ. Ký tên ở đó, sau đó tải lên. –

+0

Cảm ơn các đề xuất của bạn. Bây giờ nó làm việc tốt cho tôi. – Toman

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