diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/IPeerAssessment.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/IPeerAssessment.java
index a117805e8460eb08fa89a48794e2cd3f5f966575..18a02b758e8e7a54572516679abd7518321962f4 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/IPeerAssessment.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/IPeerAssessment.java
@@ -72,9 +72,8 @@ public interface IPeerAssessment {
      *
      * @param peerRatings
      * @param projectId
-     * @param groupId
      */
-    void postPeerRating(ArrayList<PeerRating> peerRatings, String projectId, String groupId);
+    void postPeerRating(ArrayList<PeerRating> peerRatings, String projectId);
 
     /**
      *
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/model/PeerRating.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/model/PeerRating.java
index 80d35be34f8e6208f5c436d267e4d6e93b391129..56d52b14f3f51c32a8d8f16608bf62f0f4c2111d 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/model/PeerRating.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/model/PeerRating.java
@@ -1,18 +1,19 @@
 package unipotsdam.gf.modules.assessment.controller.model;
 
 import java.util.Arrays;
+import java.util.Map;
 
 public class PeerRating {
     private String fromPeer;
     private String toPeer;
-    private int[] workRating;
+    private Map<String, Integer> workRating;
 
     @Override
     public String toString() {
         return "PeerRating{" +
                 "fromPeer='" + fromPeer + '\'' +
                 ", toPeer='" + toPeer + '\'' +
-                ", workRating=" + Arrays.toString(workRating) +
+                ", workRating=" + workRating +
                 '}';
     }
 
@@ -35,15 +36,15 @@ public class PeerRating {
         this.toPeer = toPeer;
     }
 
-    public int[] getWorkRating() {
+    public Map<String, Integer> getWorkRating() {
         return workRating;
     }
 
-    public void setWorkRating(int[] workRating) {
+    public void setWorkRating(Map<String, Integer> workRating) {
         this.workRating = workRating;
     }
 
-    public PeerRating(String fromPeer, String toPeer, int[] workRating) {
+    public PeerRating(String fromPeer, String toPeer, Map<String, Integer> workRating) {
         this.fromPeer = fromPeer;
         this.toPeer = toPeer;
         this.workRating = workRating;
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/model/Performance.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/model/Performance.java
index 891a69b0c9227ce992e7c31bb774209683ce68ae..c5bdd8cb17e438fcfc4865cb9e97de9476b7a325 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/model/Performance.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/model/Performance.java
@@ -7,8 +7,8 @@ import java.util.Map;
 public class Performance {
     private StudentIdentifier studentIdentifier;
     private List<Integer> quizAnswer;
-    private Map workRating;
-    private Map contributionRating;
+    private Map<String, Double> workRating;
+    private Map<String, Double> contributionRating;
 
     public Performance(){}
 
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/AssessmentDBCommunication.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/AssessmentDBCommunication.java
index fdb646c34db9321929ffd62888cd49b742bec384..01c47b2a18079ec18a6f951aa2d39f67eae10662 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/AssessmentDBCommunication.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/AssessmentDBCommunication.java
@@ -25,7 +25,7 @@ class AssessmentDBCommunication {
                 connect.issueSelectStatement(mysqlRequest, student.getProjectId(), student.getStudentId());
         boolean next = vereinfachtesResultSet.next();
         while (next) {
-            Map workRating = new HashMap();
+            Map<String, Double> workRating = new HashMap<>();
             for (String category : Categories.workRatingCategories) {
                 workRating.put(category, (double) vereinfachtesResultSet.getInt(category));
             }
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/FBAssessement.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/FBAssessement.java
index 9f01ce655bce329dda89c93b75f081eeb7c7dcf2..e094756066efdd657653c45edee4f412b389ccf1 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/FBAssessement.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/FBAssessement.java
@@ -55,7 +55,7 @@ public class FBAssessement extends AssessmentDAO {
     }
 
     @Override
-    public void postPeerRating(ArrayList<PeerRating> peerRatings, String projectId, String groupId) {
+    public void postPeerRating(ArrayList<PeerRating> peerRatings, String projectId) {
 
     }
 
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/PeerAssessment.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/PeerAssessment.java
index 7e1ece5fff42dae1492de31ba3516cf641d73ea2..fc8072575281be326b3bd16fb50320bff987044d 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/PeerAssessment.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/PeerAssessment.java
@@ -199,8 +199,11 @@ public class PeerAssessment implements IPeerAssessment {
 
 
     @Override
-    public void postPeerRating(ArrayList<PeerRating> peerRatings, String projectId, String groupId) {
-
+    public void postPeerRating(ArrayList<PeerRating> peerRatings, String projectId) {
+        for (PeerRating peer: peerRatings){
+            StudentIdentifier student = new StudentIdentifier(projectId, peer.getToPeer());
+            new AssessmentDBCommunication().writeWorkRatingToDB(student, peerRatings.get(1).getFromPeer(), peerRatings.get(1).getWorkRating());
+        }
     }
 
     @Override
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/PeerAssessmentDummy.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/PeerAssessmentDummy.java
index c5949b5040e16b436bffebbaaa70204b778cd057..812eab9a40cdaaaea5d7c2b35b353b0028003e8c 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/PeerAssessmentDummy.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/PeerAssessmentDummy.java
@@ -61,7 +61,7 @@ public class PeerAssessmentDummy implements IPeerAssessment {
 }
 
     @Override
-    public void postPeerRating(ArrayList<PeerRating> peerRatings, String projectId, String groupId) {
+    public void postPeerRating(ArrayList<PeerRating> peerRatings, String projectId) {
         int breakpoint = 0; //todo: print an http-answer for the ajax-request to receive
     }
 
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/view/QuizView.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/view/QuizView.java
index 486618bf184f07dec9ed995e1d81b17744b7d028..db44fb94a0d76c5e197ea8399e5a99e594abd73c 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/view/QuizView.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/view/QuizView.java
@@ -1,12 +1,17 @@
 package unipotsdam.gf.modules.assessment.controller.view;
 
+import org.codehaus.jackson.map.ObjectMapper;
+import org.codehaus.jackson.map.util.JSONPObject;
+import org.glassfish.jersey.server.JSONP;
 import unipotsdam.gf.interfaces.IPeerAssessment;
 import unipotsdam.gf.modules.assessment.QuizAnswer;
 import unipotsdam.gf.modules.assessment.controller.model.*;
 import unipotsdam.gf.modules.assessment.controller.service.PeerAssessment;
 
+import java.lang.reflect.*;
 import javax.ws.rs.*;
 import javax.ws.rs.core.MediaType;
+import java.io.IOException;
 import java.io.UnsupportedEncodingException;
 import java.util.ArrayList;
 import java.util.HashMap;
@@ -14,13 +19,12 @@ import java.util.List;
 import java.util.Map;
 
 @Path("/assessments")
-public class QuizView implements IPeerAssessment {
+public class QuizView {
     //private static IPeerAssessment peer =  new PeerAssessmentDummy();   //TestSubject
     private static IPeerAssessment peer =  new PeerAssessment();      //correct DB-conn and stuff
     @GET
     @Produces(MediaType.APPLICATION_JSON)
     @Path("/project/{projectId}/quiz/{quizId}/author/{author}")
-    @Override
     public Quiz getQuiz(@PathParam("projectId") String projectId, @PathParam("quizId") String quizId, @PathParam("author") String author) {
         try{
             String question=java.net.URLDecoder.decode(quizId,"UTF-8");
@@ -33,7 +37,6 @@ public class QuizView implements IPeerAssessment {
     @GET
     @Produces(MediaType.APPLICATION_JSON)
     @Path("/project/{projectId}/quiz")
-    @Override
     public ArrayList<Quiz> getQuiz(@PathParam("projectId") String projectId) {
         return peer.getQuiz(projectId);
     }
@@ -41,14 +44,28 @@ public class QuizView implements IPeerAssessment {
 
     @POST
     @Consumes(MediaType.APPLICATION_JSON)
-    @Path("/peer/project/{projectId}/group/{groupId}")
-    @Override
-    public void postPeerRating(ArrayList<PeerRating> peerRatings,@PathParam("projectId") String projectId, @PathParam("groupId") String groupId){
-        peer.postPeerRating(peerRatings, projectId,groupId);
-        //todo: checkout the POST-variable. should be peerRating but its null atm.
+    @Path("/peerRating/project/{projectId}")
+    public void postPeerRating(String peerRatings, @PathParam("projectId") String projectId) throws IOException {
+        ArrayList data =
+                new ObjectMapper().readValue(peerRatings, ArrayList.class);
+        ArrayList<PeerRating> result = new ArrayList<>();
+        for (Object peer: data){
+            try{
+                //todo: What the fuck? =) kA was dieses getField is supposed to do aber ich hätte gern fromPeer, toPeer und workRating aus dem Objekt
+                Object what = peer.getClass();
+                Field[] the = ((Class) what).getFields();
+                Field from = peer.getClass().getField("0");
+                Field to = peer.getClass().getField("1");
+                Field workRating = peer.getClass().getField("2");
+            }catch(Exception e){
+                return;
+            }
+
+            PeerRating rating = new PeerRating();
+        }
+        peer.postPeerRating(result, projectId);
     }
 
-    @Override
     public void answerQuiz(StudentAndQuiz studentAndQuiz, QuizAnswer quizAnswer) {
 
     }
@@ -56,7 +73,6 @@ public class QuizView implements IPeerAssessment {
     @POST
     @Consumes(MediaType.APPLICATION_JSON)
     @Path("/quiz/{quizId}")
-    @Override
     public void deleteQuiz(@PathParam("quizId") String quizId) {
         try {
             String question = java.net.URLDecoder.decode(quizId, "UTF-8");
@@ -70,13 +86,11 @@ public class QuizView implements IPeerAssessment {
     @Produces(MediaType.TEXT_PLAIN)
     @Consumes(MediaType.APPLICATION_JSON)
     @Path("/assessment")
-    @Override
     public void addAssessmentDataToDB(Assessment assessment) {
         peer.addAssessmentDataToDB(assessment);
     }
 
-    @Override
-    public Assessment getAssessmentDataFromDB(StudentIdentifier student){
+    private Assessment getAssessmentDataFromDB(StudentIdentifier student){
         return peer.getAssessmentDataFromDB(student);
     }
 
@@ -93,7 +107,6 @@ public class QuizView implements IPeerAssessment {
     @Consumes(MediaType.APPLICATION_JSON)
     @Produces(MediaType.APPLICATION_JSON)
     @Path("/quiz")
-    @Override
     public void createQuiz(StudentAndQuiz studentAndQuiz) {
         peer.createQuiz(studentAndQuiz);
     }
@@ -103,7 +116,6 @@ public class QuizView implements IPeerAssessment {
     @Consumes(MediaType.APPLICATION_JSON)
     @Produces(MediaType.APPLICATION_JSON)
     @Path("/calculate")
-    @Override
     public Map<StudentIdentifier, Double> calculateAssessment(ArrayList<Performance> totalPerformance) {
         return peer.calculateAssessment(totalPerformance);
     }
@@ -121,7 +133,6 @@ public class QuizView implements IPeerAssessment {
     @GET
     @Produces(MediaType.APPLICATION_JSON)
     @Path("/mean/project/{projectId}")
-    @Override
     public int meanOfAssessment(@PathParam("projectId") String ProjectId) {
         return peer.meanOfAssessment(ProjectId);
     }  ///////////////////////////////return 0//////////////////////////////////
@@ -134,7 +145,6 @@ public class QuizView implements IPeerAssessment {
         return getTotalAssessment(studentIdentifier);
     }  //////////dummy/////////////funktioniert wie geplant//////////////////////////////////
 
-    @Override
     public ArrayList<Performance> getTotalAssessment(StudentIdentifier studentIdentifier) {
         return peer.getTotalAssessment(studentIdentifier);
     }  /////////dummy/////////////funktioniert wie geplant//////////////////////////////////
@@ -155,23 +165,23 @@ public class QuizView implements IPeerAssessment {
         quiz.add(1);
         quiz.add(0);
         quiz.add(1);
-        Map work = new HashMap<String, Double>();
+        Map<String, Double> work = new HashMap<>();
         work.put("responsibility", 1.);
         work.put("partOfWork", 1.);
         work.put("cooperation", 1.);
         work.put("communication", 1.);
         work.put("autonomous", 1.);
-        Map work2 = new HashMap<String, Double>();
+        Map<String, Double> work2 = new HashMap<>();
         work2.put("responsibility", 3.);
         work2.put("partOfWork", 4.);
         work2.put("cooperation", 5.);
         work2.put("communication", 3.);
         work2.put("autonomous", 4.);
-        Map contribution1 = new HashMap<String, Double>();
+        Map<String, Double> contribution1 = new HashMap<>();
         contribution1.put("Dossier", 4.);
         contribution1.put("eJournal", 2.);
         contribution1.put("research", 4.);
-        Map contribution2 = new HashMap<String, Double>();
+        Map<String, Double> contribution2 = new HashMap<>();
         contribution2.put("Dossier", 2.);
         contribution2.put("eJournal", 3.);
         contribution2.put("research", 4.);
diff --git a/gemeinsamforschen/src/main/webapp/assets/js/finalAssessment.js b/gemeinsamforschen/src/main/webapp/assets/js/finalAssessment.js
index 6af08b9e84c647d9fcf13f9d0bb4e988158a6346..664e145a99f13d018c73365c00bf09db3f292d00 100644
--- a/gemeinsamforschen/src/main/webapp/assets/js/finalAssessment.js
+++ b/gemeinsamforschen/src/main/webapp/assets/js/finalAssessment.js
@@ -10,20 +10,21 @@ $(document).ready(function() {
 
 function assessPeer(){
     ///////initialize variables///////
-    var peerRating = {
-        "fromPeer": $('#user').html().trim(),
-        "toPeer": "",
-        "workRating": []
-    };
     var dataP = [];
-    var workRating = [];
+    var workRating = {};
     var rateThis = ['responsibility','partOfWork','cooperation','communication','autonomous'];
 
     ///////read values from html///////
     var peerStudents =$('.peerStudent');
     for (var peer=0; peer< peerStudents.length; peer++){
+        var peerRating = {
+            "fromPeer": $('#user').html().trim(),
+            "toPeer": peerStudents[peer].id,
+            "workRating": {}
+        };
         for (var rate=0; rate<rateThis.length; rate++ ){
-            workRating.push($('input[name='+rateThis[rate]+peerStudents[peer].id+']:checked').val());
+            var category = rateThis[rate];
+            workRating[category]=($('input[name='+rateThis[rate]+peerStudents[peer].id+']:checked').val());
         }
         for (var i=0; i<workRating.length; i++){
             if(workRating[i]===undefined){
@@ -31,15 +32,14 @@ function assessPeer(){
                 return;
             }
         }
-        peerRating.toPeer = peerStudents[peer].id;
         peerRating.workRating = workRating;
         workRating=[];
         //////write values in Post-Variable
         dataP.push(peerRating);
     }
-    dataP.push(peerRating);
+    var projectId=$('#projectId').html().trim();
     $.ajax({
-        url:'../rest/assessments/peer/project/1/group/1',
+        url:'../rest/assessments/peerRating/project/'+projectId,
         type: 'POST',
         headers: {
             "Content-Type": "application/json",