code: public final AbstractItem findById(long itemId) throws SevereMessageStoreException
      {
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
              SibTr.entry(this, tc, "findById", Long.valueOf(itemId));
  
          AbstractItem item = null;
          ReferenceCollection ic = ((ReferenceCollection) _getMembership());
          if (null == ic)
          {
              if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
                  SibTr.exit(this, tc, "findById");
              throw new NotInMessageStore(); // Defect 489210
          }
          item = ic.findById(itemId);
  
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
              SibTr.exit(this, tc, "findById", item);
          return item;
      }
docs: Reply the item in the receiver with a matching ID. The item returned
  stream is neither removed from the message store nor locked for exclusive use
  of the caller.
  
  @param itemId
  
  @return item found or null if none.
  @throws SevereMessageStoreException
  @throws MessageStoreException