mirror of
https://gitee.com/chinabugotech/hutool.git
synced 2025-12-06 17:18:54 +08:00
修复HttpConnection.reflectSetMethod反射在JDK9+权限问题(issue#4109@Github)
This commit is contained in:
parent
a3e58451fc
commit
edeb87c7f4
@ -1,7 +1,7 @@
|
||||
|
||||
# 🚀Changelog
|
||||
-------------------------------------------------------------------------------------------------------------
|
||||
# 5.8.42(2025-10-24)
|
||||
# 5.8.42(2025-10-28)
|
||||
|
||||
### 🐣新特性
|
||||
* 【core 】 `ListUtil`增加`zip`方法(pr#4052@Github)
|
||||
@ -14,6 +14,7 @@
|
||||
* 【extra 】 修复`JschSessionPool.remove`逻辑错误问题。
|
||||
* 【db 】 修复`Dialect.psForCount`未传入Wrapper导致大小写问题(issue#ID39G9@Gitee)。
|
||||
* 【core 】 修复`PasswdStrength.check`indexOf逻辑问题(pr#4114@Github)。
|
||||
* 【htp 】 修复`HttpConnection.reflectSetMethod`反射在JDK9+权限问题(issue#4109@Github)。
|
||||
|
||||
-------------------------------------------------------------------------------------------------------------
|
||||
# 5.8.41(2025-10-12)
|
||||
|
||||
@ -598,16 +598,21 @@ public class HttpConnection {
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过反射设置方法名,首先设置HttpURLConnection本身的方法名,再检查是否为代理类,如果是,设置带路对象的方法名。
|
||||
* 通过反射设置方法名,首先设置HttpURLConnection本身的方法名,再检查是否为代理类,如果是,设置代理对象的方法名。
|
||||
* @param method 方法名
|
||||
*/
|
||||
private void reflectSetMethod(Method method){
|
||||
ReflectUtil.setFieldValue(this.conn, "method", method.name());
|
||||
try {
|
||||
ReflectUtil.setFieldValue(this.conn, "method", method.name());
|
||||
|
||||
// HttpsURLConnectionImpl实现中,使用了代理类,需要修改被代理类的method方法
|
||||
final Object delegate = ReflectUtil.getFieldValue(this.conn, "delegate");
|
||||
if(null != delegate){
|
||||
ReflectUtil.setFieldValue(delegate, "method", method.name());
|
||||
// HttpsURLConnectionImpl实现中,使用了代理类,需要修改被代理类的method方法
|
||||
final Object delegate = ReflectUtil.getFieldValue(this.conn, "delegate");
|
||||
if(null != delegate){
|
||||
ReflectUtil.setFieldValue(delegate, "method", method.name());
|
||||
}
|
||||
} catch (Exception e){
|
||||
// ignore
|
||||
// https://github.com/chinabugotech/hutool/issues/4109
|
||||
}
|
||||
}
|
||||
// --------------------------------------------------------------- Private Method end
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user