Skip to end of metadata
Go to start of metadata

Problem:


Nach dem Update auf die Version 12.3.3 des Signavio Process Managers erhält man initial die Fehlermeldung:

(ImageServiceEntryPoint.java:302) Initialization of jwtService failed
2018-10-22 14:38:41,484  INFO [localhost-startStop-1] r: u: t: .(CacheConfiguration.java:44) Configuration does not contain a cache cluster url: configuring infinispan cache to write data through the database (seperate tables will be used): url=jdbc:sqlserver://VMSProcMgmtSQLQ;databaseName=SignavioDBQ;
2018-10-22 14:38:45,441  INFO [localhost-startStop-1] r: u: t: .(InvalidationStartupLogger.java:22) ModelModification table contains 0 entries.
2018-10-22 14:38:45,457 ERROR [localhost-startStop-1] r: u: t: .(SymmetricEncryptionService.java:48) The SecretProvider returned a missing or empty secret!
2018-10-22 14:38:45,457 FATAL [localhost-startStop-1] r: u: t: .(ImageServiceEntryPoint.java:302) Initialization of jwtService failed. Starting service nevertheless but an empty image will be delivered for every request.
java.lang.IllegalArgumentException: The Secret cannot be null
	at com.auth0.jwt.algorithms.HMACAlgorithm.getSecretBytes(HMACAlgorithm.java:40)
	at com.auth0.jwt.algorithms.HMACAlgorithm.<init>(HMACAlgorithm.java:34)
	at com.auth0.jwt.algorithms.Algorithm.HMAC256(Algorithm.java:144)
	at com.signavio.jwt.SymmetricEncryptionService.getAlgorithm(SymmetricEncryptionService.java:31)
	at com.signavio.jwt.JwtService.<init>(JwtService.java:58)
	at com.signavio.imageservice.ImageServiceEntryPoint.createJwtService(ImageServiceEntryPoint.java:293)
	at com.signavio.imageservice.ImageServiceEntryPoint.lambda$initJwtService$5(ImageServiceEntryPoint.java:286)
	at com.signavio.imageservice.ImageServiceEntryPoint.initialize(ImageServiceEntryPoint.java:300)
	at com.signavio.imageservice.ImageServiceEntryPoint.initJwtService(ImageServiceEntryPoint.java:286)
	at com.signavio.imageservice.ImageServiceEntryPoint.initializeServiceRequirements(ImageServiceEntryPoint.java:146)
	at com.signavio.imageservice.ImageServiceEntryPoint.contextInitialized(ImageServiceEntryPoint.java:95)
	at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4792)
	at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5256)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
	at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:754)
	at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:730)
	at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:734)
	at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1140)
	at org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1875)
	at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
	at java.util.concurrent.FutureTask.run(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)
2018-10-22 14:38:45,472 ERROR [localhost-startStop-1] r: u: t: .(SymmetricEncryptionService.java:48) The SecretProvider returned a missing or empty secret!
2018-10-22 14:38:45,488 FATAL [localhost-startStop-1] r: u: t: .(ImageServiceEntryPoint.java:302) Initialization of svg service failed. Starting service nevertheless but an empty image will be delivered for every request.
com.google.inject.ProvisionException: Unable to provision, see the following errors:

1) Error injecting constructor, java.lang.IllegalArgumentException: The Secret cannot be null
  at com.signavio.jwt.JwtService.<init>(JwtService.java:57)
  while locating com.signavio.jwt.JwtService
    for the 2nd parameter of com.signavio.imageservice.SvgServiceImpl.<init>(SvgServiceImpl.java:47)
  at com.signavio.imageservice.SvgServiceImpl.class(SvgServiceImpl.java:38)
  while locating com.signavio.imageservice.SvgServiceImpl
  while locating com.signavio.imageservice.SvgService

1 error
	at com.google.inject.internal.InternalProvisionException.toProvisionException(InternalProvisionException.java:226)
	at com.google.inject.internal.InjectorImpl$1.get(InjectorImpl.java:1053)
	at com.google.inject.internal.InjectorImpl.getInstance(InjectorImpl.java:1086)
	at com.signavio.imageservice.ImageServiceEntryPoint.lambda$initSvgService$0(ImageServiceEntryPoint.java:155)
	at com.signavio.imageservice.ImageServiceEntryPoint.initialize(ImageServiceEntryPoint.java:300)
	at com.signavio.imageservice.ImageServiceEntryPoint.initSvgService(ImageServiceEntryPoint.java:153)
	at com.signavio.imageservice.ImageServiceEntryPoint.initializeServiceRequirements(ImageServiceEntryPoint.java:147)
	at com.signavio.imageservice.ImageServiceEntryPoint.contextInitialized(ImageServiceEntryPoint.java:95)
	at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4792)
	at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5256)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
	at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:754)
	at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:730)
	at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:734)
	at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1140)
	at org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1875)
	at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
	at java.util.concurrent.FutureTask.run(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.IllegalArgumentException: The Secret cannot be null
	at com.auth0.jwt.algorithms.HMACAlgorithm.getSecretBytes(HMACAlgorithm.java:40)
	at com.auth0.jwt.algorithms.HMACAlgorithm.<init>(HMACAlgorithm.java:34)
	at com.auth0.jwt.algorithms.Algorithm.HMAC256(Algorithm.java:144)
	at com.signavio.jwt.SymmetricEncryptionService.getAlgorithm(SymmetricEncryptionService.java:31)
	at com.signavio.jwt.JwtService.<init>(JwtService.java:58)
	at com.signavio.jwt.JwtService$$FastClassByGuice$$4bac6f7e.newInstance(<generated>)
	at com.google.inject.internal.DefaultConstructionProxyFactory$FastClassProxy.newInstance(DefaultConstructionProxyFactory.java:89)
	at com.google.inject.internal.ConstructorInjector.provision(ConstructorInjector.java:114)
	at com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:91)
	at com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:306)
	at com.google.inject.internal.SingleParameterInjector.inject(SingleParameterInjector.java:42)
	at com.google.inject.internal.SingleParameterInjector.getAll(SingleParameterInjector.java:65)
	at com.google.inject.internal.ConstructorInjector.provision(ConstructorInjector.java:113)
	at com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:91)
	at com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:306)
	at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40)
	at com.google.inject.internal.SingletonScope$1.get(SingletonScope.java:148)
	at com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:39)
	at com.google.inject.internal.FactoryProxy.get(FactoryProxy.java:62)
	at com.google.inject.internal.InjectorImpl$1.get(InjectorImpl.java:1050)
	... 19 more
2018-10-22 14:38:45,519 ERROR [localhost-startStop-1] r: u: t: .(ImageServiceEntryPoint.java:275) Setting image service state to NON_FUNCTIONAL


Seit dem Update auf die 12.12.x können wir unser Workflow Accelerator nicht mehr mit dem Process Manager verbinden. Wir erhalten folgende Fehlermeldung, wenn wir im Setup-Menü auf "Freigabe Workflow verwalten" klicken:

Es ist ein unbekannter Fehler aufgetreten.

Zusätzlich funktioniert der "Login mit Process Manager Account"-Button im Workflow nicht mehr. Hierbei erhalten wir folgende Meldung:


In der stdout.log vom Process Manager sehen wir folgende Fehlermeldung:

javax.servlet.ServletException: java.lang.IllegalArgumentException: The Secret cannot be null
[HTTP] GET /p/approval-config 500
javax.servlet.ServletException: java.lang.IllegalArgumentException: The Secret cannot be null
	at com.signavio.platform.filters.PrivateUrlFilter.doFilter(PrivateUrlFilter.java:127)
	at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:82)
	at com.signavio.saas.filter.CertificateGuestUserLogoutFilter.doFilter(CertificateGuestUserLogoutFilter.java:63)
	at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:82)
	at com.signavio.usermanagement.external.filter.Saml2AuthenticationFilter.doFilter(Saml2AuthenticationFilter.java:98)
	at com.signavio.usermanagement.external.filter.Saml2AuthenticationFilter.doFilter(Saml2AuthenticationFilter.java:39)
	at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:82)
	at com.signavio.enterprise.filter.GuestUserAuthenticationFilter.doFilter(GuestUserAuthenticationFilter.java:108)
	at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:82)
	at com.signavio.platform.filters.MonthlyConcurrentCheckFilter.doFilter(MonthlyConcurrentCheckFilter.java:49)
	at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:82)
	at com.signavio.platform.oauth.provider.filter.OAuthAuthenticationFilter.doFilter(OAuthAuthenticationFilter.java:111)
	at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:82)
	at com.signavio.platform.filters.JwtAuthenticationFilter.doFilter(JwtAuthenticationFilter.java:79)
	at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:82)
	at com.signavio.infrastructure.csp.CspFilter.doFilter(CspFilter.java:78)
	at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:82)
	at com.signavio.platform.core.transactions.HttpTransaction.execute(HttpTransaction.java:83)
	at com.signavio.platform.core.transactions.PlatformTransaction.executeTransaction(PlatformTransaction.java:136)
	at com.signavio.platform.core.transactions.PlatformTransaction.runTransaction(PlatformTransaction.java:112)
	at com.signavio.platform.filters.HibernateSessionFilter.doFilter(HibernateSessionFilter.java:22)
	at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:82)
	at com.signavio.infrastructure.filter.LocaleParameterFilter.doFilter(LocaleParameterFilter.java:40)
	at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:82)
	at com.signavio.platform.filters.ModelHandlerRedirectFilter.doFilter(ModelHandlerRedirectFilter.java:77)
	at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:82)
	at com.signavio.platform.filters.HandlerFilter.doFilter(HandlerFilter.java:131)
	at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:82)
	at com.signavio.platform.filters.ParseParametersFilter.doFilter(ParseParametersFilter.java:245)
	at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:82)
	at com.signavio.platform.filters.AngleBracketFilter.doFilter(AngleBracketFilter.java:70)
	at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:82)
	at com.signavio.platform.filters.EncodingAndDefaultsFilter.doFilter(EncodingAndDefaultsFilter.java:69)
	at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:82)
	at com.signavio.platform.filters.SessionUpdateFilter.doFilter(SessionUpdateFilter.java:35)
	at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:82)
	at com.signavio.platform.filters.RequestExceptionFilter.doFilter(RequestExceptionFilter.java:267)
	at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:82)
	at com.signavio.platform.filters.XssProtectionResponseFilter.doFilter(XssProtectionResponseFilter.java:37)
	at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:82)
	at com.signavio.platform.filters.SecurityResponseFilter.doFilter(SecurityResponseFilter.java:39)
	at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:82)
	at com.signavio.platform.filters.logging.RequestLoggingFilter.doFilter(RequestLoggingFilter.java:36)
	at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:82)
	at com.signavio.platform.filters.logging.EnrichLoggingContextFilter.doFilter(EnrichLoggingContextFilter.java:61)
	at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:82)
	at com.signavio.platform.filters.metrics.RequestMetricsFilter.lambda$0(RequestMetricsFilter.java:59)
	at com.signavio.infrastructure.metrics.facade.timer.TimeRecorderTwoExceptions.record(TimeRecorderTwoExceptions.java:57)
	at com.signavio.platform.filters.metrics.RequestMetricsFilter.doFilter(RequestMetricsFilter.java:56)
	at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:82)
	at com.google.inject.servlet.ManagedFilterPipeline.dispatch(ManagedFilterPipeline.java:120)
	at com.google.inject.servlet.GuiceFilter.doFilter(GuiceFilter.java:133)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:198)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:504)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81)
	at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:650)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)
	at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:803)
	at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
	at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:790)
	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1459)
	at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
	at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.IllegalArgumentException: The Secret cannot be null
	at com.auth0.jwt.algorithms.HMACAlgorithm.getSecretBytes(HMACAlgorithm.java:40)
	at com.auth0.jwt.algorithms.HMACAlgorithm.<init>(HMACAlgorithm.java:34)
	at com.auth0.jwt.algorithms.Algorithm.HMAC256(Algorithm.java:144)
	at com.signavio.jwt.SymmetricEncryptionService.getAlgorithm(SymmetricEncryptionService.java:31)
	at com.signavio.jwt.JwtService.<init>(JwtService.java:58)
	at com.signavio.effektif.business.WorkflowCaller.<init>(WorkflowCaller.java:94)
	at com.signavio.effektif.business.WorkflowCaller.startInstance(WorkflowCaller.java:49)
	at com.signavio.effektif.business.WorkflowCaller.getInstance(WorkflowCaller.java:56)
	at com.signavio.effektif.business.WorkflowApi.getWorkflowCaller(WorkflowApi.java:133)
	at com.signavio.effektif.business.WorkflowApi.<init>(WorkflowApi.java:105)
	at com.signavio.effektif.business.WorkflowApi.newInstance(WorkflowApi.java:120)
	at com.signavio.effektif.business.WorkflowAPIHandlerFactory.getWorkflowAPIInstance(WorkflowAPIHandlerFactory.java:61)
	at com.signavio.warehouse.approval.handler.ApprovalConfigurationHandler.getRepresentation(ApprovalConfigurationHandler.java:42)
	at com.signavio.platform.handler.AbstractHandler.getRepresentation(AbstractHandler.java:257)
	at com.signavio.platform.handler.AbstractHandler.doGet(AbstractHandler.java:498)
	at com.signavio.platform.servlets.DispatcherServlet.dispatch(DispatcherServlet.java:148)
	at com.signavio.platform.servlets.DispatcherServlet.doGet(DispatcherServlet.java:226)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:635)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:742)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at com.signavio.platform.filters.logging.UpdateLoggingContextFilter.doFilter(UpdateLoggingContextFilter.java:58)
	at com.signavio.platform.filters.HubBetaSwitchFilter.doFilter(HubBetaSwitchFilter.java:49)
	at com.signavio.platform.filters.IPRangeFilter.doFilter(IPRangeFilter.java:70)
	at com.signavio.usermanagement.external.filter.ExternalUserFilter.doFilter(ExternalUserFilter.java:89)
	at com.signavio.platform.filters.AdminAuthenticationFilter.doFilter(AdminAuthenticationFilter.java:108)
	at com.signavio.platform.filters.AuthenticationFilter.doFilter(AuthenticationFilter.java:169)
	at com.signavio.platform.filters.PrivateUrlFilter.doFilter(PrivateUrlFilter.java:123)
	at com.signavio.saas.filter.CertificateGuestUserLogoutFilter.doFilter(CertificateGuestUserLogoutFilter.java:63)
	at com.signavio.usermanagement.external.filter.Saml2AuthenticationFilter.doFilter(Saml2AuthenticationFilter.java:98)
	at com.signavio.usermanagement.external.filter.Saml2AuthenticationFilter.doFilter(Saml2AuthenticationFilter.java:39)
	at com.signavio.enterprise.filter.GuestUserAuthenticationFilter.doFilter(GuestUserAuthenticationFilter.java:108)
	at com.signavio.platform.filters.MonthlyConcurrentCheckFilter.doFilter(MonthlyConcurrentCheckFilter.java:49)
	at com.signavio.platform.oauth.provider.filter.OAuthAuthenticationFilter.doFilter(OAuthAuthenticationFilter.java:111)
	at com.signavio.platform.filters.JwtAuthenticationFilter.doFilter(JwtAuthenticationFilter.java:79)
	at com.signavio.infrastructure.csp.CspFilter.doFilter(CspFilter.java:78)
	at com.signavio.platform.core.transactions.HttpTransaction.execute(HttpTransaction.java:83)
	at com.signavio.platform.core.transactions.PlatformTransaction.executeTransaction(PlatformTransaction.java:136)
	at com.signavio.platform.core.transactions.PlatformTransaction.runTransaction(PlatformTransaction.java:112)
	at com.signavio.platform.filters.HibernateSessionFilter.doFilter(HibernateSessionFilter.java:22)
	at com.signavio.infrastructure.filter.LocaleParameterFilter.doFilter(LocaleParameterFilter.java:40)
	at com.signavio.platform.filters.ModelHandlerRedirectFilter.doFilter(ModelHandlerRedirectFilter.java:77)
	at com.signavio.platform.filters.HandlerFilter.doFilter(HandlerFilter.java:131)
	at com.signavio.platform.filters.ParseParametersFilter.doFilter(ParseParametersFilter.java:245)
	at com.signavio.platform.filters.AngleBracketFilter.doFilter(AngleBracketFilter.java:70)
	at com.signavio.platform.filters.EncodingAndDefaultsFilter.doFilter(EncodingAndDefaultsFilter.java:69)
	at com.signavio.platform.filters.SessionUpdateFilter.doFilter(SessionUpdateFilter.java:35)
	at com.signavio.platform.filters.RequestExceptionFilter.doFilter(RequestExceptionFilter.java:267)
	at com.signavio.platform.filters.XssProtectionResponseFilter.doFilter(XssProtectionResponseFilter.java:37)
	at com.signavio.platform.filters.SecurityResponseFilter.doFilter(SecurityResponseFilter.java:39)
	at com.signavio.platform.filters.logging.RequestLoggingFilter.doFilter(RequestLoggingFilter.java:36)
	at com.signavio.platform.filters.logging.EnrichLoggingContextFilter.doFilter(EnrichLoggingContextFilter.java:61)
	at com.signavio.platform.filters.metrics.RequestMetricsFilter.lambda$0(RequestMetricsFilter.java:59)
	at com.signavio.infrastructure.metrics.facade.timer.TimeRecorderTwoExceptions.record(TimeRecorderTwoExceptions.java:57)
	at com.signavio.platform.filters.metrics.RequestMetricsFilter.doFilter(RequestMetricsFilter.java:56)
	... 21 more




Solution:


Bei der ersten Fehlermeldung beim Start des Tomcats handelt es sich eher um eine Warnung als einen Fehler. Die Fehlermeldung hat keinerlei Auswirkungen auf dem "ImageService" und es werden auch keine leeren Bilddateien pro Request erzeugt. Damit diese Meldung nicht mehr im Log erscheint, fügt man die folgende Zeile der aktuell verwendeten "configuration.xml" hinzu und passt das "sharedJwtSecret" entsprechend mit einem eigenen, sicheren Wert bzw. Passwort an. Dieser Eintrag wird nur benötigt, wenn man das Feature "SAP Solution Manager Connector" einsetzt. Dieses Feature muss gemäß Admin-Handbuch konfiguriert werden.

Ein Beispiel dieses Eintrags findet man in der configuration.xml der gepackten Datei vom Process Manager, welches heruntergeladen wurde. Die benötigte Zeile sieht wie folgt aus:

Konfigurationsbeispiel
<!-- must be the same as in the solman72.yml -->
 <sharedJwtSecret>SHARED_SECRET_CHANGE_ME</sharedJwtSecret>

Wenn man den Eintrag nicht setzt, erhält man immer die Fehlermeldung beim Start des Tomcats im Log.


Nach einem Update auf die 12.12.x (oder höher) muss zwingend der JWT-Parameter als zusätzlicher Sicherheitsmechanismus zwischen den beiden Systemen (Process Manager und Workflow Accelerator) konfiguriert werden. Bitte fügen Sie dementsprechend folgenden Parameter in der configuration.xml hinzuzufügen:


<sharedJwtSecret>SHARED_SECRET_CHANGE_ME</sharedJwtSecret>


Zusätzlich muss innerhalb der effektif-onpremise.properties folgender Parameter hinzugefügt werden:

# This secret must contain the same value as the <sharedJwtSecret> field in the Process Manager configuration.xml.
effektif.process.manager.authentication.jwt.secret=SHARED_SECRET_CHANGE_ME


Sobald die beiden Systeme neu gestartet wurden, funktioniert die Verbindung auch wieder.