最近写了一个数据库同步的程序,见之前的博客,没有用到spring框架来集成,用的时纯Java代码。然后,项目经理要我把程序合到spring boot框架中,因为涉及到多数据源,时间又比较紧,同意我直接将纯Java代码合进去。

用的jenkins进行部署,当部署成功后,发现出现一个错误:

定位到代码处:

 String resource = "com/huifu/newhl/nobel/config/mybatis-configuration.xml";
InputStream inputStream = null;
try {
inputStream = Resources.getResourceAsStream(resource);
} catch (IOException e) {
e.printStackTrace();
}
SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(inputStream, dataName);
SqlSession session = sessionFactory.openSession();

在第8行,报了nullPointer。那就奇怪了,明明在纯Java代码环境,可以正常运行,怎么通过spring boot打包发布到jboss上运行就不行了。百思不得其解,只好去问项目经理,项目经理还是有经验,首先不要慌!仔细分析问题原因,建议到百度搜索JBOSS Resources.getResourceAsStream null,然后大概定位出问题,是因为我的xml文件放在src/main/java路径下,当打包成war包的时候,并没有生成相应的文件,导致查询不到,我解压了war包,到下面一看,果然没有config目录!

那当然找不到xml文件,自然报null错误,项目经理说要把xml文件放在src/main/resouces目录下面,相同的路径。至此,问题基本已经解决,即src/main/java和src/main/resouces的区别,可以参考这篇博客:https://blog.csdn.net/jsflzhong/article/details/52077075,maven打包的时候,认为src/main/java就是源代码的文件,xml文件不会被打包进如jar或者war包。

spring boot生成的war包运行时出现java.lang.NullPointerException: null的更多相关文章

  1. 新人踩坑的一天——springboot注入mapper时出现java.lang.NullPointerException: null

    来公司的第二周接到了定时任务的开发需求:每天早上十点发送用户报表邮件 .校招新人菜鸟没做过这玩意有些懵(尴尬)于是决定分步写,从excel导出->邮件发送->定时器实现->mappe ...

  2. spring boot打包成war包的页面该放到哪里?

    背景 经常有朋友问我,平时都是使用spring mvc,打包成war包发布到tomcat上,如何快速到切换到spring boot的war或者jar包上? 先来看看传统的war包样式是什么样子的? 1 ...

  3. Spring boot Unable to start embedded Tomcat报错 java.lang.NoSuchMethodError: javax.servlet.ServletContext.getVirtualServerName()

    Spring boot Unable to start embedded Tomcat 报错 java.lang.NoSuchMethodError: javax.servlet.ServletCon ...

  4. 解决Android Studio运行时报Error:java.lang.NullPointerException (no error message)错误

    原文:解决Android Studio运行时报Error:java.lang.NullPointerException (no error message)错误                    ...

  5. Spring Boot 项目打成 war 包部署

    Spring Boot 一个非常方便的功能就是支持内置的 Servlet 容器,一般我们部署 Spring Boot 应用时都是打成一个可执行的 Jar 包进行部署.其实 Spring Boot 也是 ...

  6. spring boot 打包为war包方法

    刚刚接触spring boot,其快速开发的特性吸引我去研究一下.于是我写了个demo,用spring boot内置的tomcat运行的很好,但是我需要把它部署到外部的tomcat中,于是从网上查找资 ...

  7. Spring Boot可执行Jar包运行原理

    目录 1. 打可执行Jar包 2. 可执行Jar包内部结构 3. JarLauncher 4. 简单总结 5. 远程调试 Spring Boot有一个很方便的功能就是可以将应用打成可执行的Jar.那么 ...

  8. springboot下jar包方式运行Caused by: java.lang.ExceptionInInitializerError: null

    idea调试过程中不会出现此问题,异常如下 org.springframework.beans.factory.BeanCreationException: Error creating bean w ...

  9. spring mybatis 整合问题Error parsing Mapper XML. Cause: java.lang.NullPointerException

    14:30:40,872 DEBUG SqlSessionFactoryBean:431 - Parsed configuration file: 'class path resource [myba ...

随机推荐

  1. 判断单向连通图(拓扑排序+tarjan缩点)

    题意: 给你一个有向图,如果对于图中的任意一对点u和v都有一条从u到v的路或从v到u的路,那么就输出’Yes’,否则输出’No’. 理解:当出现两个及以上入度为0的点(有一个就可能是别人到它,有两个的 ...

  2. eclipse的常用设置(空间新建后需要的配置)

    地址:https://blog.csdn.net/qiaorui_/article/details/78424491 说明:              新下载的eclipse或者新建了一个工作空间,之 ...

  3. hash加密

    hash import hashlib content = 'its so coll'.encode('utf8') o = hashlib.sha1() # 创建一个hash对象 o.update( ...

  4. orcal - 添加用户、授权

    create user jy2 identified by jy2; grant dba to jy2;

  5. 重建整个数据库的索引(Server2000)

    declare @dbname varchar(50)select @dbname ='WebFZ' create table #tableT(tn sysname)insert into #tabl ...

  6. 关于 early Z 与 z-prepass

    今天在考虑优化MOBA项目中的树木时(采用了ALPHATEST)时,与同事讨论中深入了解了这两个概念. 以前居然不知道有early z的存在,真是惭愧.... 上个链接: 深入剖析GPU Early ...

  7. NTP时间服务

    时间服务 NTP:Network Time Protocol 作用:用来给其他主机提供时间同步服务 NTP的配置文件 /etc/ntp.conf NTP相关的命令 date:显示/修改系统时间 hwc ...

  8. 浅谈openstack中使用linux_bridge实现vxlan网络

    openstack环境: 1 版本:ocata 2 系统:ubuntu16.04.2 3 控制节点 1个 + 计算节点 1个 4 控制节点网卡为ens33,ip = 172.171.5.200 ens ...

  9. Error:java: Compilation failed: internal java compiler error 解决办法

    https://blog.csdn.net/jdjdndhj/article/details/70256989

  10. 在Tomcat文件中,点击start.bat启动的是另一个tomcat

    遇到问题:在下载了一个免安装的Tomcat7之后解压,点击startup.bat启动tomcat,却报了异常. 后来在电脑一个文件夹中发现了另一个Tomcat8,是安装版本,并配置了环境变量.其环境变 ...