diff --git a/src/main/java/no/nibio/vips/logic/controller/session/ObservationBean.java b/src/main/java/no/nibio/vips/logic/controller/session/ObservationBean.java
index 9966a5b9fbe70fa0673647ddf4c054261e6a5ed1..00d56b148598d40d7f5002c466fb84486a98345b 100755
--- a/src/main/java/no/nibio/vips/logic/controller/session/ObservationBean.java
+++ b/src/main/java/no/nibio/vips/logic/controller/session/ObservationBean.java
@@ -69,6 +69,8 @@ import no.nibio.vips.observationdata.ObservationDataSchema;
 import no.nibio.vips.observationdata.ObservationDataSchemaPK;
 import org.apache.commons.fileupload.FileItem;
 import org.apache.commons.io.FilenameUtils;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.wololo.geojson.Feature;
 import org.wololo.geojson.FeatureCollection;
 import org.wololo.geojson.GeoJSONFactory;
@@ -86,6 +88,8 @@ public class ObservationBean {
     PointOfInterestBean pointOfInterestBean;
     @EJB
     UserBean userBean;
+
+    private static Logger LOGGER = LoggerFactory.getLogger(ObservationBean.class);
     
     public List<Observation> getObservations(Integer organizationId)
     {
@@ -658,17 +662,18 @@ public class ObservationBean {
             sql += "AND is_positive = :isPositive \n";
             parameters.put("isPositive", isPositive);
         }
-        
+
+        LOGGER.debug(sql);
+
         Query q = em.createNativeQuery(sql, Observation.class);
         // Setting the parameters one by one
         parameters.keySet().stream().forEach(
-                (key)->q.setParameter(key, parameters.get(key))
+                (key)->{LOGGER.debug(key + ": " + parameters.get(key)); q.setParameter(key, parameters.get(key));}
         );
         
         //Date start = new Date();
         
         List<Observation> observations = q.getResultList();
-        
         //System.out.println("Finding obs took " + (new Date().getTime() - start.getTime()) + " milliseconds");
         
         //start = new Date();
@@ -688,6 +693,7 @@ public class ObservationBean {
             retVal = this.getObservationsWithLocations(retVal);
             //System.out.println("Finding locations took " + (new Date().getTime() - start.getTime()) + " milliseconds");
         }
+
         
         return retVal;
         
diff --git a/src/main/java/no/nibio/vips/logic/entity/Observation.java b/src/main/java/no/nibio/vips/logic/entity/Observation.java
index baee7c23b5252bdbe7a56c450565504a62d269da..b9a40e51a281878b5ed2f37e0524094be3535ce4 100755
--- a/src/main/java/no/nibio/vips/logic/entity/Observation.java
+++ b/src/main/java/no/nibio/vips/logic/entity/Observation.java
@@ -588,7 +588,7 @@ public class Observation implements Serializable, no.nibio.vips.observation.Obse
      */
     @Column(name = "location_is_private")
     public Boolean getLocationIsPrivate() {
-        return locationIsPrivate;
+        return locationIsPrivate != null ? locationIsPrivate : false;
     }
 
     /**
diff --git a/src/main/java/no/nibio/vips/logic/service/ObservationService.java b/src/main/java/no/nibio/vips/logic/service/ObservationService.java
index 99c31f853206027ef72eea70546a0fbc2e3ab72f..70692949adb036202e6a291f616a9aecaedbd2cd 100755
--- a/src/main/java/no/nibio/vips/logic/service/ObservationService.java
+++ b/src/main/java/no/nibio/vips/logic/service/ObservationService.java
@@ -202,7 +202,6 @@ public class ObservationService {
 						return null;
 					}
                 }).collect(Collectors.toList());
-        
         //o.setObservationDataSchema(observationBean.getObservationDataSchema(observer.getOrganizationId().getOrganizationId(), o.getOrganismId()));
         return Response.ok().entity(observations).build();
     }
@@ -775,7 +774,7 @@ public class ObservationService {
         {
             return filteredObservations;
         }
-        List<Observation> retVal = filteredObservations.stream().filter(obs->obs.getBroadcastMessage()).collect(Collectors.toList());
+        List<Observation> retVal = filteredObservations.stream().filter(obs->obs.getBroadcastMessage() || (isPositive == null || !isPositive)).collect(Collectors.toList());
         //retVal.forEach(o->System.out.println(o.getObservationId()));
         retVal = this.maskObservations(retVal);
         //retVal.forEach(o->System.out.println(o.getObservationId()));
@@ -800,7 +799,7 @@ public class ObservationService {
         
         // Placing all observations with a polygon service in the correct bucket.
         Map<PolygonService, List<Observation>> registeredPolygonServicesInObservationList = new HashMap<>();
-        observations.stream().filter((obs) -> (!obs.getLocationIsPrivate() && obs.getPolygonService() != null)).forEachOrdered((obs) -> {
+        observations.stream().filter((obs) -> { return (!obs.getLocationIsPrivate() && obs.getPolygonService() != null);}).forEachOrdered((obs) -> {
             List<Observation> obsWithPolyServ = registeredPolygonServicesInObservationList.getOrDefault(obs.getPolygonService(), new ArrayList<>());
             obsWithPolyServ.add(obs);
             registeredPolygonServicesInObservationList.put(obs.getPolygonService(), obsWithPolyServ);