REST项目错误(Tomcat:HTTP错误404)

时间:2018-11-06 01:27:18

标签: java rest tomcat java-ee webservice-client

我刚刚开始学习Java Rest服务。我跟随一些网站来建立Rest服务,但似乎它一直给我同样的错误:'(。

相信我!我试图在stackoverflow和其他论坛上搜索解决方案,但似乎对我不起作用。错误不断回到我身边。

项目: 我在Eclipse中创建了4.9版的Dynamic Web Project和Tomcat 8.5。然后我将所有罐子复制到WEB-INF / lib

请在下面的屏幕截图中查看项目详细信息:

服务器详细信息:

enter image description here

项目详细信息:

enter image description here

WEB内容:

enter image description here

META-INF enter image description here

代码详细信息:

package com.firstproject;

import javax.ws.rs.*;


@Path("/")
public class Scoreservice {


    private static int WIN,LOSSES,TIES;


    @GET
    @Path("/score")
    @Produces("application/json")
    public String getScore() {
        String pattern =  "{ \"wins\":\"%s\", \"losses\":\"%s\", \"ties\": \"%s\"}";
            return String.format(pattern, WIN, LOSSES, TIES);
    }


    @PUT
    @Path("/score")
    @Produces("application/json")
    public String update(@QueryParam("WIN") int wins, 
                            @QueryParam("LOSSES") int losses, 
                            @QueryParam("TIES")   int ties) {
       Scoreservice.WIN   = wins;
       Scoreservice.TIES   = ties;
       Scoreservice.LOSSES = losses;
       String pattern = 
          "{ \"wins\":\"%s\", \"losses\":\"%s\", \"ties\": \"%s\"}";
       return String.format(pattern, WIN, LOSSES, TIES);   
    }



    @POST @Path("/scores/wins")
    @Produces("text/plain")
    public int increaseWin() {
        return ++WIN;   
    }


    @POST @Path("/scores/losses")
    @Produces("text/plain")
    public int increaseLosses() {
        return ++LOSSES;    
    }


    @POST @Path("/scores/ties")
    @Produces("text/plain")
    public int increaseTies() {
        return ++TIES;  
    }

    //GET METHOD

    @GET @Path("/scores/wins")
    @Produces("text/plain")
    public int getWin() {
        return WIN; 

    }

    @GET @Path("/scores/losses")
    @Produces("text/plain")
    public int getLosses() {
        return LOSSES;  
        }


    @GET @Path("/scores/ties")
    @Produces("text/plain")
    public int getTies() {
        return TIES;    
        }

}

问题:

代码完成后,我尝试在服务器上运行它,但结果仍然是Http 404错误(按照下面的附加链接)。

enter image description here

控制台日志:

enter image description here enter image description here

我不知道该项目出了什么问题,我发誓在来到这里提出这个问题之前,我真的试图搜索结果。希望你们帮助我,谢谢!

1 个答案:

答案 0 :(得分:0)

关于您的控制台日志,似乎您的Web应用程序尚未部署,甚至您的tomcat也已在Eclipse中启动。

您可以通过将服务器位置切换到“使用tomcat安装”(检查附件图像)来修改Eclipse中的Tomcat配置。目前,该选项已禁用,您可以从tomcat服务器中删除您的应用,停止并清理tomcat服务器。然后将重新启用该选项。

尝试一下,告诉我发生了什么事。

Switching tomcat server location