Client application with self-managed 8.3 and no identity does not work with 8.4 self managed

my sample client worked well with 8.3 self managed. but after upgrade client library to 8.3 to 8.4, It throws error.

  1. pom.xml configuration is

    io.camunda.spring
    spring-boot-starter-camunda
    8.4.0

  2. application.properties is
    zeebe.client.broker.gateway-address=127.0.0.1:26500
    zeebe.client.security.plaintext=true

The following errors are thrown :

2024-01-19 11:48:55.268 INFO 35348 — [ main] z.s.c.a.p.ZeebeWorkerAnnotationProcessor : Configuring 1 Zeebe worker(s) of bean ‘calculateScore’: [ZeebeWorkerValue{type=‘calculateScore’, name=‘calculateScore#calculateScore’, timeout=-1, maxJobsActive=-1, requestTimeout=-1, pollInterval=-1, autoComplete=true, fetchVariables=, enabled=true, methodInfo=io.camunda.zeebe.spring.client.bean.MethodInfo@177515d1}]
2024-01-19 11:48:55.287 ERROR 35348 — [ main] i.c.c.auth.DefaultNoopAuthentication : Unable to determine authentication. Please check your configuration

Application works well changing the version property to 8.3.0. But when job worker trying to poll its task, there throws error “UnsupportedOperationException” of grpc.
So, I guess I should use 8.4 zeebe client but the authentication (no authentication and plaintext) problem should be resolved.

What should I change?

when I Set 8.3.0 or 8.4.0 to 8.3.4 It worked.

Hi @msjo - the spring-zeebe@8.4.0 client is not backward compatible with Camunda 8.3.4. You can check the version compatibility matrix here. Once you upgrade your cluster to 8.4, then you will need to update your client as well.

My self managed cluster is 8.4.0 of course.
my client application is GitHub - msjo66/camunbankia-8.4: camunbankia를 8.4로 포팅함
when I changed zeebe.version from 8.4.0 to 8.3.4, It worked.

I found problem and resolved. zeebe version 8.4 has compatibility issue with spring boot version 2.7.x
When I change spring boot version to 3.2.2, the problem has gone.
But GitHub - camunda-community-hub/spring-zeebe: Easily use the Zeebe Java Client in your Spring or Spring Boot projects said that 8.4 is compatible with 2.7.x.

Thank you.

@msjo - can you open a GitHub describing what you found? I’ll bring it to the attention of some of our engineers who help maintain that project. Thanks!

It’s my pleasure. I raised a new documentation issue here. Spring Zeebe version 8.4.0 does not work with Spring boot 2.7.18 · Issue #608 · camunda-community-hub/spring-zeebe · GitHub

1 Like

One more question.
connector container log stream is full by “[pool-2-thread-4] i.c.z.client.impl.ZeebeCallCredentials : The request’s security level does not guarantee that the credentials will be confidential.”

How disble this? I’ve tried following in values.xml but has no effect.

connectors:
  enabled: true
  inbound:
    mode: disabled
  logging:
    level:
      io.camunda.zeebe: ERROR

@msjo - have a look at this topic, there’s two ways of limiting the chattiness:

Thank you @nathan.loding.
But I could not find where (in values.xml for helm) I should put the JAVA_OPTIONS.
I’ll retry after finding the options to put into.

@msjo - I believe you just need to specify it as an environment variable, which you can do with the env property seen here. (I also noticed that there is a logging.level property a few lines above … I think this is only used with inbound Connectors and Operate, but might be worth trying to add the value there (and I’d love to know if it works!)

Yes, It worked. Thank you @nathan.loding !

my values.xml for Connectors are

connectors:
  enabled: true
  inbound:
    mode: disabled
  env:
    - name: JAVA_OPTS
      value: "-Dlogging.level.io.camunda.zeebe.client.impl.ZeebeCallCredentials=ERROR"
1 Like

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.