mvc项目配置完swagger2后,请求带文件上传的接口异常

问题遇到的现象和发生背景

mvc项目配置完swagger2后

layer.open({
 type: 2,
          title: '预览',
          area: ['35%' , '45%'],
          shadeClose: true, //点击遮罩关闭
          traditional: true,
          content: 'XXXXXX.do?id='+item+'&action=get&op=view'
        });

没有配置swagger一切正常,配置之后调用layer.open返回页面
apipost请求:java.lang.IllegalArgumentException: Expected MultipartHttpServletRequest: is a MultipartResolver configured?
浏览器请求:org.springframework.web.multipart.MultipartException: The current request is not a multipart request

我的解答思路和尝试过的方法

该配置的都配置了

 
    <bean id="multipartResolver"
        class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
        
        <property name="maxUploadSize">
            <value>104857600value>
        property>
        <property name="maxInMemorySize">
            <value>4096value>
        property>
    bean>

过滤器也进行了判断

    String enctype = httpRequest.getContentType();
    HttpServletRequest hsrq = null;
    if(StringUtils.isNotBlank(enctype) && enctype.contains("multipart/form-data")){
      // 多文件上传
      CommonsMultipartResolver commonsMultipartResolver = new CommonsMultipartResolver(httpRequest.getSession().getServletContext());
      if(commonsMultipartResolver.isMultipart(httpRequest)){
        MultipartHttpServletRequest multipartRequest = commonsMultipartResolver.resolveMultipart(httpRequest);
        hsrq = new HtmlTagEscapeRequest(multipartRequest);
      }else{
        hsrq = new HtmlTagEscapeRequest(httpRequest);
      }
    }else{
      hsrq = new HtmlTagEscapeRequest((HttpServletRequest) request);
    }
    chain.doFilter(hsrq, response);

以上方法都不行,请求带有文件上传的接口异常,请求解决方法

现在用layer.open去打开一个页面时会报下方的错 ,然后改成了ajax调用并且切换了contentType能调用成功了,但是弹出层返回的页面又会出现样式错乱的问题

layer.open({
          type: 2,
          title: '预览',
          area: ['35%' , '45%'],
          shadeClose: true, //点击遮罩关闭
            traditional: true,
          content: 'xxxxx.do?id='+item+'&action=get&op=view'
        });
  
//改成下面ajax方式可以正常访问接口,返回页面
      /*$.ajax({
          url: 'xxxxx.do?id='+item+'&action=get&op=view',
          type: 'POST',
          contentType: "multipart/form-data; boundary=--------------------------368653658605581226860316",
          success: function (result) {
              layer.open({
                  title: '预览',
                  area: ['35%' , '45%'],
                  shadeClose: true, //点击遮罩关闭
                  content: result,
              });
          }
      });*/
  

没有配置swagger一切正常,配置之后异常,项目中用的springjar为4.2.5,swagger为2.7.0,该配的都配置了,异常和代码为上面示例,求大家给个解决方法

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^