第1:0行在角色上没有可行的选择' H'例外

时间:2018-06-19 08:10:49

标签: java eclipse rest web-services web-client

我正在尝试创建客户端服务器web api,其中客户端调用web服务称为web1,然后web1成为另一个Web服务的客户端说web2。 web2返回到web1,因此客户端执行。 我的目标是创建一个Web服务组合,并将结果打印为两个Web服务的提交。

这样做时我遇到了这个错误:

line 1:0 no viable alternative at character 'H' 
line 1:1 no viable alternative at character 'e' 
line 1:2 no viable alternative at character 'l'
line 1:3 no viable alternative at character 'l'
line 1:4 no viable alternative at character 'o'
line 1:5 no viable alternative at character 'p'
line 1:6 no viable alternative at character 'r'
line 1:7 no viable alternative at character 'i'
line 1:8 no viable alternative at character 'y'
line 1:9 no viable alternative at character 'a'
line 0:-1 no viable alternative at input '<EOF>'
Exception in thread "main" javax.ws.rs.WebApplicationException: HTTP 400 Bad 
Request

这里&#39;你好&#39;是当我调用 getMessage()和&#39; priya&#39;时应该运行的消息在 getName()

上调用名称

代码是:

//客户端

public class MessageClient {
public static void main(String[] args) {

    Client client= ClientBuilder.newClient();
    WebTarget baseTarget = 
    client.target("http://localhost:8080/messenger/webapi");
    WebTarget messageTarget = baseTarget.path("messages");
    WebTarget singleMsgTarget = messageTarget.path("{messageId}");

    Message message1= singleMsgTarget
            .resolveTemplate("messageId", "1")
            .request()
            .get(Message.class);

    System.out.println(message1.getMessage());
}
}

// web1(web2的客户端)

 @Path("/messages")
public class MessageResources {
MessageService ms = new MessageService();

@GET
@Path("{messageId}")
@Produces(MediaType.APPLICATION_JSON)
public String getMessage(@PathParam("messageId") long id)
{

Client client= ClientBuilder.newClient();

    WebTarget baseTarget= 
client.target("http://localhost:8080/messenger/webapi");
    WebTarget infoTarget= baseTarget.path("/info");
    WebTarget singleInfoTarget= infoTarget.path("{infoId}");

    InfoCreated info= singleInfoTarget
            .resolveTemplate("infoId", "1")
            .request()
            .get(InfoCreated.class);
    String name = info.getName();

    Message message = ms.getMessage(id);

    String msg=message.getMessage();

    String result = msg.concat(name);

    return result;
}

代码中没有错误,但错误会在运行时出现。

0 个答案:

没有答案