无法测试宁静的Web服务

时间:2015-07-14 06:09:47

标签: java rest

我正在创建一个简单的restful服务并使用soapui进行测试。 每次我收到错误:500:内部服务器错误。 在服务器日志中,它显示未找到的类。添加罐子它开始冲突。 我认为这只是罐子问题,但不知道确切的罐子。

web.xml: -

com.springsource.org.objectweb.asm_2.2.3.jar
jersey-client.jar
jersey-core.jar
jersey-gf-server.jar

罐子: -

package com.service;

import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;

@Path("/cal/")
public class RestService {

    @GET
    @Path("/one/")
    @Produces("application/xml")
    public String sanction(){               
        return new Sanction().servesRequest();
    }
}

Java代码: -

Class SomeClass
{
    public string MethodName()
    {
    //Some Code
        While(conditions)
        {
            //More Code
            string X;
            X = "string stuff";
            return X;
        }
    }
}

wadl路径: - http://localhost:8090/Service/rest/application.wadl

我曾尝试更换罐子,改变球衣servlet类名,eclipse,netbeans等等但无法在地板上使用它。

1 个答案:

答案 0 :(得分:1)

这是罐子问题。 我正在从https://jersey.java.net/download.html下载jar,其中包含3个文件夹,即api,ext,lib但是我没有错误地使用这些文件夹中的所有jar。 我还必须更改web.xml,因为这些jar用于jersey2.19所以新的web.xml就像

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1">
  <display-name>Service</display-name>
 <servlet>
    <servlet-name>REST Web </servlet-name>
    <servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class>

    <init-param>
        <param-name>jersey.config.server.provider.packages</param-name>
        <param-value>com.service</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
  </servlet>
  <servlet-mapping>
    <servlet-name>REST Web </servlet-name>
    <url-pattern>/rest/*</url-pattern>
  </servlet-mapping>

</web-app>