This is an automated email from the ASF dual-hosted git repository.

He-Pin pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/pekko.git


The following commit(s) were added to refs/heads/main by this push:
     new bb6aa95bac feat: predefined JsonSerializable and CborSerializable 
marker traits (#3649)
bb6aa95bac is described below

commit bb6aa95bac6fcd0a92dcf9d9c3d00e0be3a42b5e
Author: PJ Fanning <[email protected]>
AuthorDate: Fri Oct 23 06:59:52 2026 +0100

    feat: predefined JsonSerializable and CborSerializable marker traits (#3649)
    
    * feat: predefined JsonSerializable and CborSerializable marker traits
    
    Motivation:
    Almost every application using Jackson serialization defines its own
    marker trait/interface and binds it to jackson-json or jackson-cbor in
    serialization-bindings. Pekko already had such markers, but only in the
    test scope, so users could not reuse them.
    
    Modification:
    - Move JsonSerializable and CborSerializable from the test scope to the
      main scope of serialization-jackson and serialization-jackson3 (same
      fully qualified class names as the former test traits).
    - Bind them to jackson-json and jackson-cbor in the reference.conf of
      both modules and remove the test-only reference.conf that held the
      same bindings.
    - Use the predefined JsonSerializable in the documentation samples
      instead of a custom MySerializable marker and update the Jackson
      serialization docs to describe the predefined markers, while still
      explaining how to bind a custom marker.
    - Remove the unused docs-local marker traits and their bindings from
      the docs SerializationDocSpec.
    - Add a test that the predefined markers are bound by reference.conf
      alone and round trip through the JSON and CBOR serializers.
    
    Result:
    Users can extend/implement JsonSerializable or CborSerializable without
    any serialization-bindings configuration. Custom marker bindings keep
    working as before. No change to serializer ids or the wire format.
    
    Tests:
    - Not run locally - left to CI; scalafmt applied
    - sbt "serialization-jackson/javafmtAll" 
"serialization-jackson3/javafmtAll" (JDK 17): no changes
    
    References:
    None - convenience marker traits for Jackson serialization
    
    * docs: note the predefined Jackson marker traits in the migration guide
    
    Motivation:
    The new predefined JsonSerializable and CborSerializable marker traits are
    bound by default, and messages using them cannot be read by Pekko 1.x nodes.
    
    Modification:
    Add an entry to the serialization bindings section of the 1.x to 2.x
    migration guide.
    
    Result:
    Users doing a rolling update know to adopt the predefined traits only once
    no Pekko 1.x nodes remain.
    
    Tests:
    - Not run - docs only
    
    References:
    Refs #3649
---
 .../paradox/migration/migration-guide-1.x-2.x.md   |  5 ++++
 docs/src/main/paradox/serialization-jackson.md     | 20 +++++++++------
 .../docs/serialization/SerializationDocSpec.scala  | 12 ---------
 .../src/main/resources/reference.conf              |  3 +++
 .../serialization/jackson/CborSerializable.scala   |  6 ++++-
 .../serialization/jackson/JsonSerializable.scala   |  6 ++++-
 .../serialization/jackson/MySerializable.java      |  5 ++--
 .../jackson/SerializationDocTest.java              | 10 +++++---
 .../pekko/serialization/jackson/v1/Customer.java   |  4 +--
 .../pekko/serialization/jackson/v1/ItemAdded.java  |  4 +--
 .../pekko/serialization/jackson/v1/OrderAdded.java |  4 +--
 .../pekko/serialization/jackson/v2a/Customer.java  |  4 +--
 .../pekko/serialization/jackson/v2a/ItemAdded.java |  4 +--
 .../serialization/jackson/v2a/OrderPlaced.java     |  4 +--
 .../pekko/serialization/jackson/v2b/ItemAdded.java |  4 +--
 .../pekko/serialization/jackson/v2c/ItemAdded.java |  4 +--
 .../src/test/resources/reference.conf              | 10 --------
 .../jackson/CustomAdtSerializer.scala              |  4 ++-
 .../jackson/SerializationDocSpec.scala             | 15 +++--------
 .../pekko/serialization/jackson/v1/Customer.scala  |  5 ++--
 .../pekko/serialization/jackson/v1/ItemAdded.scala |  4 +--
 .../serialization/jackson/v1/OrderAdded.scala      |  4 +--
 .../pekko/serialization/jackson/v2a/Address.scala  |  4 +--
 .../pekko/serialization/jackson/v2a/Customer.scala |  4 +--
 .../serialization/jackson/v2a/ItemAdded.scala      |  4 +--
 .../serialization/jackson/v2a/OrderPlaced.scala    |  4 +--
 .../serialization/jackson/v2b/ItemAdded.scala      |  5 ++--
 .../serialization/jackson/v2c/ItemAdded.scala      |  4 +--
 .../jackson/JacksonSerializerSpec.scala            | 30 ++++++++++++++++++++++
 .../src/main/resources/reference.conf              |  3 +++
 .../serialization/jackson3/CborSerializable.scala  |  6 ++++-
 .../serialization/jackson3/JsonSerializable.scala  |  6 ++++-
 .../serialization/jackson3/MySerializable.java     |  5 ++--
 .../jackson3/SerializationDocTest.java             | 10 +++++---
 .../pekko/serialization/jackson3/v1/Customer.java  |  4 +--
 .../pekko/serialization/jackson3/v1/ItemAdded.java |  4 +--
 .../serialization/jackson3/v1/OrderAdded.java      |  4 +--
 .../pekko/serialization/jackson3/v2a/Customer.java |  4 +--
 .../serialization/jackson3/v2a/ItemAdded.java      |  4 +--
 .../serialization/jackson3/v2a/OrderPlaced.java    |  4 +--
 .../serialization/jackson3/v2b/ItemAdded.java      |  4 +--
 .../serialization/jackson3/v2c/ItemAdded.java      |  4 +--
 .../src/test/resources/reference.conf              | 10 --------
 .../jackson3/CustomAdtSerializer.scala             |  4 ++-
 .../jackson3/SerializationDocSpec.scala            | 15 +++--------
 .../pekko/serialization/jackson3/v1/Customer.scala |  5 ++--
 .../serialization/jackson3/v1/ItemAdded.scala      |  4 +--
 .../serialization/jackson3/v1/OrderAdded.scala     |  4 +--
 .../pekko/serialization/jackson3/v2a/Address.scala |  4 +--
 .../serialization/jackson3/v2a/Customer.scala      |  4 +--
 .../serialization/jackson3/v2a/ItemAdded.scala     |  4 +--
 .../serialization/jackson3/v2a/OrderPlaced.scala   |  4 +--
 .../serialization/jackson3/v2b/ItemAdded.scala     |  5 ++--
 .../serialization/jackson3/v2c/ItemAdded.scala     |  4 +--
 .../jackson3/JacksonSerializerSpec.scala           | 30 ++++++++++++++++++++++
 55 files changed, 205 insertions(+), 150 deletions(-)

diff --git a/docs/src/main/paradox/migration/migration-guide-1.x-2.x.md 
b/docs/src/main/paradox/migration/migration-guide-1.x-2.x.md
index c4bddca295..90da020b86 100644
--- a/docs/src/main/paradox/migration/migration-guide-1.x-2.x.md
+++ b/docs/src/main/paradox/migration/migration-guide-1.x-2.x.md
@@ -234,3 +234,8 @@ written. 
([PR3275](https://github.com/apache/pekko/pull/3275))
 The same serializer also handles the new `SerializedEvent`, used to write 
events that are already
 serialized; Pekko 1.x cannot deserialize that either, so do not send 
`SerializedEvent` messages to
 Pekko 1.x nodes during a rolling update. 
([PR3650](https://github.com/apache/pekko/pull/3650))
+* `pekko-serialization-jackson` (and `pekko-serialization-jackson3`) now 
provide predefined
+`JsonSerializable` and `CborSerializable` marker traits, bound by default to 
`jackson-json` and
+`jackson-cbor`. Your own marker traits and bindings keep working. If you 
switch messages to the
+predefined traits, Pekko 1.x nodes cannot load those classes, so only do that 
once no Pekko 1.x nodes
+remain in the cluster. ([PR3649](https://github.com/apache/pekko/pull/3649))
diff --git a/docs/src/main/paradox/serialization-jackson.md 
b/docs/src/main/paradox/serialization-jackson.md
index 99b62467ff..b55ee6b189 100644
--- a/docs/src/main/paradox/serialization-jackson.md
+++ b/docs/src/main/paradox/serialization-jackson.md
@@ -60,9 +60,15 @@ annotations are needed to specify how to convert the objects 
to JSON/bytes.
 
 ## Usage
 
-To enable Jackson serialization for a class you need to configure it or one of 
its super classes
-in serialization-bindings configuration. Typically you will create a marker 
@scala[trait]@java[interface]
-for that purpose and let the messages @scala[extend]@java[implement] that.
+To enable Jackson serialization for a class there needs to be a serialization 
binding for it or one of its
+super classes in serialization-bindings configuration.
+
+The simplest way is to let the messages @scala[extend]@java[implement] one of 
the two predefined marker
+@scala[traits]@java[interfaces] 
`org.apache.pekko.serialization.jackson.JsonSerializable` or
+`org.apache.pekko.serialization.jackson.CborSerializable`. They are bound to 
`jackson-json` and `jackson-cbor`
+respectively in the `reference.conf` of `pekko-serialization-jackson`, so no 
additional configuration is needed.
+When using `pekko-serialization-jackson3` the corresponding markers are
+`org.apache.pekko.serialization.jackson3.JsonSerializable` and 
`org.apache.pekko.serialization.jackson3.CborSerializable`.
 
 Scala
 :  @@snip 
[SerializationDocSpec.scala](/serialization-jackson/src/test/scala/doc/org/apache/pekko/serialization/jackson/SerializationDocSpec.scala)
 { #marker-interface }
@@ -70,15 +76,13 @@ Scala
 Java
 :  @@snip 
[MySerializable.java](/serialization-jackson/src/test/java/jdoc/org/apache/pekko/serialization/jackson/MySerializable.java)
 { #marker-interface }
 
-Then you configure the class name of the marker @scala[trait]@java[interface] 
in `serialization-bindings` to
+If the predefined markers are not suitable for your project it is also 
possible to define your own marker
+@scala[trait]@java[interface] and let the messages 
@scala[extend]@java[implement] that. You then have to
+configure the class name of your marker @scala[trait]@java[interface] in 
`serialization-bindings` to
 one of the supported Jackson formats: `jackson-json` or `jackson-cbor`
 
 @@snip 
[config](/serialization-jackson/src/test/scala/doc/org/apache/pekko/serialization/jackson/SerializationDocSpec.scala)
 { #serialization-bindings }
 
-A good convention would be to name the marker interface `CborSerializable` or 
`JsonSerializable`.
-In this documentation we have used `MySerializable` to make it clear that the 
marker interface itself is not
-provided by Pekko.
-
 That is all that is needed for basic classes where Jackson understands the 
structure. A few cases that requires
 annotations are described below.
 
diff --git a/docs/src/test/scala/docs/serialization/SerializationDocSpec.scala 
b/docs/src/test/scala/docs/serialization/SerializationDocSpec.scala
index fc5ca47363..e7b989846f 100644
--- a/docs/src/test/scala/docs/serialization/SerializationDocSpec.scala
+++ b/docs/src/test/scala/docs/serialization/SerializationDocSpec.scala
@@ -109,16 +109,6 @@ package docs.serialization {
   final case class Customer(name: String) extends MyOwnSerializable
   final case class User(name: String) extends MyOwnSerializable
 
-  /**
-   * Marker trait for serialization with Jackson CBOR
-   */
-  trait CborSerializable
-
-  /**
-   * Marker trait for serialization with Jackson JSON
-   */
-  trait JsonSerializable
-
   object SerializerIdConfig {
     val config =
       """
@@ -197,8 +187,6 @@ package docs.serialization {
           }
 
           serialization-bindings {
-            "docs.serialization.JsonSerializable" = jackson-json
-            "docs.serialization.CborSerializable" = jackson-cbor
             "com.google.protobuf.Message" = proto
             "docs.serialization.MyOwnSerializable" = myown
           }
diff --git a/serialization-jackson/src/main/resources/reference.conf 
b/serialization-jackson/src/main/resources/reference.conf
index 7d54f3d48e..4de5217f79 100644
--- a/serialization-jackson/src/main/resources/reference.conf
+++ b/serialization-jackson/src/main/resources/reference.conf
@@ -296,5 +296,8 @@ pekko.actor {
     # open ended types that might be target to be deserialization gadgets, 
such as
     # java.lang.Object, java.io.Serializable, java.util.Comparable
 
+    # Predefined marker traits/interfaces
+    "org.apache.pekko.serialization.jackson.JsonSerializable" = jackson-json
+    "org.apache.pekko.serialization.jackson.CborSerializable" = jackson-cbor
   }
 }
diff --git 
a/serialization-jackson/src/test/scala/org/apache/pekko/serialization/jackson/CborSerializable.scala
 
b/serialization-jackson/src/main/scala/org/apache/pekko/serialization/jackson/CborSerializable.scala
similarity index 60%
rename from 
serialization-jackson/src/test/scala/org/apache/pekko/serialization/jackson/CborSerializable.scala
rename to 
serialization-jackson/src/main/scala/org/apache/pekko/serialization/jackson/CborSerializable.scala
index d8747773a3..968aa0e615 100644
--- 
a/serialization-jackson/src/test/scala/org/apache/pekko/serialization/jackson/CborSerializable.scala
+++ 
b/serialization-jackson/src/main/scala/org/apache/pekko/serialization/jackson/CborSerializable.scala
@@ -14,6 +14,10 @@
 package org.apache.pekko.serialization.jackson
 
 /**
- * Marker trait for serialization with Jackson CBOR in tests
+ * Predefined marker trait for serialization with Jackson CBOR.
+ *
+ * Messages, events and snapshots that extend/implement this marker are 
serialized with the
+ * `jackson-cbor` serializer, since it is bound in 
`pekko.actor.serialization-bindings`
+ * in the `reference.conf` of this module.
  */
 trait CborSerializable
diff --git 
a/serialization-jackson/src/test/scala/org/apache/pekko/serialization/jackson/JsonSerializable.scala
 
b/serialization-jackson/src/main/scala/org/apache/pekko/serialization/jackson/JsonSerializable.scala
similarity index 60%
rename from 
serialization-jackson/src/test/scala/org/apache/pekko/serialization/jackson/JsonSerializable.scala
rename to 
serialization-jackson/src/main/scala/org/apache/pekko/serialization/jackson/JsonSerializable.scala
index 8f40cc759b..063a0e0dc3 100644
--- 
a/serialization-jackson/src/test/scala/org/apache/pekko/serialization/jackson/JsonSerializable.scala
+++ 
b/serialization-jackson/src/main/scala/org/apache/pekko/serialization/jackson/JsonSerializable.scala
@@ -14,6 +14,10 @@
 package org.apache.pekko.serialization.jackson
 
 /**
- * Marker trait for serialization with Jackson JSON in tests
+ * Predefined marker trait for serialization with Jackson JSON.
+ *
+ * Messages, events and snapshots that extend/implement this marker are 
serialized with the
+ * `jackson-json` serializer, since it is bound in 
`pekko.actor.serialization-bindings`
+ * in the `reference.conf` of this module.
  */
 trait JsonSerializable
diff --git 
a/serialization-jackson/src/test/java/jdoc/org/apache/pekko/serialization/jackson/MySerializable.java
 
b/serialization-jackson/src/test/java/jdoc/org/apache/pekko/serialization/jackson/MySerializable.java
index eb59e1b07e..a142e7d075 100644
--- 
a/serialization-jackson/src/test/java/jdoc/org/apache/pekko/serialization/jackson/MySerializable.java
+++ 
b/serialization-jackson/src/test/java/jdoc/org/apache/pekko/serialization/jackson/MySerializable.java
@@ -14,10 +14,9 @@
 package jdoc.org.apache.pekko.serialization.jackson;
 
 // #marker-interface
-/** Marker interface for messages, events and snapshots that are serialized 
with Jackson. */
-public interface MySerializable {}
+import org.apache.pekko.serialization.jackson.JsonSerializable;
 
-class MyMessage implements MySerializable {
+class MyMessage implements JsonSerializable {
   public final String name;
   public final int nr;
 
diff --git 
a/serialization-jackson/src/test/java/jdoc/org/apache/pekko/serialization/jackson/SerializationDocTest.java
 
b/serialization-jackson/src/test/java/jdoc/org/apache/pekko/serialization/jackson/SerializationDocTest.java
index 9b06ea5274..573c81e71d 100644
--- 
a/serialization-jackson/src/test/java/jdoc/org/apache/pekko/serialization/jackson/SerializationDocTest.java
+++ 
b/serialization-jackson/src/test/java/jdoc/org/apache/pekko/serialization/jackson/SerializationDocTest.java
@@ -13,6 +13,8 @@
 
 package jdoc.org.apache.pekko.serialization.jackson;
 
+import org.apache.pekko.serialization.jackson.JsonSerializable;
+
 import com.fasterxml.jackson.annotation.JsonCreator;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import com.fasterxml.jackson.annotation.JsonSubTypes;
@@ -23,7 +25,7 @@ public class SerializationDocTest {
   interface OneConstructorParamExample1 {
 
     // #one-constructor-param-1
-    public class SimpleCommand implements MySerializable {
+    public class SimpleCommand implements JsonSerializable {
       private final String name;
 
       public SimpleCommand(String name) {
@@ -35,7 +37,7 @@ public class SerializationDocTest {
 
   interface OneConstructorParamExample2 {
     // #one-constructor-param-2
-    public class SimpleCommand implements MySerializable {
+    public class SimpleCommand implements JsonSerializable {
       private final String name;
 
       @JsonCreator
@@ -48,7 +50,7 @@ public class SerializationDocTest {
 
   interface OneConstructorParamExample3 {
     // #one-constructor-param-3
-    public class SimpleCommand implements MySerializable {
+    public class SimpleCommand implements JsonSerializable {
       private final String name;
 
       public SimpleCommand(@JsonProperty("name") String name) {
@@ -60,7 +62,7 @@ public class SerializationDocTest {
 
   interface Polymorphism {
     // #polymorphism
-    public class Zoo implements MySerializable {
+    public class Zoo implements JsonSerializable {
       public final Animal primaryAttraction;
 
       @JsonCreator
diff --git 
a/serialization-jackson/src/test/java/jdoc/org/apache/pekko/serialization/jackson/v1/Customer.java
 
b/serialization-jackson/src/test/java/jdoc/org/apache/pekko/serialization/jackson/v1/Customer.java
index 6605501967..b3fb75c242 100644
--- 
a/serialization-jackson/src/test/java/jdoc/org/apache/pekko/serialization/jackson/v1/Customer.java
+++ 
b/serialization-jackson/src/test/java/jdoc/org/apache/pekko/serialization/jackson/v1/Customer.java
@@ -13,10 +13,10 @@
 
 package jdoc.org.apache.pekko.serialization.jackson.v1;
 
-import jdoc.org.apache.pekko.serialization.jackson.MySerializable;
+import org.apache.pekko.serialization.jackson.JsonSerializable;
 
 // #structural
-public class Customer implements MySerializable {
+public class Customer implements JsonSerializable {
   public final String name;
   public final String street;
   public final String city;
diff --git 
a/serialization-jackson/src/test/java/jdoc/org/apache/pekko/serialization/jackson/v1/ItemAdded.java
 
b/serialization-jackson/src/test/java/jdoc/org/apache/pekko/serialization/jackson/v1/ItemAdded.java
index 097b081130..6ca79b8b1f 100644
--- 
a/serialization-jackson/src/test/java/jdoc/org/apache/pekko/serialization/jackson/v1/ItemAdded.java
+++ 
b/serialization-jackson/src/test/java/jdoc/org/apache/pekko/serialization/jackson/v1/ItemAdded.java
@@ -13,11 +13,11 @@
 
 package jdoc.org.apache.pekko.serialization.jackson.v1;
 
-import jdoc.org.apache.pekko.serialization.jackson.MySerializable;
+import org.apache.pekko.serialization.jackson.JsonSerializable;
 
 // #add-optional
 // #forward-one-rename
-public class ItemAdded implements MySerializable {
+public class ItemAdded implements JsonSerializable {
   public final String shoppingCartId;
   public final String productId;
   public final int quantity;
diff --git 
a/serialization-jackson/src/test/java/jdoc/org/apache/pekko/serialization/jackson/v1/OrderAdded.java
 
b/serialization-jackson/src/test/java/jdoc/org/apache/pekko/serialization/jackson/v1/OrderAdded.java
index f1b3037b25..e3a76b61b8 100644
--- 
a/serialization-jackson/src/test/java/jdoc/org/apache/pekko/serialization/jackson/v1/OrderAdded.java
+++ 
b/serialization-jackson/src/test/java/jdoc/org/apache/pekko/serialization/jackson/v1/OrderAdded.java
@@ -14,10 +14,10 @@
 package jdoc.org.apache.pekko.serialization.jackson.v1;
 
 import com.fasterxml.jackson.annotation.JsonCreator;
-import jdoc.org.apache.pekko.serialization.jackson.MySerializable;
+import org.apache.pekko.serialization.jackson.JsonSerializable;
 
 // #rename-class
-public class OrderAdded implements MySerializable {
+public class OrderAdded implements JsonSerializable {
   public final String shoppingCartId;
 
   @JsonCreator
diff --git 
a/serialization-jackson/src/test/java/jdoc/org/apache/pekko/serialization/jackson/v2a/Customer.java
 
b/serialization-jackson/src/test/java/jdoc/org/apache/pekko/serialization/jackson/v2a/Customer.java
index 2eb2241303..c3b3f5c14a 100644
--- 
a/serialization-jackson/src/test/java/jdoc/org/apache/pekko/serialization/jackson/v2a/Customer.java
+++ 
b/serialization-jackson/src/test/java/jdoc/org/apache/pekko/serialization/jackson/v2a/Customer.java
@@ -14,10 +14,10 @@
 package jdoc.org.apache.pekko.serialization.jackson.v2a;
 
 import java.util.Optional;
-import jdoc.org.apache.pekko.serialization.jackson.MySerializable;
+import org.apache.pekko.serialization.jackson.JsonSerializable;
 
 // #structural
-public class Customer implements MySerializable {
+public class Customer implements JsonSerializable {
   public final String name;
   public final Address shippingAddress;
   public final Optional<Address> billingAddress;
diff --git 
a/serialization-jackson/src/test/java/jdoc/org/apache/pekko/serialization/jackson/v2a/ItemAdded.java
 
b/serialization-jackson/src/test/java/jdoc/org/apache/pekko/serialization/jackson/v2a/ItemAdded.java
index 4f2b4b8ca8..ee3eb145ca 100644
--- 
a/serialization-jackson/src/test/java/jdoc/org/apache/pekko/serialization/jackson/v2a/ItemAdded.java
+++ 
b/serialization-jackson/src/test/java/jdoc/org/apache/pekko/serialization/jackson/v2a/ItemAdded.java
@@ -15,10 +15,10 @@ package jdoc.org.apache.pekko.serialization.jackson.v2a;
 
 import com.fasterxml.jackson.annotation.JsonCreator;
 import java.util.Optional;
-import jdoc.org.apache.pekko.serialization.jackson.MySerializable;
+import org.apache.pekko.serialization.jackson.JsonSerializable;
 
 // #add-optional
-public class ItemAdded implements MySerializable {
+public class ItemAdded implements JsonSerializable {
   public final String shoppingCartId;
   public final String productId;
   public final int quantity;
diff --git 
a/serialization-jackson/src/test/java/jdoc/org/apache/pekko/serialization/jackson/v2a/OrderPlaced.java
 
b/serialization-jackson/src/test/java/jdoc/org/apache/pekko/serialization/jackson/v2a/OrderPlaced.java
index 0b206f3ba4..c031415998 100644
--- 
a/serialization-jackson/src/test/java/jdoc/org/apache/pekko/serialization/jackson/v2a/OrderPlaced.java
+++ 
b/serialization-jackson/src/test/java/jdoc/org/apache/pekko/serialization/jackson/v2a/OrderPlaced.java
@@ -14,10 +14,10 @@
 package jdoc.org.apache.pekko.serialization.jackson.v2a;
 
 import com.fasterxml.jackson.annotation.JsonCreator;
-import jdoc.org.apache.pekko.serialization.jackson.MySerializable;
+import org.apache.pekko.serialization.jackson.JsonSerializable;
 
 // #rename-class
-public class OrderPlaced implements MySerializable {
+public class OrderPlaced implements JsonSerializable {
   public final String shoppingCartId;
 
   @JsonCreator
diff --git 
a/serialization-jackson/src/test/java/jdoc/org/apache/pekko/serialization/jackson/v2b/ItemAdded.java
 
b/serialization-jackson/src/test/java/jdoc/org/apache/pekko/serialization/jackson/v2b/ItemAdded.java
index 2b3f6dec84..301df2a73a 100644
--- 
a/serialization-jackson/src/test/java/jdoc/org/apache/pekko/serialization/jackson/v2b/ItemAdded.java
+++ 
b/serialization-jackson/src/test/java/jdoc/org/apache/pekko/serialization/jackson/v2b/ItemAdded.java
@@ -13,10 +13,10 @@
 
 package jdoc.org.apache.pekko.serialization.jackson.v2b;
 
-import jdoc.org.apache.pekko.serialization.jackson.MySerializable;
+import org.apache.pekko.serialization.jackson.JsonSerializable;
 
 // #add-mandatory
-public class ItemAdded implements MySerializable {
+public class ItemAdded implements JsonSerializable {
   public final String shoppingCartId;
   public final String productId;
   public final int quantity;
diff --git 
a/serialization-jackson/src/test/java/jdoc/org/apache/pekko/serialization/jackson/v2c/ItemAdded.java
 
b/serialization-jackson/src/test/java/jdoc/org/apache/pekko/serialization/jackson/v2c/ItemAdded.java
index 38b260c85c..7ee1652f6d 100644
--- 
a/serialization-jackson/src/test/java/jdoc/org/apache/pekko/serialization/jackson/v2c/ItemAdded.java
+++ 
b/serialization-jackson/src/test/java/jdoc/org/apache/pekko/serialization/jackson/v2c/ItemAdded.java
@@ -13,10 +13,10 @@
 
 package jdoc.org.apache.pekko.serialization.jackson.v2c;
 
-import jdoc.org.apache.pekko.serialization.jackson.MySerializable;
+import org.apache.pekko.serialization.jackson.JsonSerializable;
 
 // #rename
-public class ItemAdded implements MySerializable {
+public class ItemAdded implements JsonSerializable {
   public final String shoppingCartId;
 
   public final String itemId;
diff --git a/serialization-jackson/src/test/resources/reference.conf 
b/serialization-jackson/src/test/resources/reference.conf
deleted file mode 100644
index 66ebe312d1..0000000000
--- a/serialization-jackson/src/test/resources/reference.conf
+++ /dev/null
@@ -1,10 +0,0 @@
-# SPDX-License-Identifier: Apache-2.0
-
-pekko {
-  actor {
-    serialization-bindings {
-      "org.apache.pekko.serialization.jackson.CborSerializable" = jackson-cbor
-      "org.apache.pekko.serialization.jackson.JsonSerializable" = jackson-json
-    }
-  }
-}
diff --git 
a/serialization-jackson/src/test/scala/doc/org/apache/pekko/serialization/jackson/CustomAdtSerializer.scala
 
b/serialization-jackson/src/test/scala/doc/org/apache/pekko/serialization/jackson/CustomAdtSerializer.scala
index ef7eb10d1c..c4585b8454 100644
--- 
a/serialization-jackson/src/test/scala/doc/org/apache/pekko/serialization/jackson/CustomAdtSerializer.scala
+++ 
b/serialization-jackson/src/test/scala/doc/org/apache/pekko/serialization/jackson/CustomAdtSerializer.scala
@@ -13,6 +13,8 @@
 
 package doc.org.apache.pekko.serialization.jackson
 
+import org.apache.pekko.serialization.jackson.JsonSerializable
+
 object CustomAdtSerializer {
 
   // #adt-trait-object
@@ -63,6 +65,6 @@ object CustomAdtSerializer {
     }
   }
 
-  final case class Compass(currentDirection: Direction) extends MySerializable
+  final case class Compass(currentDirection: Direction) extends 
JsonSerializable
   // #adt-trait-object
 }
diff --git 
a/serialization-jackson/src/test/scala/doc/org/apache/pekko/serialization/jackson/SerializationDocSpec.scala
 
b/serialization-jackson/src/test/scala/doc/org/apache/pekko/serialization/jackson/SerializationDocSpec.scala
index 67e435aeec..864ead3822 100644
--- 
a/serialization-jackson/src/test/scala/doc/org/apache/pekko/serialization/jackson/SerializationDocSpec.scala
+++ 
b/serialization-jackson/src/test/scala/doc/org/apache/pekko/serialization/jackson/SerializationDocSpec.scala
@@ -33,12 +33,9 @@ import org.scalatest.matchers.should.Matchers
 import org.scalatest.wordspec.AnyWordSpecLike
 
 //#marker-interface
-/**
- * Marker interface for messages, events and snapshots that are serialized 
with Jackson.
- */
-trait MySerializable
+import org.apache.pekko.serialization.jackson.JsonSerializable
 
-final case class Message(name: String, nr: Int) extends MySerializable
+final case class Message(name: String, nr: Int) extends JsonSerializable
 //#marker-interface
 
 object SerializationDocSpec {
@@ -142,7 +139,7 @@ object SerializationDocSpec {
   object Polymorphism {
 
     // #polymorphism
-    final case class Zoo(primaryAttraction: Animal) extends MySerializable
+    final case class Zoo(primaryAttraction: Animal) extends JsonSerializable
 
     @JsonTypeInfo(use = JsonTypeInfo.Id.NAME, property = "type")
     @JsonSubTypes(
@@ -160,7 +157,7 @@ object SerializationDocSpec {
   object PolymorphismMixedClassObject {
 
     // #polymorphism-case-object
-    final case class Zoo(primaryAttraction: Animal) extends MySerializable
+    final case class Zoo(primaryAttraction: Animal) extends JsonSerializable
 
     @JsonTypeInfo(use = JsonTypeInfo.Id.NAME, property = "type")
     @JsonSubTypes(
@@ -223,10 +220,6 @@ class SerializationDocSpec
     }
     pekko.actor {
       allow-java-serialization = off
-      serialization-bindings {
-        
"${classOf[jdoc.org.apache.pekko.serialization.jackson.MySerializable].getName}"
 = jackson-json
-        
"${classOf[doc.org.apache.pekko.serialization.jackson.MySerializable].getName}" 
= jackson-json
-      }
     }
     """)))
     with AnyWordSpecLike
diff --git 
a/serialization-jackson/src/test/scala/doc/org/apache/pekko/serialization/jackson/v1/Customer.scala
 
b/serialization-jackson/src/test/scala/doc/org/apache/pekko/serialization/jackson/v1/Customer.scala
index dac7a014bf..43d5666d1f 100644
--- 
a/serialization-jackson/src/test/scala/doc/org/apache/pekko/serialization/jackson/v1/Customer.scala
+++ 
b/serialization-jackson/src/test/scala/doc/org/apache/pekko/serialization/jackson/v1/Customer.scala
@@ -13,8 +13,9 @@
 
 package doc.org.apache.pekko.serialization.jackson.v1
 
-import doc.org.apache.pekko.serialization.jackson.MySerializable
+import org.apache.pekko.serialization.jackson.JsonSerializable
 
 // #structural
-case class Customer(name: String, street: String, city: String, zipCode: 
String, country: String) extends MySerializable
+case class Customer(name: String, street: String, city: String, zipCode: 
String, country: String)
+    extends JsonSerializable
 // #structural
diff --git 
a/serialization-jackson/src/test/scala/doc/org/apache/pekko/serialization/jackson/v1/ItemAdded.scala
 
b/serialization-jackson/src/test/scala/doc/org/apache/pekko/serialization/jackson/v1/ItemAdded.scala
index a2c050ecc1..849f86d68e 100644
--- 
a/serialization-jackson/src/test/scala/doc/org/apache/pekko/serialization/jackson/v1/ItemAdded.scala
+++ 
b/serialization-jackson/src/test/scala/doc/org/apache/pekko/serialization/jackson/v1/ItemAdded.scala
@@ -13,10 +13,10 @@
 
 package doc.org.apache.pekko.serialization.jackson.v1
 
-import doc.org.apache.pekko.serialization.jackson.MySerializable
+import org.apache.pekko.serialization.jackson.JsonSerializable
 
 // #add-optional
 // #forward-one-rename
-case class ItemAdded(shoppingCartId: String, productId: String, quantity: Int) 
extends MySerializable
+case class ItemAdded(shoppingCartId: String, productId: String, quantity: Int) 
extends JsonSerializable
 // #forward-one-rename
 // #add-optional
diff --git 
a/serialization-jackson/src/test/scala/doc/org/apache/pekko/serialization/jackson/v1/OrderAdded.scala
 
b/serialization-jackson/src/test/scala/doc/org/apache/pekko/serialization/jackson/v1/OrderAdded.scala
index 07a3500bc8..2a39b3f489 100644
--- 
a/serialization-jackson/src/test/scala/doc/org/apache/pekko/serialization/jackson/v1/OrderAdded.scala
+++ 
b/serialization-jackson/src/test/scala/doc/org/apache/pekko/serialization/jackson/v1/OrderAdded.scala
@@ -13,8 +13,8 @@
 
 package doc.org.apache.pekko.serialization.jackson.v1
 
-import doc.org.apache.pekko.serialization.jackson.MySerializable
+import org.apache.pekko.serialization.jackson.JsonSerializable
 
 // #rename-class
-case class OrderAdded(shoppingCartId: String) extends MySerializable
+case class OrderAdded(shoppingCartId: String) extends JsonSerializable
 // #rename-class
diff --git 
a/serialization-jackson/src/test/scala/doc/org/apache/pekko/serialization/jackson/v2a/Address.scala
 
b/serialization-jackson/src/test/scala/doc/org/apache/pekko/serialization/jackson/v2a/Address.scala
index aaaf4dff9f..9ca3b8ca8c 100644
--- 
a/serialization-jackson/src/test/scala/doc/org/apache/pekko/serialization/jackson/v2a/Address.scala
+++ 
b/serialization-jackson/src/test/scala/doc/org/apache/pekko/serialization/jackson/v2a/Address.scala
@@ -13,8 +13,8 @@
 
 package doc.org.apache.pekko.serialization.jackson.v2a
 
-import doc.org.apache.pekko.serialization.jackson.MySerializable
+import org.apache.pekko.serialization.jackson.JsonSerializable
 
 // #structural
-case class Address(street: String, city: String, zipCode: String, country: 
String) extends MySerializable
+case class Address(street: String, city: String, zipCode: String, country: 
String) extends JsonSerializable
 // #structural
diff --git 
a/serialization-jackson/src/test/scala/doc/org/apache/pekko/serialization/jackson/v2a/Customer.scala
 
b/serialization-jackson/src/test/scala/doc/org/apache/pekko/serialization/jackson/v2a/Customer.scala
index 6f2de29938..cb664196a8 100644
--- 
a/serialization-jackson/src/test/scala/doc/org/apache/pekko/serialization/jackson/v2a/Customer.scala
+++ 
b/serialization-jackson/src/test/scala/doc/org/apache/pekko/serialization/jackson/v2a/Customer.scala
@@ -13,8 +13,8 @@
 
 package doc.org.apache.pekko.serialization.jackson.v2a
 
-import doc.org.apache.pekko.serialization.jackson.MySerializable
+import org.apache.pekko.serialization.jackson.JsonSerializable
 
 // #structural
-case class Customer(name: String, shippingAddress: Address, billingAddress: 
Option[Address]) extends MySerializable
+case class Customer(name: String, shippingAddress: Address, billingAddress: 
Option[Address]) extends JsonSerializable
 // #structural
diff --git 
a/serialization-jackson/src/test/scala/doc/org/apache/pekko/serialization/jackson/v2a/ItemAdded.scala
 
b/serialization-jackson/src/test/scala/doc/org/apache/pekko/serialization/jackson/v2a/ItemAdded.scala
index d67fa3278f..8e846cc1ab 100644
--- 
a/serialization-jackson/src/test/scala/doc/org/apache/pekko/serialization/jackson/v2a/ItemAdded.scala
+++ 
b/serialization-jackson/src/test/scala/doc/org/apache/pekko/serialization/jackson/v2a/ItemAdded.scala
@@ -14,11 +14,11 @@
 package doc.org.apache.pekko.serialization.jackson.v2a
 
 import com.fasterxml.jackson.annotation.JsonCreator
-import jdoc.org.apache.pekko.serialization.jackson.MySerializable
+import org.apache.pekko.serialization.jackson.JsonSerializable
 
 // #add-optional
 case class ItemAdded(shoppingCartId: String, productId: String, quantity: Int, 
discount: Option[Double], note: String)
-    extends MySerializable {
+    extends JsonSerializable {
 
   // alternative constructor because `note` should have default value "" when 
not defined in json
   @JsonCreator
diff --git 
a/serialization-jackson/src/test/scala/doc/org/apache/pekko/serialization/jackson/v2a/OrderPlaced.scala
 
b/serialization-jackson/src/test/scala/doc/org/apache/pekko/serialization/jackson/v2a/OrderPlaced.scala
index 024e188ef0..224e69b6ae 100644
--- 
a/serialization-jackson/src/test/scala/doc/org/apache/pekko/serialization/jackson/v2a/OrderPlaced.scala
+++ 
b/serialization-jackson/src/test/scala/doc/org/apache/pekko/serialization/jackson/v2a/OrderPlaced.scala
@@ -13,8 +13,8 @@
 
 package doc.org.apache.pekko.serialization.jackson.v2a
 
-import doc.org.apache.pekko.serialization.jackson.MySerializable
+import org.apache.pekko.serialization.jackson.JsonSerializable
 
 // #rename-class
-case class OrderPlaced(shoppingCartId: String) extends MySerializable
+case class OrderPlaced(shoppingCartId: String) extends JsonSerializable
 // #rename-class
diff --git 
a/serialization-jackson/src/test/scala/doc/org/apache/pekko/serialization/jackson/v2b/ItemAdded.scala
 
b/serialization-jackson/src/test/scala/doc/org/apache/pekko/serialization/jackson/v2b/ItemAdded.scala
index bec83d65aa..7adbfc9784 100644
--- 
a/serialization-jackson/src/test/scala/doc/org/apache/pekko/serialization/jackson/v2b/ItemAdded.scala
+++ 
b/serialization-jackson/src/test/scala/doc/org/apache/pekko/serialization/jackson/v2b/ItemAdded.scala
@@ -13,8 +13,9 @@
 
 package doc.org.apache.pekko.serialization.jackson.v2b
 
-import jdoc.org.apache.pekko.serialization.jackson.MySerializable
+import org.apache.pekko.serialization.jackson.JsonSerializable
 
 // #add-mandatory
-case class ItemAdded(shoppingCartId: String, productId: String, quantity: Int, 
discount: Double) extends MySerializable
+case class ItemAdded(shoppingCartId: String, productId: String, quantity: Int, 
discount: Double)
+    extends JsonSerializable
 // #add-mandatory
diff --git 
a/serialization-jackson/src/test/scala/doc/org/apache/pekko/serialization/jackson/v2c/ItemAdded.scala
 
b/serialization-jackson/src/test/scala/doc/org/apache/pekko/serialization/jackson/v2c/ItemAdded.scala
index 27ae37664b..35d99f2e27 100644
--- 
a/serialization-jackson/src/test/scala/doc/org/apache/pekko/serialization/jackson/v2c/ItemAdded.scala
+++ 
b/serialization-jackson/src/test/scala/doc/org/apache/pekko/serialization/jackson/v2c/ItemAdded.scala
@@ -13,8 +13,8 @@
 
 package doc.org.apache.pekko.serialization.jackson.v2c
 
-import doc.org.apache.pekko.serialization.jackson.MySerializable
+import org.apache.pekko.serialization.jackson.JsonSerializable
 
 // #rename
-case class ItemAdded(shoppingCartId: String, itemId: String, quantity: Int) 
extends MySerializable
+case class ItemAdded(shoppingCartId: String, itemId: String, quantity: Int) 
extends JsonSerializable
 // #rename
diff --git 
a/serialization-jackson/src/test/scala/org/apache/pekko/serialization/jackson/JacksonSerializerSpec.scala
 
b/serialization-jackson/src/test/scala/org/apache/pekko/serialization/jackson/JacksonSerializerSpec.scala
index 59b74adb7f..6701651dc3 100644
--- 
a/serialization-jackson/src/test/scala/org/apache/pekko/serialization/jackson/JacksonSerializerSpec.scala
+++ 
b/serialization-jackson/src/test/scala/org/apache/pekko/serialization/jackson/JacksonSerializerSpec.scala
@@ -172,6 +172,11 @@ object ScalaTestMessages {
       extends TestMessage
 }
 
+object PredefinedMarkerMessages {
+  final case class JsonMarked(name: String) extends JsonSerializable
+  final case class CborMarked(name: String) extends CborSerializable
+}
+
 class JacksonCborSerializerSpec extends JacksonSerializerSpec("jackson-cbor") {
   "have compression disabled by default" in {
     val conf = JacksonObjectMapperProvider.configForBinding("jackson-cbor", 
system.settings.config)
@@ -199,6 +204,31 @@ class JacksonJsonSerializerSpec extends 
JacksonSerializerSpec("jackson-json") {
 
   "JacksonJsonSerializer" must {
 
+    "bind the predefined JsonSerializable and CborSerializable markers in 
reference.conf" in {
+      import PredefinedMarkerMessages._
+      // only the reference.conf files, no test specific serialization-bindings
+      val sys = ActorSystem("PredefinedMarkers", 
ConfigFactory.defaultReference())
+      try {
+        val ser = SerializationExtension(sys)
+        ser.serializerFor(classOf[JsonMarked]).getClass should 
===(classOf[JacksonJsonSerializer])
+        ser.serializerFor(classOf[CborMarked]).getClass should 
===(classOf[JacksonCborSerializer])
+
+        val jsonMsg = JsonMarked("json")
+        val jsonSerializer = 
ser.findSerializerFor(jsonMsg).asInstanceOf[SerializerWithStringManifest]
+        ser.deserialize(
+          jsonSerializer.toBinary(jsonMsg),
+          jsonSerializer.identifier,
+          jsonSerializer.manifest(jsonMsg)).get should ===(jsonMsg)
+
+        val cborMsg = CborMarked("cbor")
+        val cborSerializer = 
ser.findSerializerFor(cborMsg).asInstanceOf[SerializerWithStringManifest]
+        ser.deserialize(
+          cborSerializer.toBinary(cborMsg),
+          cborSerializer.identifier,
+          cborSerializer.manifest(cborMsg)).get should ===(cborMsg)
+      } finally shutdown(sys)
+    }
+
     "support lookup of same ObjectMapper via JacksonObjectMapperProvider" in {
       val mapper = serialization()
         .serializerFor(classOf[JavaTestMessages.TestMessage])
diff --git a/serialization-jackson3/src/main/resources/reference.conf 
b/serialization-jackson3/src/main/resources/reference.conf
index 1c6a022a7f..35c550633f 100644
--- a/serialization-jackson3/src/main/resources/reference.conf
+++ b/serialization-jackson3/src/main/resources/reference.conf
@@ -277,5 +277,8 @@ pekko.actor {
     # open ended types that might be target to be deserialization gadgets, 
such as
     # java.lang.Object, java.io.Serializable, java.util.Comparable
 
+    # Predefined marker traits/interfaces
+    "org.apache.pekko.serialization.jackson3.JsonSerializable" = jackson-json
+    "org.apache.pekko.serialization.jackson3.CborSerializable" = jackson-cbor
   }
 }
diff --git 
a/serialization-jackson3/src/test/scala/org/apache/pekko/serialization/jackson3/CborSerializable.scala
 
b/serialization-jackson3/src/main/scala/org/apache/pekko/serialization/jackson3/CborSerializable.scala
similarity index 60%
rename from 
serialization-jackson3/src/test/scala/org/apache/pekko/serialization/jackson3/CborSerializable.scala
rename to 
serialization-jackson3/src/main/scala/org/apache/pekko/serialization/jackson3/CborSerializable.scala
index 5c3cb6dc6a..303c358c46 100644
--- 
a/serialization-jackson3/src/test/scala/org/apache/pekko/serialization/jackson3/CborSerializable.scala
+++ 
b/serialization-jackson3/src/main/scala/org/apache/pekko/serialization/jackson3/CborSerializable.scala
@@ -14,6 +14,10 @@
 package org.apache.pekko.serialization.jackson3
 
 /**
- * Marker trait for serialization with Jackson CBOR in tests
+ * Predefined marker trait for serialization with Jackson CBOR.
+ *
+ * Messages, events and snapshots that extend/implement this marker are 
serialized with the
+ * `jackson-cbor` serializer, since it is bound in 
`pekko.actor.serialization-bindings`
+ * in the `reference.conf` of this module.
  */
 trait CborSerializable
diff --git 
a/serialization-jackson3/src/test/scala/org/apache/pekko/serialization/jackson3/JsonSerializable.scala
 
b/serialization-jackson3/src/main/scala/org/apache/pekko/serialization/jackson3/JsonSerializable.scala
similarity index 60%
rename from 
serialization-jackson3/src/test/scala/org/apache/pekko/serialization/jackson3/JsonSerializable.scala
rename to 
serialization-jackson3/src/main/scala/org/apache/pekko/serialization/jackson3/JsonSerializable.scala
index 0d893bc0f5..1b2e67be68 100644
--- 
a/serialization-jackson3/src/test/scala/org/apache/pekko/serialization/jackson3/JsonSerializable.scala
+++ 
b/serialization-jackson3/src/main/scala/org/apache/pekko/serialization/jackson3/JsonSerializable.scala
@@ -14,6 +14,10 @@
 package org.apache.pekko.serialization.jackson3
 
 /**
- * Marker trait for serialization with Jackson JSON in tests
+ * Predefined marker trait for serialization with Jackson JSON.
+ *
+ * Messages, events and snapshots that extend/implement this marker are 
serialized with the
+ * `jackson-json` serializer, since it is bound in 
`pekko.actor.serialization-bindings`
+ * in the `reference.conf` of this module.
  */
 trait JsonSerializable
diff --git 
a/serialization-jackson3/src/test/java/jdoc/org/apache/pekko/serialization/jackson3/MySerializable.java
 
b/serialization-jackson3/src/test/java/jdoc/org/apache/pekko/serialization/jackson3/MySerializable.java
index 0a7ae60eb0..2125b5951e 100644
--- 
a/serialization-jackson3/src/test/java/jdoc/org/apache/pekko/serialization/jackson3/MySerializable.java
+++ 
b/serialization-jackson3/src/test/java/jdoc/org/apache/pekko/serialization/jackson3/MySerializable.java
@@ -14,10 +14,9 @@
 package jdoc.org.apache.pekko.serialization.jackson3;
 
 // #marker-interface
-/** Marker interface for messages, events and snapshots that are serialized 
with Jackson. */
-public interface MySerializable {}
+import org.apache.pekko.serialization.jackson3.JsonSerializable;
 
-class MyMessage implements MySerializable {
+class MyMessage implements JsonSerializable {
   public final String name;
   public final int nr;
 
diff --git 
a/serialization-jackson3/src/test/java/jdoc/org/apache/pekko/serialization/jackson3/SerializationDocTest.java
 
b/serialization-jackson3/src/test/java/jdoc/org/apache/pekko/serialization/jackson3/SerializationDocTest.java
index 54e8d3dde7..3a8ffedeb9 100644
--- 
a/serialization-jackson3/src/test/java/jdoc/org/apache/pekko/serialization/jackson3/SerializationDocTest.java
+++ 
b/serialization-jackson3/src/test/java/jdoc/org/apache/pekko/serialization/jackson3/SerializationDocTest.java
@@ -13,6 +13,8 @@
 
 package jdoc.org.apache.pekko.serialization.jackson3;
 
+import org.apache.pekko.serialization.jackson3.JsonSerializable;
+
 import com.fasterxml.jackson.annotation.JsonCreator;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import com.fasterxml.jackson.annotation.JsonSubTypes;
@@ -23,7 +25,7 @@ public class SerializationDocTest {
   interface OneConstructorParamExample1 {
 
     // #one-constructor-param-1
-    public class SimpleCommand implements MySerializable {
+    public class SimpleCommand implements JsonSerializable {
       private final String name;
 
       public SimpleCommand(String name) {
@@ -35,7 +37,7 @@ public class SerializationDocTest {
 
   interface OneConstructorParamExample2 {
     // #one-constructor-param-2
-    public class SimpleCommand implements MySerializable {
+    public class SimpleCommand implements JsonSerializable {
       private final String name;
 
       @JsonCreator
@@ -48,7 +50,7 @@ public class SerializationDocTest {
 
   interface OneConstructorParamExample3 {
     // #one-constructor-param-3
-    public class SimpleCommand implements MySerializable {
+    public class SimpleCommand implements JsonSerializable {
       private final String name;
 
       public SimpleCommand(@JsonProperty("name") String name) {
@@ -60,7 +62,7 @@ public class SerializationDocTest {
 
   interface Polymorphism {
     // #polymorphism
-    public class Zoo implements MySerializable {
+    public class Zoo implements JsonSerializable {
       public final Animal primaryAttraction;
 
       @JsonCreator
diff --git 
a/serialization-jackson3/src/test/java/jdoc/org/apache/pekko/serialization/jackson3/v1/Customer.java
 
b/serialization-jackson3/src/test/java/jdoc/org/apache/pekko/serialization/jackson3/v1/Customer.java
index 90684b23f1..7bdae3be17 100644
--- 
a/serialization-jackson3/src/test/java/jdoc/org/apache/pekko/serialization/jackson3/v1/Customer.java
+++ 
b/serialization-jackson3/src/test/java/jdoc/org/apache/pekko/serialization/jackson3/v1/Customer.java
@@ -13,10 +13,10 @@
 
 package jdoc.org.apache.pekko.serialization.jackson3.v1;
 
-import jdoc.org.apache.pekko.serialization.jackson3.MySerializable;
+import org.apache.pekko.serialization.jackson3.JsonSerializable;
 
 // #structural
-public class Customer implements MySerializable {
+public class Customer implements JsonSerializable {
   public final String name;
   public final String street;
   public final String city;
diff --git 
a/serialization-jackson3/src/test/java/jdoc/org/apache/pekko/serialization/jackson3/v1/ItemAdded.java
 
b/serialization-jackson3/src/test/java/jdoc/org/apache/pekko/serialization/jackson3/v1/ItemAdded.java
index d24fc43eca..5f2f56bfb6 100644
--- 
a/serialization-jackson3/src/test/java/jdoc/org/apache/pekko/serialization/jackson3/v1/ItemAdded.java
+++ 
b/serialization-jackson3/src/test/java/jdoc/org/apache/pekko/serialization/jackson3/v1/ItemAdded.java
@@ -13,11 +13,11 @@
 
 package jdoc.org.apache.pekko.serialization.jackson3.v1;
 
-import jdoc.org.apache.pekko.serialization.jackson3.MySerializable;
+import org.apache.pekko.serialization.jackson3.JsonSerializable;
 
 // #add-optional
 // #forward-one-rename
-public class ItemAdded implements MySerializable {
+public class ItemAdded implements JsonSerializable {
   public final String shoppingCartId;
   public final String productId;
   public final int quantity;
diff --git 
a/serialization-jackson3/src/test/java/jdoc/org/apache/pekko/serialization/jackson3/v1/OrderAdded.java
 
b/serialization-jackson3/src/test/java/jdoc/org/apache/pekko/serialization/jackson3/v1/OrderAdded.java
index b43c7edd10..2ed8e1034c 100644
--- 
a/serialization-jackson3/src/test/java/jdoc/org/apache/pekko/serialization/jackson3/v1/OrderAdded.java
+++ 
b/serialization-jackson3/src/test/java/jdoc/org/apache/pekko/serialization/jackson3/v1/OrderAdded.java
@@ -14,10 +14,10 @@
 package jdoc.org.apache.pekko.serialization.jackson3.v1;
 
 import com.fasterxml.jackson.annotation.JsonCreator;
-import jdoc.org.apache.pekko.serialization.jackson3.MySerializable;
+import org.apache.pekko.serialization.jackson3.JsonSerializable;
 
 // #rename-class
-public class OrderAdded implements MySerializable {
+public class OrderAdded implements JsonSerializable {
   public final String shoppingCartId;
 
   @JsonCreator
diff --git 
a/serialization-jackson3/src/test/java/jdoc/org/apache/pekko/serialization/jackson3/v2a/Customer.java
 
b/serialization-jackson3/src/test/java/jdoc/org/apache/pekko/serialization/jackson3/v2a/Customer.java
index f060290c14..1755f0211f 100644
--- 
a/serialization-jackson3/src/test/java/jdoc/org/apache/pekko/serialization/jackson3/v2a/Customer.java
+++ 
b/serialization-jackson3/src/test/java/jdoc/org/apache/pekko/serialization/jackson3/v2a/Customer.java
@@ -14,10 +14,10 @@
 package jdoc.org.apache.pekko.serialization.jackson3.v2a;
 
 import java.util.Optional;
-import jdoc.org.apache.pekko.serialization.jackson3.MySerializable;
+import org.apache.pekko.serialization.jackson3.JsonSerializable;
 
 // #structural
-public class Customer implements MySerializable {
+public class Customer implements JsonSerializable {
   public final String name;
   public final Address shippingAddress;
   public final Optional<Address> billingAddress;
diff --git 
a/serialization-jackson3/src/test/java/jdoc/org/apache/pekko/serialization/jackson3/v2a/ItemAdded.java
 
b/serialization-jackson3/src/test/java/jdoc/org/apache/pekko/serialization/jackson3/v2a/ItemAdded.java
index 1018999b76..c26a3acb5a 100644
--- 
a/serialization-jackson3/src/test/java/jdoc/org/apache/pekko/serialization/jackson3/v2a/ItemAdded.java
+++ 
b/serialization-jackson3/src/test/java/jdoc/org/apache/pekko/serialization/jackson3/v2a/ItemAdded.java
@@ -15,10 +15,10 @@ package jdoc.org.apache.pekko.serialization.jackson3.v2a;
 
 import com.fasterxml.jackson.annotation.JsonCreator;
 import java.util.Optional;
-import jdoc.org.apache.pekko.serialization.jackson3.MySerializable;
+import org.apache.pekko.serialization.jackson3.JsonSerializable;
 
 // #add-optional
-public class ItemAdded implements MySerializable {
+public class ItemAdded implements JsonSerializable {
   public final String shoppingCartId;
   public final String productId;
   public final int quantity;
diff --git 
a/serialization-jackson3/src/test/java/jdoc/org/apache/pekko/serialization/jackson3/v2a/OrderPlaced.java
 
b/serialization-jackson3/src/test/java/jdoc/org/apache/pekko/serialization/jackson3/v2a/OrderPlaced.java
index adc5bbbb9e..e8807bde45 100644
--- 
a/serialization-jackson3/src/test/java/jdoc/org/apache/pekko/serialization/jackson3/v2a/OrderPlaced.java
+++ 
b/serialization-jackson3/src/test/java/jdoc/org/apache/pekko/serialization/jackson3/v2a/OrderPlaced.java
@@ -14,10 +14,10 @@
 package jdoc.org.apache.pekko.serialization.jackson3.v2a;
 
 import com.fasterxml.jackson.annotation.JsonCreator;
-import jdoc.org.apache.pekko.serialization.jackson3.MySerializable;
+import org.apache.pekko.serialization.jackson3.JsonSerializable;
 
 // #rename-class
-public class OrderPlaced implements MySerializable {
+public class OrderPlaced implements JsonSerializable {
   public final String shoppingCartId;
 
   @JsonCreator
diff --git 
a/serialization-jackson3/src/test/java/jdoc/org/apache/pekko/serialization/jackson3/v2b/ItemAdded.java
 
b/serialization-jackson3/src/test/java/jdoc/org/apache/pekko/serialization/jackson3/v2b/ItemAdded.java
index f8fa4fa461..68d7585349 100644
--- 
a/serialization-jackson3/src/test/java/jdoc/org/apache/pekko/serialization/jackson3/v2b/ItemAdded.java
+++ 
b/serialization-jackson3/src/test/java/jdoc/org/apache/pekko/serialization/jackson3/v2b/ItemAdded.java
@@ -13,10 +13,10 @@
 
 package jdoc.org.apache.pekko.serialization.jackson3.v2b;
 
-import jdoc.org.apache.pekko.serialization.jackson3.MySerializable;
+import org.apache.pekko.serialization.jackson3.JsonSerializable;
 
 // #add-mandatory
-public class ItemAdded implements MySerializable {
+public class ItemAdded implements JsonSerializable {
   public final String shoppingCartId;
   public final String productId;
   public final int quantity;
diff --git 
a/serialization-jackson3/src/test/java/jdoc/org/apache/pekko/serialization/jackson3/v2c/ItemAdded.java
 
b/serialization-jackson3/src/test/java/jdoc/org/apache/pekko/serialization/jackson3/v2c/ItemAdded.java
index 7c66f06e01..b42312bab1 100644
--- 
a/serialization-jackson3/src/test/java/jdoc/org/apache/pekko/serialization/jackson3/v2c/ItemAdded.java
+++ 
b/serialization-jackson3/src/test/java/jdoc/org/apache/pekko/serialization/jackson3/v2c/ItemAdded.java
@@ -13,10 +13,10 @@
 
 package jdoc.org.apache.pekko.serialization.jackson3.v2c;
 
-import jdoc.org.apache.pekko.serialization.jackson3.MySerializable;
+import org.apache.pekko.serialization.jackson3.JsonSerializable;
 
 // #rename
-public class ItemAdded implements MySerializable {
+public class ItemAdded implements JsonSerializable {
   public final String shoppingCartId;
 
   public final String itemId;
diff --git a/serialization-jackson3/src/test/resources/reference.conf 
b/serialization-jackson3/src/test/resources/reference.conf
deleted file mode 100644
index 67211c9615..0000000000
--- a/serialization-jackson3/src/test/resources/reference.conf
+++ /dev/null
@@ -1,10 +0,0 @@
-# SPDX-License-Identifier: Apache-2.0
-
-pekko {
-  actor {
-    serialization-bindings {
-      "org.apache.pekko.serialization.jackson3.CborSerializable" = jackson-cbor
-      "org.apache.pekko.serialization.jackson3.JsonSerializable" = jackson-json
-    }
-  }
-}
diff --git 
a/serialization-jackson3/src/test/scala/doc/org/apache/pekko/serialization/jackson3/CustomAdtSerializer.scala
 
b/serialization-jackson3/src/test/scala/doc/org/apache/pekko/serialization/jackson3/CustomAdtSerializer.scala
index a5daf371c1..b9353d9cab 100644
--- 
a/serialization-jackson3/src/test/scala/doc/org/apache/pekko/serialization/jackson3/CustomAdtSerializer.scala
+++ 
b/serialization-jackson3/src/test/scala/doc/org/apache/pekko/serialization/jackson3/CustomAdtSerializer.scala
@@ -13,6 +13,8 @@
 
 package doc.org.apache.pekko.serialization.jackson3
 
+import org.apache.pekko.serialization.jackson3.JsonSerializable
+
 object CustomAdtSerializer {
 
   // #adt-trait-object
@@ -63,6 +65,6 @@ object CustomAdtSerializer {
     }
   }
 
-  final case class Compass(currentDirection: Direction) extends MySerializable
+  final case class Compass(currentDirection: Direction) extends 
JsonSerializable
   // #adt-trait-object
 }
diff --git 
a/serialization-jackson3/src/test/scala/doc/org/apache/pekko/serialization/jackson3/SerializationDocSpec.scala
 
b/serialization-jackson3/src/test/scala/doc/org/apache/pekko/serialization/jackson3/SerializationDocSpec.scala
index 71062fbbae..19045fadf2 100644
--- 
a/serialization-jackson3/src/test/scala/doc/org/apache/pekko/serialization/jackson3/SerializationDocSpec.scala
+++ 
b/serialization-jackson3/src/test/scala/doc/org/apache/pekko/serialization/jackson3/SerializationDocSpec.scala
@@ -33,12 +33,9 @@ import org.scalatest.matchers.should.Matchers
 import org.scalatest.wordspec.AnyWordSpecLike
 
 //#marker-interface
-/**
- * Marker interface for messages, events and snapshots that are serialized 
with Jackson.
- */
-trait MySerializable
+import org.apache.pekko.serialization.jackson3.JsonSerializable
 
-final case class Message(name: String, nr: Int) extends MySerializable
+final case class Message(name: String, nr: Int) extends JsonSerializable
 //#marker-interface
 
 object SerializationDocSpec {
@@ -142,7 +139,7 @@ object SerializationDocSpec {
   object Polymorphism {
 
     // #polymorphism
-    final case class Zoo(primaryAttraction: Animal) extends MySerializable
+    final case class Zoo(primaryAttraction: Animal) extends JsonSerializable
 
     @JsonTypeInfo(use = JsonTypeInfo.Id.NAME, property = "type")
     @JsonSubTypes(
@@ -160,7 +157,7 @@ object SerializationDocSpec {
   object PolymorphismMixedClassObject {
 
     // #polymorphism-case-object
-    final case class Zoo(primaryAttraction: Animal) extends MySerializable
+    final case class Zoo(primaryAttraction: Animal) extends JsonSerializable
 
     @JsonTypeInfo(use = JsonTypeInfo.Id.NAME, property = "type")
     @JsonSubTypes(
@@ -223,10 +220,6 @@ class SerializationDocSpec
     }
     pekko.actor {
       allow-java-serialization = off
-      serialization-bindings {
-        
"${classOf[jdoc.org.apache.pekko.serialization.jackson3.MySerializable].getName}"
 = jackson-json
-        
"${classOf[doc.org.apache.pekko.serialization.jackson3.MySerializable].getName}"
 = jackson-json
-      }
     }
     """)))
     with AnyWordSpecLike
diff --git 
a/serialization-jackson3/src/test/scala/doc/org/apache/pekko/serialization/jackson3/v1/Customer.scala
 
b/serialization-jackson3/src/test/scala/doc/org/apache/pekko/serialization/jackson3/v1/Customer.scala
index a2398e82e0..8af4360aca 100644
--- 
a/serialization-jackson3/src/test/scala/doc/org/apache/pekko/serialization/jackson3/v1/Customer.scala
+++ 
b/serialization-jackson3/src/test/scala/doc/org/apache/pekko/serialization/jackson3/v1/Customer.scala
@@ -13,8 +13,9 @@
 
 package doc.org.apache.pekko.serialization.jackson3.v1
 
-import doc.org.apache.pekko.serialization.jackson3.MySerializable
+import org.apache.pekko.serialization.jackson3.JsonSerializable
 
 // #structural
-case class Customer(name: String, street: String, city: String, zipCode: 
String, country: String) extends MySerializable
+case class Customer(name: String, street: String, city: String, zipCode: 
String, country: String)
+    extends JsonSerializable
 // #structural
diff --git 
a/serialization-jackson3/src/test/scala/doc/org/apache/pekko/serialization/jackson3/v1/ItemAdded.scala
 
b/serialization-jackson3/src/test/scala/doc/org/apache/pekko/serialization/jackson3/v1/ItemAdded.scala
index d855d9890e..bf6341e024 100644
--- 
a/serialization-jackson3/src/test/scala/doc/org/apache/pekko/serialization/jackson3/v1/ItemAdded.scala
+++ 
b/serialization-jackson3/src/test/scala/doc/org/apache/pekko/serialization/jackson3/v1/ItemAdded.scala
@@ -13,10 +13,10 @@
 
 package doc.org.apache.pekko.serialization.jackson3.v1
 
-import doc.org.apache.pekko.serialization.jackson3.MySerializable
+import org.apache.pekko.serialization.jackson3.JsonSerializable
 
 // #add-optional
 // #forward-one-rename
-case class ItemAdded(shoppingCartId: String, productId: String, quantity: Int) 
extends MySerializable
+case class ItemAdded(shoppingCartId: String, productId: String, quantity: Int) 
extends JsonSerializable
 // #forward-one-rename
 // #add-optional
diff --git 
a/serialization-jackson3/src/test/scala/doc/org/apache/pekko/serialization/jackson3/v1/OrderAdded.scala
 
b/serialization-jackson3/src/test/scala/doc/org/apache/pekko/serialization/jackson3/v1/OrderAdded.scala
index f865044803..33da328cfd 100644
--- 
a/serialization-jackson3/src/test/scala/doc/org/apache/pekko/serialization/jackson3/v1/OrderAdded.scala
+++ 
b/serialization-jackson3/src/test/scala/doc/org/apache/pekko/serialization/jackson3/v1/OrderAdded.scala
@@ -13,8 +13,8 @@
 
 package doc.org.apache.pekko.serialization.jackson3.v1
 
-import doc.org.apache.pekko.serialization.jackson3.MySerializable
+import org.apache.pekko.serialization.jackson3.JsonSerializable
 
 // #rename-class
-case class OrderAdded(shoppingCartId: String) extends MySerializable
+case class OrderAdded(shoppingCartId: String) extends JsonSerializable
 // #rename-class
diff --git 
a/serialization-jackson3/src/test/scala/doc/org/apache/pekko/serialization/jackson3/v2a/Address.scala
 
b/serialization-jackson3/src/test/scala/doc/org/apache/pekko/serialization/jackson3/v2a/Address.scala
index e6fa3e990c..b2e0d94d66 100644
--- 
a/serialization-jackson3/src/test/scala/doc/org/apache/pekko/serialization/jackson3/v2a/Address.scala
+++ 
b/serialization-jackson3/src/test/scala/doc/org/apache/pekko/serialization/jackson3/v2a/Address.scala
@@ -13,8 +13,8 @@
 
 package doc.org.apache.pekko.serialization.jackson3.v2a
 
-import doc.org.apache.pekko.serialization.jackson3.MySerializable
+import org.apache.pekko.serialization.jackson3.JsonSerializable
 
 // #structural
-case class Address(street: String, city: String, zipCode: String, country: 
String) extends MySerializable
+case class Address(street: String, city: String, zipCode: String, country: 
String) extends JsonSerializable
 // #structural
diff --git 
a/serialization-jackson3/src/test/scala/doc/org/apache/pekko/serialization/jackson3/v2a/Customer.scala
 
b/serialization-jackson3/src/test/scala/doc/org/apache/pekko/serialization/jackson3/v2a/Customer.scala
index 20f35751c8..ab8db3ec9b 100644
--- 
a/serialization-jackson3/src/test/scala/doc/org/apache/pekko/serialization/jackson3/v2a/Customer.scala
+++ 
b/serialization-jackson3/src/test/scala/doc/org/apache/pekko/serialization/jackson3/v2a/Customer.scala
@@ -13,8 +13,8 @@
 
 package doc.org.apache.pekko.serialization.jackson3.v2a
 
-import doc.org.apache.pekko.serialization.jackson3.MySerializable
+import org.apache.pekko.serialization.jackson3.JsonSerializable
 
 // #structural
-case class Customer(name: String, shippingAddress: Address, billingAddress: 
Option[Address]) extends MySerializable
+case class Customer(name: String, shippingAddress: Address, billingAddress: 
Option[Address]) extends JsonSerializable
 // #structural
diff --git 
a/serialization-jackson3/src/test/scala/doc/org/apache/pekko/serialization/jackson3/v2a/ItemAdded.scala
 
b/serialization-jackson3/src/test/scala/doc/org/apache/pekko/serialization/jackson3/v2a/ItemAdded.scala
index c820d7fce4..37721ea432 100644
--- 
a/serialization-jackson3/src/test/scala/doc/org/apache/pekko/serialization/jackson3/v2a/ItemAdded.scala
+++ 
b/serialization-jackson3/src/test/scala/doc/org/apache/pekko/serialization/jackson3/v2a/ItemAdded.scala
@@ -14,11 +14,11 @@
 package doc.org.apache.pekko.serialization.jackson3.v2a
 
 import com.fasterxml.jackson.annotation.JsonCreator
-import jdoc.org.apache.pekko.serialization.jackson3.MySerializable
+import org.apache.pekko.serialization.jackson3.JsonSerializable
 
 // #add-optional
 case class ItemAdded(shoppingCartId: String, productId: String, quantity: Int, 
discount: Option[Double], note: String)
-    extends MySerializable {
+    extends JsonSerializable {
 
   // alternative constructor because `note` should have default value "" when 
not defined in json
   @JsonCreator
diff --git 
a/serialization-jackson3/src/test/scala/doc/org/apache/pekko/serialization/jackson3/v2a/OrderPlaced.scala
 
b/serialization-jackson3/src/test/scala/doc/org/apache/pekko/serialization/jackson3/v2a/OrderPlaced.scala
index 6984bcbee8..ef320e7c76 100644
--- 
a/serialization-jackson3/src/test/scala/doc/org/apache/pekko/serialization/jackson3/v2a/OrderPlaced.scala
+++ 
b/serialization-jackson3/src/test/scala/doc/org/apache/pekko/serialization/jackson3/v2a/OrderPlaced.scala
@@ -13,8 +13,8 @@
 
 package doc.org.apache.pekko.serialization.jackson3.v2a
 
-import doc.org.apache.pekko.serialization.jackson3.MySerializable
+import org.apache.pekko.serialization.jackson3.JsonSerializable
 
 // #rename-class
-case class OrderPlaced(shoppingCartId: String) extends MySerializable
+case class OrderPlaced(shoppingCartId: String) extends JsonSerializable
 // #rename-class
diff --git 
a/serialization-jackson3/src/test/scala/doc/org/apache/pekko/serialization/jackson3/v2b/ItemAdded.scala
 
b/serialization-jackson3/src/test/scala/doc/org/apache/pekko/serialization/jackson3/v2b/ItemAdded.scala
index 35c6f2478e..1804510013 100644
--- 
a/serialization-jackson3/src/test/scala/doc/org/apache/pekko/serialization/jackson3/v2b/ItemAdded.scala
+++ 
b/serialization-jackson3/src/test/scala/doc/org/apache/pekko/serialization/jackson3/v2b/ItemAdded.scala
@@ -13,8 +13,9 @@
 
 package doc.org.apache.pekko.serialization.jackson3.v2b
 
-import jdoc.org.apache.pekko.serialization.jackson3.MySerializable
+import org.apache.pekko.serialization.jackson3.JsonSerializable
 
 // #add-mandatory
-case class ItemAdded(shoppingCartId: String, productId: String, quantity: Int, 
discount: Double) extends MySerializable
+case class ItemAdded(shoppingCartId: String, productId: String, quantity: Int, 
discount: Double)
+    extends JsonSerializable
 // #add-mandatory
diff --git 
a/serialization-jackson3/src/test/scala/doc/org/apache/pekko/serialization/jackson3/v2c/ItemAdded.scala
 
b/serialization-jackson3/src/test/scala/doc/org/apache/pekko/serialization/jackson3/v2c/ItemAdded.scala
index 7f82551574..4a273c0794 100644
--- 
a/serialization-jackson3/src/test/scala/doc/org/apache/pekko/serialization/jackson3/v2c/ItemAdded.scala
+++ 
b/serialization-jackson3/src/test/scala/doc/org/apache/pekko/serialization/jackson3/v2c/ItemAdded.scala
@@ -13,8 +13,8 @@
 
 package doc.org.apache.pekko.serialization.jackson3.v2c
 
-import doc.org.apache.pekko.serialization.jackson3.MySerializable
+import org.apache.pekko.serialization.jackson3.JsonSerializable
 
 // #rename
-case class ItemAdded(shoppingCartId: String, itemId: String, quantity: Int) 
extends MySerializable
+case class ItemAdded(shoppingCartId: String, itemId: String, quantity: Int) 
extends JsonSerializable
 // #rename
diff --git 
a/serialization-jackson3/src/test/scala/org/apache/pekko/serialization/jackson3/JacksonSerializerSpec.scala
 
b/serialization-jackson3/src/test/scala/org/apache/pekko/serialization/jackson3/JacksonSerializerSpec.scala
index e2450866f4..dff3deca43 100644
--- 
a/serialization-jackson3/src/test/scala/org/apache/pekko/serialization/jackson3/JacksonSerializerSpec.scala
+++ 
b/serialization-jackson3/src/test/scala/org/apache/pekko/serialization/jackson3/JacksonSerializerSpec.scala
@@ -151,6 +151,11 @@ object ScalaTestMessages {
       extends TestMessage
 }
 
+object PredefinedMarkerMessages {
+  final case class JsonMarked(name: String) extends JsonSerializable
+  final case class CborMarked(name: String) extends CborSerializable
+}
+
 class JacksonCborSerializerSpec extends JacksonSerializerSpec("jackson-cbor") {
   "have compression disabled by default" in {
     val conf = JacksonObjectMapperProvider.configForBinding("jackson-cbor", 
system.settings.config)
@@ -178,6 +183,31 @@ class JacksonJsonSerializerSpec extends 
JacksonSerializerSpec("jackson-json") {
 
   "JacksonJsonSerializer" must {
 
+    "bind the predefined JsonSerializable and CborSerializable markers in 
reference.conf" in {
+      import PredefinedMarkerMessages._
+      // only the reference.conf files, no test specific serialization-bindings
+      val sys = ActorSystem("PredefinedMarkers", 
ConfigFactory.defaultReference())
+      try {
+        val ser = SerializationExtension(sys)
+        ser.serializerFor(classOf[JsonMarked]).getClass should 
===(classOf[JacksonJsonSerializer])
+        ser.serializerFor(classOf[CborMarked]).getClass should 
===(classOf[JacksonCborSerializer])
+
+        val jsonMsg = JsonMarked("json")
+        val jsonSerializer = 
ser.findSerializerFor(jsonMsg).asInstanceOf[SerializerWithStringManifest]
+        ser.deserialize(
+          jsonSerializer.toBinary(jsonMsg),
+          jsonSerializer.identifier,
+          jsonSerializer.manifest(jsonMsg)).get should ===(jsonMsg)
+
+        val cborMsg = CborMarked("cbor")
+        val cborSerializer = 
ser.findSerializerFor(cborMsg).asInstanceOf[SerializerWithStringManifest]
+        ser.deserialize(
+          cborSerializer.toBinary(cborMsg),
+          cborSerializer.identifier,
+          cborSerializer.manifest(cborMsg)).get should ===(cborMsg)
+      } finally shutdown(sys)
+    }
+
     "support lookup of same ObjectMapper via JacksonObjectMapperProvider" in {
       val mapper = serialization()
         .serializerFor(classOf[JavaTestMessages.TestMessage])


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to