Giter VIP home page Giter VIP logo

youlaitech / youlai-mall Goto Github PK

View Code? Open in Web Editor NEW
2.1K 32.0 710.0 141.65 MB

🚀基于 Spring Boot 3、Spring Cloud & Alibaba 2022、SAS OAuth2 、Vue3、Element-Plus、uni-app 构建的开源全栈商城。

Home Page: https://admin.youlai.tech

License: Apache License 2.0

Java 99.03% Dockerfile 0.97%
spring-boot spring-cloud mybatis-plus spring-cloud-alibaba youlai-mall uniapp spring-security-oauth2 element-plus vue3-element-admin redis

youlai-mall's Issues

小程序会员没有RBAC设定吗

在User的构造方法User(AuthMemberDTO member)中,不进行authorities的添加,那么在生成token是不包含 role id的吧。

提问:关于资源服务器的定位问题

看到网上的实例对资源的鉴权主要分两种,一种是将gateway作为资源管理器,其他服务之间调用不需要安全认证直接访问(这正是该项目的做法),另一种是每个微服务都加入资源服务器配置,实现处处认证。感觉这两种方案好像都不太实际,有咩有更好的方案呢。

关于seata配置

docs里只有Default和Sentinel分组的nacos配置,但是mall-pms.yaml里面又有seata的配置,用到了SEATA_GROUP和service.vgroupMapping.mall_tx_group。代码中似乎没有给出这些配置的内容

权限删除

权限删除不需要刷新redis里面的权限->角色信息吗,我看代码里面好像没有刷新

生产环境nacos的注册密码不需要增加吗

生产环境nacos的注册密码不需要增加吗?

之前有项目部署在客户的生产环境,模块注册没有使用密码认证,结果客户的漏扫工具扫出了漏洞,提示说弱密码。
直接把模块强制下线了,后来也解决了这个问题,但是现在nacos2.0版本出来后,想要在密码中加入特殊字符就报错,例如:`/`、`@`。这个怎么解决呢?

关于订单状态

现在的订单状态有如下:

    PENDING_PAYMENT(101, "待支付"),
    USER_CANCEL(102, "用户取消"),
    AUTO_CANCEL(103, "系统自动取消"),

    PAYED(201, "已支付"),
    APPLY_REFUND(202, "申请退款"),
    REFUNDED(203, "已退款"),

    PENDING_SHIPPED(301, "待发货"),

    DELIVERED(401, "已发货"),

    USER_RECEIVE(501, "用户收货"),
    AUTO_RECEIVE(502, "系统自动收货"),

    FINISHED(901, "已完成");

其中已支付和待发货为啥是两个状态,一般不都是一个么

项目功能报错

演示项目中多处功能提示报错,如用户管理,点击修改就会报错
image

请问gateWay中AuthorizationManager这个类中权限判断为什么进不去

 使用的是admin账号,在执行到.any()时直接跳过,无法进入到里面的权限判断,请问这是什么原因呢?该怎么解决呢?
     Mono<AuthorizationDecision> authorizationDecisionMono = mono
                .filter(Authentication::isAuthenticated)
                .flatMapIterable(Authentication::getAuthorities)
                .map(GrantedAuthority::getAuthority)
                .any(roleId -> {
                    // roleId是请求用户的角色(格式:ROLE_{roleId}),authorities是请求资源所需要角色的集合
                    log.info("访问路径:{}", path);
                    log.info("用户角色信息:{}", roleId);
                    log.info("资源需要权限authorities:{}", authorities);
                    return authorities.contains(roleId);
                })
                .map(AuthorizationDecision::new)
                .defaultIfEmpty(new AuthorizationDecision(false));

Nacos启动报错

mysql版本为5.7.16.
解决方式为:
将application.properties名字改为 bootstrap.properties

启动com.youlai.admin.AdminApplication报错。应该是ElasticSearch配置有问题

org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'dashboardController' defined in file [D:\youlai-mall\youlai-admin\admin-boot\target\classes\com\youlai\admin\controller\v1\DashboardController.class]: Unsatisfied dependency expressed through constructor parameter 1; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'com.youlai.common.elasticsearch.service.ElasticSearchService': Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'restHighLevelClient' defined in class path resource [com/youlai/common/elasticsearch/config/RestHighLevelClientConfig.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.elasticsearch.client.RestHighLevelClient]: Factory method 'restHighLevelClient' threw exception; nested exception is java.lang.IllegalArgumentException: hosts must not be null nor empty
at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:800)
at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:229)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1354)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1204)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:564)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:524)
at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:944)
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:918)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583)
at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:145)
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:758)
at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:438)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:337)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1336)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1325)
at com.youlai.admin.AdminApplication.main(AdminApplication.java:11)
Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'com.youlai.common.elasticsearch.service.ElasticSearchService': Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'restHighLevelClient' defined in class path resource [com/youlai/common/elasticsearch/config/RestHighLevelClientConfig.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.elasticsearch.client.RestHighLevelClient]: Factory method 'restHighLevelClient' threw exception; nested exception is java.lang.IllegalArgumentException: hosts must not be null nor empty
at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:800)
at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:229)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1354)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1204)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:564)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:524)
at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)
at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1380)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1300)
at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:887)
at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791)
... 19 common frames omitted
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'restHighLevelClient' defined in class path resource [com/youlai/common/elasticsearch/config/RestHighLevelClientConfig.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.elasticsearch.client.RestHighLevelClient]: Factory method 'restHighLevelClient' threw exception; nested exception is java.lang.IllegalArgumentException: hosts must not be null nor empty
at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:658)
at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:486)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1334)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1177)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:564)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:524)
at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)
at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1380)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1300)
at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:887)
at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791)
... 33 common frames omitted
Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.elasticsearch.client.RestHighLevelClient]: Factory method 'restHighLevelClient' threw exception; nested exception is java.lang.IllegalArgumentException: hosts must not be null nor empty
at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:185)
at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:653)
... 47 common frames omitted
Caused by: java.lang.IllegalArgumentException: hosts must not be null nor empty
at org.elasticsearch.client.RestClient.builder(RestClient.java:200)
at com.youlai.common.elasticsearch.config.RestHighLevelClientConfig.restHighLevelClient(RestHighLevelClientConfig.java:34)
at com.youlai.common.elasticsearch.config.RestHighLevelClientConfig$$EnhancerBySpringCGLIB$$65618ff1.CGLIB$restHighLevelClient$1()
at com.youlai.common.elasticsearch.config.RestHighLevelClientConfig$$EnhancerBySpringCGLIB$$65618ff1$$FastClassBySpringCGLIB$$ceeea995.invoke()
at org.springframework.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:244)
at org.springframework.context.annotation.ConfigurationClassEnhancer$BeanMethodInterceptor.intercept(ConfigurationClassEnhancer.java:331)
at com.youlai.common.elasticsearch.config.RestHighLevelClientConfig$$EnhancerBySpringCGLIB$$65618ff1.restHighLevelClient()
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:498)
at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:154)
... 48 common frames omitted

是不是es没有配置的原因,文档中也没有看到相关的配置。

关于Open-Feign转发丢失请求头

部分api接口在处理中需要根据jwt认证头来获取用户id,现在代码中的通过服务名直接调用的操作会导致调用的时候丢失请求头,因此可以将其改为使用网关转发。

示例如下:
原MemberAddressFeignClient.java
https://github.com/hxrui/youlai-mall/blob/bff37cda62dd6796a1b6f8f673dc9721cfcc2507/mall-ums/ums-api/src/main/java/com/youlai/mall/ums/api/MemberAddressFeignClient.java#L11-L26

修改后:

@FeignClient("youlai-gateway")
public interface MemberAddressFeignClient {

    /**
     * 获取地址详情
     */
    @GetMapping("/mall-ums/app-api/v1/addresses/{id}")
    Result<UmsAddress> getById(@PathVariable("id") Long id);


    @GetMapping("/mall-ums/app-api/v1/addresses")
    Result<List<UmsAddress>> list(@RequestParam Long memberId);

}

感谢你的无私奉献,我这边有个权限问题想咨询下

我看了您的auth服务,因为我最近正好也再做授权服务器,也想采用security-oauth2,

您这边有几个问题,
关于微信登录,您这边默认采用openid作为用户密码进行保存,然后登录,我认为这个再实际项目中使用相对不太严谨。

还有就是关于您登陆接口暴漏出了client-id以及client-secret。这种再实际使用中似乎也不太妥当。

其次关于,如果使用短信登录,您这边应该是没办法去做登录逻辑,而我刚好也卡再这个地方,不明白短信登录这块,我应该去重写哪些类,或者方法,或者说是否要重写tokenEndPoint。

如果您有好的意见,希望您能帮我一下。

bug:There is no client authentication

`@PostMapping("/token")
public Object postAccessToken(
@ApiIgnore Principal principal,
@ApiIgnore @RequestParam Map<String, String> parameters
) throws HttpRequestMethodNotSupportedException {

    /**
     * 获取登录认证的客户端ID
     *
     * 兼容两种方式获取Oauth2客户端信息(client_id、client_secret)
     * 方式一:client_id、client_secret放在请求路径中(注:当前版本已废弃)
     * 方式二:放在请求头(Request Headers)中的Authorization字段,且经过加密,例如 Basic Y2xpZW50OnNlY3JldA== 明文等于 client:secret
     */
    String clientId = RequestUtils.getOAuth2ClientId();
    log.info("OAuth认证授权 客户端ID:{},请求参数:{}", clientId, JSONUtil.toJsonStr(parameters));

    /**
     * 构造principal
     */

    /**
     * knife4j接口文档测试使用
     *
     * 请求头自动填充,token必须原生返回,不能有任何包装,否则显示 undefined undefined
     * 账号/密码:  client_id/client_secret : client/123456
     */
    if (SecurityConstants.TEST_CLIENT_ID.equals(clientId)) {
        return tokenEndpoint.postAccessToken(principal, parameters).getBody();
    }

    OAuth2AccessToken accessToken = tokenEndpoint.postAccessToken(principal, parameters).getBody();
    return Result.success(accessToken);
}

`

principal is always null, and postAccessToken function throw exception. we get

{ "code": "B0001", "data": null, "msg": "There is no client authentication. Try adding an appropriate authentication filter." }

[讨论]关于小程序不支持PATCH请求的处理

小程序官方说明是不支持PATCH操作的,我现在的解决方案是用axios拦截器,将patch请求转为post,并在header中加上X-Http-Method: PATCH
然后再在SecurityGlobalFilter里读取这个header,重新包装成patch请求。线上的话可以考虑换成nginx等进行处理。大佬们有没有更好的处理方法呢

启动gateway服务报错

"C:\Program Files\Java\jdk1.8.0_333\bin\java.exe" -agentlib:jdwp=transport=dt_socket,address=127.0.0.1:64603,suspend=y,server=n -XX:TieredStopAtLevel=1 -noverify -Dspring.output.ansi.enabled=always -javaagent:C:\Users\Lsh\AppData\Local\JetBrains\IntelliJIdea2021.3\captureAgent\debugger-agent.jar -Dcom.sun.management.jmxremote -Dspring.jmx.enabled=true -Dspring.liveBeansView.mbeanDomain -Dspring.application.admin.enabled=true -Dfile.encoding=UTF-8 -classpath "C:\Program Files\Java\jdk1.8.0_333\jre\lib\charsets.jar;C:\Program Files\Java\jdk1.8.0_333\jre\lib\deploy.jar;C:\Program Files\Java\jdk1.8.0_333\jre\lib\ext\access-bridge-64.jar;C:\Program Files\Java\jdk1.8.0_333\jre\lib\ext\cldrdata.jar;C:\Program Files\Java\jdk1.8.0_333\jre\lib\ext\dnsns.jar;C:\Program Files\Java\jdk1.8.0_333\jre\lib\ext\jaccess.jar;C:\Program Files\Java\jdk1.8.0_333\jre\lib\ext\jfxrt.jar;C:\Program Files\Java\jdk1.8.0_333\jre\lib\ext\localedata.jar;C:\Program Files\Java\jdk1.8.0_333\jre\lib\ext\nashorn.jar;C:\Program Files\Java\jdk1.8.0_333\jre\lib\ext\sunec.jar;C:\Program Files\Java\jdk1.8.0_333\jre\lib\ext\sunjce_provider.jar;C:\Program Files\Java\jdk1.8.0_333\jre\lib\ext\sunmscapi.jar;C:\Program Files\Java\jdk1.8.0_333\jre\lib\ext\sunpkcs11.jar;C:\Program Files\Java\jdk1.8.0_333\jre\lib\ext\zipfs.jar;C:\Program Files\Java\jdk1.8.0_333\jre\lib\javaws.jar;C:\Program Files\Java\jdk1.8.0_333\jre\lib\jce.jar;C:\Program Files\Java\jdk1.8.0_333\jre\lib\jfr.jar;C:\Program Files\Java\jdk1.8.0_333\jre\lib\jfxswt.jar;C:\Program Files\Java\jdk1.8.0_333\jre\lib\jsse.jar;C:\Program Files\Java\jdk1.8.0_333\jre\lib\management-agent.jar;C:\Program Files\Java\jdk1.8.0_333\jre\lib\plugin.jar;C:\Program Files\Java\jdk1.8.0_333\jre\lib\resources.jar;C:\Program Files\Java\jdk1.8.0_333\jre\lib\rt.jar;E:\idea_workspace\youlai-mall\youlai-gateway\target\classes;D:\maven-repository\org\springframework\cloud\spring-cloud-starter-bootstrap\3.1.2\spring-cloud-starter-bootstrap-3.1.2.jar;D:\maven-repository\org\springframework\cloud\spring-cloud-starter\3.1.2\spring-cloud-starter-3.1.2.jar;D:\maven-repository\org\springframework\boot\spring-boot-starter\2.6.7\spring-boot-starter-2.6.7.jar;D:\maven-repository\org\springframework\boot\spring-boot\2.6.7\spring-boot-2.6.7.jar;D:\maven-repository\org\springframework\boot\spring-boot-autoconfigure\2.6.7\spring-boot-autoconfigure-2.6.7.jar;D:\maven-repository\org\springframework\boot\spring-boot-starter-logging\2.6.7\spring-boot-starter-logging-2.6.7.jar;D:\maven-repository\ch\qos\logback\logback-classic\1.2.11\logback-classic-1.2.11.jar;D:\maven-repository\ch\qos\logback\logback-core\1.2.11\logback-core-1.2.11.jar;D:\maven-repository\org\apache\logging\log4j\log4j-to-slf4j\2.17.2\log4j-to-slf4j-2.17.2.jar;D:\maven-repository\org\apache\logging\log4j\log4j-api\2.17.2\log4j-api-2.17.2.jar;D:\maven-repository\org\slf4j\jul-to-slf4j\1.7.36\jul-to-slf4j-1.7.36.jar;D:\maven-repository\jakarta\annotation\jakarta.annotation-api\1.3.5\jakarta.annotation-api-1.3.5.jar;D:\maven-repository\org\springframework\security\spring-security-rsa\1.0.10.RELEASE\spring-security-rsa-1.0.10.RELEASE.jar;D:\maven-repository\org\bouncycastle\bcpkix-jdk15on\1.68\bcpkix-jdk15on-1.68.jar;D:\maven-repository\org\bouncycastle\bcprov-jdk15on\1.68\bcprov-jdk15on-1.68.jar;D:\maven-repository\org\springframework\cloud\spring-cloud-starter-gateway\3.1.2\spring-cloud-starter-gateway-3.1.2.jar;D:\maven-repository\org\springframework\cloud\spring-cloud-gateway-server\3.1.2\spring-cloud-gateway-server-3.1.2.jar;D:\maven-repository\org\springframework\boot\spring-boot-starter-webflux\2.6.7\spring-boot-starter-webflux-2.6.7.jar;D:\maven-repository\org\springframework\boot\spring-boot-starter-json\2.6.7\spring-boot-starter-json-2.6.7.jar;D:\maven-repository\com\fasterxml\jackson\datatype\jackson-datatype-jdk8\2.13.2\jackson-datatype-jdk8-2.13.2.jar;D:\maven-repository\com\fasterxml\jackson\datatype\jackson-datatype-jsr310\2.13.2\jackson-datatype-jsr310-2.13.2.jar;D:\maven-repository\com\fasterxml\jackson\module\jackson-module-parameter-names\2.13.2\jackson-module-parameter-names-2.13.2.jar;D:\maven-repository\org\springframework\boot\spring-boot-starter-reactor-netty\2.6.7\spring-boot-starter-reactor-netty-2.6.7.jar;D:\maven-repository\io\projectreactor\netty\reactor-netty-http\1.0.18\reactor-netty-http-1.0.18.jar;D:\maven-repository\io\netty\netty-codec-http\4.1.76.Final\netty-codec-http-4.1.76.Final.jar;D:\maven-repository\io\netty\netty-codec-http2\4.1.76.Final\netty-codec-http2-4.1.76.Final.jar;D:\maven-repository\io\netty\netty-resolver-dns-native-macos\4.1.76.Final\netty-resolver-dns-native-macos-4.1.76.Final-osx-x86_64.jar;D:\maven-repository\io\netty\netty-resolver-dns-classes-macos\4.1.76.Final\netty-resolver-dns-classes-macos-4.1.76.Final.jar;D:\maven-repository\io\netty\netty-transport-native-epoll\4.1.76.Final\netty-transport-native-epoll-4.1.76.Final-linux-x86_64.jar;D:\maven-repository\io\netty\netty-transport-native-unix-common\4.1.76.Final\netty-transport-native-unix-common-4.1.76.Final.jar;D:\maven-repository\io\netty\netty-transport-classes-epoll\4.1.76.Final\netty-transport-classes-epoll-4.1.76.Final.jar;D:\maven-repository\io\projectreactor\netty\reactor-netty-core\1.0.18\reactor-netty-core-1.0.18.jar;D:\maven-repository\io\netty\netty-handler-proxy\4.1.76.Final\netty-handler-proxy-4.1.76.Final.jar;D:\maven-repository\io\netty\netty-codec-socks\4.1.76.Final\netty-codec-socks-4.1.76.Final.jar;D:\maven-repository\org\springframework\spring-web\5.3.19\spring-web-5.3.19.jar;D:\maven-repository\org\springframework\spring-webflux\5.3.19\spring-webflux-5.3.19.jar;D:\maven-repository\com\alibaba\cloud\spring-cloud-starter-alibaba-nacos-discovery\2021.1\spring-cloud-starter-alibaba-nacos-discovery-2021.1.jar;D:\maven-repository\com\alibaba\cloud\spring-cloud-alibaba-commons\2021.1\spring-cloud-alibaba-commons-2021.1.jar;D:\maven-repository\com\alibaba\nacos\nacos-client\1.4.1\nacos-client-1.4.1.jar;D:\maven-repository\com\alibaba\nacos\nacos-common\1.4.1\nacos-common-1.4.1.jar;D:\maven-repository\commons-io\commons-io\2.2\commons-io-2.2.jar;D:\maven-repository\org\apache\httpcomponents\httpasyncclient\4.1.5\httpasyncclient-4.1.5.jar;D:\maven-repository\org\apache\httpcomponents\httpcore\4.4.15\httpcore-4.4.15.jar;D:\maven-repository\org\apache\httpcomponents\httpcore-nio\4.4.15\httpcore-nio-4.4.15.jar;D:\maven-repository\org\apache\httpcomponents\httpclient\4.5.13\httpclient-4.5.13.jar;D:\maven-repository\com\alibaba\nacos\nacos-api\1.4.1\nacos-api-1.4.1.jar;D:\maven-repository\com\google\guava\guava\24.1.1-jre\guava-24.1.1-jre.jar;D:\maven-repository\com\google\code\findbugs\jsr305\1.3.9\jsr305-1.3.9.jar;D:\maven-repository\org\checkerframework\checker-compat-qual\2.0.0\checker-compat-qual-2.0.0.jar;D:\maven-repository\com\google\errorprone\error_prone_annotations\2.1.3\error_prone_annotations-2.1.3.jar;D:\maven-repository\com\google\j2objc\j2objc-annotations\1.1\j2objc-annotations-1.1.jar;D:\maven-repository\org\codehaus\mojo\animal-sniffer-annotations\1.14\animal-sniffer-annotations-1.14.jar;D:\maven-repository\commons-codec\commons-codec\1.15\commons-codec-1.15.jar;D:\maven-repository\io\prometheus\simpleclient\0.12.0\simpleclient-0.12.0.jar;D:\maven-repository\io\prometheus\simpleclient_tracer_otel\0.12.0\simpleclient_tracer_otel-0.12.0.jar;D:\maven-repository\io\prometheus\simpleclient_tracer_common\0.12.0\simpleclient_tracer_common-0.12.0.jar;D:\maven-repository\io\prometheus\simpleclient_tracer_otel_agent\0.12.0\simpleclient_tracer_otel_agent-0.12.0.jar;D:\maven-repository\org\yaml\snakeyaml\1.29\snakeyaml-1.29.jar;D:\maven-repository\com\alibaba\spring\spring-context-support\1.0.10\spring-context-support-1.0.10.jar;D:\maven-repository\org\springframework\cloud\spring-cloud-commons\3.1.2\spring-cloud-commons-3.1.2.jar;D:\maven-repository\org\springframework\security\spring-security-crypto\5.6.3\spring-security-crypto-5.6.3.jar;D:\maven-repository\org\springframework\cloud\spring-cloud-context\3.1.2\spring-cloud-context-3.1.2.jar;D:\maven-repository\org\springframework\cloud\spring-cloud-starter-loadbalancer\3.1.2\spring-cloud-starter-loadbalancer-3.1.2.jar;D:\maven-repository\org\springframework\cloud\spring-cloud-loadbalancer\3.1.2\spring-cloud-loadbalancer-3.1.2.jar;D:\maven-repository\io\projectreactor\reactor-core\3.4.17\reactor-core-3.4.17.jar;D:\maven-repository\org\springframework\boot\spring-boot-starter-cache\2.6.7\spring-boot-starter-cache-2.6.7.jar;D:\maven-repository\org\springframework\spring-context-support\5.3.19\spring-context-support-5.3.19.jar;D:\maven-repository\com\stoyanr\evictor\1.0.0\evictor-1.0.0.jar;D:\maven-repository\com\alibaba\cloud\spring-cloud-starter-alibaba-nacos-config\2021.1\spring-cloud-starter-alibaba-nacos-config-2021.1.jar;D:\maven-repository\org\springframework\security\spring-security-config\5.6.3\spring-security-config-5.6.3.jar;D:\maven-repository\org\springframework\security\spring-security-core\5.6.3\spring-security-core-5.6.3.jar;D:\maven-repository\org\springframework\spring-expression\5.3.19\spring-expression-5.3.19.jar;D:\maven-repository\org\springframework\spring-aop\5.3.19\spring-aop-5.3.19.jar;D:\maven-repository\org\springframework\spring-beans\5.3.19\spring-beans-5.3.19.jar;D:\maven-repository\org\springframework\spring-context\5.3.19\spring-context-5.3.19.jar;D:\maven-repository\org\springframework\spring-core\5.3.19\spring-core-5.3.19.jar;D:\maven-repository\org\springframework\spring-jcl\5.3.19\spring-jcl-5.3.19.jar;D:\maven-repository\org\springframework\security\spring-security-oauth2-resource-server\5.6.3\spring-security-oauth2-resource-server-5.6.3.jar;D:\maven-repository\org\springframework\security\spring-security-oauth2-core\5.6.3\spring-security-oauth2-core-5.6.3.jar;D:\maven-repository\org\springframework\security\spring-security-web\5.6.3\spring-security-web-5.6.3.jar;D:\maven-repository\org\springframework\security\spring-security-oauth2-jose\5.6.3\spring-security-oauth2-jose-5.6.3.jar;D:\maven-repository\com\nimbusds\nimbus-jose-jwt\9.14\nimbus-jose-jwt-9.14.jar;D:\maven-repository\com\github\stephenc\jcip\jcip-annotations\1.0-1\jcip-annotations-1.0-1.jar;D:\maven-repository\com\alibaba\cloud\spring-cloud-alibaba-sentinel-gateway\2021.1\spring-cloud-alibaba-sentinel-gateway-2021.1.jar;D:\maven-repository\com\alibaba\csp\sentinel-api-gateway-adapter-common\1.8.0\sentinel-api-gateway-adapter-common-1.8.0.jar;D:\maven-repository\com\alibaba\csp\sentinel-core\1.8.0\sentinel-core-1.8.0.jar;D:\maven-repository\com\alibaba\csp\sentinel-parameter-flow-control\1.8.0\sentinel-parameter-flow-control-1.8.0.jar;D:\maven-repository\com\googlecode\concurrentlinkedhashmap\concurrentlinkedhashmap-lru\1.4.2\concurrentlinkedhashmap-lru-1.4.2.jar;D:\maven-repository\com\alibaba\csp\sentinel-spring-cloud-gateway-adapter\1.8.0\sentinel-spring-cloud-gateway-adapter-1.8.0.jar;D:\maven-repository\com\alibaba\csp\sentinel-reactor-adapter\1.8.0\sentinel-reactor-adapter-1.8.0.jar;D:\maven-repository\com\alibaba\cloud\spring-cloud-alibaba-sentinel-datasource\2021.1\spring-cloud-alibaba-sentinel-datasource-2021.1.jar;D:\maven-repository\com\alibaba\cloud\spring-cloud-starter-alibaba-sentinel\2021.1\spring-cloud-starter-alibaba-sentinel-2021.1.jar;D:\maven-repository\com\alibaba\csp\sentinel-transport-simple-http\1.8.0\sentinel-transport-simple-http-1.8.0.jar;D:\maven-repository\com\alibaba\csp\sentinel-transport-common\1.8.0\sentinel-transport-common-1.8.0.jar;D:\maven-repository\com\alibaba\fastjson\1.2.71\fastjson-1.2.71.jar;D:\maven-repository\com\alibaba\csp\sentinel-annotation-aspectj\1.8.0\sentinel-annotation-aspectj-1.8.0.jar;D:\maven-repository\org\aspectj\aspectjrt\1.9.7\aspectjrt-1.9.7.jar;D:\maven-repository\org\aspectj\aspectjweaver\1.9.7\aspectjweaver-1.9.7.jar;D:\maven-repository\com\alibaba\cloud\spring-cloud-circuitbreaker-sentinel\2021.1\spring-cloud-circuitbreaker-sentinel-2021.1.jar;D:\maven-repository\com\alibaba\csp\sentinel-spring-webflux-adapter\1.8.0\sentinel-spring-webflux-adapter-1.8.0.jar;D:\maven-repository\com\alibaba\csp\sentinel-spring-webmvc-adapter\1.8.0\sentinel-spring-webmvc-adapter-1.8.0.jar;D:\maven-repository\com\alibaba\csp\sentinel-cluster-server-default\1.8.0\sentinel-cluster-server-default-1.8.0.jar;D:\maven-repository\com\alibaba\csp\sentinel-cluster-common-default\1.8.0\sentinel-cluster-common-default-1.8.0.jar;D:\maven-repository\io\netty\netty-handler\4.1.76.Final\netty-handler-4.1.76.Final.jar;D:\maven-repository\com\alibaba\csp\sentinel-cluster-client-default\1.8.0\sentinel-cluster-client-default-1.8.0.jar;D:\maven-repository\com\alibaba\csp\sentinel-datasource-nacos\1.8.0\sentinel-datasource-nacos-1.8.0.jar;D:\maven-repository\com\alibaba\csp\sentinel-datasource-extension\1.8.0\sentinel-datasource-extension-1.8.0.jar;D:\maven-repository\com\github\xiaoymin\knife4j-spring-boot-starter\2.0.9\knife4j-spring-boot-starter-2.0.9.jar;D:\maven-repository\com\github\xiaoymin\knife4j-spring-boot-autoconfigure\2.0.9\knife4j-spring-boot-autoconfigure-2.0.9.jar;D:\maven-repository\com\github\xiaoymin\knife4j-spring\2.0.9\knife4j-spring-2.0.9.jar;D:\maven-repository\com\github\xiaoymin\knife4j-annotations\2.0.9\knife4j-annotations-2.0.9.jar;D:\maven-repository\com\github\xiaoymin\knife4j-core\2.0.9\knife4j-core-2.0.9.jar;D:\maven-repository\org\javassist\javassist\3.25.0-GA\javassist-3.25.0-GA.jar;D:\maven-repository\io\swagger\swagger-models\1.5.22\swagger-models-1.5.22.jar;D:\maven-repository\io\springfox\springfox-swagger2\2.10.5\springfox-swagger2-2.10.5.jar;D:\maven-repository\io\springfox\springfox-spi\2.10.5\springfox-spi-2.10.5.jar;D:\maven-repository\io\springfox\springfox-core\2.10.5\springfox-core-2.10.5.jar;D:\maven-repository\io\springfox\springfox-schema\2.10.5\springfox-schema-2.10.5.jar;D:\maven-repository\io\springfox\springfox-swagger-common\2.10.5\springfox-swagger-common-2.10.5.jar;D:\maven-repository\io\springfox\springfox-spring-web\2.10.5\springfox-spring-web-2.10.5.jar;D:\maven-repository\io\github\classgraph\classgraph\4.1.7\classgraph-4.1.7.jar;D:\maven-repository\org\springframework\plugin\spring-plugin-core\2.0.0.RELEASE\spring-plugin-core-2.0.0.RELEASE.jar;D:\maven-repository\org\springframework\plugin\spring-plugin-metadata\2.0.0.RELEASE\spring-plugin-metadata-2.0.0.RELEASE.jar;D:\maven-repository\org\mapstruct\mapstruct\1.3.1.Final\mapstruct-1.3.1.Final.jar;D:\maven-repository\io\springfox\springfox-bean-validators\2.10.5\springfox-bean-validators-2.10.5.jar;D:\maven-repository\io\springfox\springfox-spring-webmvc\2.10.5\springfox-spring-webmvc-2.10.5.jar;D:\maven-repository\com\github\xiaoymin\knife4j-spring-ui\2.0.9\knife4j-spring-ui-2.0.9.jar;D:\maven-repository\org\springframework\boot\spring-boot-configuration-processor\2.6.7\spring-boot-configuration-processor-2.6.7.jar;E:\idea_workspace\youlai-mall\youlai-common\common-core\target\classes;D:\maven-repository\com\fasterxml\jackson\core\jackson-databind\2.13.2.1\jackson-databind-2.13.2.1.jar;D:\maven-repository\com\fasterxml\jackson\core\jackson-core\2.13.2\jackson-core-2.13.2.jar;D:\maven-repository\io\swagger\swagger-annotations\1.6.2\swagger-annotations-1.6.2.jar;D:\maven-repository\org\springframework\data\spring-data-redis\2.6.4\spring-data-redis-2.6.4.jar;D:\maven-repository\org\springframework\data\spring-data-keyvalue\2.6.4\spring-data-keyvalue-2.6.4.jar;D:\maven-repository\org\springframework\data\spring-data-commons\2.6.4\spring-data-commons-2.6.4.jar;D:\maven-repository\org\springframework\spring-tx\5.3.19\spring-tx-5.3.19.jar;D:\maven-repository\org\springframework\spring-oxm\5.3.19\spring-oxm-5.3.19.jar;D:\maven-repository\org\slf4j\slf4j-api\1.7.36\slf4j-api-1.7.36.jar;D:\maven-repository\org\springframework\boot\spring-boot-starter-validation\2.6.7\spring-boot-starter-validation-2.6.7.jar;D:\maven-repository\org\apache\tomcat\embed\tomcat-embed-el\9.0.62\tomcat-embed-el-9.0.62.jar;D:\maven-repository\org\hibernate\validator\hibernate-validator\6.0.13.Final\hibernate-validator-6.0.13.Final.jar;D:\maven-repository\javax\validation\validation-api\2.0.1.Final\validation-api-2.0.1.Final.jar;D:\maven-repository\org\jboss\logging\jboss-logging\3.4.3.Final\jboss-logging-3.4.3.Final.jar;D:\maven-repository\com\fasterxml\classmate\1.5.1\classmate-1.5.1.jar;E:\idea_workspace\youlai-mall\youlai-common\common-log\target\classes;E:\idea_workspace\youlai-mall\youlai-common\common-redis\target\classes;D:\maven-repository\org\springframework\boot\spring-boot-starter-data-redis\2.6.7\spring-boot-starter-data-redis-2.6.7.jar;D:\maven-repository\io\lettuce\lettuce-core\6.1.8.RELEASE\lettuce-core-6.1.8.RELEASE.jar;D:\maven-repository\org\apache\commons\commons-pool2\2.11.1\commons-pool2-2.11.1.jar;D:\maven-repository\org\redisson\redisson\3.16.8\redisson-3.16.8.jar;D:\maven-repository\io\netty\netty-common\4.1.76.Final\netty-common-4.1.76.Final.jar;D:\maven-repository\io\netty\netty-codec\4.1.76.Final\netty-codec-4.1.76.Final.jar;D:\maven-repository\io\netty\netty-buffer\4.1.76.Final\netty-buffer-4.1.76.Final.jar;D:\maven-repository\io\netty\netty-transport\4.1.76.Final\netty-transport-4.1.76.Final.jar;D:\maven-repository\io\netty\netty-resolver\4.1.76.Final\netty-resolver-4.1.76.Final.jar;D:\maven-repository\io\netty\netty-resolver-dns\4.1.76.Final\netty-resolver-dns-4.1.76.Final.jar;D:\maven-repository\io\netty\netty-codec-dns\4.1.76.Final\netty-codec-dns-4.1.76.Final.jar;D:\maven-repository\javax\cache\cache-api\1.1.1\cache-api-1.1.1.jar;D:\maven-repository\org\reactivestreams\reactive-streams\1.0.3\reactive-streams-1.0.3.jar;D:\maven-repository\io\reactivex\rxjava3\rxjava\3.0.12\rxjava-3.0.12.jar;D:\maven-repository\org\jboss\marshalling\jboss-marshalling\2.0.11.Final\jboss-marshalling-2.0.11.Final.jar;D:\maven-repository\org\jboss\marshalling\jboss-marshalling-river\2.0.11.Final\jboss-marshalling-river-2.0.11.Final.jar;D:\maven-repository\com\fasterxml\jackson\dataformat\jackson-dataformat-yaml\2.13.2\jackson-dataformat-yaml-2.13.2.jar;D:\maven-repository\net\bytebuddy\byte-buddy\1.11.22\byte-buddy-1.11.22.jar;D:\maven-repository\org\jodd\jodd-bean\5.1.6\jodd-bean-5.1.6.jar;D:\maven-repository\org\jodd\jodd-core\5.1.6\jodd-core-5.1.6.jar;D:\maven-repository\com\fasterxml\jackson\core\jackson-annotations\2.13.2\jackson-annotations-2.13.2.jar;D:\maven-repository\com\github\whvcse\easy-captcha\1.6.2\easy-captcha-1.6.2.jar;D:\maven-repository\org\projectlombok\lombok\1.18.18\lombok-1.18.18.jar;D:\maven-repository\cn\hutool\hutool-all\5.7.21\hutool-all-5.7.21.jar;D:\Program Files\idea\ideaIU-2021.3.win\lib\idea_rt.jar" com.youlai.gateway.GatewayApplication
Connected to the target VM, address: '127.0.0.1:64603', transport: 'socket'

  .   ____          _            __ _ _
 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::                (v2.6.7)

2022-06-15 09:34:46.860  WARN 4172 --- [           main] c.a.c.n.c.NacosPropertySourceBuilder     : Ignore the empty nacos configuration and get it based on dataId[youlai-gateway] & group[DEFAULT_GROUP]
2022-06-15 09:34:46.877  WARN 4172 --- [           main] c.a.c.n.c.NacosPropertySourceBuilder     : Ignore the empty nacos configuration and get it based on dataId[youlai-gateway-dev.yaml] & group[DEFAULT_GROUP]
2022-06-15 09:34:46.877  INFO 4172 --- [           main] b.c.PropertySourceBootstrapConfiguration : Located property source: [BootstrapPropertySource {name='bootstrapProperties-youlai-gateway-dev.yaml,DEFAULT_GROUP'}, BootstrapPropertySource {name='bootstrapProperties-youlai-gateway.yaml,DEFAULT_GROUP'}, BootstrapPropertySource {name='bootstrapProperties-youlai-gateway,DEFAULT_GROUP'}, BootstrapPropertySource {name='bootstrapProperties-youlai-common.yaml,DEFAULT_GROUP'}]
2022-06-15 09:34:46.877  INFO 4172 --- [           main] com.youlai.gateway.GatewayApplication    : The following 1 profile is active: "dev"
2022-06-15 09:34:47.214  INFO 4172 --- [           main] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode!
2022-06-15 09:34:47.214  INFO 4172 --- [           main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data Redis repositories in DEFAULT mode.
2022-06-15 09:34:47.235  INFO 4172 --- [           main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 7 ms. Found 0 Redis repository interfaces.
2022-06-15 09:34:47.325  INFO 4172 --- [           main] o.s.cloud.context.scope.GenericScope     : BeanFactory id=abbc7df4-be9f-3601-af24-fa6a013f4f37
2022-06-15 09:34:47.527  INFO 4172 --- [           main] trationDelegate$BeanPostProcessorChecker : Bean 'org.springframework.cloud.commons.config.CommonsConfigAutoConfiguration' of type [org.springframework.cloud.commons.config.CommonsConfigAutoConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-06-15 09:34:47.527  INFO 4172 --- [           main] trationDelegate$BeanPostProcessorChecker : Bean 'org.springframework.cloud.client.loadbalancer.LoadBalancerDefaultMappingsProviderAutoConfiguration' of type [org.springframework.cloud.client.loadbalancer.LoadBalancerDefaultMappingsProviderAutoConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-06-15 09:34:47.527  INFO 4172 --- [           main] trationDelegate$BeanPostProcessorChecker : Bean 'loadBalancerClientsDefaultsMappingsProvider' of type [org.springframework.cloud.client.loadbalancer.LoadBalancerDefaultMappingsProviderAutoConfiguration$$Lambda$435/1042863993] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-06-15 09:34:47.527  INFO 4172 --- [           main] trationDelegate$BeanPostProcessorChecker : Bean 'defaultsBindHandlerAdvisor' of type [org.springframework.cloud.commons.config.DefaultsBindHandlerAdvisor] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-06-15 09:34:47.566  INFO 4172 --- [           main] trationDelegate$BeanPostProcessorChecker : Bean 'spring.cloud.sentinel-com.alibaba.cloud.sentinel.SentinelProperties' of type [com.alibaba.cloud.sentinel.SentinelProperties] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-06-15 09:34:47.568  INFO 4172 --- [           main] trationDelegate$BeanPostProcessorChecker : Bean 'com.alibaba.cloud.sentinel.custom.SentinelAutoConfiguration' of type [com.alibaba.cloud.sentinel.custom.SentinelAutoConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-06-15 09:34:47.569  INFO 4172 --- [           main] trationDelegate$BeanPostProcessorChecker : Bean 'org.springframework.cloud.client.loadbalancer.reactive.LoadBalancerBeanPostProcessorAutoConfiguration' of type [org.springframework.cloud.client.loadbalancer.reactive.LoadBalancerBeanPostProcessorAutoConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-06-15 09:34:47.569  INFO 4172 --- [           main] trationDelegate$BeanPostProcessorChecker : Bean 'org.springframework.cloud.client.loadbalancer.reactive.LoadBalancerBeanPostProcessorAutoConfiguration$ReactorDeferringLoadBalancerFilterConfig' of type [org.springframework.cloud.client.loadbalancer.reactive.LoadBalancerBeanPostProcessorAutoConfiguration$ReactorDeferringLoadBalancerFilterConfig] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-06-15 09:34:47.569  INFO 4172 --- [           main] trationDelegate$BeanPostProcessorChecker : Bean 'reactorDeferringLoadBalancerExchangeFilterFunction' of type [org.springframework.cloud.client.loadbalancer.reactive.DeferringLoadBalancerExchangeFilterFunction] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-06-15 09:34:48.098  WARN 4172 --- [           main] onfigReactiveWebServerApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'swaggerResourceConfig' defined in file [E:\idea_workspace\youlai-mall\youlai-gateway\target\classes\com\youlai\gateway\swagger\config\SwaggerResourceConfig.class]: Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'cachedCompositeRouteLocator' defined in class path resource [org/springframework/cloud/gateway/config/GatewayAutoConfiguration.class]: Unsatisfied dependency expressed through method 'cachedCompositeRouteLocator' parameter 0; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'routeDefinitionRouteLocator' defined in class path resource [org/springframework/cloud/gateway/config/GatewayAutoConfiguration.class]: Unsatisfied dependency expressed through method 'routeDefinitionRouteLocator' parameter 1; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'retryGatewayFilterFactory' defined in class path resource [org/springframework/cloud/gateway/config/GatewayAutoConfiguration.class]: Post-processing of merged bean definition failed; nested exception is java.lang.IllegalStateException: Failed to introspect Class [org.springframework.cloud.gateway.filter.factory.RetryGatewayFilterFactory] from ClassLoader [sun.misc.Launcher$AppClassLoader@18b4aac2]
2022-06-15 09:34:48.130  INFO 4172 --- [           main] ConditionEvaluationReportLoggingListener : 

Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
2022-06-15 09:34:48.141 ERROR 4172 --- [           main] o.s.boot.SpringApplication               : Application run failed

org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'swaggerResourceConfig' defined in file [E:\idea_workspace\youlai-mall\youlai-gateway\target\classes\com\youlai\gateway\swagger\config\SwaggerResourceConfig.class]: Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'cachedCompositeRouteLocator' defined in class path resource [org/springframework/cloud/gateway/config/GatewayAutoConfiguration.class]: Unsatisfied dependency expressed through method 'cachedCompositeRouteLocator' parameter 0; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'routeDefinitionRouteLocator' defined in class path resource [org/springframework/cloud/gateway/config/GatewayAutoConfiguration.class]: Unsatisfied dependency expressed through method 'routeDefinitionRouteLocator' parameter 1; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'retryGatewayFilterFactory' defined in class path resource [org/springframework/cloud/gateway/config/GatewayAutoConfiguration.class]: Post-processing of merged bean definition failed; nested exception is java.lang.IllegalStateException: Failed to introspect Class [org.springframework.cloud.gateway.filter.factory.RetryGatewayFilterFactory] from ClassLoader [sun.misc.Launcher$AppClassLoader@18b4aac2]
	at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:800)
	at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:229)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1372)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1222)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542)
	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)
	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)
	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:953)
	at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:918)
	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583)
	at org.springframework.boot.web.reactive.context.ReactiveWebServerApplicationContext.refresh(ReactiveWebServerApplicationContext.java:64)
	at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:740)
	at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:415)
	at org.springframework.boot.SpringApplication.run(SpringApplication.java:303)
	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1312)
	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1301)
	at com.youlai.gateway.GatewayApplication.main(GatewayApplication.java:11)
Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'cachedCompositeRouteLocator' defined in class path resource [org/springframework/cloud/gateway/config/GatewayAutoConfiguration.class]: Unsatisfied dependency expressed through method 'cachedCompositeRouteLocator' parameter 0; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'routeDefinitionRouteLocator' defined in class path resource [org/springframework/cloud/gateway/config/GatewayAutoConfiguration.class]: Unsatisfied dependency expressed through method 'routeDefinitionRouteLocator' parameter 1; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'retryGatewayFilterFactory' defined in class path resource [org/springframework/cloud/gateway/config/GatewayAutoConfiguration.class]: Post-processing of merged bean definition failed; nested exception is java.lang.IllegalStateException: Failed to introspect Class [org.springframework.cloud.gateway.filter.factory.RetryGatewayFilterFactory] from ClassLoader [sun.misc.Launcher$AppClassLoader@18b4aac2]
	at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:800)
	at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:541)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1352)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1195)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542)
	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)
	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)
	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)
	at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1389)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1309)
	at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:887)
	at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791)
	... 19 common frames omitted
Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'routeDefinitionRouteLocator' defined in class path resource [org/springframework/cloud/gateway/config/GatewayAutoConfiguration.class]: Unsatisfied dependency expressed through method 'routeDefinitionRouteLocator' parameter 1; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'retryGatewayFilterFactory' defined in class path resource [org/springframework/cloud/gateway/config/GatewayAutoConfiguration.class]: Post-processing of merged bean definition failed; nested exception is java.lang.IllegalStateException: Failed to introspect Class [org.springframework.cloud.gateway.filter.factory.RetryGatewayFilterFactory] from ClassLoader [sun.misc.Launcher$AppClassLoader@18b4aac2]
	at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:800)
	at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:541)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1352)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1195)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542)
	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)
	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)
	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)
	at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.addCandidateEntry(DefaultListableBeanFactory.java:1607)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.findAutowireCandidates(DefaultListableBeanFactory.java:1571)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveMultipleBeans(DefaultListableBeanFactory.java:1460)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1347)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1309)
	at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:887)
	at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791)
	... 33 common frames omitted
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'retryGatewayFilterFactory' defined in class path resource [org/springframework/cloud/gateway/config/GatewayAutoConfiguration.class]: Post-processing of merged bean definition failed; nested exception is java.lang.IllegalStateException: Failed to introspect Class [org.springframework.cloud.gateway.filter.factory.RetryGatewayFilterFactory] from ClassLoader [sun.misc.Launcher$AppClassLoader@18b4aac2]
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:597)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542)
	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)
	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)
	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)
	at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.addCandidateEntry(DefaultListableBeanFactory.java:1607)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.findAutowireCandidates(DefaultListableBeanFactory.java:1571)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveMultipleBeans(DefaultListableBeanFactory.java:1460)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1347)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1309)
	at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:887)
	at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791)
	... 50 common frames omitted
Caused by: java.lang.IllegalStateException: Failed to introspect Class [org.springframework.cloud.gateway.filter.factory.RetryGatewayFilterFactory] from ClassLoader [sun.misc.Launcher$AppClassLoader@18b4aac2]
	at org.springframework.util.ReflectionUtils.getDeclaredMethods(ReflectionUtils.java:485)
	at org.springframework.util.ReflectionUtils.doWithLocalMethods(ReflectionUtils.java:321)
	at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.buildLifecycleMetadata(InitDestroyAnnotationBeanPostProcessor.java:232)
	at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.findLifecycleMetadata(InitDestroyAnnotationBeanPostProcessor.java:210)
	at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessMergedBeanDefinition(InitDestroyAnnotationBeanPostProcessor.java:149)
	at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessMergedBeanDefinition(CommonAnnotationBeanPostProcessor.java:305)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyMergedBeanDefinitionPostProcessors(AbstractAutowireCapableBeanFactory.java:1116)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:594)
	... 63 common frames omitted
Caused by: java.lang.NoClassDefFoundError: reactor/retry/RetryContext
	at java.lang.Class.getDeclaredMethods0(Native Method)
	at java.lang.Class.privateGetDeclaredMethods(Class.java:2701)
	at java.lang.Class.getDeclaredMethods(Class.java:1975)
	at org.springframework.util.ReflectionUtils.getDeclaredMethods(ReflectionUtils.java:467)
	... 70 common frames omitted
Caused by: java.lang.ClassNotFoundException: reactor.retry.RetryContext
	at java.net.URLClassLoader.findClass(URLClassLoader.java:387)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:355)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
	... 74 common frames omitted

Disconnected from the target VM, address: '127.0.0.1:64603', transport: 'socket'

Process finished with exit code 1

怎么解决,最新的代码,nacos和数据库都导入好了

多租户

请问后面会考虑支持多租户吗?

请问gateWay中AuthorizationManager这个类中roleId怎么来的。

我把某些注释掉了就走到下面

Mono authorizationDecisionMono = mono
.filter(Authentication::isAuthenticated)
.flatMapIterable(Authentication::getAuthorities)
.map(GrantedAuthority::getAuthority)
.any(roleId -> {
// roleId是请求用户的角色(格式:ROLE_{roleId}),authorities是请求资源所需要角色的集合
log.info("访问路径:{}", path);
log.info("用户角色信息:{}", roleId);
log.info("资源需要权限authorities:{}", authorities);
return authorities.contains(roleId);
})
.map(AuthorizationDecision::new)
.defaultIfEmpty(new AuthorizationDecision(false));

gateway对外内存溢出

有出现过gateway堆外内存溢出的情况吗?
io.netty.handler.codec.EncoderException: io.netty.util.internal.OutOfDirectMemoryError: failed to allocate 16777216 byte(s) of direct memory (used: 855638023, max: 872415232)
at io.netty.handler.codec.MessageToMessageEncoder.write(MessageToMessageEncoder.java:104)
Suppressed: reactor.core.publisher.FluxOnAssembly$OnAssemblyException:
Error has been observed at the following site(s):
|_ checkpoint ⇢ org.springframework.web.cors.reactive.CorsWebFilter [DefaultWebFilterChain]
|_ checkpoint ⇢ org.springframework.cloud.gateway.filter.WeightCalculatorWebFilter [DefaultWebFilterChain]
|_ checkpoint ⇢ org.springframework.security.web.server.authorization.AuthorizationWebFilter [DefaultWebFilterChain]
|_ checkpoint ⇢ org.springframework.security.web.server.authorization.ExceptionTranslationWebFilter [DefaultWebFilterChain]
|_ checkpoint ⇢ org.springframework.security.web.server.authentication.logout.LogoutWebFilter [DefaultWebFilterChain]
|_ checkpoint ⇢ org.springframework.security.web.server.savedrequest.ServerRequestCacheWebFilter [DefaultWebFilterChain]
|_ checkpoint ⇢ org.springframework.security.web.server.context.SecurityContextServerWebExchangeWebFilter [DefaultWebFilterChain]
|_ checkpoint ⇢ org.springframework.security.config.web.server.ServerHttpSecurity$OAuth2ResourceServerSpec$BearerTokenAuthenticationWebFilter [DefaultWebFilterChain]
|_ checkpoint ⇢ org.springframework.security.web.server.context.ReactorContextWebFilter [DefaultWebFilterChain]
|_ checkpoint ⇢ org.springframework.security.web.server.header.HttpHeaderWriterWebFilter [DefaultWebFilterChain]
|_ checkpoint ⇢ org.springframework.security.config.web.server.ServerHttpSecurity$ServerWebExchangeReactorContextWebFilter [DefaultWebFilterChain]

登錄密碼隱藏

在使用oauth密碼模式驗證的時候會直接將密碼明文暴露在request param裏面,請問有什麽好的優化方法嗎

image

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.