注册 登录
编程论坛 J2EE论坛

jsp运行问题

罗彬 发布于 2008-03-12 18:04, 854 次点击
我才学JSP,开始运行一些程序的时候还可以运行,不过有时候我改JSP源文件后,  就会打开下载对话框,并会在电脑上打开JSP源文件.这是怎么回事,是我的tomcat没安装好吗?还是怎么回事.
请问下边的程序
<form action="" method="post">
    <input type="text" name="user">
    <input type="text" name="password">
    <input type="submit" name="ok" value="登陆"
</form>

[bo][it]
为什么上下两个代码必须分开写,写在一个中要说找不到equals方法[/it][/bo]
<%@page contentType="test/html;charset=gb2312"import="java.lang.String" %>
<% String str1=request.getParameter("user");
    String str2=request.getParameter("password");
    String str3=new String("luo");
    String str4=new String("123456");
     if((str1.equals(str3))&&(str2.equals(str4)))
     {
     %>
    
        <jsp:forward page="pass.html"/>         
     <%}
       else
         %>
         <jsp:forward page="erorr.html"/>

[[it] 本帖最后由 罗彬 于 2008-3-13 10:00 编辑 [/it]]
4 回复
#2
带头大哥2008-03-13 00:58
一般说,直接请求配置文件才会出现你这种情况啊?怎么.jsp也会啊,我偷网站css都是直接请求文件就下载了
#3
guoxhvip2008-03-16 01:40
写在一个文件中不是找不到equals 而是你第一次请求的时候
String str1=request.getParameter("user");
String str2=request.getParameter("password");
这两个变量都为null
你再用他们调用方法那就报空指向异常

所以写在一个文件的话最好判断一下
如果不想判断 那把你的代码改一下也不会报错
if((str1.equals(str3))&&(str2.equals(str4)))
把这句改成
if((str3.equals(str1))&&(str4.equals(str2)))
不过你这样改了过后估计你连表单都还没看见它就已经定向到error.html了
#4
罗彬2008-03-16 11:12
谢谢,我再问一下,为什么我写的JSP加上如果加上:
<%@ page contentType="html/text;charset=gb2312" import="java.util.*"%>
再运行的时候就会以编辑器的形式打开,但是我如果把contentType 去掉, 才会以浏览器打开
#5
带头大哥2008-03-16 21:18
这就对了,问题出在文件类型上面,但不应该发生你出现的情况啊
1