This is an automated email from the ASF dual-hosted git repository.
zrlw pushed a commit to branch 3.3
in repository https://gitbox.apache.org/repos/asf/dubbo.git
The following commit(s) were added to refs/heads/3.3 by this push:
new 55d1c092cb Get bytes using UTF-8 charset (#15483)
55d1c092cb is described below
commit 55d1c092cb983afa779fa25069daa520b0b7e357
Author: zrlw <[email protected]>
AuthorDate: Tue Jun 24 15:27:39 2025 +0800
Get bytes using UTF-8 charset (#15483)
---
dubbo-common/src/main/java/org/apache/dubbo/common/io/Bytes.java | 3 ++-
.../src/main/java/org/apache/dubbo/common/utils/JVMUtil.java | 3 ++-
.../apache/dubbo/maven/plugin/protoc/DubboProtocCompilerMojo.java | 1 +
.../src/main/java/org/apache/dubbo/auth/BasicAuthenticator.java | 5 +++--
.../src/main/java/org/apache/dubbo/auth/utils/SignatureUtils.java | 2 +-
.../apache/dubbo/qos/server/handler/ForeignHostPermitHandler.java | 3 ++-
.../org/apache/dubbo/qos/server/handler/HttpProcessHandler.java | 8 ++++++--
.../org/apache/dubbo/qos/server/handler/QosProcessHandler.java | 5 +++--
.../apache/dubbo/spring/security/jackson/ObjectMapperCodec.java | 3 ++-
.../rpc/protocol/tri/websocket/TripleTextMessageHandler.java | 6 ++++--
.../src/test/java/org/apache/dubbo/registry/ZKTools.java | 2 +-
.../org/apache/dubbo/registry/multicast/MulticastRegistry.java | 5 +++--
.../dubbo/registry/zookeeper/util/CuratorFrameworkUtils.java | 3 ++-
.../java/org/apache/dubbo/remoting/telnet/codec/TelnetCodec.java | 3 ++-
.../org/apache/dubbo/remoting/codec/DeprecatedTelnetCodec.java | 3 ++-
.../remoting/zookeeper/curator5/Curator5ZookeeperClient.java | 2 +-
.../src/main/java/org/apache/dubbo/rpc/filter/GenericFilter.java | 3 ++-
17 files changed, 39 insertions(+), 21 deletions(-)
diff --git a/dubbo-common/src/main/java/org/apache/dubbo/common/io/Bytes.java
b/dubbo-common/src/main/java/org/apache/dubbo/common/io/Bytes.java
index 98007dffc7..d3c615b755 100644
--- a/dubbo-common/src/main/java/org/apache/dubbo/common/io/Bytes.java
+++ b/dubbo-common/src/main/java/org/apache/dubbo/common/io/Bytes.java
@@ -23,6 +23,7 @@ import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
+import java.nio.charset.StandardCharsets;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.util.Map;
@@ -823,7 +824,7 @@ public class Bytes {
* @return MD5 byte array.
*/
public static byte[] getMD5(String str) {
- return getMD5(str.getBytes());
+ return getMD5(str.getBytes(StandardCharsets.UTF_8));
}
/**
diff --git
a/dubbo-common/src/main/java/org/apache/dubbo/common/utils/JVMUtil.java
b/dubbo-common/src/main/java/org/apache/dubbo/common/utils/JVMUtil.java
index f38dfaeb5b..146e351e08 100644
--- a/dubbo-common/src/main/java/org/apache/dubbo/common/utils/JVMUtil.java
+++ b/dubbo-common/src/main/java/org/apache/dubbo/common/utils/JVMUtil.java
@@ -24,6 +24,7 @@ import java.lang.management.ManagementFactory;
import java.lang.management.MonitorInfo;
import java.lang.management.ThreadInfo;
import java.lang.management.ThreadMXBean;
+import java.nio.charset.StandardCharsets;
import static java.lang.Thread.State.BLOCKED;
import static java.lang.Thread.State.TIMED_WAITING;
@@ -33,7 +34,7 @@ public class JVMUtil {
public static void jstack(OutputStream stream) throws Exception {
ThreadMXBean threadMxBean = ManagementFactory.getThreadMXBean();
for (ThreadInfo threadInfo : threadMxBean.dumpAllThreads(true, true)) {
- stream.write(getThreadDumpString(threadInfo).getBytes());
+
stream.write(getThreadDumpString(threadInfo).getBytes(StandardCharsets.UTF_8));
}
}
diff --git
a/dubbo-maven-plugin/src/main/java/org/apache/dubbo/maven/plugin/protoc/DubboProtocCompilerMojo.java
b/dubbo-maven-plugin/src/main/java/org/apache/dubbo/maven/plugin/protoc/DubboProtocCompilerMojo.java
index 2d357cecd8..5cd40bd3ae 100644
---
a/dubbo-maven-plugin/src/main/java/org/apache/dubbo/maven/plugin/protoc/DubboProtocCompilerMojo.java
+++
b/dubbo-maven-plugin/src/main/java/org/apache/dubbo/maven/plugin/protoc/DubboProtocCompilerMojo.java
@@ -533,6 +533,7 @@ public class DubboProtocCompilerMojo extends AbstractMojo {
}
private static String fixUnicodeOutput(final String message) {
+ // TODO default charset is not UTF-8 ?
return new String(message.getBytes(), StandardCharsets.UTF_8);
}
}
diff --git
a/dubbo-plugin/dubbo-auth/src/main/java/org/apache/dubbo/auth/BasicAuthenticator.java
b/dubbo-plugin/dubbo-auth/src/main/java/org/apache/dubbo/auth/BasicAuthenticator.java
index b155e67da5..57554a170e 100644
---
a/dubbo-plugin/dubbo-auth/src/main/java/org/apache/dubbo/auth/BasicAuthenticator.java
+++
b/dubbo-plugin/dubbo-auth/src/main/java/org/apache/dubbo/auth/BasicAuthenticator.java
@@ -21,6 +21,7 @@ import org.apache.dubbo.auth.spi.Authenticator;
import org.apache.dubbo.common.URL;
import org.apache.dubbo.rpc.Invocation;
+import java.nio.charset.StandardCharsets;
import java.util.Base64;
import java.util.Objects;
@@ -31,7 +32,7 @@ public class BasicAuthenticator implements Authenticator {
String username = url.getParameter(Constants.USERNAME_KEY);
String password = url.getParameter(Constants.PASSWORD_KEY);
String auth = username + ":" + password;
- String encodedAuth =
Base64.getEncoder().encodeToString(auth.getBytes());
+ String encodedAuth =
Base64.getEncoder().encodeToString(auth.getBytes(StandardCharsets.UTF_8));
String authHeaderValue = "Basic " + encodedAuth;
invocation.setAttachment(Constants.AUTHORIZATION_HEADER_LOWER,
authHeaderValue);
@@ -42,7 +43,7 @@ public class BasicAuthenticator implements Authenticator {
String username = url.getParameter(Constants.USERNAME_KEY);
String password = url.getParameter(Constants.PASSWORD_KEY);
String auth = username + ":" + password;
- String encodedAuth =
Base64.getEncoder().encodeToString(auth.getBytes());
+ String encodedAuth =
Base64.getEncoder().encodeToString(auth.getBytes(StandardCharsets.UTF_8));
String authHeaderValue = "Basic " + encodedAuth;
if (!Objects.equals(authHeaderValue,
invocation.getAttachment(Constants.AUTHORIZATION_HEADER))
diff --git
a/dubbo-plugin/dubbo-auth/src/main/java/org/apache/dubbo/auth/utils/SignatureUtils.java
b/dubbo-plugin/dubbo-auth/src/main/java/org/apache/dubbo/auth/utils/SignatureUtils.java
index 3267835bb3..da4c0b3e87 100644
---
a/dubbo-plugin/dubbo-auth/src/main/java/org/apache/dubbo/auth/utils/SignatureUtils.java
+++
b/dubbo-plugin/dubbo-auth/src/main/java/org/apache/dubbo/auth/utils/SignatureUtils.java
@@ -64,7 +64,7 @@ public class SignatureUtils {
} catch (NoSuchAlgorithmException e) {
throw new RuntimeException("Failed to generate HMAC: no such
algorithm exception " + HMAC_SHA256_ALGORITHM);
}
- SecretKeySpec signingKey = new SecretKeySpec(key.getBytes(),
HMAC_SHA256_ALGORITHM);
+ SecretKeySpec signingKey = new
SecretKeySpec(key.getBytes(StandardCharsets.UTF_8), HMAC_SHA256_ALGORITHM);
try {
mac.init(signingKey);
} catch (InvalidKeyException e) {
diff --git
a/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/server/handler/ForeignHostPermitHandler.java
b/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/server/handler/ForeignHostPermitHandler.java
index b33803a988..4308c3d919 100644
---
a/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/server/handler/ForeignHostPermitHandler.java
+++
b/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/server/handler/ForeignHostPermitHandler.java
@@ -22,6 +22,7 @@ import org.apache.dubbo.qos.common.QosConstants;
import java.net.InetAddress;
import java.net.InetSocketAddress;
+import java.nio.charset.StandardCharsets;
import java.util.function.Predicate;
import io.netty.buffer.ByteBuf;
@@ -74,7 +75,7 @@ public class ForeignHostPermitHandler extends
ChannelHandlerAdapter {
ByteBuf cb = Unpooled.wrappedBuffer((QosConstants.BR_STR
+ "Foreign Ip Not Permitted, Consider Config It In
Whitelist." + QosConstants.BR_STR)
- .getBytes());
+ .getBytes(StandardCharsets.UTF_8));
ctx.writeAndFlush(cb).addListener(ChannelFutureListener.CLOSE);
}
diff --git
a/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/server/handler/HttpProcessHandler.java
b/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/server/handler/HttpProcessHandler.java
index d23a4acd3a..fb7c1300e0 100644
---
a/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/server/handler/HttpProcessHandler.java
+++
b/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/server/handler/HttpProcessHandler.java
@@ -27,6 +27,8 @@ import
org.apache.dubbo.qos.command.exception.NoSuchCommandException;
import org.apache.dubbo.qos.command.exception.PermissionDenyException;
import org.apache.dubbo.rpc.model.FrameworkModel;
+import java.nio.charset.StandardCharsets;
+
import io.netty.buffer.Unpooled;
import io.netty.channel.ChannelFutureListener;
import io.netty.channel.ChannelHandlerContext;
@@ -68,9 +70,11 @@ public class HttpProcessHandler extends
SimpleChannelInboundHandler<HttpRequest>
private static FullHttpResponse http(int httpCode, String result) {
FullHttpResponse response = new DefaultFullHttpResponse(
- HttpVersion.HTTP_1_1, HttpResponseStatus.valueOf(httpCode),
Unpooled.wrappedBuffer(result.getBytes()));
+ HttpVersion.HTTP_1_1,
+ HttpResponseStatus.valueOf(httpCode),
+
Unpooled.wrappedBuffer(result.getBytes(StandardCharsets.UTF_8)));
HttpHeaders httpHeaders = response.headers();
- httpHeaders.set(HttpHeaderNames.CONTENT_TYPE, "text/plain");
+ httpHeaders.set(HttpHeaderNames.CONTENT_TYPE, "text/plain;
charset=utf-8");
httpHeaders.set(HttpHeaderNames.CONTENT_LENGTH,
response.content().readableBytes());
return response;
}
diff --git
a/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/server/handler/QosProcessHandler.java
b/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/server/handler/QosProcessHandler.java
index 353a2eed7c..441416f86c 100644
---
a/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/server/handler/QosProcessHandler.java
+++
b/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/server/handler/QosProcessHandler.java
@@ -20,6 +20,7 @@ import org.apache.dubbo.common.utils.ExecutorUtil;
import org.apache.dubbo.qos.api.QosConfiguration;
import org.apache.dubbo.rpc.model.FrameworkModel;
+import java.nio.charset.StandardCharsets;
import java.util.List;
import java.util.concurrent.TimeUnit;
@@ -60,8 +61,8 @@ public class QosProcessHandler extends ByteToMessageDecoder {
() -> {
final String welcome =
qosConfiguration.getWelcome();
if (welcome != null) {
-
ctx.write(Unpooled.wrappedBuffer(welcome.getBytes()));
-
ctx.writeAndFlush(Unpooled.wrappedBuffer(PROMPT.getBytes()));
+
ctx.write(Unpooled.wrappedBuffer(welcome.getBytes(StandardCharsets.UTF_8)));
+
ctx.writeAndFlush(Unpooled.wrappedBuffer(PROMPT.getBytes(StandardCharsets.UTF_8)));
}
},
500,
diff --git
a/dubbo-plugin/dubbo-spring-security/src/main/java/org/apache/dubbo/spring/security/jackson/ObjectMapperCodec.java
b/dubbo-plugin/dubbo-spring-security/src/main/java/org/apache/dubbo/spring/security/jackson/ObjectMapperCodec.java
index e70aeaeb9e..f85e182e36 100644
---
a/dubbo-plugin/dubbo-spring-security/src/main/java/org/apache/dubbo/spring/security/jackson/ObjectMapperCodec.java
+++
b/dubbo-plugin/dubbo-spring-security/src/main/java/org/apache/dubbo/spring/security/jackson/ObjectMapperCodec.java
@@ -22,6 +22,7 @@ import org.apache.dubbo.common.logger.LoggerFactory;
import org.apache.dubbo.common.utils.ClassUtils;
import org.apache.dubbo.common.utils.StringUtils;
+import java.nio.charset.StandardCharsets;
import java.util.ArrayList;
import java.util.List;
import java.util.function.Consumer;
@@ -64,7 +65,7 @@ public class ObjectMapperCodec {
if (StringUtils.isBlank(content)) {
return null;
}
- return deserialize(content.getBytes(), clazz);
+ return deserialize(content.getBytes(StandardCharsets.UTF_8), clazz);
}
public String serialize(Object object) {
diff --git
a/dubbo-plugin/dubbo-triple-websocket/src/main/java/org/apache/dubbo/rpc/protocol/tri/websocket/TripleTextMessageHandler.java
b/dubbo-plugin/dubbo-triple-websocket/src/main/java/org/apache/dubbo/rpc/protocol/tri/websocket/TripleTextMessageHandler.java
index 2aa962d6d1..6ac96afde1 100644
---
a/dubbo-plugin/dubbo-triple-websocket/src/main/java/org/apache/dubbo/rpc/protocol/tri/websocket/TripleTextMessageHandler.java
+++
b/dubbo-plugin/dubbo-triple-websocket/src/main/java/org/apache/dubbo/rpc/protocol/tri/websocket/TripleTextMessageHandler.java
@@ -23,6 +23,8 @@ import
org.apache.dubbo.remoting.websocket.WebSocketTransportListener;
import javax.websocket.MessageHandler;
+import java.nio.charset.StandardCharsets;
+
public class TripleTextMessageHandler implements
MessageHandler.Partial<String> {
private final WebSocketTransportListener webSocketTransportListener;
@@ -33,8 +35,8 @@ public class TripleTextMessageHandler implements
MessageHandler.Partial<String>
@Override
public void onMessage(String messagePart, boolean last) {
- Http2InputMessage http2InputMessage =
- new Http2InputMessageFrame(new
FinalFragmentByteArrayInputStream(messagePart.getBytes(), last), false);
+ Http2InputMessage http2InputMessage = new Http2InputMessageFrame(
+ new
FinalFragmentByteArrayInputStream(messagePart.getBytes(StandardCharsets.UTF_8),
last), false);
webSocketTransportListener.onData(http2InputMessage);
}
}
diff --git
a/dubbo-registry/dubbo-registry-api/src/test/java/org/apache/dubbo/registry/ZKTools.java
b/dubbo-registry/dubbo-registry-api/src/test/java/org/apache/dubbo/registry/ZKTools.java
index aedbed0727..10266fe5cf 100644
---
a/dubbo-registry/dubbo-registry-api/src/test/java/org/apache/dubbo/registry/ZKTools.java
+++
b/dubbo-registry/dubbo-registry-api/src/test/java/org/apache/dubbo/registry/ZKTools.java
@@ -231,7 +231,7 @@ public class ZKTools {
}
public static void setData(String path, String data) throws Exception {
- client.setData().inBackground().forPath(path, data.getBytes());
+ client.setData().inBackground().forPath(path,
data.getBytes(StandardCharsets.UTF_8));
}
public static void testPathCache() throws Exception {
diff --git
a/dubbo-registry/dubbo-registry-multicast/src/main/java/org/apache/dubbo/registry/multicast/MulticastRegistry.java
b/dubbo-registry/dubbo-registry-multicast/src/main/java/org/apache/dubbo/registry/multicast/MulticastRegistry.java
index 1575cc6853..5bfe264146 100644
---
a/dubbo-registry/dubbo-registry-multicast/src/main/java/org/apache/dubbo/registry/multicast/MulticastRegistry.java
+++
b/dubbo-registry/dubbo-registry-multicast/src/main/java/org/apache/dubbo/registry/multicast/MulticastRegistry.java
@@ -37,6 +37,7 @@ import java.net.InetAddress;
import java.net.InetSocketAddress;
import java.net.MulticastSocket;
import java.net.Socket;
+import java.nio.charset.StandardCharsets;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashSet;
@@ -260,7 +261,7 @@ public class MulticastRegistry extends FailbackRegistry {
logger.info("Send multicast message: " + msg + " to " +
multicastAddress + ":" + multicastPort);
}
try {
- byte[] data = (msg + "\n").getBytes();
+ byte[] data = (msg + "\n").getBytes(StandardCharsets.UTF_8);
DatagramPacket hi = new DatagramPacket(data, data.length,
multicastAddress, multicastPort);
multicastSocket.send(hi);
} catch (Exception e) {
@@ -273,7 +274,7 @@ public class MulticastRegistry extends FailbackRegistry {
logger.info("Send unicast message: " + msg + " to " + host + ":" +
multicastPort);
}
try {
- byte[] data = (msg + "\n").getBytes();
+ byte[] data = (msg + "\n").getBytes(StandardCharsets.UTF_8);
DatagramPacket hi = new DatagramPacket(data, data.length,
InetAddress.getByName(host), multicastPort);
multicastSocket.send(hi);
} catch (Exception e) {
diff --git
a/dubbo-registry/dubbo-registry-zookeeper/src/main/java/org/apache/dubbo/registry/zookeeper/util/CuratorFrameworkUtils.java
b/dubbo-registry/dubbo-registry-zookeeper/src/main/java/org/apache/dubbo/registry/zookeeper/util/CuratorFrameworkUtils.java
index 19da7748af..ecf88f4b4f 100644
---
a/dubbo-registry/dubbo-registry-zookeeper/src/main/java/org/apache/dubbo/registry/zookeeper/util/CuratorFrameworkUtils.java
+++
b/dubbo-registry/dubbo-registry-zookeeper/src/main/java/org/apache/dubbo/registry/zookeeper/util/CuratorFrameworkUtils.java
@@ -25,6 +25,7 @@ import
org.apache.dubbo.registry.zookeeper.ZookeeperServiceDiscovery;
import org.apache.dubbo.rpc.model.ScopeModelUtil;
import java.lang.reflect.Method;
+import java.nio.charset.StandardCharsets;
import java.util.Collection;
import java.util.List;
import java.util.Map;
@@ -92,7 +93,7 @@ public abstract class CuratorFrameworkUtils {
String userInformation = connectionURL.getUserInformation();
if (StringUtils.isNotEmpty(userInformation)) {
- builder = builder.authorization("digest",
userInformation.getBytes());
+ builder = builder.authorization("digest",
userInformation.getBytes(StandardCharsets.UTF_8));
builder.aclProvider(new ACLProvider() {
@Override
public List<ACL> getDefaultAcl() {
diff --git
a/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/telnet/codec/TelnetCodec.java
b/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/telnet/codec/TelnetCodec.java
index 3f1140b22c..73e420fd07 100644
---
a/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/telnet/codec/TelnetCodec.java
+++
b/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/telnet/codec/TelnetCodec.java
@@ -29,6 +29,7 @@ import
org.apache.dubbo.remoting.transport.codec.TransportCodec;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.nio.charset.Charset;
+import java.nio.charset.StandardCharsets;
import java.util.Arrays;
import java.util.LinkedList;
import java.util.List;
@@ -273,7 +274,7 @@ public class TelnetCodec extends TransportCodec {
if (CollectionUtils.isNotEmpty(history) && index != null && index >= 0
&& index < history.size()) {
String value = history.get(index);
if (value != null) {
- byte[] b1 = value.getBytes();
+ byte[] b1 = value.getBytes(StandardCharsets.UTF_8);
byte[] b2 = new byte[b1.length + message.length];
System.arraycopy(b1, 0, b2, 0, b1.length);
System.arraycopy(message, 0, b2, b1.length, message.length);
diff --git
a/dubbo-remoting/dubbo-remoting-api/src/test/java/org/apache/dubbo/remoting/codec/DeprecatedTelnetCodec.java
b/dubbo-remoting/dubbo-remoting-api/src/test/java/org/apache/dubbo/remoting/codec/DeprecatedTelnetCodec.java
index 2f9180277c..e7df0bb586 100644
---
a/dubbo-remoting/dubbo-remoting-api/src/test/java/org/apache/dubbo/remoting/codec/DeprecatedTelnetCodec.java
+++
b/dubbo-remoting/dubbo-remoting-api/src/test/java/org/apache/dubbo/remoting/codec/DeprecatedTelnetCodec.java
@@ -34,6 +34,7 @@ import java.io.OutputStream;
import java.io.UnsupportedEncodingException;
import java.net.InetSocketAddress;
import java.nio.charset.Charset;
+import java.nio.charset.StandardCharsets;
import java.util.Arrays;
import java.util.LinkedList;
import java.util.List;
@@ -310,7 +311,7 @@ public class DeprecatedTelnetCodec implements Codec {
if (history != null && history.size() > 0 && index != null && index >=
0 && index < history.size()) {
String value = history.get(index);
if (value != null) {
- byte[] b1 = value.getBytes();
+ byte[] b1 = value.getBytes(StandardCharsets.UTF_8);
if (message != null && message.length > 0) {
byte[] b2 = new byte[b1.length + message.length];
System.arraycopy(b1, 0, b2, 0, b1.length);
diff --git
a/dubbo-remoting/dubbo-remoting-zookeeper-curator5/src/main/java/org/apache/dubbo/remoting/zookeeper/curator5/Curator5ZookeeperClient.java
b/dubbo-remoting/dubbo-remoting-zookeeper-curator5/src/main/java/org/apache/dubbo/remoting/zookeeper/curator5/Curator5ZookeeperClient.java
index fe37a10362..63b714aa34 100644
---
a/dubbo-remoting/dubbo-remoting-zookeeper-curator5/src/main/java/org/apache/dubbo/remoting/zookeeper/curator5/Curator5ZookeeperClient.java
+++
b/dubbo-remoting/dubbo-remoting-zookeeper-curator5/src/main/java/org/apache/dubbo/remoting/zookeeper/curator5/Curator5ZookeeperClient.java
@@ -79,7 +79,7 @@ public class Curator5ZookeeperClient
.sessionTimeoutMs(sessionExpireMs);
String userInformation = url.getUserInformation();
if (userInformation != null && userInformation.length() > 0) {
- builder = builder.authorization("digest",
userInformation.getBytes());
+ builder = builder.authorization("digest",
userInformation.getBytes(StandardCharsets.UTF_8));
builder.aclProvider(new ACLProvider() {
@Override
public List<ACL> getDefaultAcl() {
diff --git
a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/GenericFilter.java
b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/GenericFilter.java
index c06450b578..d50b7cf019 100644
---
a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/GenericFilter.java
+++
b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/GenericFilter.java
@@ -53,6 +53,7 @@ import org.apache.dubbo.rpc.support.ProtocolUtils;
import java.io.IOException;
import java.lang.reflect.Method;
import java.lang.reflect.Type;
+import java.nio.charset.StandardCharsets;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
@@ -183,7 +184,7 @@ public class GenericFilter implements Filter,
Filter.Listener, ScopeModelAware {
// as proto3 only accept one protobuf parameter
if (args.length == 1 && args[0] instanceof String) {
try (UnsafeByteArrayInputStream is =
- new UnsafeByteArrayInputStream(((String)
args[0]).getBytes())) {
+ new UnsafeByteArrayInputStream(((String)
args[0]).getBytes(StandardCharsets.UTF_8))) {
args[0] = applicationModel
.getExtensionLoader(Serialization.class)
.getExtension(GENERIC_SERIALIZATION_PROTOBUF)