2014-07-22 27 views
5

Tôi đã cố gắng tìm ra nguyên nhân của ngoại lệ khác cho ứng dụng web động của tôi tại đây - https://github.com/double-whammy/affablebean Tôi đã thực hiện một thay đổi nhỏ và tôi có ngoại lệ mới - javax.ejb.AccessLocalException: khách hàng không được uỷ quyền cho gọi nàyCần sửa chữa - javax.ejb.AccessLocalException: Khách hàng không được ủy quyền cho yêu cầu này

Một câu trả lời trực tuyến nói rằng tôi làm như sau - http://ask.ozar.net/11/javax-accesslocalexception-client-authorized-invocation

Cố gắng xóa các tập tin chính sách tạo (s). Bạn sẽ có thể định vị chúng trong C: \ glassfish-3 \ glassfish \ domains \ domain1 \ generated \ policy. thay thế tên miền của bạn với domain1

nói khác hơn - http://glassfish.10926.n7.nabble.com/Persisting-Entity-javax-ejb-AccessLocalException-Client-not-authorized-for-this-invocation-td11197.html

bạn có thể tìm thấy các tập tin chính sách thuộc lĩnh vực/domainx/tạo/chính sách /// {granted.policy, excluded.poliy} tài trợ tích cực là trong grant.policy, các khoản tài trợ âm được loại trừ. (nếu có). (Trong domaninx, x = 1,2,3 vv ...)

tìm trong grant.policy cho "khoản trợ cấp không đủ điều kiện của EJBMethodPermission, với tên = EJbName của bean phiên của bạn; Tôi nghĩ rằng có thể .. JpaPersonDao và với một spec phương pháp áp dụng cho phương pháp tiết kiệm


tôi đã cố gắng thứ hai và tôi thấy nhiều thư mục trong thư mục glassfish tôi: C: \ glassfish4 \ glassfish \ lĩnh \ domain1 \ tạo \ chính sách

C:. 
├───AffableBean 
│ ├───AffableBean 
│ │  granted.policy 
│ │ 
│ └───AffableBean_internal 
│   granted.policy 
│ 
├───__admingui 
│ └───__admingui 
│   excluded.policy 
│   granted.policy 
│ 
└───__default-web-module 
└───__default-web-module 
     granted.policy 

Như bạn có thể thấy, có rất nhiều tệp được cấp phép. Tôi nên sửa cái nào? Đây có phải là thư mục đầu tiên không?

Trả lời

9

Tôi nghĩ rằng vấn đề gốc là do bộ nhớ cache của máy chủ glassfish bởi vì bạn thực hiện một số sửa đổi trong lớp EJB hiện có.

Để giải quyết vấn đề này, bạn chỉ cần xóa thư mục/thư mục "được tạo" trong thư mục tên miền và khởi động lại máy chủ glassfish của bạn để làm mới.

+1

Điều này xảy ra với chúng tôi trong môi trường Glassfish của chúng tôi. Giải pháp của chúng tôi là không khai thác ứng dụng, tìm kiếm trong thư mục Glassfish cho bất kỳ tệp/dir nào có tên ứng dụng của chúng tôi và xóa tất cả các tệp đó theo cách thủ công, khởi động lại máy chủ và triển khai lại ứng dụng của chúng tôi. – John

2

Tôi đã giải quyết vấn đề này bằng cách triển khai lại ứng dụng. Trong NetBeans, nhấn chuột phải vào dự án và chọn Clean and Build. Chạy ứng dụng của bạn và thì đấy!

1

Tôi đã gặp vấn đề tương tự. Và được khắc phục bằng cách xóa các tên miền thư mục/domainx/generated/policy/{appName}/và khởi động lại.

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