Skip to main content

GF 3.1.2.2: javax.ejb.AccessLocalException: Client not authorized for this invocation

3 replies [Last post]
jawer
Offline
Joined: 2014-01-13
Points: 0

Hi all,

looking for some help about the 'javax.ejb.AccessLocalException: Client not authorized for this invocation' Problem.
We are using GF 3.1.2.2 and every to every two weeks we run into this Exception.
Deleting the ...\generated\policy folder , with an redeploy of the app (found as a solution for this issue) does not help, at least not for the long term (ok - for the short term, it helps):
-> http://glassfish.10926.n7.nabble.com/Persisting-Entity-javax-ejb-AccessL...

I found this issue as a bug in pervious versions, but not in 3.1.2.2.

Does anyone have any idea about this issue ?

Caused by: javax.ejb.AccessLocalException: Client not authorized for this invocation
at com.sun.ejb.containers.BaseContainer.preInvoke(BaseContainer.java:1888)
at com.sun.ejb.containers.EJBLocalObjectInvocationHandler.invoke(EJBLocalObjectInvocationHandler.java:212)
... 42 more

Best regards
jawer

Reply viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
f3riyanto
Offline
Joined: 2013-10-23
Points: 0

Hi Jawer,

I think the root problem is because of cache of glassfish server because you make some modification in the existing EJB class.

To solve this problem you just need to clear folder/directory "generated" in domain folder, and restart your glassfish server to refresh.

Hope this will help you.

Thanks.

jawer
Offline
Joined: 2014-01-13
Points: 0

Hi f3riyanto ,

thx for your response. I just found this as a solution, but this doesn't work permanently for us. After one or two weeks this error occurs again.
What do you mean with I 'make some modification in the existing EJB class'? Do you think about change something via reflection or similar?
Or do you think about deployment ?

best regards
jawer

f3riyanto
Offline
Joined: 2013-10-23
Points: 0

Dear Jawer,

Means with modification in the existing EJB is

You already have an EJB class A with 2 method, for example
method b and c in production env.

Then you modify the class A with add new method d.
And deployed it into production env.
The problem will be happen when you trying to access/use that EJB A from client with exception

javax.ejb.AccessLocalException: Client not ...

You just need to do the same way when you do the same case.
Hope this will help you to solve the problem.

Thanks
Ferry