Win a copy of The Little Book of Impediments (e-book only) this week in the Agile and Other Processes forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

EJB 3 In Action errata - InvocationContext

 
Tyronne Fernando
Ranch Hand
Posts: 50
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
The following code is from EJB 3 In Action page 212.

public class SecurityInterceptor {
@AroundInvoke
public Object checkUserRole(InvocationContext context)
throws Exception {
if (!context.getEJBContext().isCallerInRole("CSR")) {
throw new SecurityException(
"No permissions to cancel bid");
}
return context.proceed();
}
}

@Stateless
public class BidManagerBean implements BidManager {
@Interceptors(actionbazaar.security.SecurityInterceptor.class)
public void cancelBid(Bid bid, Item item) { ... }
.......

Does anyone can tell me where is the getEJBContext() method is coming from? That method is not specified for InvocationContext (http://java.sun.com/javaee/5/docs/api/javax/interceptor/InvocationContext.html). Also I can't find any correction in the errata (http://www.manning.com/panda/excerpt_errata.html).

Thanks in advance.

Cheers,
Tyronne
 
Yucca Nel
Ranch Hand
Posts: 147
IntelliJ IDE Java Ubuntu
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Whenever you see context think to yourself a window: EJB Context = a window to the environment surrounding the EJB, ENC = a window to the environment naming etc. In this case we have a window to the invocation of the interceptor which is the method that the is being intercepted. You now have a window to lookup that methods parameters, class that it is a member of etc. You even can set the parameters of that method.
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic