`flowable6.6.0.common.app.idm-url` must be set

Caused?by:?org.springframework.beans.BeanInstantiationException:?Failed?to?instantiate?[org.flowable.ui.common.service.idm.RemoteIdmService]:?Factory?method?‘remoteIdmService‘?threw?exception;?nested?exception?is?java.lang.IllegalArgumentException:?`flowable.common.app.idm-url`?must?be?set
	at?org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:185)
	at?org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:653)
	...?25?common?frames?omitted
Caused?by:?java.lang.IllegalArgumentException:?`flowable.common.app.idm-url`?must?be?set
	at?org.springframework.util.Assert.hasText(Assert.java:289)
	at?org.flowable.ui.common.properties.FlowableCommonAppProperties.determineIdmAppUrl(FlowableCommonAppProperties.java:150)
	at?org.flowable.ui.common.service.idm.RemoteIdmServiceImpl.<init>(RemoteIdmServiceImpl.java:60)
	at?org.flowable.ui.common.security.FlowableUiSecurityAutoConfiguration$RemoteIdmConfiguration.remoteIdmService(FlowableUiSecurityAutoConfiguration.java:120)
	at?sun.reflect.NativeMethodAccessorImpl.invoke0(Native?Method)
	at?sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at?sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at?java.lang.reflect.Method.invoke(Method.java:483)
	at?org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:154)
	...?26?common?frames?omitted

报错提示:`flowable.common.app.idm-url` must be set

????@Autowired
????protected?ObjectMapper?objectMapper;

????protected?String?url;
????protected?String?adminUser;
????protected?String?adminPassword;

????public?RemoteIdmServiceImpl(FlowableCommonAppProperties?properties)?{
????????url?=?properties.determineIdmAppUrl();
????????adminUser?=?properties.getIdmAdmin().getUser();
????????Assert.hasText(adminUser,?"Admin?user?must?not?be?empty");
????????adminPassword?=?properties.getIdmAdmin().getPassword();
????????Assert.hasText(adminPassword,?"Admin?user?password?should?not?be?empty");
????}

这个是由于flowable调用自己的用户权限导致的,如果把flowable集成自己的框架里面,就不需要用它自带的用户体现和权限了

出现这个问题,需要重写调用这个权限的最开始的那个类:FlowableUiSecurityAutoConfiguration

在自己项目,相同包名路径下,建个相同的类

package?org.flowable.ui.common.security;

import?org.flowable.spring.boot.FlowableSecurityAutoConfiguration;
import?org.flowable.spring.boot.idm.IdmEngineServicesAutoConfiguration;
import?org.springframework.boot.autoconfigure.AutoConfigureAfter;
import?org.springframework.boot.autoconfigure.AutoConfigureBefore;
import?org.springframework.boot.autoconfigure.security.oauth2.client.servlet.OAuth2ClientAutoConfiguration;
import?org.springframework.context.annotation.Configuration;

/**
?*?说明:重构FlowableUiSecurity自动配置
?*?From:www.fhadmin.org
?*/
@Configuration(proxyBeanMethods?=?false)
@AutoConfigureAfter({
????????IdmEngineServicesAutoConfiguration.class,
})
@AutoConfigureBefore({
????????FlowableSecurityAutoConfiguration.class,
????????OAuth2ClientAutoConfiguration.class,
})
public?class?FlowableUiSecurityAutoConfiguration?{}

?


`flowable6.6.0.common.app.idm-url` must be set

上一篇:Seata分布式事务失效踩坑记录


下一篇:Axios发送请求的方法