此回复为自动发出,仅用于显示而已,并无任何其他特殊作用
楼主【nieliqiang84】截止到2008-07-25 15:57:45的历史汇总数据(不包括此帖):
发帖的总数量:4 发帖的总分数:171 每贴平均分数:42
回帖的总数量:107 得分贴总数量:24 回帖的得分率:22%
结贴的总数量:4 结贴的总分数:171
无满意结贴数:0 无满意结贴分:0
未结的帖子数:0 未结的总分数:0
结贴的百分比:100.00% 结分的百分比:100.00%
无满意结贴率:0.00 % 无满意结分率:0.00 %
敬礼!
楼主【nieliqiang84】截止到2008-07-25 15:57:45的历史汇总数据(不包括此帖):
发帖的总数量:4 发帖的总分数:171 每贴平均分数:42
回帖的总数量:107 得分贴总数量:24 回帖的得分率:22%
结贴的总数量:4 结贴的总分数:171
无满意结贴数:0 无满意结贴分:0
未结的帖子数:0 未结的总分数:0
结贴的百分比:100.00% 结分的百分比:100.00%
无满意结贴率:0.00 % 无满意结分率:0.00 %
敬礼!
解决方案 »
- axis2的客户端使用Proxy方式时,Proxy使用对象池是否可行
- 我急需解决
- 用过Interstage应用服务器的回贴
- 【gloomyfish】给需要用JAVA读写xml文件兄弟们的PPT
- 只要你一句话,就胜过我一个月
- JAVA多线程可以提高Oracle的查询速度吗?来说说意见吧!
- 在spring+ibatis中使用LAST_INSERT_ID()是否安全?
- 广而告之 - Java天下,Java者学习的社区
- 请高手帮忙:不知有没有谁用过mysql5.0的GROUP BY 子句?有问题急待解决。
- 高手来拿分,关于session监听,并插入数据库的问题
- 请求帮忙解决hibernate调用存储过程时出现的问题
- 求服务器间数据传输的解决方案
是不是作用域(scope)的问题?你看一下。具体文档:http://tech.idv2.com/2007/09/25/session-and-scope/
Color getRandColor(int fc,int bc){//给定范围获得随机颜色
Random random = new Random();
if(fc>255) fc=255;
if(bc>255) bc=255;
int r=fc+random.nextInt(bc-fc);
int g=fc+random.nextInt(bc-fc);
int b=fc+random.nextInt(bc-fc);
return new Color(r,g,b);
}
%>
<%
//设置页面不缓存
response.setHeader("Pragma","No-cache");
response.setHeader("Cache-Control","no-cache");
response.setDateHeader("Expires", 0);
// 在内存中创建图象
int width=60, height=20;
BufferedImage image = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);
// 获取图形上下文
Graphics g = image.getGraphics();
//生成随机类
Random random = new Random();
// 设定背景色
g.setColor(getRandColor(200,250));
g.fillRect(0, 0, width, height);
//设定字体
g.setFont(new Font("Times New Roman",Font.PLAIN,18));
//画边框
//g.setColor(new Color());
//g.drawRect(0,0,width-1,height-1);
// 随机产生155条干扰线,使图象中的认证码不易被其它程序探测到
g.setColor(getRandColor(160,200));
for (int i=0;i<155;i++)
{
int x = random.nextInt(width);
int y = random.nextInt(height);
int xl = random.nextInt(12);
int yl = random.nextInt(12);
g.drawLine(x,y,x+xl,y+yl);
}
// 取随机产生的认证码(4位数字)
String sRand="";
for (int i=0;i<4;i++){
String rand=String.valueOf(random.nextInt(10));
sRand+=rand;
// 将认证码显示到图象中
g.setColor(new Color(20+random.nextInt(110),20+random.nextInt(110),20+random.nextInt(110)));
//调用函数出来的颜色相同,可能是因为种子太接近,所以只能直接生成
g.drawString(rand,13*i+6,16);
}
// 将认证码存入SESSION
session.setAttribute("rand",sRand);
//session.setAttribute("myname","xiaoqiang");
// System.out.print("生成的验证码是:"+session.getAttribute("rand")); System.out.println("session id 号是==》"+session.getId()); //我在这里打印出 当前页面里的SessionID // 图象生效
g.dispose();
// 输出图象到页面
ImageIO.write(image, "JPEG", response.getOutputStream());
out.clear();
out = pageContext.pushBody();
%>
下面是登录页面的代码,一些啰嗦的代码我就省了 用户帐号: <html:text property="user_id"></html:text>
用户密码:<html:password property="user_pwd"></html:password>
验证码: <input type="text" id="rand" name="rand" value="" size="10">
<img alt="" src="/yingxinTD/pages/show/image.jsp"/> 这里是验证码输出
之后提交到Action
String rand = (String)session.getAttribute("rand");//系统生成的验证码
String input = request.getParameter("rand"); //用户输入的验证码
System.out.println(session.getId()); ()); //我在这里打印出 当前的SessionID现在发现 在Action 中的SessionID 和 验证码生成的JSP页面中的 SessionID 是不一样的 这样那么 (String)session.getAttribute("rand")
获取的验证码字段当然也就为 null 了。
以上这些问题只有在我发布的时候才会这样。
现在回到我关于使用 http://www4.yingxin186.com 来访问工程,如果用这种格式就会ID不同,但如果在这个格式的后面再加上工程名去访问就不会了即: http://www4.yingxin186.com/yingxinTD 这样访问就一切正常
而我要的确不是这样的效果,我想要用户输入 http://www4.yingxin186.com 这个就 能够正常访问,进行操作
谢谢你提供的资料,关于Session或其他的作用域我是了解的,只是现在是发布时出现的问题,这个问题没有什么人可以回答,嗨!我现在在当当订购了一本书,还是自己那书来研究吧,很多问题在网上也找不到满意的答案