开发者社区> 问答> 正文

困扰了一整天的bug,求帮助,javaweb方面?报错

我最近在用Maven做一个Javaweb项目,但是今天碰到了一个问题,我复制了报错信息百度搜索,上csdn,stackoverflow,等网站都没有找到解决的方法,我感觉是数据库的问题,但是我尝试过用JDBC来操作数据库,可以正常连接。

数据库账号密码我确认过没有错误,我是跟着视频学的,刚刚接触java不久,希望能够得到大神的帮助,感激不尽

全部报错信息如下:

java.lang.NullPointerException
    at java.util.Properties$LineReader.readLine(Properties.java:434)
    at java.util.Properties.load0(Properties.java:353)
    at java.util.Properties.load(Properties.java:341)
    at cn.itcast.travel.util.JDBCUtils.<clinit>(JDBCUtils.java:31)
    at cn.itcast.travel.dao.impl.UserDaoImpl.<init>(UserDaoImpl.java:10)
    at cn.itcast.travel.service.impl.UserServiceImpl.<init>(UserServiceImpl.java:9)
    at cn.itcast.travel.web.servlet.RegistUserServlet.doPost(RegistUserServlet.java:35)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:647)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
    at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:936)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1004)
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
    at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    at java.lang.Thread.run(Thread.java:748)
六月 21, 2019 10:40:52 下午 org.apache.catalina.core.StandardWrapperValve invoke
严重: Servlet.service() for servlet [cn.itcast.travel.web.servlet.RegistUserServlet] in context with path [/travel] threw exception
java.lang.IllegalArgumentException: Property 'dataSource' is required
    at org.springframework.jdbc.support.JdbcAccessor.afterPropertiesSet(JdbcAccessor.java:135)
    at org.springframework.jdbc.core.JdbcTemplate.<init>(JdbcTemplate.java:169)
    at cn.itcast.travel.dao.impl.UserDaoImpl.<init>(UserDaoImpl.java:10)
    at cn.itcast.travel.service.impl.UserServiceImpl.<init>(UserServiceImpl.java:9)
    at cn.itcast.travel.web.servlet.RegistUserServlet.doPost(RegistUserServlet.java:35)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:647)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
    at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:936)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1004)
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
    at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    at java.lang.Thread.run(Thread.java:748)

 

 

展开
收起
爱吃鱼的程序员 2020-06-05 15:52:29 891 0
1 条回答
写回答
取消 提交回答
  • https://developer.aliyun.com/profile/5yerqm5bn5yqg?spm=a2c6h.12873639.0.0.6eae304abcjaIB
                        这是读取你配置文件的时候出错了,应该是哪个属性你没有加或者值为空
                    
    
                            谢谢你的回答,配置文件的话我是按照视频来导入项目的,视频的配置文件跟我的是一样的。
                        
    
                        <p>你把你的配置文件内容贴出来看看嘛 </p> 
    

     

                            你好,配置文件我刚刚贴出来了,非常感谢你的回答
                        
    
                        <pre>dataSource</pre> 
    

    可能情况

    1.配置文件没读取到

    2.配置文件没有dataSource

    3.配置文件里的dataSource属性是错的,造成无法打开数据连接

                            你好,配置文件我刚刚贴上来了,我真的是第一次接触这个配置文件,做项目之前,视频也没有教过,所以不知道怎么样配置
                        
    
                        <p>`````</p> 
    
    <?xml version="1.0" encoding="UTF-8"?>
    
    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xmlns:beans="http://www.springframework.org/schema/beans"
             xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
      <modelVersion>4.0.0</modelVersion>
    
      <groupId>cn.itcast</groupId>
      <artifactId>travel</artifactId>
      <version>1.0-SNAPSHOT</version>
      <packaging>war</packaging>
    
        <dependencies>
            <dependency>
                <groupId>junit</groupId>
                <artifactId>junit</artifactId>
                <version>3.8.1</version>
                <scope>test</scope>
            </dependency>
            <!--servlet-->
            <dependency>
                <groupId>javax.servlet</groupId>
                <artifactId>javax.servlet-api</artifactId>
                <version>3.1.0</version>
                <scope>provided</scope>
            </dependency>
    
    
            <!--mysql驱动-->
            <dependency>
                <groupId>mysql</groupId>
                <artifactId>mysql-connector-java</artifactId>
                <version>5.1.26</version>
                <scope>compile</scope>
            </dependency>
            <!--druid连接池-->
            <dependency>
                <groupId>com.alibaba</groupId>
                <artifactId>druid</artifactId>
                <version>1.0.9</version>
            </dependency>
            <!--jdbcTemplate-->
            <dependency>
                <groupId>org.springframework</groupId>
                <artifactId>spring-core</artifactId>
                <version>4.1.2.RELEASE</version>
                <scope>compile</scope>
            </dependency>
    
            <dependency>
                <groupId>org.springframework</groupId>
                <artifactId>spring-jdbc</artifactId>
                <version>4.1.2.RELEASE</version>
                <scope>compile</scope>
            </dependency>
            <dependency>
                <groupId>org.springframework</groupId>
                <artifactId>spring-tx</artifactId>
                <version>4.1.2.RELEASE</version>
                <scope>compile</scope>
            </dependency>
            <dependency>
                <groupId>org.springframework</groupId>
                <artifactId>spring-beans</artifactId>
                <version>4.1.2.RELEASE</version>
                <scope>compile</scope>
            </dependency>
            <dependency>
                <groupId>commons-logging</groupId>
                <artifactId>commons-logging</artifactId>
                <version>1.1.1</version>
                <scope>compile</scope>
            </dependency>
            <!--beanUtils-->
            <dependency>
                <groupId>commons-beanutils</groupId>
                <artifactId>commons-beanutils</artifactId>
                <version>1.9.2</version>
                <scope>compile</scope>
            </dependency>
            <!--jackson-->
            <dependency>
                <groupId>com.fasterxml.jackson.core</groupId>
                <artifactId>jackson-databind</artifactId>
                <version>2.3.3</version>
            </dependency>
            <dependency>
                <groupId>com.fasterxml.jackson.core</groupId>
                <artifactId>jackson-core</artifactId>
                <version>2.3.3</version>
            </dependency>
            <dependency>
                <groupId>com.fasterxml.jackson.core</groupId>
                <artifactId>jackson-annotations</artifactId>
                <version>2.3.3</version>
            </dependency>
    
    
            <!--javaMail-->
            <dependency>
                <groupId>javax.mail</groupId>
                <artifactId>javax.mail-api</artifactId>
                <version>1.5.6</version>
            </dependency>
            <dependency>
                <groupId>com.sun.mail</groupId>
                <artifactId>javax.mail</artifactId>
                <version>1.5.3</version>
            </dependency>
    
            <!--jedis-->
            <dependency>
                <groupId>redis.clients</groupId>
                <artifactId>jedis</artifactId>
                <version>2.7.0</version>
            </dependency>
    
        </dependencies>
    
    
        <build>
            <!--maven插件-->
            <plugins>
                <!--jdk编译插件-->
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <configuration>
                        <source>1.8</source>
                        <target>1.8</target>
                        <encoding>utf-8</encoding>
                    </configuration>
                </plugin>
                <!--tomcat插件-->
                <plugin>
                    <groupId>org.apache.tomcat.maven</groupId>
                    <!-- tomcat7的插件, 不同tomcat版本这个也不一样 -->
                    <artifactId>tomcat7-maven-plugin</artifactId>
                    <version>2.1</version>
                    <configuration>
                        <!-- 通过maven tomcat7:run运行项目时,访问项目的端口号 -->
                        <port>8080</port>
                        <!-- 项目访问路径  本例:localhost:9090,  如果配置的aa, 则访问路径为localhost:9090/aa-->
                        <path>/travel</path>
                    </configuration>
                </plugin>
    
            </plugins>
        </build>
    
    </project>

    `````

                        <p>各位,我把项目上传到了百度云,里面的代码我都已经写好了,只要<strong>启动项目,在注册页面上填写注册信息,点击提交,控制台就会报错</strong>。数据库的代码就在项目的travel.sql文件中,</p> 
    

    感兴趣有时间的可以帮忙看一下我代码究竟那里出错了,不感兴趣的可以忽略这段话,如果不是实在没有头绪,我也不会做伸手党,这已经是第二天了,今天在解决不了,就要跳过项目学框架了。谢谢各位啦

     

    链接:https://pan.baidu.com/s/1KImj8iaxV9xy-cv5ri0LXg 
    提取码:fzwk 
    复制这段内容后打开百度网盘手机App,操作更方便哦

                        <p>500元帮解决问题</p>
                    
    
                            你好幽默呀
                        
    
                        <pre>JdbcTemplate 以及数据源是怎么配置的,xml 和 propertiles 贴出来看下</pre>
                    
    
                        <p>你好,JdbcTemplate配置还有其他配置,我上面已经贴了出来了,xml的话好像没有这个,我用的是maven来管理项目,下面是druid.propertiles的配置信息</p> 
    

    ````

    driverClassName=com.mysql.jdbc.Driver
    url=jdbc:mysql:///travel
    username=root
    password=12345
    initialSize=5
    maxActive=10
    maxWait=3000

    `````

     

                            你的报错是使用了 spring JdbcTemplate 但是没有配置 dataSource。
    

    1.你需要在你的 spring 配置文件里引入你的 properties 文件。 2.需要配置 dataSource。 3.需要配置 JdbcTemplate 设置 dataSource 属性。 这些你都做了吗?

                            对,你这些属性,是配置在哪个对象里的。发出来看下
                        
    
                        <p>properties文件没有读到,注意位置,看看打包后的项目中是不是不存在这个文件。。估计你把配置文件放到源代码一个目录下了。。。</p>
                    
    
                            回复 <a class="referer" target="_blank">@OSC_Uwslqd</a>  : 可以看下这个https://www.cnblogs.com/MoShin/archive/2011/10/10/2204020.html
                        
    
                            回复 <a class="referer" target="_blank">@OSC_Uwslqd</a>  : spring bean 注入没有加
                        
    
                            你好,你说的是对的,但是现在还有一个bug没有解决
    
    
    Servlet.service() for servlet [cn.itcast.travel.web.servlet.RegistUserServlet] in context with path [/travel] threw exception
    
    
    2020-06-05 16:35:38
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Spring Cloud Alibaba - 重新定义 Java Cloud-Native 立即下载
The Reactive Cloud Native Arch 立即下载
JAVA开发手册1.5.0 立即下载