struts2无法上传png,jpg,excel表格,word文档的问题

   今天忽然接到一客户反馈,一个运行中的系统图片无法上传。我就纳闷了,上传一直没接到过问题,怎么就无法上传了呢。根据了解的情况,客户的上传应该是被拦截器拦截了,说明白点,就是本来在允许范围内的图片被非法拦截,导致不能上传。马上启用测试帐户进行测试,一切ok。然后联系过去,我还耐心的教该客户是不是无意中选择了非法的类型。然后还让他把他要上传的图片发了过来,在这边上传,一切也ok。这个问题就有点麻烦了。

   如果的确这样的话,问题应该出在拦截器。

   找了拦截器配置,类型过滤的配置如下:

 <param name="allowedTypes">
     image/bmp,image/png,image/gif,image/jpeg,image/jpg,application/msword,application/vnd.ms-excel

   </param>

 jpg的图片是被允许的啊。忽然想到了,何不将文件类型打印出来看看。

 然后去掉

 <param name="allowedTypes">
     image/bmp,image/png,image/gif,image/jpeg,image/jpg,application/msword,application/vnd.ms-excel

   </param>(拦截器在action之前运行,否则根本进入action)

  通过本机测试,各种图片的文件类型如下。

  bmp:image/bmp

  png:image/n-png

  jpg:image/jpg

  word:application/msword

  excel:application/vnd.ms-excel

  这种情况是也就是没有出错的情况。

  然而在另外一台机子上,各种文件类型如下:

 

  bmp:image/bmp

  png:image/n-png

  jpg:image/pjpeg

  word:application/actet-stream

  excel:application/actet-stream

  原因就处在这里,不能上传的机子上,jpg文件的类型是image/pjpeg,当然jpg文件就被拦截了。

  拦截器做如下设置:

  <param name="allowedTypes">
     image/bmp,image/png,image/gif,image/pjpeg,image/jpg,application/msword,application/vnd.ms-excel,application/actet-stream
    </param>

  解决了有的电脑无法上传的问题。有点郁闷,为什么这个格式类型不同的系统不同意呢?看来标准很重要。否则百家争鸣看来热闹,其实麻烦多多。

Python画柱状图(双柱状图,三柱状图)且显示对应数值 使用python实现双柱状图和三柱状图,并且在柱状图形的顶部显示对应数值; 阅读详情

相关推荐

基于zynq在linux下的AXI-CAN实战

从petalinux的搭建,到uboot、kernel、rootfs的调试、打包提示:以下是本篇文章正文内容,下面案例可供参考本次要讲述的zynq的AXI-CAN实战小知识就说到这里了,兄弟萌要有什么指导意见或疑问可以在评论区留下"足迹"。

qq_45521099的博客 3167

Struts2文件上传方式与上传失败解决方式

首先将几个对象弄出来第一个 上传页面第二个 上传action第三个 startut2配置文件 我的文字描述不是很好,但是终归是自己写出来的,后来我在网上看到一篇关于文件上传描述的非常清楚的文章, 链接地址是:http://www.blogjava.net/sxyx2008/archive/2009/10/22/299285.html,大家可以看看,真的挺详细,比我的好多了 jsp页面 ...

weixin_34130269的博客 312

STM32G474 FDCAN滤波器配置与多ID接收实战

本文详细介绍了STM32G474 FDCAN滤波器配置与多ID接收实战,重点解析了掩码过滤和范围过滤两种模式的工作原理及配置步骤。通过实际项目案例展示了如何高效配置多个滤波器实现多ID报文接收,并提供了接收FIFO配置与中断处理的优化策略,帮助开发者提升CAN通信系统的稳定性和实时性。

happy2的博客 875

springboot前端上传文件的显示以及只能访问jpg不能访问png问题

上一篇文章讲了如何通过前端页面上传图片文件,这篇来讲如何将上传好的图片展示在前端页面。当图片访问不了时,注意前端报错,以及路径格式。

qq_51615662的博客 739

基于企业微信客服与GPT-3构建合规微信AI助手:从原理到部署实践

在人工智能与即时通讯融合的浪潮中,自然语言处理(NLP)与API集成成为构建智能对话系统的核心技术。其原理在于通过API网关接收用户输入,调用云端大语言模型进行处理,再将结果返回给用户,实现自动化交互。这项技术的核心价值在于将前沿AI能力无缝嵌入到日常高频应用场景中,极大地提升了客服自动化、智能问答与个性化服务的效率与体验。企业微信作为官方认可的企服平台,其开放的客服API接口为开发者提供了稳定、合规的消息通道,是连接微信生态与外部AI服务的理想桥梁。本文聚焦于如何利用企业微信客服API与OpenAI的GP

weixin_28727943的博客 628

(十二)深入理解蓝牙BLE之“移植Bluez 5.18源码到嵌入式平台”

在某嵌入式平台进行蓝牙开发,发现上面居然没有btmon,hciattach,hcitool等蓝牙调试工具,无奈之下,只好移植bluez协议栈到目标嵌入式平台,建议移植5.18版本(最新的5.54版本居然hcitool等工具不是默认编译的,需要修改Makefile才可以)。 看到很多讲解移植过程的文章都是需要积分的,觉得写一篇免积分的文章还是有些意义的,欢迎同行来交流。 移植环境:Linux ubuntu 目标平台:sigmastar 星宸科技 配置交叉编译工具链:export PATH=$PATH:

2965

Struts2上传文件异常: java.lang.RuntimeException: Unable to load bean org.apache.struts2.dispatcher.multipart.MultiPartRequest (jakarta

 在测试Struts2权威指南介绍的struts2文件上传,发现如下异常: java.lang.RuntimeException: Unable to load bean org.apache.struts2.dispatcher.multipart.MultiPartRequest (jakarta) - [unknown location].......................

lansky07 1万+

vscode的launch:program ‘‘ does not exist

如图 一般是由于launch.json文件没有配置好的缘故。在右下角的ADD configuration如选第二个登录: 看到program这一栏,这一栏很重要,一般是选择你CMakelist,编译出来的可执行文件 看我CMakelist, 我生成的可执行文件是test_,所以路径可以这样输入: 我在之前cmake的时候已经有了test_这个文件了 然后就可以运...

狂小虎/Anthony Dave的博客 KuangXiaoHu's Blogs 5万+

解决Struts2上传docx文件变大的问题

解决Struts2上传docx文件变大的问题,今有一项目采用struct2开发,用到了其中的上传文件功能,发现doc文件和图片文件上传都是正常的唯有office的docx版本文件上传发生错误。上传以后的docx能用office2007打开但是却提出文件格式错误的信息,经过与源文件进行对比发现上传后的文件多个10K而导致文件格式错误。经过检查发现是拷贝文件的时候发生错误

陈坚 浙江绍兴 1067

Android系统去掉长按webview界面弹框中的分享功能

Android 系统去解决长按显示内容,去掉分享功能,不论那个界面,是所有界面都需要满足。如果仅仅去掉系统自带的,那么系统来处理如果客户自定义,部分App自定义的菜单项,不是调用系统的,那么还是需要应用去解决的。之前做过Editext,其实还需要去TextView,最难点的就是WebView中的HTML了 去分享功能了。WebView中涉及到分享功能菜单的界面,/***//***//***//***//***//***//***//***//**

十年饮冰,难凉热血 1019

游戏大厂技术护城河:你以为他们靠“美术和买量”,其实背后全是硬家伙

先把效果堆满到快上线了才发现低端机跑不动然后疯狂砍特效、降分辨率,画面崩、口碑崩机型分档(低/中/高)每帧预算(CPU/GPU 各多少 ms)每种资源预算(贴图、网格、粒子数量)性能自动回归(每天跑性能测试,发现波动立刻报警)大白话:小厂像装修到入住前才发现电路不够,临时拉线;大厂从设计图开始就算承重、算电路、算水压。玩家会不会来?活动会不会爆?版本会不会翻车?外挂会不会泛滥?竞品会不会抄?流量不确定 → 可扩容架构版本不确定 → 灰度与回滚。

本博客聚焦游戏开发技巧、创业实战心得及大学热门课程干货。这里既有技术深度,也有思维广度,无论你是开发者、创业者还是高校学子,都能在这里找到适合自己的成长之路! 105

struts2无法上传png,jpg,excel表格,word文档的问题(转)

   今天忽然接到一客户反馈,一个运行中的系统图片无法上传。我就纳闷了,上传一直没接到过问题,怎么就无法上传了呢。根据了解的情况,客户的上传应该是被拦截器拦截了,说明白点,就是本来在允许范围内的图片被非法拦截,导致不能上传。马上启用测试帐户进行测试,一切ok。然后联系过去,我还耐心的教该客户是不是无意中选择了非法的类型。然后还让他把他要上传的图片发了过来,在这边上传,一切也ok。这个问题就有点...

wb284551926的博客 172

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

解释和对比“application/octet-stream“与“application/x-protobuf“

在现代 Web 和分布式系统的开发中,数据的传输和交换格式扮演着关键角色。为了确保数据在不同系统之间的传输过程中保持一致性,MIME 类型(Multipurpose Internet Mail Extensions)被广泛应用于描述数据的格式和内容类型。在 HTTP 请求和响应中,头字段用于标识消息体中的数据类型。和,并对它们的应用场景和技术特点进行对比。MIME 类型是 Internet 标准,用于描述多种文件类型的格式,以便在网络上进行传输。

私聊前往站内信:https://i.youkuaiyun.com/#/msg/chat/weixin_44976692 1万+

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

NGINX配置文件学习笔记

NGINX配置文件学习笔记 Nginx 是一个很强大的高性能Web和反向代理服务器.今天,本地服务无论如何也起不来,nginx的配置文件也看不懂,所以感觉很尴尬,于是拿出了一个小时的时间学习了一下NGINX的配置文件,现在做一下记录. 打开原始的nginx.conf文件 其中user用来配置用户或用户组,如果不指定将会默认为nobody, 配置该参数的意义在于: 在linux中所有的存

Panda_IAmGoodPanda的博客 744

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

前端接收 type: “application/octet-stream“ 格式的数据并下载,解决后端返回不唯一

前端接收 type: “application/octet-stream“ 格式的数据并下载,还有后端既返回octet-stream还返回JSON数据时的处理方法

qq_53145332的博客 5万+

application/octet-stream

当浏览器在请求资源时,会通过http返回头中的content-type决定如何显示/处理将要加载的数据,如果这个类型浏览器能够支持阅览,浏览器就会直接展示该资源,比如png、jpeg、video等格式。在某些下载文件的场景中,服务端可能会返回文件流,并在返回头中带上Content-Type:application/octet-stream,告知浏览器这是一个字节流,浏览器处理字节流的默认方式就是下载。 Application/octet-stream是应用程序文件的默认值。意思是未知的应用程序文件,浏览器一

qq_42582773的博客 7万+

struts2的开发(文件上传下载)

文件上传: 第一步:在WEB-INF/lib下加入commons-fileupload-1.2.1.jar、commons-io-1.3.2.jar。这两个文件可以从http://commons.apache.org/下载。 第二步:把form表的enctype设置为:“multipart/form-data“,如下:      第三步:在Action类中添加以下属性,属性红色部

zhg419051544的专栏 384

请求后端出现“Content type ‘application/octet-stream‘not supported“错误解决方案

主要的解决思路是,要指定上传文件时其他附加信息的 contentType,那么去FormData对象如何指定某个参数的 contentType属性。Vue应该怎么传递呢?使用 FormData 对象。此报错是Springboot 报错。看看Postman 正确的传递方式。

流云细水 1万+

application/octet-stream是什么意思

octet-stream指任意类型的二进制流数据。 octet 八重奏,在这里指八个byte。 octet这个词是从拉丁文和希腊文的数字octo派生而来的,意指八。

hhkun0120的专栏 1万+

application/octet-stream里的octet是什么意思

在电脑领域里,一个octet是指八个比特(bit)为一组的单位,中文称作八字节。 在法国和罗马尼亚,octet这个字通常是指一个字节(byte)的意思;当我们称一兆字节(megabyte,MB),在这些地区会称作megaoctet。bit和byte在法语里是异义同音字。 Octet除了下面提到的唯一例外之外,都是指一个具有八个比特的实体。因此在电脑网络标准中,在byte容易引起混淆的地方都仅使用Octet。 Octets 有两种不同的前缀,一种为 2 的多次方,另一种是国际单位制...

amber_o0k的博客 2万+

当请求类型是octet-stream时,SpringBoot 如何完成文件上传

一、问题背景 这个问题困扰了我一上午,搜索了很多博客,发现网上的springboot都是使用Multipart来接收文件,而客户端使用的是binary,用二进制流来上传文件的,下面记录一下我的解决历程。 二、基础知识 一个请求的参数往往可以在url,headers以及body里面,这里我们只研究body里面的参数,如下图body可以有下面几种形式,我们来比较一下form-data和binary。 ...

qq_38491310的博客 3万+

Email协议小贴

Email协议SMTP协议:1 信件体:在RFC822中,是一系列的文本行2 信头:   结构较复杂,总的来说是由一些字段组成,这些字段为用户和程序提供了关于信件的信息,了解信头就是弄清楚信头的各个字段。每个信头字段由一行或多行组成,对于跨多行的字段,附加行以一个空格开始作为续行。Field-name(字段名)由一系列可以打印的US-ASCII字符组成,除空格和":"外,大多数字段名称由一系列字母

mmzsyx的专栏 3289

带图片的Excel表格导入/Excel中png图片的获取

需求:Excel表格是学校的很多信息,包括基本信息,专业信息等,有多个sheet;需以此表格为依据导入到数据库生成一个学校;或者更新一个学校的信息; 难点: Excel表格中 学校的logo 是图片;是jpg,png,等格式;png格式是 如何正确获取到这张图片。 使用的第三方处理excel表格的库为: \PhpOffice\PhpSpreadsheet 代码: public sta...

u013862108的博客 2330

js原生下载excel(xlxs及xls格式)、word、png(图片格式)方法

(亲测有效)原生js下载Excel、word、png(图片)格式 js方法部分: // 下载文件(格式) type:1 excel 2 word 3 image // url为接口部分:如 /restart/getchinaareainfo.do // 传参方式 let params = { // username:'小名', // zyUserId:'23123' // } // 调用方

Shimeng_1989的博客 1473
上一篇: mysql常用命令
下一篇: struts2整合spring,ext出现的一个问题
excellentjava
博客等级 码龄20年 0粉丝 0原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值