@RequestMapping(value = "/show.html", method = RequestMethod.GET)
 public ModelAndView show(@RequestParam(value = "q", required = true) int q) {
   ModelAndView mav = new ModelAndView();
   mav.addObject("operation", "show");
   try {
     long startTs = System.currentTimeMillis();
     // show all details about the concept
     TConcept concept = nodeService.getConcept(q);
     Bag<TRelTypes> relCounts = nodeService.getRelationCounts(concept);
     Map<String, List<TRelation>> relmap = new HashMap<String, List<TRelation>>();
     Map<Integer, String> oidmap = new HashMap<Integer, String>();
     for (TRelTypes reltype : relCounts.uniqueSet()) {
       List<TRelation> rels = nodeService.getRelatedConcepts(concept, reltype);
       for (TRelation rel : rels) {
         TConcept toConcept = nodeService.getConcept(rel.getToOid());
         oidmap.put(rel.getToOid(), toConcept.getPname());
       }
       relmap.put(reltype.name(), rels);
     }
     mav.addObject("concept", concept);
     mav.addObject("relmap", relmap);
     mav.addObject("oidmap", oidmap);
     long endTs = System.currentTimeMillis();
     mav.addObject("elapsed", new Long(endTs - startTs));
   } catch (Exception e) {
     mav.addObject("error", e.getMessage());
   }
   mav.setViewName("show");
   return mav;
 }
 @RequestMapping(value = "/find.html")
 public ModelAndView find(@RequestParam(value = "q", required = false) String q) {
   ModelAndView mav = new ModelAndView();
   mav.addObject("operation", "find");
   if (StringUtils.isEmpty(q)) {
     mav.setViewName("find");
     return mav;
   }
   try {
     if (NumberUtils.isNumber(q) && StringUtils.length(q) == 7) {
       return show(Integer.valueOf(q));
     } else {
       long startTs = System.currentTimeMillis();
       List<TConcept> concepts = nodeService.findConcepts(q);
       mav.addObject("concepts", concepts);
       long endTs = System.currentTimeMillis();
       mav.addObject("q", q);
       mav.addObject("elapsed", new Long(endTs - startTs));
     }
   } catch (Exception e) {
     mav.addObject("error", e.getMessage());
   }
   mav.setViewName("find");
   return mav;
 }
 @PostConstruct
 public void init() throws Exception {
   nodeService = NodeService.getInstance();
   conceptMappingAE = UimaUtils.getAE(conceptMappingAEDescriptor, null);
 }