LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1056|回复: 1

Java试图创建负数组抛出了异常让我的OpenNMS配置不成功

[复制链接]
发表于 2006-10-12 15:28:28 | 显示全部楼层 |阅读模式
安装配置网管软件OpenNMS时遇到pgsql问题,前面OpenNMS抱怨java试图创建非法数组,后面pgsql抱怨前端协议不支持,让我很难断案。
我的系统是RedHat8,最终目的是要建立OpenNMS网管服务。
下载的OpenNMS是opennms-1.2.8-1_rhl8的rpm包,PgSQL是操作系统自带的postgresql-7.2.2-1版本,
按照pgsql的手册,依据自己RH8中自带pgsql各文件夹所在的路径,配置好pgsql后,启动它:

bash-2.05b$ pg_ctl start
postmaster successfully started
bash-2.05b$ 调试:  database system was shut down at 2006-10-11 17:32:57 CST
调试:  checkpoint record is at 0/109924
调试:  redo record is at 0/109924; undo record is at 0/0; shutdown TRUE
调试:  next transaction id: 89; next oid: 16556
调试:  database system is ready

验证一下是否可以连接:

bash-2.05b$ createdb postgres
CREATE DATABASE
bash-2.05b$ psql -l
            数据库列表
   名字    |  所有者  |   编码
-----------+----------+-----------
postgres  | postgres | SQL_ASCII
template0 | postgres | SQL_ASCII
template1 | postgres | SQL_ASCII
template2 | postgres | SQL_ASCII
(4 行)

bash-2.05b$ psql
欢迎来到 psql, PostgreSQL 的交互终端.

键入:  \copyright 获取发布信息
       \h 获取 SQL 命令的帮助
       \? 获取内部反斜扛命令的帮助
       \g 或者以分号结尾执行查询
       \q 退出

postgres=# \q

pgsql数据库连接成功。然后就在这里不管了,开启另一个终端窗口,install我的opennms:

[root@localhost root]# $OPENNMS_HOME/bin/install -disU

这是OpenNMS安装后,使用前的一个步骤,为OpenNMS配置pgsql数据库,opennms手册上有详细说明的,输入命令后,返回了一个不幸的好消息(比较长):

==============================================================================
OpenNMS Installer Version $Id: Installer.java 3056 2006-03-26 19:39:16Z djgregor $
==============================================================================

Configures PostgreSQL tables, users, and other miscellaneous settings.

Exception in thread "main" org.postgresql.util.PSQLException: Something unusual has occured to cause the driver to fail. Please report this exception: Exception: java.lang.NegativeArraySizeException
Stack Trace:

java.lang.NegativeArraySizeException
        at org.postgresql.core.PGStream.Receive(PGStream.java:369)
        at org.postgresql.jdbc1.AbstractJdbc1Connection.openConnectionV3(AbstractJdbc1Connection.java:337)
        at org.postgresql.jdbc1.AbstractJdbc1Connection.openConnection(AbstractJdbc1Connection.java:214)
        at org.postgresql.Driver.connect(Driver.java:139)
        at java.sql.DriverManager.getConnection(Unknown Source)
        at java.sql.DriverManager.getConnection(Unknown Source)
        at org.opennms.install.Installer.databaseConnect(Installer.java:613)
        at org.opennms.install.Installer.install(Installer.java:195)
        at org.opennms.install.Installer.main(Installer.java:2450)
End of Stack Trace

        at org.postgresql.Driver.connect(Driver.java:159)
        at java.sql.DriverManager.getConnection(Unknown Source)
        at java.sql.DriverManager.getConnection(Unknown Source)
        at org.opennms.install.Installer.databaseConnect(Installer.java:613)
        at org.opennms.install.Installer.install(Installer.java:195)
        at org.opennms.install.Installer.main(Installer.java:2450)

比较长,总之,没有成功,给出的信息指向java的什么东西,google这条信息,得到如下的解释:

类 NegativeArraySizeException
java.lang.Object
  java.lang.Throwable
      java.lang.Exception
          java.lang.RuntimeException
              java.lang.NegativeArraySizeException
所有已实现的接口:
Serializable
public class NegativeArraySizeException
extends RuntimeException
如果应用程序试图创建大小为负的数组,则抛出该异常。
从以下版本开始:
JDK1.0
另请参见:
序列化表格

我没有细细学过java,只是细细学过标准C,用过一些C++的东西,所以对上面这段信息暂时没有头绪。
暂时按下不表,返回刚才配置pgsql的终端,豁然发现出现一个致命错误的提示,这就肯定是和OpenNMS没有配置成功直接相关的重要信息了:

致命错误 1:  unsupported frontend protocol

不支持的前端协议,这个是怎么回事呢?前面是OpenNMS抱怨java试图创建非法数组,后面是pgsql抱怨前端协议不支持,这到底是什么问题呢?
发表于 2006-10-12 16:40:42 | 显示全部楼层
驱¨和数据“版本步配套。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表