softpk 发表于 2009-5-21 01:21:27

紧急求助!安装补丁后采用oracle的项目无法启动

QC服务器为2003,jboss平台,所建项目一个域的项目采用的是sqlserver,另一个域下的项目用的oracle。在安装了vss版本控制补丁后。采用oracle数据库的域其中一个项目无法启动,后卸载补丁,问题仍旧存在,启动项目时弹出提示“"Failed to get Project Properties" ”详细信息内容如下jdbc:mercury:oracle://qcserver:1521;sid=ora9

Messages:
Failed to Test Connection;
Test connection failed;
Cannot build directory item for key '' in TD Tables Struct Dir;
Failed to fill table struct for table null in database qualitymanager_dfshenma_db@jdbc:mercury:oracle://qcserver:1521;sid=ora9(qualitymanager_dfshenma_db);
ORA-01017: invalid username/password; logon denied;

Stack Trace:
com.mercury.jdbc.base.BaseSQLException: ORA-01017: invalid username/password; logon denied

at com.mercury.jdbc.base.BaseExceptions.createException(Unknown Source)
at com.mercury.jdbc.base.BaseExceptions.getException(Unknown Source)
at com.mercury.jdbc.oracle.OracleImplConnection.connectAndAuthenticate(Unknown Source)
at com.mercury.jdbc.oracle.OracleImplConnection.open(Unknown Source)
at com.mercury.jdbc.base.BaseConnection.connect(Unknown Source)
at com.mercury.jdbc.base.BaseConnectionStartup.run(Unknown Source)
        wrapped in com.mercury.optane.core.CTdException:
at com.mercury.optane.core.db.CTdDriverManager.getConnection(CTdDriverManager.java:81)
at com.mercury.optane.core.db.CConnectionPool.newConnection(CConnectionPool.java:624)
at com.mercury.optane.core.db.CConnectionPool.tryToGetConnection(CConnectionPool.java:468)
at com.mercury.optane.core.db.CConnectionPool.getConnection(CConnectionPool.java:293)
at com.mercury.optane.core.db.CConnectionManager.getNotTransactedConnection(CConnectionManager.java:288)
at com.mercury.optane.core.db.CConnectionManager.getConnection(CConnectionManager.java:266)
at com.mercury.optane.core.db.CDatabaseFieldsInfo.obtainInfo(CDatabaseFieldsInfo.java:135)
        wrapped in com.mercury.optane.core.CTdException: Failed to fill table struct for table null in database qualitymanager_dfshenma_db@jdbc:mercury:oracle://qcserver:1521;sid=ora9(qualitymanager_dfshenma_db)
at com.mercury.optane.core.db.CDatabaseFieldsInfo.obtainInfo(CDatabaseFieldsInfo.java:161)
at com.mercury.td.CTdDatabaseFieldsInfo.obtainInfo(CTdDatabaseFieldsInfo.java:80)
at com.mercury.optane.core.db.CDatabaseFieldsInfo.<init>(CDatabaseFieldsInfo.java:77)
at com.mercury.td.CTdDatabaseFieldsInfo.<init>(CTdDatabaseFieldsInfo.java:58)
at com.mercury.td.CTdTablesStructDirectory.createDirectoryItem(CTdTablesStructDirectory.java:167)
at com.mercury.optane.core.directory.CAbsDirectory.getDirectoryItem(CAbsDirectory.java:81)
        wrapped in com.mercury.optane.core.CTdException: Cannot build directory item for key '' in TD Tables Struct Dir
at com.mercury.optane.core.directory.CAbsDirectory.getDirectoryItem(CAbsDirectory.java:87)
at com.mercury.td.CTdTablesStructDirectory.getDirectoryItem(CTdTablesStructDirectory.java:151)
at com.mercury.optane.core.db.CAbsTablesStructDirectory.getDatabaseFieldsInfo(CAbsTablesStructDirectory.java:101)
at com.mercury.td.saserver.directory.CProject.getProjectDbContext(CProject.java:1311)
at com.mercury.td.saserver.api.logics.CAdminLogic.testConnection(CAdminLogic.java:610)
        wrapped in com.mercury.optane.core.CTdException: Test connection failed
at com.mercury.td.saserver.api.logics.CAdminLogic.testConnection(CAdminLogic.java:624)
at com.mercury.td.saserver.web.CTdSiteAdminServlet.redirectTestConnection(CTdSiteAdminServlet.java:736)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at com.mercury.optane.core.web.CAbsServlet.executeFunction(CAbsServlet.java:554)
        wrapped in com.mercury.optane.core.CTdException: Failed to Test Connection
at com.mercury.optane.core.web.CAbsServlet.executeFunction(CAbsServlet.java:560)
at com.mercury.optane.core.web.CAbsServlet.processRequest(CAbsServlet.java:535)
at com.mercury.optane.core.web.CAbsServlet.doPost(CAbsServlet.java:418)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:81)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.jboss.web.tomcat.security.CustomPrincipalValve.invoke(CustomPrincipalValve.java:39)
at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:153)
at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:59)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at org.apache.catalina.valves.FastCommonAccessLogValve.invoke(FastCommonAccessLogValve.java:481)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
at java.lang.Thread.run(Thread.java:534)采用oracle的另一个项目可正常启动,在DB Server标签中测试其链接正常,但在有问题的项目中测试链接却失败。通过错误提示分析,感觉像是用户名密码的问题,但对比之前备份的dbid.xml,并没有什么变化。

看到08年kasimxiao的【QC 还原项目】的帖子,其中提到“2.查询分析器进入qcsiteadmin_db,输入:sp_change_users_login 'report',可以看到td用户被孤立,还原数据库后无法登录qc都是因为td用户被孤立了,输入:sp_change_users_login 'update_one','td','td',使登录用户和数据库的孤立用户对应起来。
(完成后进入qc后台可以看到所有用户、域以及项目都显示出来了,剩下的只需要还原每一个项目的数据库)”
请问在oracle中如何操作?

[ 本帖最后由 softpk 于 2009-5-21 01:28 编辑 ]

博一笑 发表于 2009-5-22 09:34:43

没看明白,但是从ORA-01017: invalid username/password; logon denied看
感觉你oracle帐户有问题
页: [1]
查看完整版本: 紧急求助!安装补丁后采用oracle的项目无法启动