CLEiM
Cross Lingual Education in Medicine
|
00001 00005 package com.uem.gsi.cleim.ali; 00006 00007 import java.io.IOException; 00008 import java.io.PrintWriter; 00009 00010 import javax.servlet.ServletConfig; 00011 import javax.servlet.ServletException; 00012 import javax.servlet.http.HttpServlet; 00013 import javax.servlet.http.HttpServletRequest; 00014 import javax.servlet.http.HttpServletResponse; 00015 00016 import com.uem.gsi.cleim.nlp.IntegrateAnnot; 00017 00021 public class XMLServ extends HttpServlet { 00022 private static final long serialVersionUID = 1L; 00023 private String path; 00027 public XMLServ() { 00028 super(); 00029 // TODO Auto-generated constructor stub 00030 } 00031 public void init(ServletConfig servletConfig) throws ServletException{ 00032 super.init(servletConfig); 00033 path = servletConfig.getServletContext().getRealPath("/WEB-INF"); 00034 } 00035 00039 protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 00040 request.setCharacterEncoding("UTF-8"); 00041 response.setContentType("text/html; charset=UTF-8"); 00042 String text=(request.getParameter("text")!=null)?request.getParameter("text"):""; 00043 String lev=(request.getParameter("lev")!=null)?request.getParameter("lev"):"0"; 00044 String onts=(request.getParameter("onts")!=null)?request.getParameter("onts"):"40397,46116"; //Medlineplus,Snomed 00045 String src=(request.getParameter("src")!=null)?request.getParameter("src"):"-1"; 00046 String[] localSrc = new String[3]; 00047 localSrc[0]=(request.getParameter("cksrcfb")!=null)?request.getParameter("cksrcfb"):"Freebase"; 00048 localSrc[1]=(request.getParameter("cksrcmp")!=null)?request.getParameter("cksrcmp"):"MedlinePlus"; 00049 localSrc[2]=(request.getParameter("cksrcsc")!=null)?request.getParameter("cksrcsc"):"Snomed"; 00050 String[] localLan = new String[2];; 00051 localLan[0]=(request.getParameter("cklanen")!=null)?request.getParameter("cklanen"):"en"; 00052 localLan[1]=(request.getParameter("cklansp")!=null)?request.getParameter("cklansp"):"sp"; 00053 String xmlResults=""; 00054 PrintWriter out = response.getWriter(); 00055 try { 00056 if (!text.equals("")){ 00057 //NCBO Ontologies (default is src=4 or -1) 00058 if (src.equals("2")) 00059 onts="40397"; 00060 else if (src.equals("3")) 00061 onts="46116"; 00062 00063 IntegrateAnnot ia=new IntegrateAnnot(text,path,onts,lev,localSrc,localLan); 00064 ia.initXmlDocument(); 00065 //GATE Annotation 00066 if (src.equals("-1")||src.equals("1")) 00067 ia.xmlGateTree(); 00068 00069 //NCBO Annotation 00070 if (!src.equals("1")) 00071 ia.xmlNCBOTree(); 00072 00073 // Normalizing and get document 00074 xmlResults=ia.getNormalizedXml(); 00075 } 00076 00077 response.setContentType("text/xml"); 00078 out.println(xmlResults); 00079 } 00080 catch( Exception e ) { 00081 out.println(e.toString()); 00082 } 00083 } 00084 00088 protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 00089 doGet(request,response); 00090 } 00091 }