Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
public class CustomerServiceImpl implements CustomerService {
@Resource
WebServiceContext wsContext;

public List<Customer> getCustomersByName(String name) throws NoSuchCustomerException {
  Principal pr = wsContext.getUserPrincipal();

  // Only joe may access this service operation
  if (pr == null || !"joe".equals(pr.getName())) {
    throw new RuntimeException("Access denied");
  } 

    // Only the sales role may access this operation
  if (!wsContext.isUserInRole("sales")) {
    throw new RuntimeException("Access denied");
  } 

   MessageContext mContext = wsContext.getMessageContext();  

  // See which contents the message context has
  Set<String> s = mContext.keySet();

  // Using this cxf specific code you can access the CXF Message and Exchange objects
  WrappedMessageContext wmc = (WrappedMessageContext)mContext;
  Message m = wmc.getWrappedMessage();
  Exchange ex = m.getExchange();
}
}