annotate webapp/WEB-INF/src/HumanEchoServlet.java @ 0:b6acfffd25cd

Initial commit of code. Not in a working state yet. This code is based on the JavaEndToEnd example described on Mathwork's MATLAB Application Deplyment (Web Example Guide for R2013b) - see this project's documentation for more details.
author luisf <luis.figueira@eecs.qmul.ac.uk>
date Wed, 27 Nov 2013 11:10:43 +0000
parents
children 76f809129f98
rev   line source
luis@0 1 import javax.servlet.http.HttpServlet;
luis@0 2 import javax.servlet.http.HttpServletRequest;
luis@0 3 import javax.servlet.http.HttpServletResponse;
luis@0 4 import javax.servlet.ServletException;
luis@0 5 import javax.servlet.ServletConfig;
luis@0 6 import java.io.IOException;
luis@0 7 import uk.ac.soton.isvr.*;
luis@0 8
luis@0 9 import com.mathworks.toolbox.javabuilder.MWJavaObjectRef;
luis@0 10 import com.mathworks.toolbox.javabuilder.MWNumericArray;
luis@0 11 import com.mathworks.toolbox.javabuilder.MWException;
luis@0 12
luis@0 13 public class HumanEchoServlet extends HttpServlet {
luis@0 14 private HumanEcho echo;
luis@0 15
luis@0 16 public void init(ServletConfig config) throws ServletException {
luis@0 17 super.init(config);
luis@0 18
luis@0 19 try {
luis@0 20 echo = new HumanEcho();
luis@0 21 }
luis@0 22 catch(MWException e) {
luis@0 23 e.printStackTrace();
luis@0 24 }
luis@0 25 }
luis@0 26
luis@0 27 public void destroy() {
luis@0 28 super.destroy();
luis@0 29
luis@0 30 if(echo!=null) {
luis@0 31 echo.dispose();
luis@0 32 }
luis@0 33 }
luis@0 34
luis@0 35
luis@0 36 protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
luis@0 37 // Test parameter
luis@0 38 MWNumericArray test = new MWNumericArray(Integer.parseInt(request.getParameter("test")));
luis@0 39
luis@0 40 double[][] square = new double[0][];
luis@0 41
luis@0 42 // double[][] square = new double[0][];
luis@0 43 // WebFigure figure = null;
luis@0 44
luis@0 45 try {
luis@0 46 // refers to the mcode function gen_echo.m
luis@0 47 Object[] result = echo.gen_echo(1, test);
luis@0 48
luis@0 49 MWNumericArray array = (MWNumericArray)result[0];
luis@0 50 square = (double[][])array.toArray();
luis@0 51
luis@0 52 }
luis@0 53 catch(MWException e) {
luis@0 54 e.printStackTrace();
luis@0 55 }
luis@0 56
luis@0 57 StringBuffer buffer = new StringBuffer();
luis@0 58
luis@0 59 buffer.append("<BR>");
luis@0 60 buffer.append("<BR>");
luis@0 61
luis@0 62 buffer.append("<TABLE >");
luis@0 63 for (double[] row : square)
luis@0 64 {
luis@0 65 buffer.append("<TR>");
luis@0 66 for (double value : row)
luis@0 67 {
luis@0 68 buffer.append("<TH>");
luis@0 69 buffer.append(new Double(value).intValue());
luis@0 70 }
luis@0 71 }
luis@0 72 buffer.append("</TABLE>");
luis@0 73 buffer.append("<BR>");
luis@0 74 response.getOutputStream().print(buffer.toString());
luis@0 75 }
luis@0 76 }