Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -135,7 +135,7 @@ public abstract class AbstractServiceConfig extends AbstractInterfaceConfig {
* <p>
* The configuration supports multiple, which are separated by commas.Such as:<code>fastjson2,fastjson,hessian2</code>
*/
private String preferSerialization; // default:hessian2
private String preferSerialization; // default:fastjson2,hessian2

/**
* Weather the service is export asynchronously
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -356,7 +356,7 @@
</xsd:attribute>
<xsd:attribute name="prefer-serialization" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The prefer serialization protocol of service, multiple serialization protocol are separated by commas, default hessian2. ]]></xsd:documentation>
<xsd:documentation><![CDATA[ The prefer serialization protocol of service, multiple serialization protocol are separated by commas, default fastjson2,hessian2. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="export-async" type="xsd:boolean">
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,7 @@ public interface Constants {
/**
* Prefer serialization
*/
String PREFER_SERIALIZATION_KEY = "prefer_serialization";
String PREFER_SERIALIZATION_KEY = "prefer.serialization";

String DEFAULT_REMOTING_SERIALIZATION_PROPERTY_KEY = "DUBBO_DEFAULT_SERIALIZATION";

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ public static int getHeartbeat(URL url) {
*/
public static Byte serializationId(URL url) {
Byte serializationId;
// Obtain the value from prefer_serialization. Such as:fastjson2,hessian2
// Obtain the value from prefer_serialization. Such as.fastjson2,hessian2
List<String> preferSerials = preferSerialization(url);
for (String preferSerial : preferSerials) {
if ((serializationId = CodecSupport.getIDByName(preferSerial)) != null) {
Expand All @@ -81,6 +81,7 @@ public static Byte serializationId(URL url) {
* @return {@link String}
*/
public static String serializationOrDefault(URL url) {
//noinspection OptionalGetWithoutIsPresent
return allSerializations(url).stream().findFirst().get();
}

Expand All @@ -92,8 +93,7 @@ public static String serializationOrDefault(URL url) {
*/
public static Collection<String> allSerializations(URL url) {
// preferSerialization -> serialization -> default serialization
Set<String> serializations = new LinkedHashSet<>();
UrlUtils.preferSerialization(url).forEach(serializations::add);
Set<String> serializations = new LinkedHashSet<>(preferSerialization(url));
Optional.ofNullable(url.getParameter(SERIALIZATION_KEY)).filter(StringUtils::isNotBlank).ifPresent(serializations::add);
serializations.add(DefaultSerializationSelector.getDefaultRemotingSerialization());
return Collections.unmodifiableSet(serializations);
Expand Down