Spring web app javax.ws.rs.ProcessingException:HTTP 500内部服务器错误

时间:2016-01-10 09:52:45

标签: java spring http jax-rs

我在运行网络应用时遇到了一些问题,这个问题基本上是一个网址缩短程序。

服务器具有允许上传包含URL列表的CSV文件的功能。下面的代码是一种从队列中获取CSV文件的方法,它读取文件并使其中的URL短路。当我尝试向我的服务器中的控制器发送发布请求时,问题就出现了。出现的例外情况如下:

#include <stdio.h>

int main ()
{
    int var1=1048575;
    int var2=1048575;

    char buffer [17];
    char zeros [] = "0000000000000000";    
    sprintf (buffer, "%x%x", var1, var2);

    // Put the zeros in front
    int len = strlen(buffer);
    if (len < 16)
    {
        zeros[16-len] = 0x0; // Terminate the string at 16-len
    }
    else
    {
        zeros[0] = 0x0;  // Terminate the string at 0 as no extra zero is needed
    }

    printf("%s%s\n", zeros, buffer);

    return 0;
}

以下是我提到的方法的代码:

javax.ws.rs.ProcessingException: HTTP 500 Internal Server Error

正如我所说,问题出在这个特定的要求上(两者基本相同):

while(true){
    QueueObject qo = csvQueue.take();
    copyFile(qo.getFile());
    File f = new File("temp");
    Scanner sc = new Scanner(f);
    sc.useDelimiter(",|\\s");
    Client client = ClientBuilder.newClient();
    while(sc.hasNext()){
        String url = sc.next();
        ResponseEntity<ShortURL> res = shortener(url, null, null, null, null, null);
        if(res!=null && ((res.getStatusCode()).toString()).equals("400")){
            String stat = url + " : Failed";
            UpdateMessage um = new UpdateMessage(stat, qo.getUser());  
            Response response = client.target("http://localhost:8080/urlUploads")
                .request(MediaType.APPLICATION_JSON)
                .post(Entity.entity(um, MediaType.APPLICATION_JSON));
        }
        else{
            String stat = url + " : Success";
            UpdateMessage um = new UpdateMessage(stat, qo.getUser());  
            Response response = client.target("http://localhost:8080/urlUploads")
                .request(MediaType.APPLICATION_JSON)
                .post(Entity.entity(um, MediaType.APPLICATION_JSON));
        }
    }
    f.delete();
}

我想要触及的控制器就是这个:

Response response = client.target("http://localhost:8080/urlUploads")
        .request(MediaType.APPLICATION_JSON)
        .post(Entity.entity(um, MediaType.APPLICATION_JSON));

0 个答案:

没有答案