postgresql - 在 ec2 实例上部署 Java EE webapp

标签 postgresql jakarta-ee amazon-web-services amazon-ec2

我正在编写一个在我的本地主机上运行良好的网络应用程序 (Java/PostgreSQL),但是当我尝试将它部署在 Amazon ec2 实例上时,我开始遇到麻烦。

我在我的 ec2 实例上设置了我的 postgreSQL 数据库,并重新配置了在我的本地主机上运行的 webapp 以使用云数据库。到目前为止一切顺利。

当我在 ec2 实例上部署 war 并尝试让应用程序运行时,我得到一个 java.lang.NullPointerException。现在初步的故障排除似乎表明我的数据库查询有问题。这表明存在权限问题,但我的 _hba.conf 文件是完全开放的。

我的问题是,为什么它在访问数据库的本地主机上工作正常,但当它位于同一主机上时却不行?

我缺少什么以及我应该如何解决这个问题。

完全被难住了

好的 - 所以它适用于 eclipse JVM,而不是我在本地主机上安装的 tomcat。

下面是堆栈跟踪。失败,因为 ps = conn.prepareStatement(query) 为 null

enter code here

SEVERE: Servlet.service() for servlet [AddToEmailListServlet] in context with path [/Test_e] threw exception
java.lang.NullPointerException
    at data.UserDB.insert(UserDB.java:51)
    at email.AddToEmailListServlet.doPost(AddToEmailListServlet.java:51)
    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(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)

Aug 31, 2013 5:48:15 PM org.apache.catalina.core.ApplicationContext log
INFO: Closing Spring root WebApplicationContext
Aug 31, 2013 5:48:16 PM org.apache.catalina.core.ApplicationContext log
INFO: SessionListener: contextDestroyed()
Aug 31, 2013 5:48:16 PM org.apache.catalina.core.ApplicationContext log
INFO: ContextListener: contextDestroyed()

最佳答案

常见问题。请检查你的安全组是否开放了端口

关于postgresql - 在 ec2 实例上部署 Java EE webapp,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18545766/

相关文章:

node.js - AWS多SQS队列和workers优化设计

Postgresql 查询每 45 天显示一次记录

PostgreSQL : How can I determine how many characters in a text

java - 如何从应用程序客户端连接远程 EJB 模块

java - CDI 注入(inject)抽象类

amazon-web-services - 如何使用AWS s3或AWS s3api递归更改权限到文件夹

node.js - Dynamodb DB 查询中的时间戳比较未按预期工作

postgresql - Postgres : how to disconnect without logging out?

postgresql – Debian stretch 上没有 crypt 函数

java - 如果 tagdir 属性没有尾部斜杠,是否有任何 jsp 2.0 实现会强制出现错误?