常見錯(cuò)誤四:Invalidauthorizationspecification
500ServletException
java.sql.SQLException:Invalidauthorizationspecification:Accessdenied
foruser:'hongze@ns.langkey.loc'(Usingpassword:YES)
atorg.gjt.mm.mysql.MysqlIO.init(MysqlIO.java:330)
atorg.gjt.mm.mysql.Connection.connectionInit(Connection.java:261)
atorg.gjt.mm.mysql.jdbc2.Connection.connectionInit(Connection.java:89)
atorg.gjt.mm.mysql.Driver.connect(Driver.java:167)
atjava.sql.DriverManager.getConnection(DriverManager.java:517)
atjava.sql.DriverManager.getConnection(DriverManager.java:177)
at_cnmysql__jsp._jspService(/cnmysql.jsp:5)
atcom.caucho.jsp.JavaPage.service(JavaPage.java:74)
atcom.caucho.jsp.Page.subservice(Page.java:485)
atcom.caucho.server.http.FilterChainPage.doFilter(FilterChainPage.java:176)
atcom.caucho.server.http.Invocation.service(Invocation.java:278)
atcom.caucho.server.http.CacheInvocation.service(CacheInvocation.java:129)
atcom.caucho.server.http.RunnerRequest.handleRequest(RunnerRequest.java:338)
atcom.caucho.server.http.RunnerRequest.handleConnection(RunnerRequest.java:270)
atcom.caucho.server.TcpConnection.run(TcpConnection.java:140)
atjava.lang.Thread.run(Thread.java:484)
Resin2.0.5(builtThuNov1517:56:24PST2001)
原因可能是:
1、源代碼中的主機(jī)名、數(shù)據(jù)庫名、帳號(hào)或者密碼輸入錯(cuò)誤;
2、如果數(shù)據(jù)庫名、帳號(hào)、密碼均正確,那說明是主機(jī)名不匹配;
3、如果使用數(shù)據(jù)源連庫,檢查數(shù)據(jù)源的設(shè)置和源代碼中名稱是否輸入正確。
Solution:
1、參見Resininstall和Servertest兩部分;
2、注意:數(shù)據(jù)庫的連接不僅僅是帳號(hào)和密碼決定的,而是由主機(jī)名、數(shù)據(jù)庫名、用戶名和密碼四個(gè)參數(shù)決定的。
常見錯(cuò)誤五:Invalidauthorizationspecification
500ServletException
java.lang.AbstractMethodError
at_cnmysql__jsp._jspService(/cnmysql.jsp:11)
atcom.caucho.jsp.JavaPage.service(JavaPage.java:74)
atcom.caucho.jsp.Page.subservice(Page.java:485)
atcom.caucho.server.http.FilterChainPage.doFilter(FilterChainPage.java:176)
atcom.caucho.server.http.Invocation.service(Invocation.java:278)
atcom.caucho.server.http.CacheInvocation.service(CacheInvocation.java:129)
atcom.caucho.server.http.RunnerRequest.handleRequest(RunnerRequest.java:338)
atcom.caucho.server.http.RunnerRequest.handleConnection(RunnerRequest.java:270)
atcom.caucho.server.TcpConnection.run(TcpConnection.java:140)
atjava.lang.Thread.run(Thread.java:484)
Resin2.0.5(builtThuNov1517:56:24PST2001)
原因可能是:
1、你安裝的JDK版本太低以至于JDBC版本并不是2.0的;
2、更大的可能性是你的驅(qū)動(dòng)程序不支持JDBC2.0,JDBC只是提供了抽象類接口,它需要驅(qū)動(dòng)程序作為其實(shí)體類來具體實(shí)現(xiàn)。
解決辦法:
1、升級(jí)JDK,我的建議是isj2sdk-1_3_1_01-linux-i386.bin,參見Jvminstall部分;
2、替換數(shù)據(jù)庫驅(qū)動(dòng),你很有可能使用的是mysql_comp.jar,使用mm.mysql-2.0.4-bin.jar.zip替代它。
常見錯(cuò)誤六:中文亂碼
可能的原因:
安裝操作系統(tǒng)時(shí)候,你沒有選擇i18n的簡(jiǎn)體包也沒有在源文件中加以處理
解決辦法:
1、Html方式,添加如下一行到你的JSP源代碼:
<metahttp-equiv="Content-Type"content="text/html;charset=gb2312">
2、JSP方式一:
<%@pagecontentType="text/html;charSet=gb2312"%>
3、JSP方式二:
一般說來使用Resin作為JSP引擎是不需要本方法的,我就從來都沒用到,只有使用象Tomcat之類的東東才可能用到這個(gè)繁瑣的方法,不過這個(gè)方法也有它的好處,就是提高了程序的可移植性,不至于換了系統(tǒng)或者引擎就亂碼了。
<%
Stringchs="這個(gè)方法肯定可以!";
byte[]bchs=chs.getBytes();
out.print(newString(bchs,"8859_1"));
%> 本文出自:億恩科技【1tcdy.com】
服務(wù)器租用/服務(wù)器托管中國五強(qiáng)!虛擬主機(jī)域名注冊(cè)頂級(jí)提供商!15年品質(zhì)保障!--億恩科技[ENKJ.COM]
|