浏览 9706 次
锁定老帖子 主题:一个很奇怪的问题!!
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2004-03-18
type Exception report message Internal Server Error description The server encountered an internal error (Internal Server Error) that prevented it from fulfilling this request. exception javax.servlet.ServletException: String index out of range: 4 at org.apache.struts.action.RequestProcessor.processException(RequestProcessor.java:545) at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:486) at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274) at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482) at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:525) at javax.servlet.http.HttpServlet.service(HttpServlet.java:760) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2004-03-18
这和hibernate应该没什么关系
找出这个ServletException的cause |
|
返回顶楼 | |
发表时间:2004-03-18
那为什么中文会出错呢?
|
|
返回顶楼 | |
发表时间:2004-03-19
无论在jb下还是在tomcat下都有这个问题,
下面的出错信息应该详细一些,应该是hibernate方面的问题吧: java.lang.StringIndexOutOfBoundsException: String index out of range: 4 at java.lang.String.charAt(String.java:444) at com.mysql.jdbc.StringUtils.escapeSJISByteStream(StringUtils.java:280) at com.mysql.jdbc.StringUtils.getBytes(StringUtils.java:105) at com.mysql.jdbc.PreparedStatement.setString(PreparedStatement.java:1068) at net.sf.hibernate.type.StringType.set(StringType.java:26) at net.sf.hibernate.type.NullableType.nullSafeSet(NullableType.java:48) at net.sf.hibernate.type.NullableType.nullSafeSet(NullableType.java:35) at net.sf.hibernate.persister.EntityPersister.dehydrate(EntityPersister.java:393) at net.sf.hibernate.persister.EntityPersister.insert(EntityPersister.java:526) at net.sf.hibernate.persister.EntityPersister.insert(EntityPersister.java:432) at net.sf.hibernate.impl.ScheduledIdentityInsertion.execute(ScheduledIdentityInsertion.java:29) at net.sf.hibernate.impl.SessionImpl.doSave(SessionImpl.java:906) at net.sf.hibernate.impl.SessionImpl.doSave(SessionImpl.java:839) at net.sf.hibernate.impl.SessionImpl.saveWithGeneratedIdentifier(SessionImpl.java:757) at net.sf.hibernate.impl.SessionImpl.save(SessionImpl.java:720) |
|
返回顶楼 | |
发表时间:2004-03-19
应该是数据库种有个字段长度是4吧,你中文输入一个试一试
|
|
返回顶楼 | |
发表时间:2004-03-19
不是的,我把所有的字段长度设为255还是那样,另一个奇怪的问题是有的中文可以正常写入,如"国语",另一个如"管理"写入就会出错。
|
|
返回顶楼 | |
发表时间:2004-03-20
经过多次的检查,发现是
?useUnicode=true&characterEncoding=gbk的问题, 去掉了这部分,一切正常,我用的mysql的jdbc包是 mysql-connector-java-3.0.11-stable-bin.jar,不知道大家有什么好的解决方法? |
|
返回顶楼 | |
发表时间:2004-03-20
about mysql config!
|
|
返回顶楼 | |
发表时间:2004-03-23
是mysql-connector-java-3.0.11-stable-bin.jar 的问题,
http://forum.iteye.com/viewtopic.php?t=3513&highlight=mysql有详细解答。 |
|
返回顶楼 | |