Showing with 1,043 additions and 575 deletions.
  1. +1 −1 .editorconfig
  2. +3 −3 README.md
  3. +3 −3 README_EN.md
  4. +3 −3 README_JP.md
  5. +3 −3 README_RU.md
  6. +0 −17 Solon-启动处理顺序.md
  7. +21 −1 UPDATE_LOG.md
  8. +1 −1 __release/nami-bundle/pom.xml
  9. +1 −1 __release/solon-base-boot-bundle/pom.xml
  10. +1 −1 __release/solon-base-bundle/pom.xml
  11. +1 −1 __release/solon-base-extend-bundle/pom.xml
  12. +1 −1 __release/solon-base-render-bundle/pom.xml
  13. +1 −1 __release/solon-plugin-bundle/pom.xml
  14. +1 −1 __release/solon-plugin-bundle2/pom.xml
  15. +1 −1 __release/solon-plugin-cloud-bundle/pom.xml
  16. +3 −1 __release/solon-plugin-data-bundle/pom.xml
  17. +1 −1 __release/solon-shortcuts-bundle/pom.xml
  18. +1 −1 __release/solon-tool-bundle/pom.xml
  19. +1 −1 __test/pom.xml
  20. +7 −0 __test/src/main/java/webapp/demo2_mvc/Param4Controller.java
  21. +16 −0 __test/src/main/java/webapp/demo2_mvc/Param5Controller.java
  22. +23 −0 __test/src/main/java/webapp/dso/RouterInterceptorImpl2.java
  23. +24 −0 __test/src/test/java/features/ClassUtilTest.java
  24. +13 −0 __test/src/test/java/features/HttpParam4Test.java
  25. +22 −0 __test/src/test/java/features/HttpParam5Test.java
  26. +47 −7 solon-parent/pom.xml
  27. +1 −1 solon-projects/_hatch/metrics-solon-plugin/pom.xml
  28. +3 −3 solon-projects/_hatch/nami.coder.thrift/pom.xml
  29. +1 −1 solon-projects/_hatch/nanoxlsx4j-solon-plugin/pom.xml
  30. +1 −1 solon-projects/_hatch/openapi-solon-plugin/pom.xml
  31. +1 −1 solon-projects/_hatch/pom.xml
  32. +1 −1 solon-projects/_hatch/solon.boot.reactor-netty/pom.xml
  33. +1 −11 ...hatch/solon.boot.reactor-netty/src/main/java/org/noear/solon/boot/reactornetty/RnHttpContext.java
  34. +1 −1 solon-projects/_hatch/solon.serialization.avro/pom.xml
  35. +1 −1 solon-projects/_hatch/solon.serialization.thrift/pom.xml
  36. +1 −1 solon-projects/nami/nami.channel.http.hutool/pom.xml
  37. +1 −1 solon-projects/nami/nami.channel.http.okhttp/pom.xml
  38. +1 −1 solon-projects/nami/nami.channel.socketd.jdksocket/pom.xml
  39. +1 −1 solon-projects/nami/nami.channel.socketd.netty/pom.xml
  40. +1 −1 solon-projects/nami/nami.channel.socketd.rsocket/pom.xml
  41. +1 −1 solon-projects/nami/nami.channel.socketd.smartsocket/pom.xml
  42. +1 −1 solon-projects/nami/nami.channel.socketd.websocket/pom.xml
  43. +1 −1 solon-projects/nami/nami.channel.socketd/pom.xml
  44. +1 −1 solon-projects/nami/nami.coder.fastjson/pom.xml
  45. +1 −1 solon-projects/nami/nami.coder.fastjson2/pom.xml
  46. +1 −1 solon-projects/nami/nami.coder.hessian/pom.xml
  47. +1 −1 solon-projects/nami/nami.coder.jackson/pom.xml
  48. +1 −1 solon-projects/nami/nami.coder.protostuff/pom.xml
  49. +1 −1 solon-projects/nami/nami.coder.snack3/pom.xml
  50. +2 −2 solon-projects/nami/nami/pom.xml
  51. +1 −1 solon-projects/solon-base-boot/solon.boot.jdkhttp/pom.xml
  52. +2 −18 ...solon-base-boot/solon.boot.jdkhttp/src/main/java/org/noear/solon/boot/jdkhttp/JdkHttpContext.java
  53. +1 −1 solon-projects/solon-base-boot/solon.boot.jetty.add.jsp/pom.xml
  54. +1 −1 solon-projects/solon-base-boot/solon.boot.jetty.add.websocket/pom.xml
  55. +1 −1 solon-projects/solon-base-boot/solon.boot.jetty/pom.xml
  56. +1 −1 solon-projects/solon-base-boot/solon.boot.jlhttp/pom.xml
  57. +1 −18 ...ts/solon-base-boot/solon.boot.jlhttp/src/main/java/org/noear/solon/boot/jlhttp/JlHttpContext.java
  58. +2 −2 solon-projects/solon-base-boot/solon.boot.smarthttp/pom.xml
  59. +1 −18 ...se-boot/solon.boot.smarthttp/src/main/java/org/noear/solon/boot/smarthttp/http/SmHttpContext.java
  60. +1 −1 solon-projects/solon-base-boot/solon.boot.socketd.jdksocket/pom.xml
  61. +1 −1 solon-projects/solon-base-boot/solon.boot.socketd.netty/pom.xml
  62. +1 −1 solon-projects/solon-base-boot/solon.boot.socketd.rsocket/pom.xml
  63. +1 −1 solon-projects/solon-base-boot/solon.boot.socketd.smartsocket/pom.xml
  64. +1 −1 solon-projects/solon-base-boot/solon.boot.socketd.websocket/pom.xml
  65. +1 −1 solon-projects/solon-base-boot/solon.boot.tiohttp/pom.xml
  66. +1 −1 solon-projects/solon-base-boot/solon.boot.tomcat.add.jsp/pom.xml
  67. +1 −1 solon-projects/solon-base-boot/solon.boot.tomcat/pom.xml
  68. +1 −1 solon-projects/solon-base-boot/solon.boot.undertow.add.jsp/pom.xml
  69. +1 −1 solon-projects/solon-base-boot/solon.boot.undertow/pom.xml
  70. +1 −1 solon-projects/solon-base-boot/solon.boot.websocket/pom.xml
  71. +1 −1 solon-projects/solon-base-boot/solon.boot/pom.xml
  72. +6 −6 solon-projects/solon-base-boot/solon.boot/src/main/java/org/noear/solon/boot/ServerProps.java
  73. +1 −1 solon-projects/solon-base-boot/solon.boot/src/main/java/org/noear/solon/boot/web/ContextBase.java
  74. +1 −1 solon-projects/solon-base-extend/solon.cache.caffeine/pom.xml
  75. +1 −1 solon-projects/solon-base-extend/solon.cache.jedis/pom.xml
  76. +1 −1 solon-projects/solon-base-extend/solon.cache.redisson/pom.xml
  77. +1 −1 solon-projects/solon-base-extend/solon.cache.spymemcached/pom.xml
  78. +1 −1 solon-projects/solon-base-extend/solon.cloud.eventplus/pom.xml
  79. +1 −1 solon-projects/solon-base-extend/solon.cloud.httputils/pom.xml
  80. +1 −1 solon-projects/solon-base-extend/solon.cloud.tracing/pom.xml
  81. +1 −1 solon-projects/solon-base-extend/solon.cloud/pom.xml
  82. +1 −1 solon-projects/solon-base-extend/solon.extend.schedule/pom.xml
  83. +1 −1 solon-projects/solon-base-extend/solon.scheduling.quartz/pom.xml
  84. +1 −1 solon-projects/solon-base-extend/solon.scheduling.simple/pom.xml
  85. +1 −1 solon-projects/solon-base-extend/solon.scheduling/pom.xml
  86. +1 −1 solon-projects/solon-base-extend/solon.sessionstate.jedis/pom.xml
  87. +1 −1 solon-projects/solon-base-extend/solon.sessionstate.jwt/pom.xml
  88. +1 −1 solon-projects/solon-base-extend/solon.sessionstate.local/pom.xml
  89. +1 −1 solon-projects/solon-base-extend/solon.sessionstate.redisson/pom.xml
  90. +1 −1 solon-projects/solon-base-extend/solon.socketd.client.jdksocket/pom.xml
  91. +1 −1 solon-projects/solon-base-extend/solon.socketd.client.netty/pom.xml
  92. +1 −1 solon-projects/solon-base-extend/solon.socketd.client.rsocket/pom.xml
  93. +2 −2 solon-projects/solon-base-extend/solon.socketd.client.smartsocket/pom.xml
  94. +1 −1 solon-projects/solon-base-extend/solon.socketd.client.websocket/pom.xml
  95. +1 −1 solon-projects/solon-base-extend/solon.socketd/pom.xml
  96. +1 −1 solon-projects/solon-base-extend/solon.web.cors/pom.xml
  97. +1 −1 solon-projects/solon-base-extend/solon.web.sdl/pom.xml
  98. +3 −3 ...ojects/solon-base-extend/solon.web.sdl/src/main/java/org/noear/solon/web/sdl/impl/SdlService.java
  99. +1 −1 solon-projects/solon-base-extend/solon.web.servlet.jakarta/pom.xml
  100. +0 −12 ...tend/solon.web.servlet.jakarta/src/main/java/org/noear/solon/web/servlet/SolonServletContext.java
  101. +1 −1 solon-projects/solon-base-extend/solon.web.servlet/pom.xml
  102. +6 −14 ...-base-extend/solon.web.servlet/src/main/java/org/noear/solon/web/servlet/SolonServletContext.java
  103. +57 −0 solon-projects/solon-base-extend/solon.web.sse/README.md
  104. +25 −0 solon-projects/solon-base-extend/solon.web.sse/pom.xml
  105. +1 −1 solon-projects/solon-base-extend/solon.web.staticfiles/pom.xml
  106. +1 −1 solon-projects/solon-base-extend/solon.web.stop/pom.xml
  107. +1 −1 solon-projects/solon-base-extend/solon.web.webdav/pom.xml
  108. +1 −1 solon-projects/solon-base-render/solon.serialization.fastjson/pom.xml
  109. +1 −1 solon-projects/solon-base-render/solon.serialization.fastjson2/pom.xml
  110. +1 −1 solon-projects/solon-base-render/solon.serialization.gson/pom.xml
  111. +1 −1 solon-projects/solon-base-render/solon.serialization.hessian/pom.xml
  112. +1 −1 solon-projects/solon-base-render/solon.serialization.jackson/pom.xml
  113. +1 −1 solon-projects/solon-base-render/solon.serialization.jsoniter/pom.xml
  114. +1 −1 solon-projects/solon-base-render/solon.serialization.protostuff/pom.xml
  115. +1 −1 solon-projects/solon-base-render/solon.serialization.snack3/pom.xml
  116. +1 −1 solon-projects/solon-base-render/solon.serialization/pom.xml
  117. +1 −1 solon-projects/solon-base-render/solon.view.beetl/pom.xml
  118. +1 −1 solon-projects/solon-base-render/solon.view.enjoy/pom.xml
  119. +1 −1 solon-projects/solon-base-render/solon.view.freemarker/pom.xml
  120. +1 −1 solon-projects/solon-base-render/solon.view.jsp/pom.xml
  121. +1 −1 solon-projects/solon-base-render/solon.view.thymeleaf/pom.xml
  122. +1 −1 solon-projects/solon-base-render/solon.view.velocity/pom.xml
  123. +1 −1 solon-projects/solon-base-render/solon.view/pom.xml
  124. +1 −1 solon-projects/solon-base/solon.aot/pom.xml
  125. +1 −1 solon-projects/solon-base/solon.aspect/pom.xml
  126. +1 −1 solon-projects/solon-base/solon.auth/pom.xml
  127. +20 −14 solon-projects/solon-base/solon.auth/src/main/java/org/noear/solon/auth/AuthRule.java
  128. +10 −35 solon-projects/solon-base/solon.auth/src/main/java/org/noear/solon/auth/impl/AuthRuleImpl.java
  129. +1 −1 solon-projects/solon-base/solon.banner/pom.xml
  130. +1 −1 solon-projects/solon-base/solon.config.yaml/pom.xml
  131. +1 −1 solon-projects/solon-base/solon.data.dynamicds/pom.xml
  132. +1 −1 solon-projects/solon-base/solon.data.shardingds/pom.xml
  133. +1 −1 solon-projects/solon-base/solon.data/pom.xml
  134. +1 −1 solon-projects/solon-base/solon.docs/pom.xml
  135. +1 −1 solon-projects/solon-base/solon.graalvm.apt/pom.xml
  136. +1 −1 solon-projects/solon-base/solon.graalvm/pom.xml
  137. +1 −1 solon-projects/solon-base/solon.health.detector/pom.xml
  138. +1 −1 solon-projects/solon-base/solon.health/pom.xml
  139. +1 −1 solon-projects/solon-base/solon.hotplug/pom.xml
  140. +1 −1 solon-projects/solon-base/solon.i18n/pom.xml
  141. +1 −1 ...projects/solon-base/solon.i18n/src/main/java/org/noear/solon/i18n/impl/LocaleResolverSession.java
  142. +1 −1 solon-projects/solon-base/solon.logging.log4j2/pom.xml
  143. +1 −1 solon-projects/solon-base/solon.logging.logback/pom.xml
  144. +1 −1 solon-projects/solon-base/solon.logging.simple/pom.xml
  145. +1 −1 solon-projects/solon-base/solon.logging/pom.xml
  146. +1 −1 solon-projects/solon-base/solon.proxy.apt/pom.xml
  147. +1 −1 solon-projects/solon-base/solon.proxy/pom.xml
  148. +23 −33 solon-projects/solon-base/solon.proxy/src/main/java/org/noear/solon/proxy/asm/AsmProxy.java
  149. +1 −1 solon-projects/solon-base/solon.test/pom.xml
  150. +1 −1 solon-projects/solon-base/solon.validation/pom.xml
  151. +1 −1 solon-projects/solon-base/solon.vault/pom.xml
  152. +1 −1 solon-projects/solon-plugin-cloud/activemq-solon-cloud-plugin/pom.xml
  153. +1 −1 solon-projects/solon-plugin-cloud/aliyun-ons-solon-cloud-plugin/pom.xml
  154. +1 −1 solon-projects/solon-plugin-cloud/aliyun-oss-solon-cloud-plugin/pom.xml
  155. +8 −0 solon-projects/solon-plugin-cloud/aws-s3-solon-cloud-plugin/README.md
  156. +1 −1 solon-projects/solon-plugin-cloud/aws-s3-solon-cloud-plugin/pom.xml
  157. +3 −1 ...cloud/aws-s3-solon-cloud-plugin/src/main/java/org/noear/solon/cloud/extend/aws/s3/XPluginImp.java
  158. +10 −4 ...ws-s3-solon-cloud-plugin/src/main/java/org/noear/solon/cloud/extend/aws/s3/utils/BucketUtils.java
  159. +1 −1 solon-projects/solon-plugin-cloud/consul-solon-cloud-plugin/pom.xml
  160. +1 −1 solon-projects/solon-plugin-cloud/etcd-solon-cloud-plugin/pom.xml
  161. +1 −1 solon-projects/solon-plugin-cloud/fastdfs-solon-cloud-plugin/pom.xml
  162. +3 −0 solon-projects/solon-plugin-cloud/file-s3-solon-cloud-plugin/README.md
  163. +1 −2 solon-projects/solon-plugin-cloud/file-s3-solon-cloud-plugin/pom.xml
  164. +1 −0 ...cloud-plugin/src/main/java/org/noear/solon/cloud/extend/file/s3/service/CloudFileServiceImpl.java
  165. +9 −5 ...e-s3-solon-cloud-plugin/src/main/java/org/noear/solon/cloud/extend/file/s3/utils/BucketUtils.java
  166. +1 −1 solon-projects/solon-plugin-cloud/grpc-solon-cloud-plugin/pom.xml
  167. +1 −1 solon-projects/solon-plugin-cloud/guava-solon-cloud-plugin/pom.xml
  168. +1 −1 solon-projects/solon-plugin-cloud/jaeger-solon-cloud-plugin/pom.xml
  169. +1 −1 solon-projects/solon-plugin-cloud/jedis-solon-cloud-plugin/pom.xml
  170. +1 −1 solon-projects/solon-plugin-cloud/jmdns-solon-cloud-plugin/pom.xml
  171. +1 −1 solon-projects/solon-plugin-cloud/kafka-solon-cloud-plugin/pom.xml
  172. +1 −1 solon-projects/solon-plugin-cloud/kubernetes-solon-cloud-plugin/pom.xml
  173. +1 −1 solon-projects/solon-plugin-cloud/local-solon-cloud-plugin/pom.xml
  174. +1 −1 solon-projects/solon-plugin-cloud/minio-solon-cloud-plugin/pom.xml
  175. +1 −1 solon-projects/solon-plugin-cloud/minio7-solon-cloud-plugin/pom.xml
  176. +1 −1 solon-projects/solon-plugin-cloud/mqtt-solon-cloud-plugin/pom.xml
  177. +1 −1 solon-projects/solon-plugin-cloud/nacos-solon-cloud-plugin/pom.xml
  178. +1 −1 solon-projects/solon-plugin-cloud/nacos2-solon-cloud-plugin/pom.xml
  179. +1 −1 solon-projects/solon-plugin-cloud/opentracing-solon-cloud-plugin/pom.xml
  180. +1 −1 solon-projects/solon-plugin-cloud/polaris-solon-cloud-plugin/pom.xml
  181. +1 −1 solon-projects/solon-plugin-cloud/powerjob-solon-cloud-plugin/pom.xml
  182. +1 −1 solon-projects/solon-plugin-cloud/pulsar-solon-cloud-plugin/pom.xml
  183. +1 −1 solon-projects/solon-plugin-cloud/qcloud-cos-solon-cloud-plugin/pom.xml
  184. +1 −1 solon-projects/solon-plugin-cloud/qiniu-kodo-solon-cloud-plugin/pom.xml
  185. +1 −1 solon-projects/solon-plugin-cloud/quartz-solon-cloud-plugin/pom.xml
  186. +1 −1 solon-projects/solon-plugin-cloud/rabbitmq-solon-cloud-plugin/pom.xml
  187. +2 −2 solon-projects/solon-plugin-cloud/rocketmq-solon-cloud-plugin/pom.xml
  188. +2 −2 solon-projects/solon-plugin-cloud/rocketmq5-solon-cloud-plugin/pom.xml
  189. +1 −1 solon-projects/solon-plugin-cloud/semaphore-solon-cloud-plugin/pom.xml
  190. +1 −1 solon-projects/solon-plugin-cloud/sentinel-solon-cloud-plugin/pom.xml
  191. +1 −1 solon-projects/solon-plugin-cloud/snowflake-id-solon-cloud-plugin/pom.xml
  192. +1 −1 solon-projects/solon-plugin-cloud/thrift-solon-cloud-plugin/pom.xml
  193. +1 −1 solon-projects/solon-plugin-cloud/water-solon-cloud-plugin/pom.xml
  194. +1 −1 ...on-cloud-plugin/src/main/java/org/noear/solon/cloud/extend/water/integration/http/HandlerJob.java
  195. +1 −1 ...cloud-plugin/src/main/java/org/noear/solon/cloud/extend/water/integration/http/HandlerStatus.java
  196. +1 −1 solon-projects/solon-plugin-cloud/xxl-job-solon-cloud-plugin/pom.xml
  197. +1 −1 solon-projects/solon-plugin-cloud/zipkin-solon-cloud-plugin/pom.xml
  198. +1 −1 solon-projects/solon-plugin-cloud/zookeeper-solon-cloud-plugin/pom.xml
  199. +24 −0 solon-projects/solon-plugin-cloud/zuul-solon-cloud-plugin/pom.xml
  200. +1 −1 solon-projects/solon-plugin-data/activerecord-solon-plugin/pom.xml
  201. +1 −1 solon-projects/solon-plugin-data/bean-searcher-solon-plugin/pom.xml
  202. +1 −1 solon-projects/solon-plugin-data/beetlsql-solon-plugin/pom.xml
  203. +1 −1 solon-projects/solon-plugin-data/dbvisitor-solon-plugin/pom.xml
  204. +1 −1 solon-projects/solon-plugin-data/fastmybatis-solon-plugin/pom.xml
  205. +1 −1 solon-projects/solon-plugin-data/hasordb-solon-plugin/pom.xml
  206. +1 −1 solon-projects/solon-plugin-data/mybatis-flex-solon-plugin/pom.xml
  207. +1 −1 solon-projects/solon-plugin-data/mybatis-pagehelper-solon-plugin/pom.xml
  208. +1 −1 solon-projects/solon-plugin-data/mybatis-plus-extension-solon-plugin/pom.xml
  209. +1 −1 solon-projects/solon-plugin-data/mybatis-plus-solon-plugin/pom.xml
  210. +1 −1 solon-projects/solon-plugin-data/mybatis-solon-plugin/pom.xml
  211. +5 −12 .../solon-plugin-data/mybatis-solon-plugin/src/main/java/org/apache/ibatis/solon/MybatisAdapter.java
  212. +25 −0 ...mybatis-solon-plugin/src/main/java/org/apache/ibatis/solon/integration/MybatisAdapterDefault.java
  213. +2 −4 ...ugin-data/mybatis-solon-plugin/src/main/java/org/apache/ibatis/solon/integration/XPluginImpl.java
  214. +1 −1 solon-projects/solon-plugin-data/mybatis-sqlhelper-solon-plugin/pom.xml
  215. +29 −0 solon-projects/solon-plugin-data/openjpa-solon-plugin/pom.xml
  216. +1 −1 solon-projects/solon-plugin-data/redisson-solon-plugin/pom.xml
  217. +1 −1 solon-projects/solon-plugin-data/sqltoy-solon-plugin/pom.xml
  218. +1 −1 solon-projects/solon-plugin-data/weed3-solon-plugin/pom.xml
  219. +1 −1 solon-projects/solon-plugin-data/wood-solon-plugin/pom.xml
  220. +1 −1 solon-projects/solon-plugin/detector-solon-plugin/pom.xml
  221. +1 −1 solon-projects/solon-plugin/drools-solon-plugin/pom.xml
  222. +1 −1 solon-projects/solon-plugin/dubbo-solon-plugin/pom.xml
  223. +1 −1 solon-projects/solon-plugin/dubbo3-solon-plugin/pom.xml
  224. +1 −1 solon-projects/solon-plugin/easy-trans-solon-plugin/pom.xml
  225. +1 −1 solon-projects/solon-plugin/feign-solon-plugin/pom.xml
  226. +1 −1 solon-projects/solon-plugin/forest-solon-plugin/pom.xml
  227. +1 −1 solon-projects/solon-plugin/graphql-solon-plugin/pom.xml
  228. +1 −1 solon-projects/solon-plugin/liteflow-solon-plugin/pom.xml
  229. +1 −1 solon-projects/solon-plugin/log4j2-solon-plugin/pom.xml
  230. +1 −1 solon-projects/solon-plugin/logback-solon-plugin/pom.xml
  231. +1 −1 solon-projects/solon-plugin/luffy-solon-plugin/pom.xml
  232. +1 −1 solon-projects/solon-plugin/sa-token-solon-plugin/pom.xml
  233. +1 −1 solon-projects/solon-plugin/seata-solon-plugin/pom.xml
  234. +1 −1 solon-projects/solon-plugin/tio-solon-plugin/pom.xml
  235. +1 −1 solon-projects/solon-plugin/vaptcha-solon-plugin/pom.xml
  236. +1 −1 solon-projects/solon-plugin2/activiti-solon-plugin/pom.xml
  237. +1 −1 solon-projects/solon-plugin2/captcha-solon-plugin/pom.xml
  238. +1 −1 solon-projects/solon-plugin2/cron4j-solon-plugin/pom.xml
  239. +1 −1 solon-projects/solon-plugin2/dynamic-tp-solon-plugin/pom.xml
  240. +1 −1 solon-projects/solon-plugin2/easypoi-solon-plugin/pom.xml
  241. +1 −1 solon-projects/solon-plugin2/easypoi-web-solon/pom.xml
  242. +1 −1 ...lon-plugin2/easypoi-web-solon/src/main/java/cn/afterturn/easypoi/view/EasypoiPDFTemplateView.java
  243. +1 −1 solon-projects/solon-plugin2/easypoi-wps-solon/pom.xml
  244. +1 −1 solon-projects/solon-plugin2/flowable-solon-plugin/pom.xml
  245. +1 −1 solon-projects/solon-plugin2/hasor-solon-plugin/pom.xml
  246. +1 −1 solon-projects/solon-plugin2/jap-ids-solon-plugin/pom.xml
  247. +1 −1 solon-projects/solon-plugin2/jap-solon-plugin/pom.xml
  248. +1 −1 solon-projects/solon-plugin2/metrics-solon-plugin/pom.xml
  249. +1 −1 solon-projects/solon-plugin2/orika-solon-plugin/pom.xml
  250. +1 −1 solon-projects/solon-plugin2/powerjob-solon-plugin/pom.xml
  251. +1 −1 solon-projects/solon-plugin2/pulsar2-solon-plugin/pom.xml
  252. +1 −1 solon-projects/solon-plugin2/quartz-solon-plugin/pom.xml
  253. +1 −1 solon-projects/solon-plugin2/shiro-solon-plugin/pom.xml
  254. +1 −1 solon-projects/solon-plugin2/simplejavamail-solon-plugin/pom.xml
  255. +1 −1 solon-projects/solon-plugin2/sms4j-solon-plugin/pom.xml
  256. +1 −1 solon-projects/solon-plugin2/sureness-solon-plugin/pom.xml
  257. +1 −1 solon-projects/solon-plugin2/weixin-java-cp-solon-plugin/pom.xml
  258. +1 −1 solon-projects/solon-plugin2/weixin-java-miniapp-solon-plugin/pom.xml
  259. +1 −1 solon-projects/solon-plugin2/weixin-java-mp-solon-plugin/pom.xml
  260. +1 −1 solon-projects/solon-plugin2/weixin-java-open-solon-plugin/pom.xml
  261. +1 −1 solon-projects/solon-plugin2/weixin-java-pay-solon-plugin/pom.xml
  262. +1 −1 solon-projects/solon-plugin2/weixin-java-qidian-solon-plugin/pom.xml
  263. +1 −1 solon-projects/solon-tool/solon-maven-plugin/pom.xml
  264. +1 −1 solon-projects/solon-tool/solon-springboot-starter/pom.xml
  265. +1 −1 solon-projects/solon-tool/solon-swagger2-knife4j/pom.xml
  266. +1 −1 solon-projects/solon-tool/solon-test-junit4/pom.xml
  267. +1 −1 solon-projects/solon-tool/solon-test-junit5/pom.xml
  268. +1 −1 solon-projects/solon-tool/solon-test/pom.xml
  269. +1 −1 solon-shortcuts/solon-api/pom.xml
  270. +1 −1 solon-shortcuts/solon-beetl-web/pom.xml
  271. +3 −3 solon-shortcuts/solon-cloud-alibaba/pom.xml
  272. +1 −1 solon-shortcuts/solon-cloud-water/pom.xml
  273. +1 −1 solon-shortcuts/solon-cloud/pom.xml
  274. +1 −1 solon-shortcuts/solon-enjoy-web/pom.xml
  275. +1 −1 solon-shortcuts/solon-job/pom.xml
  276. +1 −1 solon-shortcuts/solon-lib/pom.xml
  277. +1 −1 solon-shortcuts/solon-rpc/pom.xml
  278. +1 −1 solon-shortcuts/solon-web-beetl/pom.xml
  279. +1 −1 solon-shortcuts/solon-web-enjoy/pom.xml
  280. +1 −1 solon-shortcuts/solon-web/pom.xml
  281. +1 −1 solon/pom.xml
  282. +1 −1 solon/src/main/java/org/noear/solon/Solon.java
  283. +1 −1 solon/src/main/java/org/noear/solon/SolonProps.java
  284. +2 −2 solon/src/main/java/org/noear/solon/Utils.java
  285. +27 −2 solon/src/main/java/org/noear/solon/core/BeanContainer.java
  286. +15 −0 solon/src/main/java/org/noear/solon/core/ChainManager.java
  287. +44 −9 solon/src/main/java/org/noear/solon/core/handle/Context.java
  288. +2 −7 solon/src/main/java/org/noear/solon/core/handle/ContextEmpty.java
  289. +14 −0 solon/src/main/java/org/noear/solon/core/route/PathLimiter.java
  290. +70 −0 solon/src/main/java/org/noear/solon/core/route/PathRule.java
  291. +47 −0 solon/src/main/java/org/noear/solon/core/route/RouterInterceptorLimiter.java
  292. +30 −13 solon/src/main/java/org/noear/solon/core/route/RouterWrapper.java
  293. +4 −1 solon/src/main/java/org/noear/solon/core/route/Routing.java
  294. +50 −38 solon/src/main/java/org/noear/solon/core/util/ClassUtil.java
  295. +1 −1 solon/src/main/java/org/noear/solon/core/util/IpUtil.java
  296. +1 −1 solon/src/main/java/org/noear/solon/core/util/LinkedCaseInsensitiveMap.java
  297. +20 −0 solon/src/test/java/benchmark/StartWithTest.java
2 changes: 1 addition & 1 deletion .editorconfig
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,4 @@ root=true
[*.{groovy,java,kt,xml}]
indent_style = space
indent_size = 4
continuation_indent_size = 8
continuation_indent_size = 8
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<h1 align="center" style="text-align:center;">
<img src="solon_icon.png" width="128" />
<br />
Solon v2.3.2
Solon v2.3.3
</h1>
<p align="center">
<strong>Java 新的生态型应用开发框架,更小、更快、更简单!</strong>
Expand Down Expand Up @@ -65,8 +65,8 @@ Solon v2.3.2
* 支持 Web、Data、Job、Remoting、Cloud 等任何开发场景
* 兼顾 Handler + Context 和 Listener + Message 两种架构模式
* 强调插件式扩展,可扩展可切换;适应不同的应用场景
* 允许业务插件“热插”、“热拨”
* 支持 GraalVm Native 打包
* 允许业务插件“热插”、“热拔”、“热管理”


## 生态架构图:
Expand All @@ -79,7 +79,7 @@ Solon v2.3.2
<parent>
<groupId>org.noear</groupId>
<artifactId>solon-parent</artifactId>
<version>2.3.2</version>
<version>2.3.3</version>
</parent>

<dependencies>
Expand Down
6 changes: 3 additions & 3 deletions README_EN.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<h1 align="center" style="text-align:center;">
<img src="solon_icon.png" width="128" />
<br />
Solon v2.3.2
Solon v2.3.3
</h1>
<p align="center">
<strong>Java new ecological application development framework, smaller, faster, simpler!</strong>
Expand Down Expand Up @@ -65,8 +65,8 @@ Build from scratch. It has its own standards and norms and open ecology. Combina
* Supports Web, Data, Job, Remoting, Cloud, and other development scenarios
* The two architecture modes are Handler + Context and Listener + Message
* Emphasizes plug-in extensibility, expandable and swappable, adaptable to different application scenarios
* Allows business plug-ins for "hot plugging" and "hot unloading"
* Supports GraalVm Native packaging
* Allow service plug-ins to hot-plug, hot-swap, and hot-manage.

## Ecosystem Architecture Diagram:

Expand All @@ -78,7 +78,7 @@ Build from scratch. It has its own standards and norms and open ecology. Combina
<parent>
<groupId>org.noear</groupId>
<artifactId>solon-parent</artifactId>
<version>2.3.2</version>
<version>2.3.3</version>
</parent>

<dependencies>
Expand Down
6 changes: 3 additions & 3 deletions README_JP.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<h1 align="center" style="text-align:center;">
<img src="solon_icon.png" width="128" />
<br />
Solon v2.3.2
Solon v2.3.3
</h1>
<p align="center">
<strong>Javaの新しい生態系アプリケーション開発フレームワーク、より小さく、より速く、より簡単に!</strong>
Expand Down Expand Up @@ -65,8 +65,8 @@ Solon v2.3.2
* Web、Data、Job、Remoting、Cloudなどの開発シナリオをサポート
* Handler+ContextとListener+Messageの2つのイベントモデルを両立
* プラグイン式の拡張を強調し、異なるアプリケーションシーンに対応可能
* ビジネスプラグインのホットプラグ・ホットダイヤルをサポート
* GraalVm Nativeパッケージをサポート
* サービスプラグイン「ホットプラグ」「ホットプラグ」「ホットマネジメント」を許可します。


## エコシステム:
Expand All @@ -79,7 +79,7 @@ Solon v2.3.2
<parent>
<groupId>org.noear</groupId>
<artifactId>solon-parent</artifactId>
<version>2.3.2</version>
<version>2.3.3</version>
</parent>

<dependencies>
Expand Down
6 changes: 3 additions & 3 deletions README_RU.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<h1 align="center" style="text-align:center;">
<img src="solon_icon.png" width="128" />
<br />
Solon v2.3.2
Solon v2.3.3
</h1>
<p align="center">
<strong>Новая структура разработки приложений Java, меньше, быстрее и проще!</strong>
Expand Down Expand Up @@ -65,8 +65,8 @@ Solon v2.3.2
* Поддерживаем любые сценарии развития, такие как Web, Data, Job, Remoting, Cloud и т.д
* Совместить архитектурные модели Handler + Context и Listener + Message
* Подчеркивает расширение плагина, расширяемое и переключаемое; Адаптация к различным параметрам применения
* Позволяет бизнес-плагины "включать", "включать"
* В поддержку "GraalVm Native"
* Позволяет бизнес-плагины "включать", "вырывать", "управление теплом"


## Экологическая архитектура:
Expand All @@ -79,7 +79,7 @@ Solon v2.3.2
<parent>
<groupId>org.noear</groupId>
<artifactId>solon-parent</artifactId>
<version>2.3.2</version>
<version>2.3.3</version>
</parent>

<dependencies>
Expand Down
17 changes: 0 additions & 17 deletions Solon-启动处理顺序.md

This file was deleted.

22 changes: 21 additions & 1 deletion UPDATE_LOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,29 @@
* 提醒1:之前没有使用弃用接口的,可以直接升级 <br>
* 提醒2:有使用弃用接口的。建议先升级到 1.12.4;替换弃用代码后,再升级到 2.0.0

### 2.3.3
* 调整 solon-cloud-alibaba 快捷包 改用 nacos2,rocketmq5
* 调整 file-s3-solon-cloud-plugin 插件,不排除 aws-java-sdk-s3(之前为排除)
* 添加 dromara-plugins 所有插件的版本管理
* 添加 PathRule 工具类
* 添加 PathLimiter 用于限制 RouterInterceptor 的范围
* 添加 MybaitsAdapter::getMapper 增加缓存处理
* 添加 maxHeaderSize(8k), maxBodySize(2m) 为 server 统一默认配置,不然会出 readToken 错误
* 添加 Context::sessionOrDefault(),headerOrDefault(),paramOrDefault() 接口
* 添加 ChainManager::getFilterNodes(),getInterceptorNodes() 接口
* 优化 AsmProxy 代理类的缓存机制(简化)
* 优化 Utils::firstOrNull 增加 null 判断
* 优化 ClassUtil 的异常处理
* 优化 Context::filesMap() 改抛 IOException 异常
* 优化 Context::param(key,def) 处理
* wood 升为 1.1.3
* nacos2 升为 2.2.3
* rocketmq5 升为 5.0.5
* dubbo3 升为 3.2.2

### 2.3.2
* 调整 mybaits-solon-plugin 插件,添加 configuration.mapperVerifyEnabled 配置(控制是否启用 mapper 校验)
* 调整 solon.docs 插件, `@Body` model 进行字段拆解
* 调整 solon.docs 插件,将非 `@Body` model 进行字段拆解
* activemq 升为 5.15.9

### 2.3.1
Expand Down
2 changes: 1 addition & 1 deletion __release/nami-bundle/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
<parent>
<groupId>org.noear</groupId>
<artifactId>solon-parent</artifactId>
<version>2.3.2</version>
<version>2.3.3</version>
<relativePath>../../solon-parent/pom.xml</relativePath>
</parent>

Expand Down
2 changes: 1 addition & 1 deletion __release/solon-base-boot-bundle/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
<parent>
<groupId>org.noear</groupId>
<artifactId>solon-parent</artifactId>
<version>2.3.2</version>
<version>2.3.3</version>
<relativePath>../../solon-parent/pom.xml</relativePath>
</parent>

Expand Down
2 changes: 1 addition & 1 deletion __release/solon-base-bundle/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
<parent>
<groupId>org.noear</groupId>
<artifactId>solon-parent</artifactId>
<version>2.3.2</version>
<version>2.3.3</version>
<relativePath>../../solon-parent/pom.xml</relativePath>
</parent>

Expand Down
2 changes: 1 addition & 1 deletion __release/solon-base-extend-bundle/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
<parent>
<groupId>org.noear</groupId>
<artifactId>solon-parent</artifactId>
<version>2.3.2</version>
<version>2.3.3</version>
<relativePath>../../solon-parent/pom.xml</relativePath>
</parent>

Expand Down
2 changes: 1 addition & 1 deletion __release/solon-base-render-bundle/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
<parent>
<groupId>org.noear</groupId>
<artifactId>solon-parent</artifactId>
<version>2.3.2</version>
<version>2.3.3</version>
<relativePath>../../solon-parent/pom.xml</relativePath>
</parent>

Expand Down
2 changes: 1 addition & 1 deletion __release/solon-plugin-bundle/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
<parent>
<groupId>org.noear</groupId>
<artifactId>solon-parent</artifactId>
<version>2.3.2</version>
<version>2.3.3</version>
<relativePath>../../solon-parent/pom.xml</relativePath>
</parent>

Expand Down
2 changes: 1 addition & 1 deletion __release/solon-plugin-bundle2/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
<parent>
<groupId>org.noear</groupId>
<artifactId>solon-parent</artifactId>
<version>2.3.2</version>
<version>2.3.3</version>
<relativePath>../../solon-parent/pom.xml</relativePath>
</parent>

Expand Down
2 changes: 1 addition & 1 deletion __release/solon-plugin-cloud-bundle/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
<parent>
<groupId>org.noear</groupId>
<artifactId>solon-parent</artifactId>
<version>2.3.2</version>
<version>2.3.3</version>
<relativePath>../../solon-parent/pom.xml</relativePath>
</parent>

Expand Down
4 changes: 3 additions & 1 deletion __release/solon-plugin-data-bundle/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
<parent>
<groupId>org.noear</groupId>
<artifactId>solon-parent</artifactId>
<version>2.3.2</version>
<version>2.3.3</version>
<relativePath>../../solon-parent/pom.xml</relativePath>
</parent>

Expand Down Expand Up @@ -42,6 +42,8 @@

<module>../../solon-projects/solon-plugin-data/bean-searcher-solon-plugin</module>

<module>../../solon-projects/solon-plugin-data/openjpa-solon-plugin</module>

<module>../../solon-projects/solon-plugin-data/redisson-solon-plugin</module>
</modules>
</project>
2 changes: 1 addition & 1 deletion __release/solon-shortcuts-bundle/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
<parent>
<groupId>org.noear</groupId>
<artifactId>solon-parent</artifactId>
<version>2.3.2</version>
<version>2.3.3</version>
<relativePath>../../solon-parent/pom.xml</relativePath>
</parent>

Expand Down
2 changes: 1 addition & 1 deletion __release/solon-tool-bundle/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
<parent>
<groupId>org.noear</groupId>
<artifactId>solon-parent</artifactId>
<version>2.3.2</version>
<version>2.3.3</version>
<relativePath>../../solon-parent/pom.xml</relativePath>
</parent>

Expand Down
2 changes: 1 addition & 1 deletion __test/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
<parent>
<groupId>org.noear</groupId>
<artifactId>solon-parent</artifactId>
<version>2.3.2-SNAPSHOT</version>
<version>2.3.3</version>
<relativePath>../solon-parent/pom.xml</relativePath>
</parent>

Expand Down
7 changes: 7 additions & 0 deletions __test/src/main/java/webapp/demo2_mvc/Param4Controller.java
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,13 @@ public UserModel test_json(UserModel user) throws IOException {
return user;
}

@Mapping("json_2")
public Object test_json_2(@Body Map user) throws IOException {
asyncTask.test();

return user;
}

@Mapping("json2")
public List<UserModel> test_json2(List<UserModel> list) throws IOException {
asyncTask.test();
Expand Down
16 changes: 16 additions & 0 deletions __test/src/main/java/webapp/demo2_mvc/Param5Controller.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
package webapp.demo2_mvc;

import org.noear.solon.annotation.*;

/**
* @author noear 2020/12/20 created
*/

@Mapping("/demo2/param5")
@Controller
public class Param5Controller {
@Mapping("test1")
public String test1(String a, @Param("params[a]") String a2) {
return a + ":" + a2;
}
}
23 changes: 23 additions & 0 deletions __test/src/main/java/webapp/dso/RouterInterceptorImpl2.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
package webapp.dso;

import org.noear.solon.annotation.Component;
import org.noear.solon.core.handle.Context;
import org.noear.solon.core.handle.Handler;
import org.noear.solon.core.route.*;

/**
* @author noear 2023/5/31 created
*/
@Component
public class RouterInterceptorImpl2 implements RouterInterceptor, PathLimiter {

@Override
public PathRule pathRule() {
return new PathRule().include("/admin/**").exclude("/admin/login");
}

@Override
public void doIntercept(Context ctx, Handler mainHandler, RouterInterceptorChain chain) throws Throwable {
chain.doIntercept(ctx, mainHandler);
}
}
24 changes: 24 additions & 0 deletions __test/src/test/java/features/ClassUtilTest.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
package features;

import org.junit.Test;
import org.noear.solon.core.util.ClassUtil;

/**
* @author noear 2023/6/2 created
*/
public class ClassUtilTest {
@Test
public void hashClass() {
assert ClassUtil.hasClass(() -> Claas1.class);
}

static class Claas1 {
static {
a();
}

static void a(){
throw new RuntimeException("");
}
}
}
13 changes: 13 additions & 0 deletions __test/src/test/java/features/HttpParam4Test.java
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,19 @@ public void json() throws IOException {
assert new Datetime(oNode2.get("date").getDate()).getYear() > 2000;
}

@Test
public void json_2() throws IOException {
//走json通过,这个格式会有问题
String json = "{id:1,name:'noear',date:'2021-12-12'}";

String json2 = path("/demo2/param4/json_2").bodyJson(json).post();

ONode oNode2 = ONode.loadStr(json2);

assert oNode2.get("id").getInt() == 1;
assert new Datetime(oNode2.get("date").getDate()).getYear() > 2000;
}

@Test
public void json2() throws IOException {
//走json通过,这个格式OK
Expand Down
Loading