Java Can';t通过ApacheTomcat连接到MSSQL数据库

Java Can';t通过ApacheTomcat连接到MSSQL数据库,java,sql-server,apache,tomcat,jdbc,Java,Sql Server,Apache,Tomcat,Jdbc,我正在尝试设置Geoportal 1.2.7,运行在ApacheTomcat 8.5.6、MSSQL Server 2012、JDK 8和jdbc 4上。我可以登录到Geoportal,但当我转到“管理”选项卡时,会出现错误 “发生数据库通信错误” 检查Apache日志文件,我发现有一个严重错误 java.sql.SQLException:无法创建PoolableConnectionFactory( 端口号1433:geoportal无效。) 我在jdbc的配置中尝试了一系列不同的条目,但它总是

我正在尝试设置
Geoportal 1.2.7
,运行在
ApacheTomcat 8.5.6
MSSQL Server 2012、JDK 8和jdbc 4
上。我可以登录到Geoportal,但当我转到“管理”选项卡时,会出现错误

“发生数据库通信错误”

检查Apache日志文件,我发现有一个严重错误

java.sql.SQLException:无法创建PoolableConnectionFactory( 端口号1433:geoportal无效。)

我在jdbc的配置中尝试了一系列不同的条目,但它总是返回到那个错误

<Context docBase="geoportal" path="/geoportal" debug="0" reloadable="true" crossContext="true">
    <Resources
         cachingAllowed="true"
         cacheMaxSize="100000"
     />
    <Resource name="jdbc/gpt" auth="Container" type="javax.sql.DataSource"
              driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"
              url="jdbc:sqlserver://SQLDEMOSERVER:1433:geoportal"
              user="******"
              password="*******"  
              maxTotal="20"
              maxIdle="10"
              maxWaitMillis="-1" />
</Context>

这只是我最近的一次尝试。我在网上看到过关于url应该是什么样子的相互矛盾的帖子

我试过
url=“jdbc:sqlserver://SQLDEMOSERVER:1433;databaseName=geoportal“(geoportal不会启动),url=“jdbc:sqlserver://SQLDEMOSERVER:1433/databaseName=geoportal“(然后我得到端口错误),url=“jdbc:sqlserver://SQLDEMOSERVER:1433“(Geoportal将不加载)。

我束手无策。我仔细检查了其余的配置文件,其中的编辑是最小的,并且可能没有处理错误

如果有人能指出我的错误,我们将不胜感激。

试试看

url="jdbc:sqlserver://SQLDEMOSERVER:1433/geoportal

这些URL在SQL Server 2012上适用于我:

jdbc:sqlserver://localhost:1433;databaseName=test
jdbc:sqlserver://localhost:1433;database=test
这在SQL Server 2012中不适用,但可能适用于旧版本:

jdbc:sqlserver://localhost:1433/test
这些根本不起作用:

jdbc:sqlserver://localhost:1433/databaseName=test
jdbc:sqlserver://localhost:1433:test

我想问题在别处(更详细地调查“不会启动”问题)。

不幸的是,这在“管理”选项卡以及日志文件上给了我相同的错误。数据库是否正在运行?是的,SQL数据库正在运行。我确保TCP/IP协议也处于活动状态。我还仔细检查了Esri网站上所有有问题的软件之间的兼容性。SQLServer是主机名吗?Esri文档说在端口5432使用PostgreSQL。在DB安装之前您是否更改了端口?我正在尝试让它与MS SQL一起工作。它可以与PostgreSQL配合使用,但客户端正在运行MS SQL server。感谢您的输入,我将查看其余的应用程序。请检查URL格式是否正确。请注意,根据配置,端口1433可能不正确。还要确保数据库的实例名(如果有)和该实例上的数据库名之间有区别。我在使用postgres db时遇到问题。有关于如何修复的帮助吗?