package org.gcube.nlphub; import java.io.IOException; import java.io.PrintWriter; import java.net.URL; import java.util.ArrayList; import java.util.List; import java.util.Scanner; import javax.servlet.ServletException; import javax.servlet.annotation.MultipartConfig; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.log4j.Logger; import org.gcube.data.analysis.dataminermanagercl.server.dmservice.SClient; import org.gcube.data.analysis.dataminermanagercl.shared.data.OutputData; import org.gcube.data.analysis.dataminermanagercl.shared.data.computations.ComputationId; import org.gcube.data.analysis.dataminermanagercl.shared.data.output.MapResource; import org.gcube.data.analysis.dataminermanagercl.shared.data.output.Resource; import org.gcube.data.analysis.dataminermanagercl.shared.parameters.FileParameter; import org.gcube.data.analysis.dataminermanagercl.shared.parameters.ObjectParameter; import org.gcube.data.analysis.dataminermanagercl.shared.parameters.Parameter; import org.gcube.nlphub.legacy.Constants; import org.gcube.nlphub.legacy.DataminerClient; import org.gcube.nlphub.legacy.JsonManager; //import org.gcube.dataminerclient.DataminerClient; import org.gcube.nlphub.nlp.NlpNerRunner; /** * Servlet implementation class NLPHub */ @WebServlet(asyncSupported = true, name = "NLPServlet", urlPatterns = { "/nlphub-servlet" }) public class NLPHub extends HttpServlet { private Logger logger = Logger.getLogger(NLPHub.class.getSimpleName()); private static final long serialVersionUID = 1L; private String service = "http://dataminer-prototypes.d4science.org/wps/"; private String token = "df2cc5f5-63ee-48c1-b2a6-1210030c57b8-843339462"; private boolean devMode = true; /** * @see HttpServlet#HttpServlet() */ public NLPHub() { super(); // TODO Auto-generated constructor stub } /** * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse * response) */ protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doWork(request, response); } /** * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse * response) */ protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doWork(request, response); } private void doWork(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { token = Constants.getToken(request, devMode); try { System.out.println("annotations: " + request.getParameter("annotations")); System.out.println("lang: " + request.getParameter("lang")); System.out.println("plink: " + request.getParameter("plink")); System.out.println("algs: " + request.getParameter("algs")); String[] algs = request.getParameter("algs").split(","); for(int i=0; i= 1) { // single algorithm execution System.out.println("algs[0]: " + algs[0]); NlpNerRunner runner = new NlpNerRunner(service, algs, token, response); runner.run(request.getParameter("plink"), request.getParameter("annotations"), request.getParameter("lang")); } else { response.setContentType("application/json;charset=UTF-8"); try { PrintWriter writer = response.getWriter(); writer.println(new JsonManager().getErrorJsonResponse("No algorithm identifiers given.")); } catch (Exception ex) { logger.error(ex.getLocalizedMessage()); } } } catch (Exception x) { x.printStackTrace(); } } }