在启动过程中的错误在Tomcat中:DB找不到名称 [英] Error in Tomcat during Startup: DB name not found
问题描述
虽然盯着Tomcat的,我收到以下错误:
While staring the Tomcat, I am getting the following error:
SEVERE: Exception looking up UserDatabase under key UserDatabase
javax.naming.NameNotFoundException: Name UserDatabase is not bound in this Context
at org.apache.naming.NamingContext.lookup(NamingContext.java:770)
at org.apache.naming.NamingContext.lookup(NamingContext.java:153)
at org.apache.catalina.realm.UserDatabaseRealm.start(UserDatabaseRealm.java:253)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1049)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:463)
at org.apache.catalina.core.StandardService.start(StandardService.java:525)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:754)
at org.apache.catalina.startup.Catalina.start(Catalina.java:595)
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:597)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)
Jul 6, 2012 4:32:25 PM org.apache.catalina.startup.Catalina start
SEVERE: Catalina.start:
LifecycleException: No UserDatabase component found under key UserDatabase
at org.apache.catalina.realm.UserDatabaseRealm.start(UserDatabaseRealm.java:261)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1049)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:463)
at org.apache.catalina.core.StandardService.start(StandardService.java:525)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:754)
at org.apache.catalina.startup.Catalina.start(Catalina.java:595)
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:597)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)
我用同样的分贝配置在server.xml中和Tomcat工作正常之前,但由于最后2天,当我改变服务器,并安装一个新的副本,它抛出这个错误。
I used the same dB configuration before in Server.xml and Tomcat was working fine, but since last 2 days when I change the server and install a new copy, it's throwing this error.
在server.xml中定义的GlobalNamingResources如下:
The GlobalNamingResources defined in server.xml are as follows:
<GlobalNamingResources>
<Resource name="jdbc/abcdOracle" auth="Container"
type="javax.sql.DataSource"
maxActive="100" initialSize="5" maxWait="2000"
username="xxxxxx" password="xxxxxx"
driverClassName="oracle.jdbc.driver.OracleDriver"
url="jdbc:oracle:thin:@xxxxxx.xxxxxx.net:1523:ABCDE"
validationQuery="select sysdate from dual"
validationInterval="30000"
testWhileIdle="true" testOnBorrow="true" testOnReturn="false"
removeAbandoned="true" logAbandoned="true"
removeAbandonedTimeout="60" />
</GlobalNamingResources>
任何人有任何线索如何解决这个问题。
谢谢你。
Anyone have any hint how to solve this issue. Thanks.
推荐答案
我有我的的tomcat-users.xml中
引起的XML语法错误此问题。虽然这些误差修改是完全显而易见的,他们花了一些时间来发现和固定:
I've got this issue caused by XML syntax errors in my tomcat-users.xml
. Though these erros are totally obvious, they took some time to be found out and fixed:
1。无效的双引号
- 错误:
&LT;作用rolename=$c$c><$c$c>$c$c><$c$c>manager-script$c$c><$c$c>$c$c><$c$c>/>$c$c>
- 右键:
&LT;角色角色名称=管理脚本/&GT;
- Wrong:
<role rolename=
"
manager-script
"
/>
- Right:
<role rolename="manager-script"/>
2。缺少结束双引号
- 错误:
&lt;使用者的用户名=雄猫密码=雄猫角色=经理桂,经理脚本/&GT;
- 右键:
&lt;使用者的用户名=雄猫密码=雄猫角色=经理桂,经理脚本
/&GT;
- Wrong:
<user username="tomcat" password="tomcat" roles="manager-gui,manager-script/>
- Right:
<user username="tomcat" password="tomcat" roles="manager-gui,manager-script
"
/>
3。缺少结束斜线
- 错误:
&LT;角色角色名=admin的&GT;
- 右键:
&LT;角色角色名称=管理员
/
&GT;
- Wrong:
<role rolename="admin">
- Right:
<role rolename="admin"
/
>
4。属性之间缺少空间
- 错误:
&lt;使用者的用户名=雄猫密码=雄猫角色=经理桂,经理脚本/&GT;
- 右键:
&lt;使用者的用户名=雄猫密码=雄猫角色=经理桂,经理脚本/&GT;
- Wrong:
<user username="tomcat" password="tomcat"roles="manager-gui,manager-script"/>
- Right:
<user username="tomcat" password="tomcat" roles="manager-gui,manager-script"/>
这篇关于在启动过程中的错误在Tomcat中:DB找不到名称的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!