GithubHelp home page GithubHelp logo

jeequan / jeepay Goto Github PK

View Code? Open in Web Editor NEW
5.0K 5.0K 1.8K 5.89 MB

Jeepay是一套适合互联网企业使用的开源支付系统,支持多渠道服务商和普通商户模式。已对接微信支付,支付宝,云闪付官方接口,支持聚合码支付。

Home Page: https://www.jeequan.com

License: GNU Lesser General Public License v3.0

Java 98.62% HTML 0.09% FreeMarker 0.31% CSS 0.01% Shell 0.21% Dockerfile 0.25% EJS 0.52%
jeepay xxpay

jeepay's People

Contributors

15837873964 avatar 491733638 avatar binarywang avatar cbwleft avatar ghostsun avatar itheima65 avatar jeequan avatar stringke avatar terrfly avatar xiaochangbai avatar xypang avatar yr-test-space avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

jeepay's Issues

渠道回调方法每次都设置自动获取微信平台证书,是有特别的场景考虑吗?

渠道回调方法每次都设置自动获取微信平台证书 ,实际上微信支付工具包初始化时已存在自动更新,是有特别的场景考虑吗?
com/jeequan/jeepay/pay/channel/wxpay/WxpayChannelRefundNoticeService.java:190

com.github.binarywang.wxpay.config.WxPayConfig#getVerifier
@SneakyThrows
public Verifier getVerifier() {
if (verifier == null) {
//当改对象为null时,初始化api v3的请求头
initApiV3HttpClient();
}
return verifier;
}

image
image

Payment启动报错

Description:

Parameter 0 of constructor in com.jeequan.jeepay.pay.config.SwaggerConfiguration required a bean of type 'com.github.xiaoymin.knife4j.spring.extension.OpenApiExtensionResolver' that could not be found.

Action:

Consider defining a bean of type 'com.github.xiaoymin.knife4j.spring.extension.OpenApiExtensionResolver' in your configuration.

开源的这里是被删代码了吗?

类: com.jeequan.jeepay.pay.ctrl.payorder.ChannelNoticeController

问题方法

image

这种无意义的调用还有这么多?

image

提问: gitee 那边不维护了吗? issue怎么不处理了?

严重:支付回调判断逻辑错误

问题:在NotifyPayServiceImpl.java 文件的method
@OverRide
public Map doWxPayNotify(String jsonParam)中的
byte payStatus = payOrder.getStatus(); //
if (payStatus != PayConstant.PAY_STATUS_SUCCESS && payStatus != PayConstant.PAY_STATUS_COMPLETE) {.............................................................}
payOrder.getStatus() 获得的值未被初始化为零,会导致支付失败。

PayPal

大神把PayPal支付也集成了吧

工程的 docker 发布

这几天在尝试使用 docker 来部署整个项目, 下面是各文件具体内容:

1. docker-compose.yaml 文件的内容:

cloud_eureka:
  build: ./xxpay4spring-cloud/xxpay-server/src/main/docker
  volumes:
      - "./data/log:/app/log"
  hostname: eureka
  ports:
    - "2000:2000"
  net: "host"

cloud_config:
  build: ./xxpay4spring-cloud/xxpay-config/src/main/docker
  volumes:
      - "./data/log:/app/log"
  hostname: config
  environment:
     EUREKA_HOST: eureka
     EUREKA_PORT: 2000
  ports:
      - "2020:2020"
  net: "host"

cloud_service:
  build: ./xxpay4spring-cloud/xxpay-service/src/main/docker
  volumes:
      - "./data/log:/app/log"
  hostname: service
  environment:
     EUREKA_HOST: eureka
     EUREKA_PORT: 2000
     SERVER_PORT: 3000
  ports:
    - "3000:3000"
  net: "host"

cloud_web:
  build: ./xxpay4spring-cloud/xxpay-web/src/main/docker
  volumes:
      - "./data/log:/app/log"
  hostname: web
  environment:
     EUREKA_HOST: eureka
     EUREKA_PORT: 2000
     SERVER_PORT: 3010
  ports:
    - "3010:3010"
  net: "host"

cloud_zuul:
  build: ./xxpay4spring-cloud/xxpay-gateway/src/main/docker
  volumes:
      - "./data/log:/app/log"
  hostname: zuul
  environment:
     EUREKA_HOST: eureka
     EUREKA_PORT: 2000
  ports:
    - "3021:3021"
  net: "host"

dubbo_service:
  build: ./xxpay4dubbo/xxpay4dubbo-service/src/main/docker
  volumes:
      - "./data/log:/app/log"
  hostname: dubbo_service
  environment:
     EUREKA_HOST: eureka
     EUREKA_PORT: 2000
  ports:
    - "20880:20880"
  net: "host"
dubbo_web:
  build: ./xxpay4dubbo/xxpay4dubbo-web/src/main/docker
  volumes:
      - "./data/log:/app/log"
  hostname: dubbo_web
  environment:
     EUREKA_HOST: eureka
     EUREKA_PORT: 2000
  ports:
    - "3020:3020"
  net: "host"

2. 模块中的 Dockerfile 的样例:

FROM registry.docker-cn.com/library/openjdk:8-jre-alpine
ADD alpine-repositories.list /etc/apk/repositories
RUN set -x && \
    apk add --update bash && \
    rm -rf /var/cache/apk/*
VOLUME /tmp
RUN mkdir /app
_#这里对应当前模块的 jar 文件名_
ADD xxpay-config.jar /app/app.jar
ADD runboot.sh /app/
RUN bash -c 'touch /app/app.jar'
WORKDIR /app
RUN chmod a+x runboot.sh
EXPOSE 2020
CMD /app/runboot.sh

3. alpine-repositories.list 文件的内容:

https://mirrors.ustc.edu.cn/alpine/latest-stable/main
https://mirrors.ustc.edu.cn/alpine/latest-stable/community

4. runboot.sh 文件的内容:

#!/usr/bin/env bash
_# 模块的启动间隔时间_
sleep 30
java -Djava.security.egd=file:/dev/./urandom -jar /app/app.jar

如果是在 linux 下, 可以使用以下的自动部署脚本:

1. 根目录下创建 docker-run.sh 脚本, 内容:

#!/bin/sh
_# 一旦出现了返回值非零,整个脚本就会立即退出。_
set -e
_# 取得当前目录绝对路径_
basepath=$(cd `realpath .`; pwd)
_# 取得当前目录名称_
curfolder=${basepath##*/}

_# 创建需要的文件夹_
if [ ! -d ${basepath}/data ]; then
  mkdir -p ${basepath}/data/log
fi

_# 这里先使用 maven 构建项目_
docker build -t ncc-xxpay-img -f Dockerfile.build .
docker ps -a|grep ncc-mvn-builder|awk '{print $1}'|xargs -I {} docker rm "{}"
docker create --name ncc-mvn-builder ncc-xxpay-img
_# 循环复制 mvn 中的 jar 文件到 docker 文件夹路径下_
for file in $(find ./ -name Dockerfile -type f)
  do
  dockerfile_path=${file#./*}
  dockerfolder_path=${dockerfile_path%/*}
  project_path=${dockerfile_path%%/src*}
  project_name=${project_path##*/}
  docker cp ncc-mvn-builder:/usr/src/app/${project_path}/target/${project_name}.jar ${basepath}/${dockerfolder_path}/

  _# 顺便给 alpine 容器源替换成国内镜像_
  touch ${basepath}/${dockerfolder_path}/alpine-repositories.list
  echo "https://mirrors.ustc.edu.cn/alpine/latest-stable/main" >> ${basepath}/${dockerfolder_path}/alpine-repositories.list
  echo "https://mirrors.ustc.edu.cn/alpine/latest-stable/community" >> ${basepath}/${dockerfolder_path}/alpine-repositories.list
done;

_# 判断 docker-compose 是否存在_
if command -v docker-compose >/dev/null 2>&1; then
  echo 'exists docker-compose'
else
  _# 不存在则安装_
  curl -L https://get.daocloud.io/docker/compose/releases/download/1.3.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
  chmod +x /usr/local/bin/docker-compose
fi
_#先 build, 再启动_
docker-compose build
docker-compose up -d

2. Dockerfile.build 的内容:

FROM registry.cn-hangzhou.aliyuncs.com/narlian/maven:3-jdk-8-alpine
ENV MY_HOME=/usr/src/app
RUN mkdir -p $MY_HOME
WORKDIR $MY_HOME
ADD pom.xml $MY_HOME
_# get all the downloads out of the way_
RUN ["/usr/local/bin/mvn-entrypoint.sh","mvn","verify","clean","--fail-never"]
_# add source_
ADD . $MY_HOME
_# run maven verify_
RUN ["/usr/local/bin/mvn-entrypoint.sh","mvn","verify","-Dmaven.test.skip=true"]
CMD ["mvn","clean","package","-Dmaven.test.skip=true"]

服务器部署时数据库连不上

看了源码 数据库是8.0 但数据源配置里却是dsc.setDriverName("com.mysql.jdbc.Driver"); 修改为com.jc.mysql.jdbc.Driver依然连接不上 有解决办法吗

jeepay-manager 服务异常

Bug概述

jeepay-manager服务报错

重现步骤

  1. 使用docker compose 安装所有服务,具体指令如下
docker build -t jeepay-deps:latest -f docs/Dockerfile .
docker-compose up -d
  1. 使用浏览器访问 http://dockerhost:9227/ (运营平台)或者http://dockerhost:9228/ (商户系统)

Bug行为

1.浏览器控制台报错:

"系统异常[Handler dispatch failed; nested exception is java.lang.NoClassDefFoundError: Could not initialize class io.netty.buffer.ByteBufAllocator]"
image

2.验证码不显示

image

3. jeepay-manager容器内也会报错,日志见附件。

期望行为

使用docker compost安装的程序,验证码可以正常显示,服务不再报错

附件

附上图片或日志,日志请用格式:

       __
      / /___  ___  ____  ____ ___  __
 __  / // _ \/ _ \/ __ \/ __ `/ / / /
/ /_/ //  __/  __/ /_/ / /_/ / /_/ /
\____/ \___/\___/ .___/\__,_/\__, /
               /_/          /____/
 :: Jeepay ::        (v2.2.0.RELEASE)
 适合互联网企业使用的开源支付系统 : https://www.jeequan.com
2023-07-09 14:35:03.829 INFO  [main] [c.j.j.m.b.JeepayMgrApplication] - Starting JeepayMgrApplication v2.2.0 using Java 1.8.0_312 on manager with PID 1 (/workspace/jeepay-app.jar started by root in /workspace)
2023-07-09 14:35:03.838 DEBUG [main] [c.j.j.m.b.JeepayMgrApplication] - Running with Spring Boot v2.4.8, Spring v5.3.8
2023-07-09 14:35:03.839 INFO  [main] [c.j.j.m.b.JeepayMgrApplication] - No active profile set, falling back to default profiles: default
2023-07-09 14:35:07.900 INFO  [main] [o.s.d.r.c.RepositoryConfigurationDelegate] - Multiple Spring Data modules found, entering strict repository configuration mode!
2023-07-09 14:35:07.912 INFO  [main] [o.s.d.r.c.RepositoryConfigurationDelegate] - Bootstrapping Spring Data Redis repositories in DEFAULT mode.
2023-07-09 14:35:07.950 INFO  [main] [o.s.d.r.c.RepositoryConfigurationDelegate] - Finished Spring Data repository scanning in 15 ms. Found 0 Redis repository interfaces.
2023-07-09 14:35:09.686 INFO  [main] [o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker] - Bean 'org.springframework.security.access.expression.method.DefaultMethodSecurityExpressionHandler@6aa8e115' of type [org.springframework.security.access.expression.method.DefaultMethodSecurityExpressionHandler] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2023-07-09 14:35:09.698 INFO  [main] [o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker] - Bean 'methodSecurityMetadataSource' of type [org.springframework.security.access.method.DelegatingMethodSecurityMetadataSource] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2023-07-09 14:35:10.796 INFO  [main] [o.s.b.w.e.t.TomcatWebServer] - Tomcat initialized with port(s): 9217 (http)
2023-07-09 14:35:10.818 INFO  [main] [o.a.c.h.Http11NioProtocol] - Initializing ProtocolHandler ["http-nio-9217"]
2023-07-09 14:35:10.823 INFO  [main] [o.a.c.c.StandardService] - Starting service [Tomcat]
2023-07-09 14:35:10.823 INFO  [main] [o.a.c.c.StandardEngine] - Starting Servlet engine: [Apache Tomcat/9.0.48]
2023-07-09 14:35:10.927 INFO  [main] [o.a.c.c.C.[.[.[/]] - Initializing Spring embedded WebApplicationContext
2023-07-09 14:35:10.928 INFO  [main] [o.s.b.w.s.c.ServletWebServerApplicationContext] - Root WebApplicationContext: initialization completed in 6913 ms
2023-07-09 14:35:11.477 INFO  [main] [c.a.d.s.b.a.DruidDataSourceAutoConfigure] - Init DruidDataSource
2023-07-09 14:35:12.223 INFO  [main] [c.a.d.p.DruidDataSource] - {dataSource-1} inited
 _ _   |_  _ _|_. ___ _ |    _ 
| | |\/|_)(_| | |_\  |_)||_|_\ 
     /               |         
                        3.4.2 
2023-07-09 14:35:13.223 WARN  [main] [c.b.m.c.m.TableInfoHelper] - Can not find table primary key in Class: "com.jeequan.jeepay.core.entity.SysUserRoleRela".
2023-07-09 14:35:14.259 INFO  [main] [o.m.p.j.JmsPoolConnectionFactory] - Provided ConnectionFactory implementation is JMS 2.0+ capable.
2023-07-09 14:35:15.858 WARN  [main] [c.b.m.c.m.TableInfoHelper] - Can not find table primary key in Class: "com.jeequan.jeepay.core.entity.SysRoleEntRela".
2023-07-09 14:35:17.974 INFO  [main] [o.s.s.w.DefaultSecurityFilterChain] - Will secure Ant [pattern='/', GET] with []
2023-07-09 14:35:17.975 INFO  [main] [o.s.s.w.DefaultSecurityFilterChain] - Will secure Ant [pattern='/*.html', GET] with []
2023-07-09 14:35:17.978 INFO  [main] [o.s.s.w.DefaultSecurityFilterChain] - Will secure Ant [pattern='/favicon.ico', GET] with []
2023-07-09 14:35:17.979 INFO  [main] [o.s.s.w.DefaultSecurityFilterChain] - Will secure Ant [pattern='/**/*.html', GET] with []
2023-07-09 14:35:17.979 INFO  [main] [o.s.s.w.DefaultSecurityFilterChain] - Will secure Ant [pattern='/**/*.css', GET] with []
2023-07-09 14:35:17.980 INFO  [main] [o.s.s.w.DefaultSecurityFilterChain] - Will secure Ant [pattern='/**/*.js', GET] with []
2023-07-09 14:35:17.980 INFO  [main] [o.s.s.w.DefaultSecurityFilterChain] - Will secure Ant [pattern='/**/*.png', GET] with []
2023-07-09 14:35:17.980 INFO  [main] [o.s.s.w.DefaultSecurityFilterChain] - Will secure Ant [pattern='/**/*.jpg', GET] with []
2023-07-09 14:35:17.980 INFO  [main] [o.s.s.w.DefaultSecurityFilterChain] - Will secure Ant [pattern='/**/*.jpeg', GET] with []
2023-07-09 14:35:17.981 INFO  [main] [o.s.s.w.DefaultSecurityFilterChain] - Will secure Ant [pattern='/**/*.svg', GET] with []
2023-07-09 14:35:17.981 INFO  [main] [o.s.s.w.DefaultSecurityFilterChain] - Will secure Ant [pattern='/**/*.ico', GET] with []
2023-07-09 14:35:17.981 INFO  [main] [o.s.s.w.DefaultSecurityFilterChain] - Will secure Ant [pattern='/**/*.webp', GET] with []
2023-07-09 14:35:17.981 INFO  [main] [o.s.s.w.DefaultSecurityFilterChain] - Will secure Ant [pattern='/*.txt', GET] with []
2023-07-09 14:35:17.982 INFO  [main] [o.s.s.w.DefaultSecurityFilterChain] - Will secure Ant [pattern='/**/*.xls', GET] with []
2023-07-09 14:35:17.983 INFO  [main] [o.s.s.w.DefaultSecurityFilterChain] - Will secure Ant [pattern='/**/*.mp4', GET] with []
2023-07-09 14:35:17.983 INFO  [main] [o.s.s.w.DefaultSecurityFilterChain] - Will secure Ant [pattern='/api/anon/**'] with []
2023-07-09 14:35:17.983 INFO  [main] [o.s.s.w.DefaultSecurityFilterChain] - Will secure Ant [pattern='/swagger-resources/**'] with []
2023-07-09 14:35:17.983 INFO  [main] [o.s.s.w.DefaultSecurityFilterChain] - Will secure Ant [pattern='/v2/api-docs/**'] with []
2023-07-09 14:35:18.025 INFO  [main] [o.s.s.w.DefaultSecurityFilterChain] - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@117632cf, org.springframework.security.web.context.SecurityContextPersistenceFilter@3be8821f, org.springframework.security.web.header.HeaderWriterFilter@df5f5c0, org.springframework.web.filter.CorsFilter@37ddb69a, org.springframework.security.web.authentication.logout.LogoutFilter@10567255, com.jeequan.jeepay.mgr.secruity.JeeAuthenticationTokenFilter@2fb68ec6, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@3b65e559, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@74a9c4b0, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@d71adc2, org.springframework.security.web.session.SessionManagementFilter@66b72664, org.springframework.security.web.access.ExceptionTranslationFilter@2e6ee0bc, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@51bde877]
2023-07-09 14:35:18.089 INFO  [main] [s.d.s.w.WebMvcPropertySourcedRequestMappingHandlerMapping] - Mapped URL path [/v2/api-docs] onto method [springfox.documentation.swagger2.web.Swagger2ControllerWebMvc#getDocumentation(String, HttpServletRequest)]
2023-07-09 14:35:18.503 INFO  [main] [o.s.b.a.w.s.WelcomePageHandlerMapping] - Adding welcome page: class path resource [static/index.html]
2023-07-09 14:35:19.291 WARN  [main] [o.s.b.a.f.FreeMarkerAutoConfiguration] - Cannot find template location(s): [classpath:/templates] (please add some templates, check your FreeMarker configuration, or set spring.freemarker.checkTemplateLocation=false)
2023-07-09 14:35:19.549 INFO  [main] [o.a.c.h.Http11NioProtocol] - Starting ProtocolHandler ["http-nio-9217"]
2023-07-09 14:35:19.604 INFO  [main] [o.s.b.w.e.t.TomcatWebServer] - Tomcat started on port(s): 9217 (http) with context path ''
2023-07-09 14:35:19.607 INFO  [main] [s.d.s.w.p.DocumentationPluginsBootstrapper] - Documentation plugins bootstrapped
2023-07-09 14:35:19.619 INFO  [main] [s.d.s.w.p.DocumentationPluginsBootstrapper] - Found 1 custom documentation plugin(s)
2023-07-09 14:35:19.751 INFO  [main] [s.d.s.w.s.ApiListingReferenceScanner] - Scanning for api listing references
2023-07-09 14:35:20.071 INFO  [main] [s.d.s.w.r.o.CachingOperationNameGenerator] - Generating unique operation named: listUsingGET_1
2023-07-09 14:35:20.121 INFO  [main] [s.d.s.w.r.o.CachingOperationNameGenerator] - Generating unique operation named: listUsingGET_2
2023-07-09 14:35:20.123 INFO  [main] [s.d.s.w.r.o.CachingOperationNameGenerator] - Generating unique operation named: addUsingPOST_1
2023-07-09 14:35:20.129 INFO  [main] [s.d.s.w.r.o.CachingOperationNameGenerator] - Generating unique operation named: deleteUsingDELETE_1
2023-07-09 14:35:20.141 INFO  [main] [s.d.s.w.r.o.CachingOperationNameGenerator] - Generating unique operation named: detailUsingGET_1
2023-07-09 14:35:20.149 INFO  [main] [s.d.s.w.r.o.CachingOperationNameGenerator] - Generating unique operation named: updateUsingPUT_1
2023-07-09 14:35:20.183 INFO  [main] [s.d.s.w.r.o.CachingOperationNameGenerator] - Generating unique operation named: listUsingGET_3
2023-07-09 14:35:20.196 INFO  [main] [s.d.s.w.r.o.CachingOperationNameGenerator] - Generating unique operation named: addUsingPOST_2
2023-07-09 14:35:20.199 INFO  [main] [s.d.s.w.r.o.CachingOperationNameGenerator] - Generating unique operation named: deleteUsingDELETE_2
2023-07-09 14:35:20.222 INFO  [main] [s.d.s.w.r.o.CachingOperationNameGenerator] - Generating unique operation named: detailUsingGET_2
2023-07-09 14:35:20.227 INFO  [main] [s.d.s.w.r.o.CachingOperationNameGenerator] - Generating unique operation named: updateUsingPUT_2
2023-07-09 14:35:20.268 INFO  [main] [s.d.s.w.r.o.CachingOperationNameGenerator] - Generating unique operation named: listUsingGET_4
2023-07-09 14:35:20.278 INFO  [main] [s.d.s.w.r.o.CachingOperationNameGenerator] - Generating unique operation named: detailUsingGET_3
2023-07-09 14:35:20.308 INFO  [main] [s.d.s.w.r.o.CachingOperationNameGenerator] - Generating unique operation named: saveOrUpdateUsingPOST_1
2023-07-09 14:35:20.332 INFO  [main] [s.d.s.w.r.o.CachingOperationNameGenerator] - Generating unique operation named: listUsingGET_5
2023-07-09 14:35:20.360 INFO  [main] [s.d.s.w.r.o.CachingOperationNameGenerator] - Generating unique operation named: listUsingGET_6
2023-07-09 14:35:20.366 INFO  [main] [s.d.s.w.r.o.CachingOperationNameGenerator] - Generating unique operation named: saveOrUpdateUsingPOST_2
2023-07-09 14:35:20.374 INFO  [main] [s.d.s.w.r.o.CachingOperationNameGenerator] - Generating unique operation named: addUsingPOST_3
2023-07-09 14:35:20.376 INFO  [main] [s.d.s.w.r.o.CachingOperationNameGenerator] - Generating unique operation named: deleteUsingDELETE_3
2023-07-09 14:35:20.378 INFO  [main] [s.d.s.w.r.o.CachingOperationNameGenerator] - Generating unique operation named: detailUsingGET_4
2023-07-09 14:35:20.380 INFO  [main] [s.d.s.w.r.o.CachingOperationNameGenerator] - Generating unique operation named: updateUsingPUT_3
2023-07-09 14:35:20.382 INFO  [main] [s.d.s.w.r.o.CachingOperationNameGenerator] - Generating unique operation named: listUsingGET_7
2023-07-09 14:35:20.412 INFO  [main] [s.d.s.w.r.o.CachingOperationNameGenerator] - Generating unique operation named: listUsingGET_8
2023-07-09 14:35:20.414 INFO  [main] [s.d.s.w.r.o.CachingOperationNameGenerator] - Generating unique operation named: detailUsingGET_5
2023-07-09 14:35:20.423 INFO  [main] [s.d.s.w.r.o.CachingOperationNameGenerator] - Generating unique operation named: listUsingGET_9
2023-07-09 14:35:20.425 INFO  [main] [s.d.s.w.r.o.CachingOperationNameGenerator] - Generating unique operation named: addUsingPOST_4
2023-07-09 14:35:20.428 INFO  [main] [s.d.s.w.r.o.CachingOperationNameGenerator] - Generating unique operation named: deleteUsingDELETE_4
2023-07-09 14:35:20.431 INFO  [main] [s.d.s.w.r.o.CachingOperationNameGenerator] - Generating unique operation named: detailUsingGET_6
2023-07-09 14:35:20.434 INFO  [main] [s.d.s.w.r.o.CachingOperationNameGenerator] - Generating unique operation named: updateUsingPUT_4
2023-07-09 14:35:20.455 INFO  [main] [s.d.s.w.r.o.CachingOperationNameGenerator] - Generating unique operation named: listUsingGET_10
2023-07-09 14:35:20.459 INFO  [main] [s.d.s.w.r.o.CachingOperationNameGenerator] - Generating unique operation named: detailUsingGET_7
2023-07-09 14:35:20.465 INFO  [main] [s.d.s.w.r.o.CachingOperationNameGenerator] - Generating unique operation named: updateUsingPUT_5
2023-07-09 14:35:20.521 INFO  [main] [s.d.s.w.r.o.CachingOperationNameGenerator] - Generating unique operation named: listUsingGET_11
2023-07-09 14:35:20.524 INFO  [main] [s.d.s.w.r.o.CachingOperationNameGenerator] - Generating unique operation named: deleteUsingDELETE_5
2023-07-09 14:35:20.526 INFO  [main] [s.d.s.w.r.o.CachingOperationNameGenerator] - Generating unique operation named: detailUsingGET_8
2023-07-09 14:35:20.536 INFO  [main] [s.d.s.w.r.o.CachingOperationNameGenerator] - Generating unique operation named: listUsingGET_12
2023-07-09 14:35:20.538 INFO  [main] [s.d.s.w.r.o.CachingOperationNameGenerator] - Generating unique operation named: addUsingPOST_5
2023-07-09 14:35:20.545 INFO  [main] [s.d.s.w.r.o.CachingOperationNameGenerator] - Generating unique operation named: detailUsingGET_9
2023-07-09 14:35:20.549 INFO  [main] [s.d.s.w.r.o.CachingOperationNameGenerator] - Generating unique operation named: updateUsingPUT_6
2023-07-09 14:35:20.556 INFO  [main] [s.d.s.w.r.o.CachingOperationNameGenerator] - Generating unique operation named: listUsingGET_13
2023-07-09 14:35:20.572 INFO  [main] [s.d.s.w.r.o.CachingOperationNameGenerator] - Generating unique operation named: listUsingGET_14
2023-07-09 14:35:20.574 INFO  [main] [s.d.s.w.r.o.CachingOperationNameGenerator] - Generating unique operation named: addUsingPOST_6
2023-07-09 14:35:20.576 INFO  [main] [s.d.s.w.r.o.CachingOperationNameGenerator] - Generating unique operation named: deleteUsingDELETE_6
2023-07-09 14:35:20.577 INFO  [main] [s.d.s.w.r.o.CachingOperationNameGenerator] - Generating unique operation named: detailUsingGET_10
2023-07-09 14:35:20.584 INFO  [main] [s.d.s.w.r.o.CachingOperationNameGenerator] - Generating unique operation named: updateUsingPUT_7
2023-07-09 14:35:20.592 INFO  [main] [s.d.s.w.r.o.CachingOperationNameGenerator] - Generating unique operation named: listUsingGET_15
2023-07-09 14:35:20.620 INFO  [main] [s.d.s.w.r.o.CachingOperationNameGenerator] - Generating unique operation named: listUsingGET_16
2023-07-09 14:35:20.630 INFO  [main] [s.d.s.w.r.o.CachingOperationNameGenerator] - Generating unique operation named: detailUsingGET_11
2023-07-09 14:35:20.896 INFO  [ActiveMQ Task-1] [o.a.a.t.f.FailoverTransport] - Successfully connected to tcp://172.20.0.11:61616?wireFormat.maxInactivityDuration=0
2023-07-09 14:35:20.958 INFO  [main] [c.j.j.m.b.JeepayMgrApplication] - Started JeepayMgrApplication in 18.945 seconds (JVM running for 20.937)
2023-07-09 14:42:09.280 INFO  [http-nio-9217-exec-1] [o.a.c.c.C.[.[.[/]] - Initializing Spring DispatcherServlet 'dispatcherServlet'
2023-07-09 14:42:09.280 INFO  [http-nio-9217-exec-1] [o.s.w.s.DispatcherServlet] - Initializing Servlet 'dispatcherServlet'
2023-07-09 14:42:09.287 INFO  [http-nio-9217-exec-1] [o.s.w.s.DispatcherServlet] - Completed initialization in 7 ms
2023-07-09 14:42:10.137 ERROR [http-nio-9217-exec-1] [c.j.j.c.e.BizExceptionResolver] - 公共捕捉[Exception]异常:
org.springframework.web.util.NestedServletException: Handler dispatch failed; nested exception is java.lang.ExceptionInInitializerError
	at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1078)
	at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:963)
	at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
	at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:655)
	at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:764)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:228)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:163)
	at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:190)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:163)
	at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91)
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:190)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:163)
	at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:204)
	at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:183)
	at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:358)
	at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:271)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:190)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:163)
	at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:190)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:163)
	at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:190)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:163)
	at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:190)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:163)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97)
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:542)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:143)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:357)
	at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:382)
	at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
	at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893)
	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1723)
	at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
	at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.ExceptionInInitializerError: null
	at io.netty.buffer.ByteBufUtil.<clinit>(ByteBufUtil.java:86)
	at io.netty.buffer.ByteBufAllocator.<clinit>(ByteBufAllocator.java:24)
	at io.lettuce.core.AbstractRedisClient.connectionBuilder(AbstractRedisClient.java:222)
	at io.lettuce.core.RedisClient.connectStatefulAsync(RedisClient.java:313)
	at io.lettuce.core.RedisClient.connectStandaloneAsync(RedisClient.java:278)
	at io.lettuce.core.RedisClient.connect(RedisClient.java:211)
	at org.springframework.data.redis.connection.lettuce.StandaloneConnectionProvider.lambda$getConnection$1(StandaloneConnectionProvider.java:115)
	at java.util.Optional.orElseGet(Optional.java:267)
	at org.springframework.data.redis.connection.lettuce.StandaloneConnectionProvider.getConnection(StandaloneConnectionProvider.java:115)
	at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory$ExceptionTranslatingConnectionProvider.getConnection(LettuceConnectionFactory.java:1459)
	at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory$SharedConnection.getNativeConnection(LettuceConnectionFactory.java:1247)
	at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory$SharedConnection.getConnection(LettuceConnectionFactory.java:1230)
	at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory.getSharedConnection(LettuceConnectionFactory.java:979)
	at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory.getConnection(LettuceConnectionFactory.java:359)
	at org.springframework.data.redis.core.RedisConnectionUtils.fetchConnection(RedisConnectionUtils.java:193)
	at org.springframework.data.redis.core.RedisConnectionUtils.doGetConnection(RedisConnectionUtils.java:144)
	at org.springframework.data.redis.core.RedisConnectionUtils.getConnection(RedisConnectionUtils.java:105)
	at org.springframework.data.redis.core.RedisTemplate.execute(RedisTemplate.java:209)
	at org.springframework.data.redis.core.RedisTemplate.execute(RedisTemplate.java:189)
	at org.springframework.data.redis.core.AbstractOperations.execute(AbstractOperations.java:96)
	at org.springframework.data.redis.core.DefaultValueOperations.set(DefaultValueOperations.java:256)
	at com.jeequan.jeepay.core.cache.RedisUtil.setString(RedisUtil.java:74)
	at com.jeequan.jeepay.mgr.ctrl.anon.AuthController.vercode(AuthController.java:96)
	at com.jeequan.jeepay.mgr.ctrl.anon.AuthController$$FastClassBySpringCGLIB$$a10cd589.invoke(<generated>)
	at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)
	at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:779)
	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)
	at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:750)
	at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:97)
	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
	at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:750)
	at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:692)
	at com.jeequan.jeepay.mgr.ctrl.anon.AuthController$$EnhancerBySpringCGLIB$$eafa095e.vercode(<generated>)
	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.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:197)
	at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:141)
	at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:106)
	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:894)
	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)
	at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
	at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1063)
	... 49 common frames omitted
Caused by: java.lang.IllegalArgumentException: availableProcessors : 0 (expected: > 0)
	at io.netty.util.internal.ObjectUtil.checkPositive(ObjectUtil.java:80)
	at io.netty.util.NettyRuntime$AvailableProcessorsHolder.setAvailableProcessors(NettyRuntime.java:44)
	at io.netty.util.NettyRuntime$AvailableProcessorsHolder.availableProcessors(NettyRuntime.java:70)
	at io.netty.util.NettyRuntime.availableProcessors(NettyRuntime.java:98)
	at io.netty.buffer.PooledByteBufAllocator.<clinit>(PooledByteBufAllocator.java:101)
	... 93 common frames omitted

阿里云rocketMQ相关问题

阿里云rocketMQ做数据推送 同一个group id 下的所有comsumer, topic 和tag需要是一样的,否则会消费不到 ,当前的配置6个topic都在同一个group 下,所以导致异步回调通知大多数时候都是收不到的

Maven Build Warning

Some problems were encountered while building the effective model for org.xxpay:xxpay-dal:jar:1.0.0
'parent.relativePath' of POM org.xxpay:xxpay-dal:1.0.0 (/Users/xxx/Documents/xxpay-master-master/xxpay-dal/pom.xml) points at org.xxpay:xxpay-master instead of org.springframework.boot:spring-boot-starter-parent, please verify your project structure @ line 13, column 10

Some problems were encountered while building the effective model for org.xxpay:xxpay-service:jar:1.0.0
'dependencies.dependency.systemPath' for com.alipay:sdk:jar should not point at files within the project directory, ${basedir}/src/main/webapp/WEB-INF/lib/alipay-sdk-java20170818173712.jar will be unresolvable by dependent projects @ line 51, column 16

Some problems were encountered while building the effective model for org.xxpay:xxpay4dubbo-service:jar:1.0.0
'dependencies.dependency.systemPath' for com.alipay:sdk:jar should not point at files within the project directory, ${basedir}/src/main/webapp/WEB-INF/lib/alipay-sdk-java20170818173712.jar will be unresolvable by dependent projects @ line 68, column 25

Some problems were encountered while building the effective model for org.xxpay:xxpay4spring-boot:jar:1.0.0
'dependencies.dependency.systemPath' for com.alipay:sdk:jar should not point at files within the project directory, ${basedir}/src/main/webapp/WEB-INF/lib/alipay-sdk-java20170818173712.jar will be unresolvable by dependent projects @ line 83, column 25

It is highly recommended to fix these problems because they threaten the stability of your build.
For this reason, future Maven versions might no longer support building such malformed projects.

关于ActiveMQ 或 RabbitMQ 或 RocketMQ在linux的安装(一般适用于宝塔用户)(脚本可能有问题)(随便写的)

#!/bin/bash

# 检测是否存在JDK8
if [ ! -d "/usr/local/btjdk/jdk8" ]; then
    echo "未找到JDK8,正在安装..."
    yum install -y java-1.8.0-openjdk
else
    echo "在 /usr/local/btjdk/jdk8 找到了JDK8"
fi

# 询问用户选择要安装的MQ
read -p "您想要安装哪种MQ? (ActiveMQ/RabbitMQ/RocketMQ): " choice

case $choice in
    ActiveMQ)
        # 安装ActiveMQ
        echo "正在安装ActiveMQ..."
        wget https://archive.apache.org/dist/activemq/5.16.0/apache-activemq-5.16.0-bin.tar.gz
        tar xzf apache-activemq-5.16.0-bin.tar.gz
        mv apache-activemq-5.16.0 /opt/activemq
        ;;
    RabbitMQ)
        # 安装RabbitMQ
        echo "正在安装RabbitMQ..."
        yum install -y epel-release
        yum install -y erlang
        yum install -y https://dl.bintray.com/rabbitmq/all/rabbitmq-server/3.7.9/rabbitmq-server-3.7.9-1.el7.noarch.rpm
        systemctl start rabbitmq-server
        systemctl enable rabbitmq-server
        ;;
    RocketMQ)
        # 安装RocketMQ
        echo "正在安装RocketMQ..."
        wget https://archive.apache.org/dist/rocketmq/4.5.0/rocketmq-all-4.5.0-bin-release.zip
        unzip rocketmq-all-4.5.0-bin-release.zip
        mv rocketmq-all-4.5.0-bin-release /opt/rocketmq
        ;;
    *)
        echo "选择无效!"
        exit 1
        ;;
esac

echo "安装完成!"

paypal集成

微信支付宝有,海外支付的PayPal大神也集成了呗~

Add SECURITY.md

Hey there!

I belong to an open source security research community, and a member (@Veloideu) has found an issue, but doesn’t know the best way to disclose it.

If not a hassle, might you kindly add a SECURITY.md file with an email, or another contact method? GitHub recommends this best practice to ensure security issues are responsibly disclosed, and it would serve as a simple instruction for security researchers in the future.

Thank you for your consideration, and I look forward to hearing from you!

(cc @huntr-helper)

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.