Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/325.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
如何使用java代码从webservice读取数据并在chatbot中打印_Java_Web Services_Watson Conversation - Fatal编程技术网

如何使用java代码从webservice读取数据并在chatbot中打印

如何使用java代码从webservice读取数据并在chatbot中打印,java,web-services,watson-conversation,Java,Web Services,Watson Conversation,我的问题是我想从webservice读取数据并打印出来 聊天机器人 Web服务将有事件编号及其状态,我必须从Web服务复制数据并打印。我尝试使用下面的代码,但我不确定如何在对话聊天机器人中打印此数据 protected void doPost(HttpServletRequest request, HttpServletResponse response) throws IOException { String requestMessage = request.getParameter

我的问题是我想从webservice读取数据并打印出来 聊天机器人

Web服务将有事件编号及其状态,我必须从Web服务复制数据并打印。我尝试使用下面的代码,但我不确定如何在对话聊天机器人中打印此数据

protected void doPost(HttpServletRequest request, HttpServletResponse 
response) throws IOException {
    String requestMessage = request.getParameter("message");
    String contextString = request.getParameter("context");
    JSONObject contextObject = new JSONObject();
    if(contextString != null) {enter code here
        contextObject = JSONObject.parseObject(contextString);
    }
    System.out.println("Context: ");
    System.out.println(contextObject);
    Map<String, Object> contextMap = Utility.toMap(contextObject);
    if(requestMessage == null || requestMessage.isEmpty()){
        requestMessage = "Greetings";
    }
    if(requestMessage == "1" || requestMessage == "merge id"){
       // throw new NullPointerException();
        requestMessage = "call";
try {
        URL e = new URL(
                "webservice url");
        HttpURLConnection conn = (HttpURLConnection) e.openConnection();
        conn.setRequestMethod("GET");
        conn.setRequestProperty("Accept", "TEXT/PLAIN");
        if (conn.getResponseCode() != 200) {
            throw new RuntimeException("Failed : HTTP error code : " + 
conn.getResponseCode());
        }

        BufferedReader br = new BufferedReader(new 
InputStreamReader(conn.getInputStream()));
        System.out.println("Output from Server .... \n");

        String output;
protectedvoiddopost(HttpServletRequest请求,HttpServletResponse
响应)抛出IOException{
String requestMessage=request.getParameter(“消息”);
String contextString=request.getParameter(“上下文”);
JSONObject contextObject=新的JSONObject();
如果(contextString!=null){请在此处输入代码
contextObject=JSONObject.parseObject(contextString);
}
System.out.println(“上下文:”);
System.out.println(contextObject);
Map contextMap=Utility.toMap(contextObject);
if(requestMessage==null | | requestMessage.isEmpty()){
requestMessage=“问候”;
}
如果(requestMessage==“1”| | requestMessage==“合并id”){
//抛出新的NullPointerException();
requestMessage=“call”;
试一试{
URL e=新URL(
“Web服务url”);
HttpURLConnection conn=(HttpURLConnection)e.openConnection();
conn.setRequestMethod(“GET”);
conn.setRequestProperty(“接受”、“文本/普通”);
如果(连接getResponseCode()!=200){
抛出新的RuntimeException(“失败:HTTP错误代码:”+
连接getResponseCode());
}
BufferedReader br=新的BufferedReader(新的
InputStreamReader(conn.getInputStream());
System.out.println(“从服务器输出…”\n);
字符串输出;

在应用程序代码中,您必须创建/维护一个名为JSON的变量
context
。作为该结构的一部分,您可以使用值定义自己的变量。该上下文通过(直接或通过)传递给Watson对话

在Watson Conversation的工作区编辑器中,您现在可以访问这些上下文变量。这可以作为对话框节点条件的一部分,在响应文本中,或者在为上下文变量分配新值时。对于您的情况,它可以是一个简单的
$ticket\u details
。有关详细信息,请参阅此


此外,我在应用程序代码中编写了a并链接到a。

,您必须创建/维护一个名为JSON
context
的变量。作为该结构的一部分,您可以使用值定义自己的变量。该上下文将传递给Watson与的对话(直接或通过)

在Watson Conversation的工作区编辑器中,您现在可以访问这些上下文变量。这可以作为对话框节点条件的一部分,在响应文本中,或者在为上下文变量分配新值时。对于您的情况,它可以是一个简单的
$ticket\u details
。有关详细信息,请参阅此


此外,我还编写了a和a的链接。

您可以将数据作为上下文变量传递到对话中。然后,可以在对话节点中使用上下文变量,例如,在响应中打印。感谢您的响应,请帮助我举个例子,我是watson和java的新手。我假设您已经阅读了以下内容:嗨,感谢您提供的信息,我已经阅读了链接,下面是我的理解,如果我错了,请纠正我,我将在我的代码中创建$ticket_details:context变量,并在if条件下编写上述代码。然后我将在对话框节点中添加此上下文变量以打印webservice数据。该变量需要是“context”的一部分您可以将数据作为上下文变量传递到对话中。然后,可以在对话节点中使用上下文变量,例如,在响应中打印。感谢您的响应,请帮助我举个例子,我是watson和java的新手。我假设您已经阅读了以下内容:您好,谢谢您提供的信息,我已经阅读了链接,下面是我的理解anding,如果我错了,请纠正我,我将在我的代码中创建$ticket\u details:context变量,并在if条件中写入上述代码..然后我将在对话框节点中添加此context变量以打印webservice数据..该变量需要是“context”的一部分