user1684462
user1684462

Reputation:

NullPointerException - when running very simple test in rest assured

I get the following error when trying to run this code:

import com.jayway.restassured.response.Response;
import static com.jayway.restassured.RestAssured.*;

public class TestRestAssured {
public static void main (String args[]){
// Call the REST service
Response res = get("http://10.213.75.170:5000/bla"); // <--- Crashes on this line.

    // Get the JSON payload
    String json = res.asString();
 }

   }

java.lang.NullPointerException
    at org.codehaus.groovy.reflection.GeneratedMetaMethod$DgmMethodRecord.loadDgmInfo(GeneratedMetaMethod.java:163)
    at org.codehaus.groovy.runtime.metaclass.MetaClassRegistryImpl.registerMethods(MetaClassRegistryImpl.java:155)
    at org.codehaus.groovy.runtime.metaclass.MetaClassRegistryImpl.<init>(MetaClassRegistryImpl.java:83)
    at org.codehaus.groovy.runtime.metaclass.MetaClassRegistryImpl.<init>(MetaClassRegistryImpl.java:61)
    at groovy.lang.GroovySystem.<clinit>(GroovySystem.java:29)
    at org.codehaus.groovy.runtime.InvokerHelper.<clinit>(InvokerHelper.java:49)
    at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.createMap(ScriptBytecodeAdapter.java:619)
    at com.jayway.restassured.internal.ResponseParserRegistrar.<init>(ResponseParserRegistrar.groovy)
    at com.jayway.restassured.RestAssured.<clinit>(RestAssured.java:336)
    at TestRestAssured.main(TestRestAssured.java:16)
Exception in thread "main" java.lang.NullPointerException
    at org.codehaus.groovy.runtime.callsite.CallSiteClassLoader.loadClass(CallSiteClassLoader.java:45)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at org.codehaus.groovy.reflection.ClassLoaderForClassArtifacts.loadClass(ClassLoaderForClassArtifacts.java:58)
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClass(Unknown Source)
    at org.codehaus.groovy.reflection.ClassLoaderForClassArtifacts.define(ClassLoaderForClassArtifacts.java:42)
    at org.codehaus.groovy.reflection.ClassLoaderForClassArtifacts$1.run(ClassLoaderForClassArtifacts.java:86)
    at org.codehaus.groovy.reflection.ClassLoaderForClassArtifacts$1.run(ClassLoaderForClassArtifacts.java:84)
    at java.security.AccessController.doPrivileged(Native Method)
    at org.codehaus.groovy.reflection.ClassLoaderForClassArtifacts.defineClassAndGetConstructor(ClassLoaderForClassArtifacts.java:84)
    at org.codehaus.groovy.runtime.callsite.CallSiteGenerator.compilePojoMethod(CallSiteGenerator.java:229)
    at org.codehaus.groovy.reflection.CachedMethod.createPojoMetaMethodSite(CachedMethod.java:257)
    at org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite.createCachedMethodSite(PojoMetaMethodSite.java:159)
    at org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite.createPojoMetaMethodSite(PojoMetaMethodSite.java:148)
    at groovy.lang.MetaClassImpl.createPojoCallSite(MetaClassImpl.java:3015)
    at org.codehaus.groovy.runtime.callsite.CallSiteArray.createPojoSite(CallSiteArray.java:116)
    at org.codehaus.groovy.runtime.callsite.CallSiteArray.createCallSite(CallSiteArray.java:150)
    at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:42)
    at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:108)
    at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:116)
    at com.jayway.restassured.internal.ResponseParserRegistrar.<init>(ResponseParserRegistrar.groovy:42)
    at com.jayway.restassured.RestAssured.createTestSpecification(RestAssured.java:1094)
    at com.jayway.restassured.RestAssured.given(RestAssured.java:746)
    at com.jayway.restassured.RestAssured.get(RestAssured.java:776)
    at TestRestAssured.main(TestRestAssured.java:16)

I am using the rest assured 1.7, groovy 1.8.8, all the rest assured dependencies are loaded in my system library path. I am also using jdk 1.7. This is an environmental problem of some sort, as a coworker as no problem running the same code with same .jar files...

Upvotes: 0

Views: 3504

Answers (1)

Udo Held
Udo Held

Reputation: 12548

Well your get seems to return the NullPointerException.

at com.jayway.restassured.RestAssured.get(RestAssured.java:776)

Something is going wrong inside of this method.

You probably missed the third party dependencies as noted in the instructions. It seems like the error pops up when loading the other classes.

Non-maven users

Download REST Assured and put it in your class-path. You may also need to download the third-party dependencies and put them in your classpath as well.

Upvotes: 1

Related Questions