1

RESTful Web サービスのコーディング方法を学ぶために、このチュートリアルに従っています -チュートリアル。ここでは、 Postman201 Createdを介して新しいメッセージを投稿するとともに、ステータス コードを送信しようとしています。彼が 4:47 で書いているコード行を私が書くと、Eclipse Oxygen でエラーが発生します。

      CREATED cannot be resolved or is not a field

ドキュメントを調べましたが、正しい入力方法が見つかりませんでした。より多くの Response クラスもインポートしようとしましたが、これは修正されませんでした。

問題が発生するコードは次のとおりです。

    return Response.status(Status.CREATED)
            .entity(newMessage)
            .build();

そして、これはクラス全体です:

    `import java.net.URI;
     import java.util.List;

     import javax.net.ssl.SSLEngineResult.Status;
     import javax.ws.rs.BeanParam;
     import javax.ws.rs.Consumes;
     import javax.ws.rs.DELETE;
     import javax.ws.rs.GET;
     import javax.ws.rs.POST;
     import javax.ws.rs.PUT;
     import javax.ws.rs.Path;
     import javax.ws.rs.PathParam;
     import javax.ws.rs.Produces;
     import javax.ws.rs.QueryParam;
     import javax.ws.rs.core.Context;
     import javax.ws.rs.core.MediaType;
     import javax.ws.rs.core.UriInfo;
     import javax.ws.rs.core.Response.ResponseBuilder;

     import org.hristo.javabrains.messenger.model.Message;
     import org.hristo.javabrains.messenger.resources.beans.MessageFilterBean;
     import org.hristo.javabrains.messenger.service.MessageService;

     import com.sun.research.ws.wadl.Response;

     @Path("messages")
     @Consumes(MediaType.APPLICATION_JSON)
     @Produces(MediaType.APPLICATION_JSON)
     public class MessageResource {

     MessageService messageService = new MessageService();


@GET
public List<Message> getMessages(@BeanParam MessageFilterBean filterBean) {
    if(filterBean.getYear() > 0) {
        return messageService.getAllMessagesForYear(filterBean.getYear());
    }
    if(filterBean.getStart() >= 0 && filterBean.getSize() >= 0) {
        return messageService.getAllMessagesPaginated(filterBean.getStart(), filterBean.getSize());
    }
    return messageService.getAllMessages();
}

@POST
public Response addMessage(Message message, @Context UriInfo uriInfo) {

    Message newMessage = messageService.addMessage(message);
    String newId = String.valueOf(newMessage.getId());
    URI uri = uriInfo.getAbsolutePathBuilder().path(newId).build();
    return Response.status(Status.CREATED)
            .entity(newMessage)
            .build();
}

@PUT
@Path("{messageId}")    
public Message updateMessage(@PathParam("messageId") long messageId, Message message) {
    message.setId(messageId);
    return messageService.updateMessage(message);
}

@DELETE
@Path("{messageId}")
public Message removeMessage(@PathParam("messageId") long messageId) {
    return messageService.removeMessage(messageId);
}


@GET
@Path("{messageId}")
public Message getMessage(@PathParam("messageId") long messageId) {
    return messageService.getMessage(messageId);
}

@Path("{messageId}/comments")
public CommentResource getCommentResource() {
    return new CommentResource();
} }
4

1 に答える 1