Index: profileconnection/pom.xml
===================================================================
--- profileconnection/pom.xml	(revision 40)
+++ profileconnection/pom.xml	(revision 41)
@@ -6,5 +6,5 @@
 	<groupId>geniusweb</groupId>
 	<artifactId>profileconnection</artifactId>
-	<version>2.0.4</version> <!-- must equal ${geniusweb.version} -->
+	<version>2.0.5</version>
 	<packaging>jar</packaging>
 
@@ -17,5 +17,5 @@
 		<passwd>${env.ARTIFACTORY_PASS}</passwd>
 		<jackson-2-version>2.12.3</jackson-2-version>
-		<geniusweb.version>2.0.4</geniusweb.version>
+		<geniusweb.version>${project.version}</geniusweb.version>
 	</properties>
 
Index: profileconnection/src/main/java/geniusweb/profileconnection/WebsocketProfileConnector.java
===================================================================
--- profileconnection/src/main/java/geniusweb/profileconnection/WebsocketProfileConnector.java	(revision 40)
+++ profileconnection/src/main/java/geniusweb/profileconnection/WebsocketProfileConnector.java	(revision 41)
@@ -33,4 +33,6 @@
 	private Session session;
 
+	private StringBuffer buffer = new StringBuffer();
+
 	/**
 	 * 
@@ -56,6 +58,6 @@
 		this.uri = uri;
 		this.logger = reporter;
-		// see #1763 expected max size of profiles.
-		wscontainer.setDefaultMaxTextMessageBufferSize(200000);
+		// see #1763 expected max size of profiles. #50 why we don't want that.
+		// wscontainer.setDefaultMaxTextMessageBufferSize(200000);
 		wscontainer.connectToServer(this, uri);
 	}
@@ -78,9 +80,15 @@
 
 	@OnMessage
-	public void processMessage(String message) throws IOException {
-		// this will be called every time the profile changes.
-		logger.log(Level.FINE, "Received profile: " + message);
-		profile = jackson.readValue(message, Profile.class);
-		notifyListeners(profile);
+	public void processMessage(String message, boolean islast)
+			throws IOException {
+		buffer.append(message);
+		if (islast) {
+			String msg = buffer.toString();
+			buffer = new StringBuffer();
+			// this will be called every time the profile changes.
+			logger.log(Level.FINE, "Received profile: " + msg);
+			profile = jackson.readValue(msg, Profile.class);
+			notifyListeners(profile);
+		}
 	}
 
Index: profileconnection/src/test/java/geniusweb/profileconnection/WebsocketProfileConnectorTest.java
===================================================================
--- profileconnection/src/test/java/geniusweb/profileconnection/WebsocketProfileConnectorTest.java	(revision 40)
+++ profileconnection/src/test/java/geniusweb/profileconnection/WebsocketProfileConnectorTest.java	(revision 41)
@@ -3,5 +3,5 @@
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotNull;
-import static org.mockito.Matchers.any;
+import static org.mockito.ArgumentMatchers.any;
 import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.when;
@@ -28,5 +28,5 @@
 	private final WebSocketContainer wscontainer = mock(
 			WebSocketContainer.class);
-	private final static String testfilepath = "src/test/resources/testprofile.json";
+	private final static String testfilepath = "src/test/resources/jobs1_20.json";
 
 	@Test(expected = IOException.class)
@@ -53,10 +53,10 @@
 				new URI("ws://someprofile"), reporter, wscontainer);
 		connector.onOpen(session);
-		connector.processMessage(readTestProfile());
+		connector.processMessage(readTestProfile(), true);
 
 		Profile profile = connector.getProfile();
 		assertNotNull(profile);
-		assertEquals("testprofile", connector.getProfile().getName());
-		assertEquals("test", connector.getProfile().getDomain().getName());
+		assertEquals("jobs1_20", connector.getProfile().getName());
+		assertEquals("jobs", connector.getProfile().getDomain().getName());
 	}
 
@@ -78,5 +78,5 @@
 				try {
 					Thread.sleep(1500);
-					connector.processMessage(readTestProfile());
+					connector.processMessage(readTestProfile(), true);
 				} catch (InterruptedException | IOException e) {
 					e.printStackTrace();
@@ -86,6 +86,6 @@
 		Profile profile = connector.getProfile();
 		assertNotNull(profile);
-		assertEquals("testprofile", connector.getProfile().getName());
-		assertEquals("test", connector.getProfile().getDomain().getName());
+		assertEquals("jobs1_20", connector.getProfile().getName());
+		assertEquals("jobs", connector.getProfile().getDomain().getName());
 	}
 
@@ -107,5 +107,5 @@
 				try {
 					Thread.sleep(6000);
-					connector.processMessage(readTestProfile());
+					connector.processMessage(readTestProfile(), true);
 				} catch (InterruptedException | IOException e) {
 					e.printStackTrace();
Index: profileconnection/src/test/resources/jobs1_20.json
===================================================================
--- profileconnection/src/test/resources/jobs1_20.json	(revision 41)
+++ profileconnection/src/test/resources/jobs1_20.json	(revision 41)
@@ -0,0 +1,403 @@
+{
+	"DefaultPartialOrdering": {
+		"name": "jobs1_20",
+		"domain": {
+			"name": "jobs",
+			"issuesValues": {
+				"lease car": {
+					"values": ["yes", "no"]
+				},
+				"permanent contract": {
+					"values": ["yes", "no"]
+				},
+				"career development opportunities": {
+					"values": ["low", "medium", "high"]
+				},
+				"fte": {
+					"values": ["0.6", "0.8", "1.0"]
+				},
+				"salary": {
+					"values": ["2000", "2500", "3000", "3500", "4000"]
+				},
+				"work from home": {
+					"values": ["0", "1", "2"]
+				}
+			}
+		},
+		"better": [
+			[0, 34],
+			[2, 9],
+			[3, 5],
+			[6, 23],
+			[12, 18],
+			[13, 27],
+			[14, 28],
+			[15, 37],
+			[17, 28],
+			[19, 1],
+			[20, 29],
+			[21, 24],
+			[22, 8],
+			[25, 10],
+			[26, 16],
+			[30, 24],
+			[31, 32],
+			[33, 7],
+			[35, 4],
+			[36, 11]
+		],
+		"bids": [{
+			"issuevalues": {
+				"lease car": "yes",
+				"permanent contract": "yes",
+				"career development opportunities": "low",
+				"fte": "0.8",
+				"salary": "4000",
+				"work from home": "0"
+			}
+		}, {
+			"issuevalues": {
+				"lease car": "no",
+				"permanent contract": "no",
+				"career development opportunities": "high",
+				"fte": "0.6",
+				"salary": "2000",
+				"work from home": "1"
+			}
+		}, {
+			"issuevalues": {
+				"lease car": "yes",
+				"permanent contract": "no",
+				"career development opportunities": "low",
+				"fte": "0.8",
+				"salary": "2000",
+				"work from home": "0"
+			}
+		}, {
+			"issuevalues": {
+				"lease car": "no",
+				"permanent contract": "yes",
+				"career development opportunities": "high",
+				"fte": "0.8",
+				"salary": "2500",
+				"work from home": "2"
+			}
+		}, {
+			"issuevalues": {
+				"lease car": "no",
+				"permanent contract": "yes",
+				"career development opportunities": "low",
+				"fte": "0.6",
+				"salary": "2000",
+				"work from home": "2"
+			}
+		}, {
+			"issuevalues": {
+				"lease car": "no",
+				"permanent contract": "no",
+				"career development opportunities": "high",
+				"fte": "0.6",
+				"salary": "2500",
+				"work from home": "2"
+			}
+		}, {
+			"issuevalues": {
+				"lease car": "no",
+				"permanent contract": "yes",
+				"career development opportunities": "low",
+				"fte": "1.0",
+				"salary": "3500",
+				"work from home": "2"
+			}
+		}, {
+			"issuevalues": {
+				"lease car": "no",
+				"permanent contract": "yes",
+				"career development opportunities": "medium",
+				"fte": "1.0",
+				"salary": "3000",
+				"work from home": "0"
+			}
+		}, {
+			"issuevalues": {
+				"lease car": "no",
+				"permanent contract": "yes",
+				"career development opportunities": "high",
+				"fte": "0.6",
+				"salary": "3500",
+				"work from home": "1"
+			}
+		}, {
+			"issuevalues": {
+				"lease car": "no",
+				"permanent contract": "no",
+				"career development opportunities": "medium",
+				"fte": "0.6",
+				"salary": "2000",
+				"work from home": "1"
+			}
+		}, {
+			"issuevalues": {
+				"lease car": "yes",
+				"permanent contract": "no",
+				"career development opportunities": "high",
+				"fte": "0.6",
+				"salary": "2000",
+				"work from home": "0"
+			}
+		}, {
+			"issuevalues": {
+				"lease car": "no",
+				"permanent contract": "no",
+				"career development opportunities": "medium",
+				"fte": "0.8",
+				"salary": "3500",
+				"work from home": "2"
+			}
+		}, {
+			"issuevalues": {
+				"lease car": "yes",
+				"permanent contract": "yes",
+				"career development opportunities": "high",
+				"fte": "0.6",
+				"salary": "2500",
+				"work from home": "2"
+			}
+		}, {
+			"issuevalues": {
+				"lease car": "no",
+				"permanent contract": "yes",
+				"career development opportunities": "low",
+				"fte": "0.8",
+				"salary": "3000",
+				"work from home": "1"
+			}
+		}, {
+			"issuevalues": {
+				"lease car": "yes",
+				"permanent contract": "yes",
+				"career development opportunities": "high",
+				"fte": "0.8",
+				"salary": "2000",
+				"work from home": "2"
+			}
+		}, {
+			"issuevalues": {
+				"lease car": "no",
+				"permanent contract": "yes",
+				"career development opportunities": "high",
+				"fte": "1.0",
+				"salary": "3500",
+				"work from home": "0"
+			}
+		}, {
+			"issuevalues": {
+				"lease car": "no",
+				"permanent contract": "yes",
+				"career development opportunities": "medium",
+				"fte": "0.8",
+				"salary": "4000",
+				"work from home": "0"
+			}
+		}, {
+			"issuevalues": {
+				"lease car": "yes",
+				"permanent contract": "no",
+				"career development opportunities": "medium",
+				"fte": "0.8",
+				"salary": "3000",
+				"work from home": "1"
+			}
+		}, {
+			"issuevalues": {
+				"lease car": "no",
+				"permanent contract": "yes",
+				"career development opportunities": "high",
+				"fte": "0.8",
+				"salary": "2000",
+				"work from home": "0"
+			}
+		}, {
+			"issuevalues": {
+				"lease car": "no",
+				"permanent contract": "yes",
+				"career development opportunities": "low",
+				"fte": "1.0",
+				"salary": "3000",
+				"work from home": "2"
+			}
+		}, {
+			"issuevalues": {
+				"lease car": "yes",
+				"permanent contract": "no",
+				"career development opportunities": "medium",
+				"fte": "1.0",
+				"salary": "4000",
+				"work from home": "1"
+			}
+		}, {
+			"issuevalues": {
+				"lease car": "no",
+				"permanent contract": "no",
+				"career development opportunities": "low",
+				"fte": "1.0",
+				"salary": "3500",
+				"work from home": "2"
+			}
+		}, {
+			"issuevalues": {
+				"lease car": "yes",
+				"permanent contract": "yes",
+				"career development opportunities": "medium",
+				"fte": "1.0",
+				"salary": "2500",
+				"work from home": "2"
+			}
+		}, {
+			"issuevalues": {
+				"lease car": "yes",
+				"permanent contract": "no",
+				"career development opportunities": "low",
+				"fte": "1.0",
+				"salary": "3000",
+				"work from home": "2"
+			}
+		}, {
+			"issuevalues": {
+				"lease car": "no",
+				"permanent contract": "yes",
+				"career development opportunities": "medium",
+				"fte": "0.8",
+				"salary": "3000",
+				"work from home": "2"
+			}
+		}, {
+			"issuevalues": {
+				"lease car": "no",
+				"permanent contract": "no",
+				"career development opportunities": "medium",
+				"fte": "0.8",
+				"salary": "2000",
+				"work from home": "1"
+			}
+		}, {
+			"issuevalues": {
+				"lease car": "yes",
+				"permanent contract": "yes",
+				"career development opportunities": "low",
+				"fte": "0.8",
+				"salary": "3500",
+				"work from home": "2"
+			}
+		}, {
+			"issuevalues": {
+				"lease car": "yes",
+				"permanent contract": "no",
+				"career development opportunities": "medium",
+				"fte": "0.6",
+				"salary": "4000",
+				"work from home": "0"
+			}
+		}, {
+			"issuevalues": {
+				"lease car": "no",
+				"permanent contract": "no",
+				"career development opportunities": "low",
+				"fte": "0.6",
+				"salary": "2000",
+				"work from home": "0"
+			}
+		}, {
+			"issuevalues": {
+				"lease car": "no",
+				"permanent contract": "no",
+				"career development opportunities": "low",
+				"fte": "0.6",
+				"salary": "3500",
+				"work from home": "1"
+			}
+		}, {
+			"issuevalues": {
+				"lease car": "yes",
+				"permanent contract": "no",
+				"career development opportunities": "high",
+				"fte": "0.8",
+				"salary": "4000",
+				"work from home": "1"
+			}
+		}, {
+			"issuevalues": {
+				"lease car": "no",
+				"permanent contract": "yes",
+				"career development opportunities": "low",
+				"fte": "0.8",
+				"salary": "4000",
+				"work from home": "1"
+			}
+		}, {
+			"issuevalues": {
+				"lease car": "no",
+				"permanent contract": "yes",
+				"career development opportunities": "high",
+				"fte": "0.8",
+				"salary": "2500",
+				"work from home": "0"
+			}
+		}, {
+			"issuevalues": {
+				"lease car": "no",
+				"permanent contract": "yes",
+				"career development opportunities": "medium",
+				"fte": "1.0",
+				"salary": "4000",
+				"work from home": "0"
+			}
+		}, {
+			"issuevalues": {
+				"lease car": "yes",
+				"permanent contract": "no",
+				"career development opportunities": "high",
+				"fte": "0.6",
+				"salary": "2500",
+				"work from home": "2"
+			}
+		}, {
+			"issuevalues": {
+				"lease car": "yes",
+				"permanent contract": "yes",
+				"career development opportunities": "low",
+				"fte": "0.8",
+				"salary": "3500",
+				"work from home": "0"
+			}
+		}, {
+			"issuevalues": {
+				"lease car": "yes",
+				"permanent contract": "no",
+				"career development opportunities": "high",
+				"fte": "1.0",
+				"salary": "4000",
+				"work from home": "1"
+			}
+		}, {
+			"issuevalues": {
+				"lease car": "yes",
+				"permanent contract": "no",
+				"career development opportunities": "medium",
+				"fte": "0.8",
+				"salary": "3500",
+				"work from home": "2"
+			}
+		}],
+		"reservationBid": {
+			"issuevalues": {
+				"lease car": "no",
+				"permanent contract": "no",
+				"career development opportunities": "low",
+				"fte": "0.6",
+				"salary": "3500",
+				"work from home": "1"
+			}
+		}
+	}
+}
