标签:
java web工程里我写了两个文件红色的部分是文件应该放置的正确位置
因为服务器默认会搜索这些路径的!!!要是随便放置文件的路径可能要配置tomcat服务器。如果把Ex12_1.jsp放置在Svlt.java所在的包里,下面的路径将
不能访问Ex12_1.jsp文件!!!
要将项目部署到服务器上才能用用浏览器打开的,如图所示我的项目FirstWeb被部署到了tomcat服务器上了!!!
下面是这两个文件执行的结果。
下面这两个文件的内容来自java程序设计书上
//Svlt.java
package com.qdu.sun; import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class Svlt extends HttpServlet { /** * */ private static final long serialVersionUID = 1L; public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { res.setContentType("text/html"); PrintWriter out = res.getWriter(); out.println("<HTML>"); out.println("<HEAD><TITLE>My First Servlet</TITLE></HEAD>"); out.println("<BODY>"); out.println("<B> First Servlet </B>"); out.println("</BODY></HTML>"); } }
//Ex12.jsp
<%-- page指令标签,指定MIME类型和页面的字符编码 --%> <%@ page contentType="text/html; charset=gb2312" %> <%-- 声明一个类方法,该方法在整个JSP页面有效 --%> <%! int continuousSum(int n) { int sum=0; for(int i=1;i<=n;i++) { sum=sum+i; } return sum; } %> <%-- JSP中的Java程序片,将被JSP引擎按顺序执行 --%> <% String str=request.getParameter("number"); if(str==null) str="10"; int r=Integer.parseInt(str); %> <html> <head> <title>计算连续和</title> </head> <body> <h1>请输入一个自然数</h1> <!-- HTML表单 --> <form name="form1" method="post" action=""> <input type="text" name="number" value=<%=str%>> <input type="submit" name="Submit" value="计算"> </form> <%-- JSP表达式,其值由服务器负责计算,并将结果发回客户端显示 --%> <%= r %>的连续和是<%=continuousSum(r) %> </body> </html>
编写Svlt.java时出现以下问题
软件包javax.servlet不存在的解决办法 http://shuhui018125.blog.163.com/blog/static/77110502008102525238433/ 我在编译一个包含有javax.servlet包的java文件, import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class HelloWorld extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { 出现以下问题: HelloWorld.java:2: 软件包 javax.servlet 不存在 import javax.servlet.*; ^ HelloWorld.java:3: 软件包 javax.servlet.http 不存在 import javax.servlet.http.*; ^ HelloWorld.java:6: 找不到符号 符号: 类 HttpServlet public class HelloWorld extends HttpServlet { ^ HelloWorld.java:7: 找不到符号 符号: 类 HttpServletRequest 位置: 类 HelloWorld public void doGet(HttpServletRequest request, HttpServletResponse response) ^ HelloWorld.java:7: 找不到符号 符号: 类 HttpServletResponse 位置: 类 HelloWorld public void doGet(HttpServletRequest request, HttpServletResponse response) ^ HelloWorld.java:8: 找不到符号 符号: 类 ServletException 位置: 类 HelloWorld throws IOException, ServletException
其原因是java编译器没有找到软件包javax.servlet。 解决办法: 从tomcat lib目录下拷贝一个servlet-api.jar的包到“JDK\jre\lib\ext”目录下 凡是出现找不到包的情况,都可以将找到的包放到JDK\jre\lib\ext下,然后再编译就能够通过。
现在就可以编译了!!!!
http://blog.sina.com.cn/s/blog_6145ed810100n48f.html
还有一个问题就是当tomcat启动后,不要再次启动,因为这样会造成端口重用!要是出现这样错误我们可以打开任务管理器
直接杀死tomcat.exe这个进程,然后再重新启动就可以了!!!
http://blog.chinaunix.net/xmlrpc.php?r=blog/article&uid=21209537&id=1641530
标签:
原文地址:http://www.cnblogs.com/leijiangtao/p/4423071.html