diff --git a/pom.xml b/pom.xml
index 9882d2a137d369de566cb5705e366c0deedc4a9f..51c51db090da4fe66293d92478c986fdcfe8b2cc 100644
--- a/pom.xml
+++ b/pom.xml
@@ -24,17 +24,9 @@
       <scope>test</scope>
     </dependency>
     <dependency>
-      <groupId>org.codehaus.jackson</groupId>
-      <artifactId>jackson-core-asl</artifactId>
-      <version>1.9.12</version>
-      <type>jar</type>
-      <scope>provided</scope>
-    </dependency>
-    <dependency>
-      <groupId>org.codehaus.jackson</groupId>
-      <artifactId>jackson-mapper-asl</artifactId>
-      <version>1.9.12</version>
-      <type>jar</type>
+      <groupId>com.fasterxml.jackson.core</groupId>
+      <artifactId>jackson-annotations</artifactId>
+      <version>2.4.1</version>
       <scope>provided</scope>
     </dependency>
     <dependency>
@@ -43,6 +35,17 @@
       <version>1.2.0</version>
       <type>jar</type>
     </dependency>
+    <dependency>
+      <groupId>com.fasterxml.jackson.core</groupId>
+      <artifactId>jackson-core</artifactId>
+      <version>2.4.1</version>
+      <scope>provided</scope>
+    </dependency>
+    <dependency>
+      <groupId>com.fasterxml.jackson.core</groupId>
+      <artifactId>jackson-databind</artifactId>
+      <version>2.4.1</version>
+    </dependency>
     <dependency>
       <groupId>javax</groupId>
       <artifactId>javaee-web-api</artifactId>
diff --git a/src/main/java/no/bioforsk/vips/entity/Result.java b/src/main/java/no/bioforsk/vips/entity/Result.java
index eebbe2441c2698302f04f8fc2f9797b5f85d2a88..0a82aad3196c3b96793bc9841214a998f11544f0 100644
--- a/src/main/java/no/bioforsk/vips/entity/Result.java
+++ b/src/main/java/no/bioforsk/vips/entity/Result.java
@@ -22,7 +22,8 @@ package no.bioforsk.vips.entity;
 import java.util.Date;
 import java.util.Map;
 import java.util.Set;
-import org.codehaus.jackson.map.annotate.JsonDeserialize;
+import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
+
 
 /**
  * Represents a result from a model run
diff --git a/src/main/java/no/bioforsk/vips/util/JSONUtil.java b/src/main/java/no/bioforsk/vips/util/JSONUtil.java
index b826966f8f4fde65b181400755205211fd634059..75cdcda879b59934b7b3f6509200fbd8efdc0078 100644
--- a/src/main/java/no/bioforsk/vips/util/JSONUtil.java
+++ b/src/main/java/no/bioforsk/vips/util/JSONUtil.java
@@ -19,22 +19,22 @@
 
 package no.bioforsk.vips.util;
 
+import com.fasterxml.jackson.core.JsonParseException;
+import com.fasterxml.jackson.core.JsonParser;
+import com.fasterxml.jackson.databind.ObjectMapper;
 import java.io.IOException;
-import org.codehaus.jackson.JsonParseException;
-import org.codehaus.jackson.JsonParser;
-import org.codehaus.jackson.map.ObjectMapper;
 
 /**
  * Simple utility class for JSON, building on top of Jackson
- * @copyright 2013 <a href="http://www.bioforsk.no/">Bioforsk</a>
+ * @copyright 2013-2014 <a href="http://www.bioforsk.no/">Bioforsk</a>
  * @author Tor-Einar Skog <tor-einar.skog@bioforsk.no>
  */
 public class JSONUtil {
     public static boolean isValidJSON(final String json) {
         boolean valid = false;
         try {
-           final JsonParser parser = new ObjectMapper().getJsonFactory()
-                 .createJsonParser(json);
+           final JsonParser parser = new ObjectMapper().getFactory()
+                 .createParser(json);
            while (parser.nextToken() != null) {
            }
            valid = true;
diff --git a/src/test/java/no/bioforsk/vips/util/WeatherUtilTest.java b/src/test/java/no/bioforsk/vips/util/WeatherUtilTest.java
index 2a372038ff94e56eab9c72f15539d70c0fac2990..e66232e806f21e6f4e4928b589759d39fc080679 100644
--- a/src/test/java/no/bioforsk/vips/util/WeatherUtilTest.java
+++ b/src/test/java/no/bioforsk/vips/util/WeatherUtilTest.java
@@ -19,6 +19,12 @@
 
 package no.bioforsk.vips.util;
 
+import com.fasterxml.jackson.core.JsonFactory;
+import com.fasterxml.jackson.core.JsonParser;
+import com.fasterxml.jackson.core.type.TypeReference;
+import com.fasterxml.jackson.databind.JsonNode;
+import com.fasterxml.jackson.databind.MappingJsonFactory;
+import com.fasterxml.jackson.databind.ObjectMapper;
 import java.io.BufferedInputStream;
 import java.io.IOException;
 import java.util.ArrayList;
@@ -33,16 +39,10 @@ import static junit.framework.Assert.fail;
 import junit.framework.TestCase;
 import no.bioforsk.vips.entity.WeatherObservation;
 import no.bioforsk.vips.model.ConfigValidationException;
-import org.codehaus.jackson.JsonFactory;
-import org.codehaus.jackson.JsonNode;
-import org.codehaus.jackson.JsonParser;
-import org.codehaus.jackson.map.MappingJsonFactory;
-import org.codehaus.jackson.map.ObjectMapper;
-import org.codehaus.jackson.type.TypeReference;
 
 /**
  *
- * @author treinar
+ * @author Tor-Einar Skog <tor-einar.skog@bioforsk.no>
  */
 public class WeatherUtilTest extends TestCase {
     
@@ -510,9 +510,9 @@ public class WeatherUtilTest extends TestCase {
         {
         BufferedInputStream inputStream = new BufferedInputStream(this.getClass().getResourceAsStream(fileName));
             JsonFactory f = new MappingJsonFactory();
-            JsonParser jp = f.createJsonParser(inputStream);
+            JsonParser jp = f.createParser(inputStream);
             JsonNode all = jp.readValueAsTree();
-            List<WeatherObservation> observations = new ArrayList<WeatherObservation>();
+            List<WeatherObservation> observations = new ArrayList<>();
             ObjectMapper mapper = new ObjectMapper();
 
             Date firstDate = null;
@@ -520,7 +520,7 @@ public class WeatherUtilTest extends TestCase {
             if(all.isArray())
             {
                 for(JsonNode node : all){
-                    Date timeMeasured = (Date)mapper.convertValue(node.get("timeMeasured").getTextValue(), new TypeReference<Date>(){});
+                    Date timeMeasured = (Date)mapper.convertValue(node.get("timeMeasured").asText(), new TypeReference<Date>(){});
                     if(firstDate == null || firstDate.compareTo(timeMeasured) > 0)
                     {
                         firstDate = timeMeasured;
@@ -532,9 +532,9 @@ public class WeatherUtilTest extends TestCase {
                     //System.out.println(node.toString());
                     WeatherObservation observation = new WeatherObservation();
                     observation.setTimeMeasured(timeMeasured);
-                    observation.setLogIntervalId(node.get("logIntervalId").getIntValue());
-                    observation.setElementMeasurementTypeId(node.get("elementMeasurementTypeId").getTextValue());
-                    observation.setValue(node.get("value").getDoubleValue());
+                    observation.setLogIntervalId(node.get("logIntervalId").asInt());
+                    observation.setElementMeasurementTypeId(node.get("elementMeasurementTypeId").asText());
+                    observation.setValue(node.get("value").asDouble());
                     observations.add(observation);
                 }