diff --git a/src/zutil/MimeTypeUtil.java b/src/zutil/MimeTypeUtil.java index aea557b..e85d44c 100644 --- a/src/zutil/MimeTypeUtil.java +++ b/src/zutil/MimeTypeUtil.java @@ -29,7 +29,6 @@ import zutil.parser.DataNode; import zutil.parser.json.JSONParser; import java.io.*; -import java.lang.reflect.Array; import java.util.*; /** @@ -40,7 +39,7 @@ public class MimeTypeUtil { // Static variables private static final ArrayList mimes = new ArrayList(); - private static final HashMap mimesByExtenion = new HashMap<>(); + private static final HashMap mimesByExtension = new HashMap<>(); // Initialize mime types static { @@ -74,13 +73,13 @@ public class MimeTypeUtil { mimes.add(mime); for (String extension : mime.getExtensions()) { - mimesByExtenion.put(extension, mime); + mimesByExtension.put(extension, mime); } } public static MimeType getMimeByExtension(String extension) { - return mimesByExtenion.get(extension); + return mimesByExtension.get(extension); } diff --git a/src/zutil/net/http/page/HttpJsonPage.java b/src/zutil/net/http/page/HttpJsonPage.java index 3b5075c..340ff7e 100755 --- a/src/zutil/net/http/page/HttpJsonPage.java +++ b/src/zutil/net/http/page/HttpJsonPage.java @@ -6,11 +6,10 @@ import zutil.net.http.HttpPrintStream; import zutil.parser.DataNode; import zutil.parser.json.JSONWriter; -import java.io.IOException; import java.util.Map; /** - * @author Ziver on 2016-11-04. + * A page handling responses in JSON format. */ public abstract class HttpJsonPage implements HttpPage { @@ -19,16 +18,21 @@ public abstract class HttpJsonPage implements HttpPage { HttpHeader headers, Map session, Map cookie, - Map request) throws IOException { + Map request) { - out.setHeader("Content-Type", "application/json"); - JSONWriter writer = new JSONWriter(out); - writer.write(jsonRespond(headers, session, cookie, request)); - writer.close(); + out.setHeader(HttpHeader.HEADER_CONTENT_TYPE, "application/json"); + DataNode json = jsonRespond(out, headers, session, cookie, request); + + if (json != null) { + JSONWriter writer = new JSONWriter(out); + writer.write(json); + writer.close(); + } } - protected abstract DataNode jsonRespond(HttpHeader headers, + protected abstract DataNode jsonRespond(HttpPrintStream out, + HttpHeader headers, Map session, Map cookie, Map request); diff --git a/src/zutil/ui/Configurator.java b/src/zutil/ui/Configurator.java index 3637f1d..ed1a51d 100755 --- a/src/zutil/ui/Configurator.java +++ b/src/zutil/ui/Configurator.java @@ -197,13 +197,15 @@ public class Configurator { for(ConfigurationParam param : params){ try { param.apply(obj); + // Logging if(logger.isLoggable(Level.FINE)) { - strParams.append(param.getName()); + strParams.append(param.getName()).append(": "); if(param.isTypeString()) - strParams.append(": '").append(param.getString()).append("', "); + strParams.append("'").append(param.getString()).append("'"); else - strParams.append(": ").append(param.getString()).append(", "); + strParams.append(param.getString()); + strParams.append(", "); } } catch (IllegalAccessException e) { logger.log(Level.WARNING, null, e); diff --git a/test/zutil/net/http/page/HttpJsonPageTest.java b/test/zutil/net/http/page/HttpJsonPageTest.java index 0d8cff9..9727137 100755 --- a/test/zutil/net/http/page/HttpJsonPageTest.java +++ b/test/zutil/net/http/page/HttpJsonPageTest.java @@ -3,6 +3,7 @@ package zutil.net.http.page; import org.junit.Test; import zutil.io.IOUtil; import zutil.net.http.HttpHeader; +import zutil.net.http.HttpPrintStream; import zutil.net.http.HttpTestUtil; import zutil.parser.DataNode; @@ -18,7 +19,7 @@ public class HttpJsonPageTest { private HttpJsonPage page = new HttpJsonPage() { @Override - protected DataNode jsonRespond(HttpHeader headers, Map session, Map cookie, Map request) { + protected DataNode jsonRespond(HttpPrintStream out, HttpHeader headers, Map session, Map cookie, Map request) { return new DataNode(DataNode.DataType.Map); } };