写在前面

图片上传功能, web项目部署在本地Tomcat上并没有问题, 但是打成war包部署到Linux服务器Weblogic下却出现如题问题, 导致图片上传失败.

问题代码

String realPath = uploadFile.getMultipartRequest().getSession().getServletContext().getRealPath("/") + "/" + path;//文件的硬盘真实路径

在Windows下部署到Tomcat没有问题, 项目打成war包后部署到Weblogic获取不到项目根目录.

解决方案

通过获取class文件所在路径, 然后对该路径进行处理.

String rootPath = this.getClass().getResource("/").getPath().replaceAll("^\\/", "");//获取到的这个路径包含/WEB-INF/classes

结果日志

home/weblogic/Oracle/Middleware/user_projects/domains/base_domain/servers/3/tmp/_WL_user/cqyyt/i9yd39/war/WEB-INF/classes/

home前面并没有"/", 而且还包含"/WEB-INF/classes/"这样的路径也不是想要的结果.

最终修改

将获取到的路径前加"/", 同时把"/WEB-INF/classes"截取掉.

String rootPath = this.getClass().getResource("/").getPath().replaceAll("^\\/", "");//cnblogs

rootPath = StringUtils.substringBeforeLast(rootPath,"/WEB-INF/classes");

logger.info("==============uploadFile 测试获取项目根目录 rootPath: "+rootPath);

String realPath= "/" + rootPath + "/" + path;//文件的硬盘真实路径

到服务器上找, 发现部署后的war包解压到了路径下(也就是最终想要的路径rootPath):

/home/weblogic/Oracle/Middleware/user_projects/domains/base_domain/servers/3/tmp/_WL_user/cqyyt/i9yd39/war

结果日志

效果图

不明白的地方

奇怪的是这样写并不影响Tomcat部署, 本来还在想这样在路径前加"/"会影响Windows下Tomcat部署项目图片上传, 结果:

第二条数据的照片是本地测试结果, 发现虽然文件保存全路径前有"/"但是并不影响图片的上传?

小结

说到底还是获取路径的问题,对已获取的路径“改造”是一个思路.

感谢

linux weblogic部署项目路径,Weblogic部署web项目获取项目根目录为null相关推荐

  1. web服务器获取项目路径问题,读取web项目properties文件路径 解决tomcat服务器找不到properties路径问题...

    1.需求:有时候我们产品经理给我们的需求是会不断变化的,例如数量是1000现在变成500,我们不可以去改代码吧,这样很麻烦,所以就可以改配置文件properties(这个数据库链接一样),当然也有js ...

  2. java获取项目中的路径_java中几种获取项目路径方式

    转自http://caodaoxi.iteye.com/blog/1234805 在jsp和class文件中调用的相对路径不同. 在jsp里,根目录是WebRoot 在class文件中,根目录是Web ...

  3. tomcat配置项目路径或部署工程名

    在tomcat中的配置: 1.打开conf/server.xml  文件 在  <Host name="localhost"  appBase="webapps&q ...

  4. 2019新版《黑马web前端课程+项目实践课程》

    黑马web前端课程+项目实践课程 黑马web前端课程+项目实践课程 黑马web前端课程+项目实践课程 下载地址:百度网盘

  5. 只要听说过电脑的人都能看懂的网上pdf全书获取项目

    作者:周奇 最近我要获取<概统>的教材自学防挂科(线代已死),于是我看到 htt链ps:/链/max链.book接118接.com接/html/2018/0407/160495927.sh ...

  6. Weblogic部署web项目获取项目根目录为null

    写在前面 图片上传功能, web项目部署在本地Tomcat上并没有问题, 但是打成war包部署到Linux服务器Weblogic下却出现如题问题, 导致图片上传失败. 问题代码 String real ...

  7. SpringBoot部署项目到Linux上传文件路径问题

    SpringBoot部署项目到Linux上传文件路径问题 使用项目相对路径上传到话会上传到linux服务器到/tmp 临时文件目录中,但是问题是还会报异常 Caused by: java.io.Fil ...

  8. linux部署多个jar 会宕机_部署springboot+vue项目文档(若依ruoyi项目部署步骤)

    最近部署若依项目,一直部署失败,多亏有好人将这篇文章相赠,特地分享出来供大家学习参考,希望大家共同进步. 一:部署linux + nginx 部署后台代码 1.1 由于本人采用的是idea工具开发,所 ...

  9. jenkins自动部署到tomcat/weblogic

    转载自:http://blog.csdn.net/minebk/article/details/72763859 记录初衷: 由于每次项目部署非常痛苦,很麻烦,遂使用jenkins来部署项目,只需点击 ...

  10. linux运行dock打包的镜像,Linux部署之Docker方式部署项目

    Linux部署之Docker方式部署项目 1. 使用Docker对前端vue项目进行部署 1.1 环境准备 服务器或者虚拟机上先安装好Nginx和相关配置 docker pull nginx 拉去最新 ...

最新文章

  1. mysql源码安装都能装什么模块_源码安装后,添加其他模块
  2. jQuery Masonry 一个 jQuery动态网格布局的插件
  3. 签名算法sha256withrsa,RSA数字证书公钥私钥生成,base64转码和文件日志
  4. 由浅入深剖析go channel
  5. ASP.NET 中 Cookie 的基本知识
  6. 百度移动联盟(munion)-广告平台投放流程详细介绍 (绿色通道)
  7. MySQL的timestamp字段可以使用的范围是多少
  8. sparkSession常见参数设置
  9. 好象现在才开始热爱生活了
  10. LNMP详解(十一)——Nginx URL重写原理
  11. 三种方式解决vue中v-html元素中标签样式
  12. 高斯克吕格投影换带计算(高斯正反算公式)
  13. wunderlist会提示找不到libffi.so.5
  14. 高质量商业计划书的10个写作心得
  15. java opts tomcat,tomcat JAVA_OPTS配备
  16. 0055-在OpenCV环境下合成高动态范围图像(HDR)
  17. N-gram 特征提取
  18. Pytest的基本使用
  19. 基于安卓的健康体检预约系统APP
  20. Ubuntu Xfce桌面系统设置项

热门文章

  1. 使用 docker 来安装 oracle 11c
  2. 利用DeskPins软件将windows窗口置顶
  3. 非常好用的354款Procreate新型笔刷
  4. 如何从python官网下载模块-Python各种模块下载及安装配置
  5. ad16怎么画弧线_ad16怎么画弧线_板绘是什么?怎么用?
  6. VC++程序设计与应用--MFC应用程序概述
  7. [2021]免费下载外文文献
  8. 公司年会不知道送什么?2021平价高颜值蓝牙耳机推荐
  9. linux中VScode中文乱码问题:一行代码解决
  10. biu~biu~常用网站