import org.infinispan.commons.marshall.Externalizer; import org.infinispan.commons.marshall.SerializeWith; @SerializeWith(Person.PersonExternalizer.class) public class Person {    final String name;    final int age;    public Person(String name, int age) {       this.name = name;       this.age = age;    }    public static class PersonExternalizer implements Externalizer {       @Override       public void writeObject(ObjectOutput output, Person person)             throws IOException {          output.writeObject(person.name);          output.writeInt(person.age);       }       @Override       public Person readObject(ObjectInput input)             throws IOException, ClassNotFoundException {          return new Person((String) input.readObject(), input.readInt());       }    } }