求助:中文搜索错误 在线等

missxkl 03-08-06

IE6.0+weblogic7.0+oracle817(GB2312)
SUN450(ISO8859_1)
JSP页面都是用gb2312编码:
<%@ page contentType="text/html;charset=gb2312" %>
<% request.setCharacterEncoding("gb2312"); %>

在search.jsp搜索区域填入中文后回车显示

org.apache.oro.text.perl.MalformedPerl5PatternException: Invalid option: b
at org.apache.oro.text.perl.Perl5Util.substitute(Perl5Util.java:665)
at com.jivesoftware.util.StringUtils.highlightWords(StringUtils.java:666)
at jsp_servlet._jive.__search._jspService(__search.java:436)
at weblogic.servlet.jsp.JspBase.service(JspBase.java:27)
at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:1058)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:401)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:306)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:5445)
at weblogic.security.service.SecurityServiceManager.runAs(SecurityServiceManager.java:780)
at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3105)
at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2588)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:213)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:189)

missxkl
2003-08-06 15:49

补充一下:

搜索不存在的帖子或者输入英文查询时不出exception

但是英文的也查不出来

help!!!!!!!!!

zhuojun
2003-08-06 17:14

是Perl5的正则表达式错误,从search.jsp开始看吧。

missxkl
2003-08-07 09:37

晕倒。。。

我对perl不熟

zhuojun
2003-08-07 12:21

现象是Perl5,估计原因还是中文问题。搜索的字符串没有正确的转换成Unicode码,正则表达式中有乱码,在高亮度显示方法中引起出错。