Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jakarta ee 在Tomcat6.0中;请求的资源()不可用;发生_Jakarta Ee_Tomcat_Servlets_Tomcat6 - Fatal编程技术网

Jakarta ee 在Tomcat6.0中;请求的资源()不可用;发生

Jakarta ee 在Tomcat6.0中;请求的资源()不可用;发生,jakarta-ee,tomcat,servlets,tomcat6,Jakarta Ee,Tomcat,Servlets,Tomcat6,昨天我在远程服务器上使用JavaServlet编程时遇到了一个问题 我们的任务是构建一个简单的购物车,用户可以通过键入名称并单击“提交”添加项目,然后调用servlet并显示购买的项目 在我编码之后,服务器每次都会告诉我“请求的资源()不可用”的错误。我搜索并尝试了所有我能找到的方法,但仍然不起作用 代码如下: HTML(/~usr/public_HTML/market.HTML) 网上购物 网上购物 欢迎来到在线市场 请输入您要购买的商品: xml(/~usr/public_html/

昨天我在远程服务器上使用JavaServlet编程时遇到了一个问题

我们的任务是构建一个简单的购物车,用户可以通过键入名称并单击“提交”添加项目,然后调用servlet并显示购买的项目

在我编码之后,服务器每次都会告诉我“请求的资源()不可用”的错误。我搜索并尝试了所有我能找到的方法,但仍然不起作用

代码如下:

HTML(/~usr/public_HTML/market.HTML)


网上购物
网上购物
欢迎来到在线市场

请输入您要购买的商品:

xml(/~usr/public_html/web-INF/web.xml)


运货马车
运货马车
运货马车
/推车
Java代码(编译后放到/~usr/public\uHTML/WEB-INF/classes/cart.class)

import javax.servlet.ServletException;
导入javax.servlet.http.HttpServlet;
导入javax.servlet.http.HttpSession;
导入javax.servlet.http.HttpServletRequest;
导入javax.servlet.http.HttpServletResponse;
导入java.util.*;
导入java.io.*;
公共类cart扩展了HttpServlet
{   
public void doGet(HttpServletRequest-req,HttpServletResponse-res)抛出ServletException,IOException
{
res.setContentType(“文本/html”);
PrintWriter out=res.getWriter();
HttpSession session=req.getSession(true);
//获取购物车中以前的项目数。如果没有,则创建它并初始化为零
整数计数=(整数)session.getAttribute(“计数”);
如果(计数=null)
计数=新整数(0);
//声明一个字符串引用以获取新添加的项,如果它为null,则不要添加它
字符串[]项目名称;
项目名称=要求的getParameterValues(“项目”);
如果(项目名称!=null)
{           
计数++;
session.setAttribute(“count”,count);
session.setAttribute(“项目”+计数,项目名称[0]);
}
out.println(“”);
out.println(“”);
out.println(“购物车中的物品”);
out.println(“”);
out.println(“”);
out.println(“新项目成功添加到购物车中。
”; println(“您的购物车包含X个项目。

”; out.println(“您购买的物品:”);
对于(inti=1;i您不需要完整的路径,替换下面的

<form action="http://localhost:8080/~usr/cart" method="get">

有以下几点

<form action="cart" method="get">


该项目部署正确吗?请检查服务器日志,并检查war是否已提取到webapps文件夹。

尝试使用
操作=“/cart”
如果看不到您的项目结构,很难说您是否可以查看详细的文件资源管理器和web.xml。在文件夹/public\u html中有market.html和另一个文件夹“web-INF”。在/public\u html/web-INF/中有问题中提到的web.xml和另一个文件夹“classes”。在/public_html/WEB-INF/classes/中有cart.class。仅此而已。您的WAR的名称是什么?默认情况下,它将被访问-此时我只知道
servlet
/cart
。我非常怀疑您的WAR是否被称为
~usr.WAR
。但我可能错了。实际上,~usr/在se中被我的用户名替换了服务器。这个服务器也被其他同学共享,所以我只能访问我自己的用户文件夹。我不知道你叫什么“战争”,因为tomcat已经设置好了,我们要做的是按照规则创建具有特定名称的文件夹,并将正确的内容放入正确的文件夹中。我的同学已经成功地运行了它。我尝试将代码修改为他的风格,但仍然不起作用。文件结构已添加为commit答案的注释
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpSession;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.*;
import java.io.*;


public class cart extends HttpServlet
{   
    public void doGet (HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException
    {
        res.setContentType("text/html");
        PrintWriter out = res.getWriter();

        HttpSession session = req.getSession(true);

        //get the previous number of items in cart. If none, creat it and initialize to zero
        Integer count = (Integer)session.getAttribute("count");
        if(count == null)
            count = new Integer(0);

        //declare a string reference to get the new added item, if it's null, don't add it
        String[] item_name;

        item_name = req.getParameterValues("item");
        if(item_name != null)
        {           
            count ++;
            session.setAttribute("count",count);    
            session.setAttribute("items"+count,item_name[0]);
        }

            out.println("<html>");
            out.println("<head>");
            out.println("<title>Items in Shopping Cart</title>");  
            out.println("</head>");
            out.println("<body>");
            out.println("New item successfully added to shopping cart.<br>");
            out.println("Your cart contains X items.<br><br>");
            out.println("<center><h1>The items you purchased:</h1>");

            for(int i=1; i<=count; i++)
                {
                    String goods = (String)session.getAttribute("items"+i);
                    out.println("Item #"+i+": "+goods+"<br>");
                }


            out.println("</center></body>");
            out.println("</html>");

            out.close();
    }



}
<form action="http://localhost:8080/~usr/cart" method="get">
<form action="cart" method="get">