Index: lams_central/src/java/org/lamsfoundation/lams/webservice/xml/LessonManagerServlet.java =================================================================== diff -u -r5cfec1a9425d39714e431ac135fce5a21aaff70d -re8b6f93e5d316929d0c36fb8bd51063d84d3494a --- lams_central/src/java/org/lamsfoundation/lams/webservice/xml/LessonManagerServlet.java (.../LessonManagerServlet.java) (revision 5cfec1a9425d39714e431ac135fce5a21aaff70d) +++ lams_central/src/java/org/lamsfoundation/lams/webservice/xml/LessonManagerServlet.java (.../LessonManagerServlet.java) (revision e8b6f93e5d316929d0c36fb8bd51063d84d3494a) @@ -2,6 +2,7 @@ import java.io.File; import java.io.IOException; +import java.io.PrintWriter; import java.rmi.RemoteException; import java.util.ArrayList; import java.util.Date; @@ -102,7 +103,6 @@ @Override public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { - ServletOutputStream outputStream = response.getOutputStream(); response.setContentType("text/xml"); response.setCharacterEncoding("UTF-8"); @@ -142,6 +142,7 @@ Long ldId = null; Long lsId = null; + ServletOutputStream outputStream = null; try { // TODO check input parameters are valid. @@ -233,9 +234,10 @@ } else if (method.equals(CentralConstants.METHOD_VERIFY_EXT_SERVER)) { verify(serverId, datetime, hashValue); response.setContentType("text/html"); - outputStream.write(1); - outputStream.flush(); - outputStream.close(); + PrintWriter out = response.getWriter(); + out.write("1"); + out.flush(); + out.close(); return; } else { @@ -247,6 +249,7 @@ document.appendChild(element); // write out the xml document. + outputStream = response.getOutputStream(); DOMImplementationLS domImplementation = (DOMImplementationLS) document.getImplementation(); LSSerializer lsSerializer = domImplementation.createLSSerializer(); LSOutput lsOutput = domImplementation.createLSOutput(); @@ -272,10 +275,15 @@ } catch (Exception e) { LessonManagerServlet.log.error("Problem loading learning manager servlet request", e); response.sendError(HttpServletResponse.SC_INTERNAL_SERVER_ERROR); + + } finally { + if (outputStream != null) { + outputStream.flush(); + outputStream.close(); + + } } - outputStream.flush(); - outputStream.close(); } /**