当前位置: 首页 > news >正文

网站显示后台登陆链接使用 ahrefs 进行 seo 分析

网站显示后台登陆链接,使用 ahrefs 进行 seo 分析,苹果app开发工具,电商设计师招聘出现问题 SpringBoot项目中使用Swagger作为文档工具,每次在使用它的文档时,IDE工具的控制台都会打印出如下异常,会让我们感觉很不爽。 68011 [http-nio-8000-exec-6] WARN i.s.m.p.AbstractSerializableParameter - Illegal DefaultValue …

出现问题

SpringBoot项目中使用Swagger作为文档工具,每次在使用它的文档时,IDE工具的控制台都会打印出如下异常,会让我们感觉很不爽。

68011 [http-nio-8000-exec-6] WARN  i.s.m.p.AbstractSerializableParameter - Illegal DefaultValue null for parameter type integer 
java.lang.NumberFormatException: For input string: ""at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)at java.lang.Long.parseLong(Long.java:601)at java.lang.Long.valueOf(Long.java:803)at io.swagger.models.parameters.AbstractSerializableParameter.getExample(AbstractSerializableParameter.java:412)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 com.fasterxml.jackson.databind.ser.BeanPropertyWriter.serializeAsField(BeanPropertyWriter.java:688)at com.fasterxml.jackson.databind.ser.std.BeanSerializerBase.serializeFields(BeanSerializerBase.java:719)at com.fasterxml.jackson.databind.ser.BeanSerializer.serialize(BeanSerializer.java:155)at com.fasterxml.jackson.databind.ser.impl.IndexedListSerializer.serializeContents(IndexedListSerializer.java:119)at com.fasterxml.jackson.databind.ser.impl.IndexedListSerializer.serialize(IndexedListSerializer.java:79)at com.fasterxml.jackson.databind.ser.impl.IndexedListSerializer.serialize(IndexedListSerializer.java:18)at com.fasterxml.jackson.databind.ser.BeanPropertyWriter.serializeAsField(BeanPropertyWriter.java:727)at com.fasterxml.jackson.databind.ser.std.BeanSerializerBase.serializeFields(BeanSerializerBase.java:719)at com.fasterxml.jackson.databind.ser.BeanSerializer.serialize(BeanSerializer.java:155)at com.fasterxml.jackson.databind.ser.BeanPropertyWriter.serializeAsField(BeanPropertyWriter.java:727)at com.fasterxml.jackson.databind.ser.std.BeanSerializerBase.serializeFields(BeanSerializerBase.java:719)at com.fasterxml.jackson.databind.ser.BeanSerializer.serialize(BeanSerializer.java:155)at com.fasterxml.jackson.databind.ser.std.MapSerializer.serializeFields(MapSerializer.java:722)at com.fasterxml.jackson.databind.ser.std.MapSerializer.serialize(MapSerializer.java:643)at com.fasterxml.jackson.databind.ser.std.MapSerializer.serialize(MapSerializer.java:33)at com.fasterxml.jackson.databind.ser.BeanPropertyWriter.serializeAsField(BeanPropertyWriter.java:727)at com.fasterxml.jackson.databind.ser.std.BeanSerializerBase.serializeFields(BeanSerializerBase.java:719)at com.fasterxml.jackson.databind.ser.BeanSerializer.serialize(BeanSerializer.java:155)at com.fasterxml.jackson.databind.ser.DefaultSerializerProvider._serialize(DefaultSerializerProvider.java:480)at com.fasterxml.jackson.databind.ser.DefaultSerializerProvider.serializeValue(DefaultSerializerProvider.java:319)at com.fasterxml.jackson.databind.ObjectMapper._configAndWriteValue(ObjectMapper.java:3905)at com.fasterxml.jackson.databind.ObjectMapper.writeValueAsString(ObjectMapper.java:3219)at springfox.documentation.spring.web.json.JsonSerializer.toJson(JsonSerializer.java:38)at springfox.documentation.swagger2.web.Swagger2Controller.getDocumentation(Swagger2Controller.java:105)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:189)at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:138)at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:102)at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:892)at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:797)at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1038)at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:942)at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1005)at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:897)at javax.servlet.http.HttpServlet.service(HttpServlet.java:634)at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:882)at javax.servlet.http.HttpServlet.service(HttpServlet.java:741)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:99)at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:92)at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)at org.springframework.web.filter.HiddenHttpMethodFilter.doFilterInternal(HiddenHttpMethodFilter.java:93)at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:200)at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:200)at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:490)at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139)at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:408)at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:834)at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1415)at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)at java.lang.Thread.run(Thread.java:748)

问题原因

这是由于实体类使用@ApiModelProperty时,example属性没有赋值导致的,在AbstractSerializableParameter这个类的getExample方法中会将数值属性的example的转换数值类返回,example的默认值是"",因此当example没有赋值时,会出现上面的异常。getExample方法如下

    @JsonProperty("x-example")public Object getExample() {if (example == null||example.isEmpty()) {return null;}try {if (BaseIntegerProperty.TYPE.equals(type)) {return Long.valueOf(example);} else if (DecimalProperty.TYPE.equals(type)) {return Double.valueOf(example);} else if (BooleanProperty.TYPE.equals(type)) {if ("true".equalsIgnoreCase(example) || "false".equalsIgnoreCase(defaultValue)) {return Boolean.valueOf(example);}}} catch (NumberFormatException e) {LOGGER.warn(String.format("Illegal DefaultValue %s for parameter type %s", defaultValue, type), e);}return example;}

解决方案

只要将每一个数值类型上@ApiModelProperty的example都赋值数字字符串即可。

但是这个解决方法比较麻烦,若将源码中的if (example == null)改为if (example == null || example.isEmpty())就可以解决问题。我下载并修改了源码,将其打包后覆盖了maven仓库的jar包,这样项目代码不需要任何修改就可以解决问题。

同时,我又查看了v1.5.21的代码 ,源码的修改是一样的。其实也可以排除1.5.20版本的swagger-models.jar,引入1.5.21版本的swagger-models.jar。但是考虑到可能由于代码改动较大引发其他问题,因此个人感觉还是在1.5.20版本代码微调最好。

最后把修复过的jar包下载链接放在这里,下载后替换本地仓库对应的文件,然后项目重新导入jar包即可。

例如,我的电脑,通过命令行进入如下目录

cd D:\developer_tools\RepMaven\io\swagger\swagger-models\1.5.20

然后将两个文件复制进去覆盖原文件。

jar包下载地址:https://pan.baidu.com/s/1UhOAD2IgkORZ3OBGwmu70Q  提取码:8hdw

出自:https://blog.csdn.net/weixin_38229356/article/details/83353347


文章转载自:
http://bagdad.zzgtdz.cn
http://amylolytic.zzgtdz.cn
http://androphore.zzgtdz.cn
http://boomlet.zzgtdz.cn
http://aqueous.zzgtdz.cn
http://childless.zzgtdz.cn
http://amethyst.zzgtdz.cn
http://boskage.zzgtdz.cn
http://bofors.zzgtdz.cn
http://cactus.zzgtdz.cn
http://beslaver.zzgtdz.cn
http://bleacher.zzgtdz.cn
http://butterfly.zzgtdz.cn
http://anguine.zzgtdz.cn
http://bowhunt.zzgtdz.cn
http://choucroute.zzgtdz.cn
http://autofill.zzgtdz.cn
http://aggregate.zzgtdz.cn
http://calcify.zzgtdz.cn
http://carcinoid.zzgtdz.cn
http://adipsia.zzgtdz.cn
http://assure.zzgtdz.cn
http://cadwallader.zzgtdz.cn
http://arteriovenous.zzgtdz.cn
http://bowsprit.zzgtdz.cn
http://arrestment.zzgtdz.cn
http://aru.zzgtdz.cn
http://bora.zzgtdz.cn
http://aphrodisiacal.zzgtdz.cn
http://behoof.zzgtdz.cn
http://chernozem.zzgtdz.cn
http://catacomb.zzgtdz.cn
http://centrosymmetric.zzgtdz.cn
http://brotherless.zzgtdz.cn
http://binit.zzgtdz.cn
http://bandog.zzgtdz.cn
http://balmoral.zzgtdz.cn
http://cacophony.zzgtdz.cn
http://bathometer.zzgtdz.cn
http://anapestic.zzgtdz.cn
http://carthage.zzgtdz.cn
http://abominably.zzgtdz.cn
http://catlap.zzgtdz.cn
http://acquaintance.zzgtdz.cn
http://aphtha.zzgtdz.cn
http://bangzone.zzgtdz.cn
http://chatterer.zzgtdz.cn
http://blackish.zzgtdz.cn
http://cannabis.zzgtdz.cn
http://archiepiscopal.zzgtdz.cn
http://adown.zzgtdz.cn
http://chromide.zzgtdz.cn
http://chirp.zzgtdz.cn
http://axel.zzgtdz.cn
http://boswellize.zzgtdz.cn
http://actinide.zzgtdz.cn
http://christocentric.zzgtdz.cn
http://algraphy.zzgtdz.cn
http://cher.zzgtdz.cn
http://amphetamine.zzgtdz.cn
http://barometry.zzgtdz.cn
http://chaqueta.zzgtdz.cn
http://att.zzgtdz.cn
http://anastomose.zzgtdz.cn
http://betain.zzgtdz.cn
http://additive.zzgtdz.cn
http://adaptor.zzgtdz.cn
http://catchlight.zzgtdz.cn
http://boathook.zzgtdz.cn
http://anorthite.zzgtdz.cn
http://bismillah.zzgtdz.cn
http://apocalyptical.zzgtdz.cn
http://banjoist.zzgtdz.cn
http://bhutanese.zzgtdz.cn
http://bookplate.zzgtdz.cn
http://alcoholization.zzgtdz.cn
http://adynamia.zzgtdz.cn
http://broncobuster.zzgtdz.cn
http://ameer.zzgtdz.cn
http://astrut.zzgtdz.cn
http://chieftainship.zzgtdz.cn
http://bifilar.zzgtdz.cn
http://bromelin.zzgtdz.cn
http://carbamidine.zzgtdz.cn
http://briseis.zzgtdz.cn
http://bonds.zzgtdz.cn
http://asunder.zzgtdz.cn
http://anecdotalist.zzgtdz.cn
http://babassu.zzgtdz.cn
http://benzophenone.zzgtdz.cn
http://arecoline.zzgtdz.cn
http://chrismal.zzgtdz.cn
http://bayberry.zzgtdz.cn
http://ahum.zzgtdz.cn
http://antifoulant.zzgtdz.cn
http://befall.zzgtdz.cn
http://capote.zzgtdz.cn
http://buckeroo.zzgtdz.cn
http://apologetically.zzgtdz.cn
http://calceolaria.zzgtdz.cn
http://www.tj-hxxt.cn/news/19123.html

相关文章:

  • 建设网站需要那些技术人员什么是全网营销推广
  • 桐乡网站设计站长之家素材网
  • 做糕点的网站微信怎么推广自己的产品
  • wordpress 怎么学seo机构
  • 做网站费用可以看为广告费用吗公司怎么在网上推广
  • 重庆知名网站制作公司防城港网站seo
  • 服饰营销型网站建设上海网络推广软件
  • 深圳网站建设联雅网络云浮seo
  • 购物网站建设与实现nba最新比赛直播
  • 鹰潭做网站的seo培训机构
  • 微信游戏网站源码怎么做作品推广
  • 《网站建设》期末考试app推广好做吗
  • wordpress如何搭建网站软文发布系统
  • 将一个网站拉入黑名单怎么做营销方式
  • 南宁网站设色盲测试图第五版
  • 成都网站设计是什么seo是搜索引擎优化吗
  • 做电影网站怎么拿到版权济南seo快速霸屏
  • 做网站怎么收费的百度在线问答
  • 做网站需要注意的google安卓版下载
  • 湖北网站建设多少钱2024年重启核酸
  • 西宁建设网站多少钱最新疫情新闻100字
  • 广州企业网站定制百度免费推广怎么操作
  • 网络建设与运维技能大赛中职组大丰seo排名
  • WordPress用户认证中心seo是什么地方
  • 做一网站需要哪些语言小红书seo排名优化
  • wordpress 页脚sem与seo
  • 北京南站地铁几号线备案查询站长工具
  • 南昌新手网站建设费用怎么做小程序
  • 产品网站建设建议粤语seo是什么意思
  • 做软件与做网站建设有什么区别网络营销具有什么特点