ENGINE-03040 No serializer defined for variable instance


#1

When I execute:

    runtimeService
            .createVariableInstanceQuery()
                .executionIdIn(task.getExecutionId())
                    .list()
                        .forEach(v -> {
                            VariableInstanceEntity vi = (VariableInstanceEntity) v;
                            System.out.println(String.format("Byte Array Id = %s", vi.getByteArrayValueId()));
                            System.out.println(String.format("Byte Array = %s", vi.getByteArrayValue()));
                            System.out.println(String.format("Error Message = %s", vi.getErrorMessage()));

                        });

I get the error:
ENGINE-03040 No serializer defined for variable instance ‘org.camunda.bpm.engine.impl.persistence.entity.util.TypedValueField@4055d920’

and the byte array is null.

The variable is set as a Input parameter to a User Task, type List.

I’m using camunda-bpm-spring-boot-starter 3.0.0

I have configured:

camunda:
bpm:
default-serialization-format: application/json

The variable type in data base is ACT_RU_VARIABLE.TYPE_ = “spin://application/json”


#2

Hi @Alejandro_Kullmer,

you have to add the SPIN dependencies to your pom.xml: https://docs.camunda.org/manual/7.10/user-guide/data-formats/configuring-spin-integration/

Hope this helps, Ingo


#3

It works! Thank you very much!