【问题标题】:Trouble Deploying App From Tomcat to Sun Java Web Server 7...and I'm a .NET guy :(将应用程序从 Tomcat 部署到 Sun Java Web Server 7 时遇到问题……我是 .NET 人 :(
【发布时间】:2012-02-02 14:38:12
【问题描述】:

我正在尝试将使用 Tomcat(最初是 5.5,但与 7 一起使用)在 MyEclipse 中开发的应用程序部署到我们的演示服务器(Sun Java Web Server 7)。不幸的是,所有设计该应用程序的人都离开了公司。所以,这就是我所知道的:

1) 应用程序在 Tomcat 上的 MyEclipse 中按原样运行
2) 应用程序过去成功部署到 Sun Java Web Server 上(大概是同一个构建)
3) 我可以使用 sqldeveloper 从服务器连接到数据库
4) 应用使用:Java EE 5 和 Spring 框架

应用设置:
驱动程序:oracle.jdbc.driver.OracleDriver
网址 jdbc:oracle:thin@xx.xx.x.xx:service

这是我得到的唯一错误。我在之前和之后收到了很多警告:

warning:     CORE3283: stderr: com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:547)

failure:
for host xx.xx.x.xxx trying to GET /application/login.jsp, service-j2ee reports:     com.mchange.v2.resourcepool.CannotAcquireResourceException: A ResourcePool could not acquire a resource from its primary factory or source. at
com.mchange.v2.resourcepool.BasicResourcePool.awaitAvailable(BasicResourcePool.java:1319) at
com.mchange.v2.resourcepool.BasicResourcePool.prelimCheckoutResource(BasicResourcePool.java:557) at
com.mchange.v2.resourcepool.BasicResourcePool.checkoutResource(BasicResourcePool.java:477) at
com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutPooledConnection(C3P0PooledConnectionPool.java:525) at
com.mchange.v2.c3p0.impl.AbstractPoolBackedDataSource.getConnection(AbstractPoolBackedDataSource.java:128) at
org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:113) at
org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:79) at
org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:379) at
org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:455) at
org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:463) at
org.springframework.jdbc.core.simple.SimpleJdbcTemplate.query(SimpleJdbcTemplate.java:187) at
gov.nyc.oer.dao.SiteConfigDao.getSiteConfig(Unknown Source) at
gov.nyc.oer.manager.SiteConfigManager.getSiteConfig(Unknown Source) at
gov.nyc.oer.manager.SiteConfigManager.afterPropertiesSet(Unknown Source) at
gov.nyc.oer.manager.SiteConfigManager.getValue(Unknown Source) at
org.apache.jsp.login_jsp._jspService(login_jsp.java:67) at
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:80) at
javax.servlet.http.HttpServlet.service(HttpServlet.java:917) at
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:373) at
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:457) at
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:351) at
javax.servlet.http.HttpServlet.service(HttpServlet.java:917) at
org.apache.catalina.core.ApplicationFilterChain.servletService(ApplicationFilterChain.java:398) at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304) at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:185) at
org.springframework.security.util.FilterChainProxy.doFilter(FilterChainProxy.java:169) at
org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:183) at
org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:138) at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:217) at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:185) at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:275) at
org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:255) at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:188) at
org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:586) at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:556) at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:187) at
org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:586) at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:556) at
com.sun.webserver.connector.nsapi.NSAPIProcessor.service(NSAPIProcessor.java:160)

服务器配置:
Java:已启用
Java Home: ${WS_JDK_HOME}
忽略环境类路径: 已启用
类路径前缀:
服务器类路径: ${WS_INSTALL_ROOT}/lib/webserv-rt.jar
${WS_INSTALL_ROOT}/lib/pwc.jar
${WS_INSTALL_ROOT}/lib/ant.jar
${java.home}/lib/tools.jar
${WS_INSTALL_ROOT}/lib/ktsearch.jar
${WS_INSTALL_ROOT}/lib/webserv-jstl.jar
${WS_INSTALL_ROOT}/lib/jsf-impl.jar
${WS_INSTALL_ROOT}/lib/jsf-api.jar
${WS_INSTALL_ROOT}/lib/webserv-jwsdp.jar
${WS_INSTALL_ROOT}/lib/container-auth.jar
${WS_INSTALL_ROOT}/lib/mail.jar
${WS_INSTALL_ROOT}/lib/activation.jar
类路径后缀: ${WS_INSTALL_ROOT}/lib/ojdbc14.jar
JVM 选项:
-Djava.security.auth.login.config=login.conf
-Xms128m -Xmx256m
-Djdbc.drivers=oracle.jdbc.driver.OracleDriver

【问题讨论】:

  • 只是一个长镜头:您正在定义一个名为“jdbc.drivers”的系统属性。您的应用程序是否需要名为“jdbc.driver”(不带“s”)的属性?

标签: java oracle tomcat sun


【解决方案1】:

看起来你的数据库连接没有在你的 sun java web server 7 上定义。在this website你可以找到如何定义它。

【讨论】:

  • 请原谅我在这方面的无知;但我想如果我在代码中定义连接信息(驱动程序、用户名、密码)并提供 ojdbc14.jar(参见类路径后缀),我应该不必设置资源吧?在 JVM Options 配置下,我配置了 oracle 驱动程序。
  • 您描述了建立一个连接,但例外是来自连接池。您必须在 sun blah 服务器中配置连接池。尝试在 Google 上搜索“c3p0 连接池”。
猜你喜欢
  • 2017-05-03
  • 1970-01-01
  • 2018-07-14
  • 2011-06-03
  • 1970-01-01
  • 2016-08-27
  • 2020-02-18
  • 2021-04-21
  • 2012-08-12
相关资源
最近更新 更多