高手,请帮帮我吧,这个问题快把我搞疯了!在线等待!

zhuanr 2003-05-07 07:43:15
一段很简单的源码:test.jsp
<%@ page contentType="text/html;charset=GB2312" import="java.sql.*"%>
<%@ page language="java"%>
<%
String kcjb=request.getParameter("kcjb").trim();
String xkyy=request.getParameter("xkyy").trim();
String xh=(String)session.getValue("bcyhm");
out.println(kcjb);
out.println(xkyy);
String sql_5="123";
if(kcjb.equals("你好"))
{
out.print("sql_5");
}
%>
---------------
配置:WEBLOGIC6.1
错误就在
if(kcjb.equals("你好"))
{
out.print("sql_5");
}
这个if判断语句上,而且集中在kcjb.equals("你好")这个条件上,如果把"你好"
换成数字或者字母或者干脆把这个if语句去掉,都没有错,这是为什么呢?搞得兄弟好郁闷呀!
错误提示代码:
Parsing of JSP File '/testpool/student/zhengxuan/zhengxuan_done_read.jsp' failed:
--------------------------------------------------------------------------------
/testpool/student/zhengxuan/zhengxuan_done_read.jsp(19): scriptlet close brace '}' unbalanced at line 19 which breaks scope '_base_service_scope_'
probably occurred due to an error in /testpool/student/zhengxuan/zhengxuan_done_read.jsp line 19:
{
--------------------------------------------------------------------------------
Wed May 07 19:30:51 CST
-------------------
大家帮忙看看吧,这叫什么错误呀?考
...全文
68 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
Philzzf 2003-05-08
  • 打赏
  • 举报
回复
要看你的kcjb这个变量是用什么方式传过来的,以往的经验里,如果是POST方式传过来的话,中文一般没有问题的,但如果是GET方式传过来的话就不行了,所以要用java.net.URLEncoder和java.net.URLDecoder 分别在传输页面和接受页面进行转码和解码
dkmilk 2003-05-08
  • 打赏
  • 举报
回复
equals如果是null要报错,
tanguangbin 2003-05-08
  • 打赏
  • 举报
回复
打印你的kcjb看是什么?
killer1999 2003-05-08
  • 打赏
  • 举报
回复
你用的是EDITPLUS么,估计是中文空格问题,先搜索在替换!
wbjk 2003-05-08
  • 打赏
  • 举报
回复
学习中
leshui 2003-05-08
  • 打赏
  • 举报
回复
同上
xmsailor 2003-05-08
  • 打赏
  • 举报
回复
我执行了一下你的代码,发现没有问题

按照你的说明,如果有问题,可能在如下方面:
1.检查你的中英文及全半角,尤其注意检查标点和空格,要特别小心空格,因为这个比较难看出来
2.如果是UNIX或者LINUX,要注意半个汉字问题,因为,一个汉字实际是两个字符,有时只删除了半个汉字(一个字符),而另半个字符没有删除掉,但是却看不到

另外,楼上说的NULL的问题也是要注意的:
request.getParameter()可能会返回NULL,在NULL上调用trim()和equals()会产生异常。
leejidongdong 2003-05-07
  • 打赏
  • 举报
回复
好像是少了括号的说!
lishu1980 2003-05-07
  • 打赏
  • 举报
回复
是不是用的全角的符号呀!
summer0119 2003-05-07
  • 打赏
  • 举报
回复
不是这里的问题,好好看看,引号不要错了,括号不要错了
xuxijian2003 2003-05-07
  • 打赏
  • 举报
回复
("你好").equals(kcjb) 试试!
trust_me 2003-05-07
  • 打赏
  • 举报
回复
上面的这段代码,好像没有什么错误;上面的错误提示表明,你的程序代码在第19行的地方缺了一个}或者是多了一个}。在检查检查吧!
yingmuhuadao 2003-05-07
  • 打赏
  • 举报
回复
你声明String时,用String kcjb=new String(request.getParameter("kcjb").trim());

试试!

或者 可能是文字码转换的问题
Denilson 2003-05-07
  • 打赏
  • 举报
回复
是不是中文的问题,加上:request.setCharacterEncoding("GBK");
试试看

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧