Index: src/examples/TestParser.java
===================================================================
RCS file: /home/cvs/postgis/postgis/jdbc2/src/examples/TestParser.java,v
retrieving revision 1.14
diff -u -r1.14 TestParser.java
--- src/examples/TestParser.java	26 Apr 2006 14:42:16 -0000	1.14
+++ src/examples/TestParser.java	26 Apr 2006 14:44:08 -0000
@@ -65,19 +65,31 @@
             ONLY10, // 3D + Measures
             "POINT(10 10 20 30)"},
         {
-            ALL,
+            ALL, // broken format, see http://lists.jump-project.org/pipermail/jts-devel/2006-April/001572.html
             "MULTIPOINT(11 12, 20 20)"},
         {
-            ALL,
+            ALL,// broken format
             "MULTIPOINT(11 12 13, 20 20 20)"},
         {
-            ONLY10,
+            ONLY10,// broken format
             "MULTIPOINTM(11 12 13, 20 20 20)"},
         {
-            ONLY10,
+            ONLY10,// broken format
             "MULTIPOINT(11 12 13 14,20 20 20 20)"},
         {
             ALL,
+            "MULTIPOINT((11 12), (20 20))"},
+        {
+            ALL,
+            "MULTIPOINT((11 12 13), (20 20 20))"},
+        {
+            ONLY10,
+            "MULTIPOINTM((11 12 13), (20 20 20))"},
+        {
+            ONLY10,
+            "MULTIPOINT((11 12 13 14),(20 20 20 20))"},            
+        {
+            ALL,
             "LINESTRING(10 10,20 20,50 50,34 34)"},
         {
             ALL,
@@ -144,7 +156,7 @@
             "GEOMETRYCOLLECTION(POLYGON((10 10 0,20 10 0,20 20 0,20 10 0,10 10 0),(5 5 0,5 6 0,6 6 0,6 5 0,5 5 0)),POLYGON((10 10 0,20 10 0,20 20 0,20 10 0,10 10 0),(5 5 0,5 6 0,6 6 0,6 5 0,5 5 0)))"},
         {
             ONLY10, // Cannot be parsed by 0.X servers
-            "GEOMETRYCOLLECTION(MULTIPOINT(10 10 10, 20 20 20),MULTIPOINT(10 10 10, 20 20 20))"},
+            "GEOMETRYCOLLECTION(MULTIPOINT((10 10 10), (20 20 20)),MULTIPOINT((10 10 10), (20 20 20)))"},
         {
             EQUAL10, // PostGIs 0.X "flattens" this geometry, so it is not
             // equal after reparsing.
@@ -159,7 +171,7 @@
         {
             ONLY10, // Collections that contain both X and MultiX do not work on
             // PostGIS 0.x
-            "GEOMETRYCOLLECTION(POINT(10 10 20),MULTIPOINT(10 10 10, 20 20 20),LINESTRING(10 10 20,20 20 20, 50 50 50, 34 34 34),POLYGON((10 10 0,20 10 0,20 20 0,20 10 0,10 10 0),(5 5 0,5 6 0,6 6 0,6 5 0,5 5 0)),MULTIPOLYGON(((10 10 0,20 10 0,20 20 0,20 10 0,10 10 0),(5 5 0,5 6 0,6 6 0,6 5 0,5 5 0)),((10 10 0,20 10 0,20 20 0,20 10 0,10 10 0),(5 5 0,5 6 0,6 6 0,6 5 0,5 5 0))),MULTILINESTRING((10 10 0,20 10 0,20 20 0,20 10 0,10 10 0),(5 5 0,5 6 0,6 6 0,6 5 0,5 5 0)))"},
+            "GEOMETRYCOLLECTION(POINT(10 10 20),MULTIPOINT((10 10 10), (20 20 20)),LINESTRING(10 10 20,20 20 20, 50 50 50, 34 34 34),POLYGON((10 10 0,20 10 0,20 20 0,20 10 0,10 10 0),(5 5 0,5 6 0,6 6 0,6 5 0,5 5 0)),MULTIPOLYGON(((10 10 0,20 10 0,20 20 0,20 10 0,10 10 0),(5 5 0,5 6 0,6 6 0,6 5 0,5 5 0)),((10 10 0,20 10 0,20 20 0,20 10 0,10 10 0),(5 5 0,5 6 0,6 6 0,6 5 0,5 5 0))),MULTILINESTRING((10 10 0,20 10 0,20 20 0,20 10 0,10 10 0),(5 5 0,5 6 0,6 6 0,6 5 0,5 5 0)))"},
         {
             ALL, // Old (bad) PostGIS 0.X Representation
             "GEOMETRYCOLLECTION(EMPTY)"},
Index: src/org/postgis/MultiPoint.java
===================================================================
RCS file: /home/cvs/postgis/postgis/jdbc2/src/org/postgis/MultiPoint.java,v
retrieving revision 1.6
diff -u -r1.6 MultiPoint.java
--- src/org/postgis/MultiPoint.java	15 Apr 2005 14:04:34 -0000	1.6
+++ src/org/postgis/MultiPoint.java	26 Apr 2006 14:44:08 -0000
@@ -47,4 +47,16 @@
     protected MultiPoint(String value, boolean haveM) throws SQLException {
         super(MULTIPOINT, value, haveM);
     }
+
+    protected void innerWKT(StringBuffer sb) {
+        sb.append('(');
+        subgeoms[0].innerWKT(sb);
+        sb.append(')');
+        for (int i = 1; i < subgeoms.length; i++) {
+            sb.append(',');
+            sb.append('(');
+            subgeoms[i].innerWKT(sb);
+            sb.append(')');
+        }
+    }
 }
