RedHatLinux网络服务器构架实务(九)

王朝system·作者佚名  2008-05-19
窄屏简体版  字體: |||超大  

常见错误四:Invalid authorization specification

500 Servlet Exception

java.sql.SQLException: Invalid authorization specification: Access

denied

for user: 'hongze@ns.langkey.loc' (Using password: YES)

at org.gjt.mm.mysql.MysqlIO.init(MysqlIO.java:330)

at org.gjt.mm.mysql.Connection.connectionInit(Connection.java:261)

at org.gjt.mm.mysql.jdbc2.Connection.connectionInit(Connection.java:89)

at org.gjt.mm.mysql.Driver.connect(Driver.java:167)

at java.sql.DriverManager.getConnection(DriverManager.java:517)

at java.sql.DriverManager.getConnection(DriverManager.java:177)

at _cnmysql__jsp._jspService(/cnmysql.jsp:5)

at com.caucho.jsp.JavaPage.service(JavaPage.java:74)

at com.caucho.jsp.Page.subservice(Page.java:485)

at com.caucho.server.http.FilterChainPage.doFilter(FilterChainPage.java:176)

at com.caucho.server.http.Invocation.service(Invocation.java:278)

at com.caucho.server.http.CacheInvocation.service(CacheInvocation.java:129)

at com.caucho.server.http.RunnerRequest.handleRequest(RunnerRequest.java:338)

at com.caucho.server.http.RunnerRequest.handleConnection(RunnerRequest.java:270)

at com.caucho.server.TcpConnection.run(TcpConnection.java:140)

at java.lang.Thread.run(Thread.java:484)

Resin 2.0.5 (built Thu Nov 15 17:56:24 PST 2001)

原因可能是:

1、源代码中的主机名、数据库名、帐号或者密码输入错误;

2、如果数据库名、帐号、密码均正确,那说明是主机名不匹配;

3、如果使用数据源连库,检查数据源的设置和源代码中名称是否输入正确。

Solution:

1、参见Resin install和Server test两部分;

2、注意:数据库的连接不仅仅是帐号和密码决定的,而是由主机名、数据库名、用户名和密码四个参数决定的。

常见错误五:Invalid authorization specification

500 Servlet Exception

java.lang.AbstractMethodError

at _cnmysql__jsp._jspService(/cnmysql.jsp:11)

at com.caucho.jsp.JavaPage.service(JavaPage.java:74)

at com.caucho.jsp.Page.subservice(Page.java:485)

at com.caucho.server.http.FilterChainPage.doFilter(FilterChainPage.java:176)

at com.caucho.server.http.Invocation.service(Invocation.java:278)

at com.caucho.server.http.CacheInvocation.service(CacheInvocation.java:129)

at com.caucho.server.http.RunnerRequest.handleRequest(RunnerRequest.java:338)

at com.caucho.server.http.RunnerRequest.handleConnection(RunnerRequest.java:270)

at com.caucho.server.TcpConnection.run(TcpConnection.java:140)

at java.lang.Thread.run(Thread.java:484)

Resin 2.0.5 (built Thu Nov 15 17:56:24 PST 2001)

原因可能是:

1、你安装的JDK版本太低以至于JDBC版本并不是2.0的;

2、更大的可能性是你的驱动程序不支持JDBC2.0,JDBC只是提供了抽象类接口,它需要驱动程序作为其实体类来具体实现。

解决办法:

1、升级JDK,我的建议是 is j2sdk-1_3_1_01-linux-i386.bin,参见Jvm install部分;

2、替换数据库驱动,你很有可能使用的是mysql_comp.jar ,使用 mm.mysql-2.0.4-bin.jar.zip替代它。

常见错误六:中文乱码

可能的原因:

安装操作系统时候,你没有选择i18n的简体包也没有在源文件中加以处理

解决办法:

1、Html方式,添加如下一行到你的JSP源代码:

<meta http-equiv="Content-Type" content="text/html; charset=gb2312">

2、JSP方式一:

<%@ page contentType = "text/html; charSet=gb2312" %>

3、JSP方式二:

一般说来使用Resin作为JSP引擎是不需要本方法的,我就从来都没用到,只有使用象Tomcat之类的东东才可能用到这个繁琐的方法,不过这个方法也有它的好处,就是提高了程序的可移植性,不至于换了系统或者引擎就乱码了。

<%

String chs="这个方法肯定可以!";

byte[] bchs=chs.getBytes();

out.print(new String(bchs,"8859_1"));

%>

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航