我收到一个nullpointer异常,因为下面的代码返回null。
conn = ds.getConnection();
我花了整整一个晚上试图调试它,没有任何运气。而且我知道有很多关于dataSource.getConnection()的nullpointer异常的帖子,但没有任何帮助。
网站在我的Mac上运行得非常好,但现在我想通过Tomcat在我的Raspberry Pi上托管它。我已经安装了Tomcat和MySQL并将其全部设置好。当空值指针发生时,网站可以正常工作,除非需要使用数据库中的内容。
ds = (DataSource) context.lookup("java:comp/env/jdbc/psite");
DriverManager.getConnection(name,username,psw);
我的xml文件如下所示:
的Tomcat / CONF / context.xml中
<WatchedResource>WEB-INF/web.xml</WatchedResource>
<Resource
name="jdbc/psite"
auth="Container"
type="javax.sql.DataSource"
username="sonie"
password="******"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/psite
maxActive="8"
maxIdle="4" />
的Tomcat / CONF / server.xml中
<Resource name="jdbc/psite"
global="jdbc/psite"
auth="Container"
type="javax.sql.DataSource"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/psite"
username="sonie"
password="******"
maxActive="100"
maxIdle="20"
minIdle="5"
maxWait="10000"/>
MyProject的/ WEB-INF / web.xml中
<resource-ref>
<res-ref-name>
jdbc/psite
</res-ref-name>
<res-type>
javax.sql.DataSource
</res-type>
<res-auth>
Container
</res-auth>
</resource-ref>
任何想法可能出错?我很确定我已经把它钉在了我的Raspberry Pi上的一些配置问题,因为它以前在我的Mac上工作正常。
编辑:
即使是,它是Nullpointer,我还没有像普通的Nullpointer一样调试它,因为它在我的Mac上在eclipse中正常工作,但是当它部署在Raspberry Pi上时却没有。所以我无法获得printstack。
它没有重复,因为无法像普通的NullPointer一样调试它。