[mapguide-commits] r7300 - in trunk/MgDev/Doc/samples/javaviewersample: query query/classes theme

svn_mapguide at osgeo.org svn_mapguide at osgeo.org
Fri Jan 11 22:33:05 PST 2013


Author: jng
Date: 2013-01-11 22:33:04 -0800 (Fri, 11 Jan 2013)
New Revision: 7300

Modified:
   trunk/MgDev/Doc/samples/javaviewersample/query/classes/feature.jsp
   trunk/MgDev/Doc/samples/javaviewersample/query/classes/query.jsp
   trunk/MgDev/Doc/samples/javaviewersample/query/querycontroller.jsp
   trunk/MgDev/Doc/samples/javaviewersample/query/querymain.jsp
   trunk/MgDev/Doc/samples/javaviewersample/theme/thememain.jsp
Log:
Fix java viewer sample code.

Modified: trunk/MgDev/Doc/samples/javaviewersample/query/classes/feature.jsp
===================================================================
--- trunk/MgDev/Doc/samples/javaviewersample/query/classes/feature.jsp	2013-01-12 04:16:28 UTC (rev 7299)
+++ trunk/MgDev/Doc/samples/javaviewersample/query/classes/feature.jsp	2013-01-12 06:33:04 UTC (rev 7300)
@@ -30,11 +30,14 @@
         public Map idList = null;
         
         public Feature(String displayValue, MgPoint centerPoint, Map idList) throws MgException
-    	{
-    	    this.displayValue = displayValue;
-    	    this.centerX = centerPoint.GetCoordinate().GetX();
-    	    this.centerY = centerPoint.GetCoordinate().GetY();
-    	    this.idList = new HashMap(idList);
-    	}
+        {
+            this.displayValue = displayValue;
+            if (centerPoint != null)
+            {
+                this.centerX = centerPoint.GetCoordinate().GetX();
+                this.centerY = centerPoint.GetCoordinate().GetY();
+            }
+            this.idList = new HashMap(idList);
+        }
     }
 %>

Modified: trunk/MgDev/Doc/samples/javaviewersample/query/classes/query.jsp
===================================================================
--- trunk/MgDev/Doc/samples/javaviewersample/query/classes/query.jsp	2013-01-12 04:16:28 UTC (rev 7299)
+++ trunk/MgDev/Doc/samples/javaviewersample/query/classes/query.jsp	2013-01-12 06:33:04 UTC (rev 7300)
@@ -27,67 +27,67 @@
 <%!
     public class Query
     {
-    	Map<String, String> args = null;
-    	private MgSiteConnection site = null;
-    	private String[] numOperators = null;
-    	private String[] numExpressions = null;
-    	private String[] strOperators = null;
-    	private String[] strExpressions = null;
-    	
-    	public Query(Map<String, String> incomingArgs) throws MgException
-    	{
-    	    this.args = incomingArgs;
-    	    this.site = new MgSiteConnection();
-    	    this.site.Open(new MgUserInformation(this.args.get("SESSION")));
-    	    this.numOperators = new String[] {"Equal to", "Not equal to", "Greater than", "Greater than or equal to", "Less than", "Less than or equal to"};
-    	    this.numExpressions = new String[] {" = %s", " != %s", " > %s", " >= %s", " < %s", " <= %s"};
-    	    this.strOperators = new String[] {"Begins with", "Contains", "Equal to"};
-    	    this.strExpressions = new String[] {" like '%s%%'", " like '%%%s%%'", " = '%s'"};
-    	}
-    	
-    	public String getNumOp()
-	{
-	    JSONArray jsonArray = new JSONArray();
-	    for(int i=0;i<6;i++)
-	    {
-		jsonArray.put(numOperators[i]);
-	    }
-	    return jsonArray.toString();
-	}
+        Map<String, String> args = null;
+        private MgSiteConnection site = null;
+        private String[] numOperators = null;
+        private String[] numExpressions = null;
+        private String[] strOperators = null;
+        private String[] strExpressions = null;
+        
+        public Query(Map<String, String> incomingArgs) throws MgException
+        {
+            this.args = incomingArgs;
+            this.site = new MgSiteConnection();
+            this.site.Open(new MgUserInformation(this.args.get("SESSION")));
+            this.numOperators = new String[] {"Equal to", "Not equal to", "Greater than", "Greater than or equal to", "Less than", "Less than or equal to"};
+            this.numExpressions = new String[] {" = %s", " != %s", " > %s", " >= %s", " < %s", " <= %s"};
+            this.strOperators = new String[] {"Begins with", "Contains", "Equal to"};
+            this.strExpressions = new String[] {" like '%s%%'", " like '%%%s%%'", " = '%s'"};
+        }
+        
+        public String getNumOp()
+        {
+            JSONArray jsonArray = new JSONArray();
+            for(int i=0;i<6;i++)
+            {
+                jsonArray.put(numOperators[i]);
+            }
+            return jsonArray.toString();
+        }
 
-	public String getStrOp()
-	{
-	    JSONArray jsonArray = new JSONArray();
-	    for(int i=0;i<3;i++)
-	    {
-		jsonArray.put(strOperators[i]);
-	    }
-	    return jsonArray.toString();
-	}
+        public String getStrOp()
+        {
+            JSONArray jsonArray = new JSONArray();
+            for(int i=0;i<3;i++)
+            {
+                jsonArray.put(strOperators[i]);
+            }
+            return jsonArray.toString();
+        }
         
         public ArrayList<String> GetMapLayerNames() throws MgException
-	{
-	    MgResourceService resourceService = (MgResourceService)this.site.CreateService(MgServiceType.ResourceService);
-	    MgMap map = new MgMap();
-	    map.Open(resourceService, this.args.get("MAPNAME"));
-	    MgLayerCollection layers = map.GetLayers();
-	    ArrayList<String> layerNames = new ArrayList<String>();
+        {
+            MgResourceService resourceService = (MgResourceService)this.site.CreateService(MgServiceType.ResourceService);
+            MgMap map = new MgMap();
+            map.Open(resourceService, this.args.get("MAPNAME"));
+            MgLayerCollection layers = map.GetLayers();
+            ArrayList<String> layerNames = new ArrayList<String>();
 
-	    for(int i=0; i<layers.GetCount(); i++)
-	    {
-		MgLayer layer = (MgLayer) layers.GetItem(i);
+            for(int i=0; i<layers.GetCount(); i++)
+            {
+                MgLayer layer = (MgLayer) layers.GetItem(i);
 
-		//TODO: Exclue Raster and Drawing Layers???
-		
-		if(!layer.GetName().startsWith("_") && !layer.GetFeatureSourceId().toUpperCase().startsWith("SESSION"))
-		    layerNames.add(layer.GetLegendLabel());
-	    }
-	    Collections.sort(layerNames);
+                //TODO: Exclue Raster and Drawing Layers???
+                
+                if(!layer.GetName().startsWith("_") && !layer.GetFeatureSourceId().toUpperCase().startsWith("SESSION"))
+                    layerNames.add(layer.GetLegendLabel());
+            }
+            Collections.sort(layerNames);
 
-	    return layerNames;
+            return layerNames;
         }
         
-	public ArrayList<Property> GetLayerProperties() throws MgException
+        public ArrayList<Property> GetLayerProperties() throws MgException
         {
             ArrayList<Property> properties = new ArrayList<Property>();
             MgResourceService resourceService = (MgResourceService)this.site.CreateService(MgServiceType.ResourceService);
@@ -119,416 +119,424 @@
         }
         
         public boolean ToggleSpatialFilter() throws MgException
-	{
-	    boolean result = true;
-	    MgResourceService resourceService = (MgResourceService)this.site.CreateService(MgServiceType.ResourceService);
-	    MgMap map = new MgMap();
-	    map.Open(resourceService, this.args.get("MAPNAME"));
+        {
+            boolean result = true;
+            MgResourceService resourceService = (MgResourceService)this.site.CreateService(MgServiceType.ResourceService);
+            MgMap map = new MgMap();
+            map.Open(resourceService, this.args.get("MAPNAME"));
 
-	    MgLayerCollection layers = map.GetLayers();
-	    if(layers.Contains("_QuerySpatialFilter"))
-	    {
-		MgLayer layer = (MgLayer) layers.GetItem("_QuerySpatialFilter");
-		if(this.args.get("VISIBLE").equals("true"))
-		    layer.SetVisible(true);
-		else
-		    layer.SetVisible(false);
+            MgLayerCollection layers = map.GetLayers();
+            if(layers.Contains("_QuerySpatialFilter"))
+            {
+                MgLayer layer = (MgLayer) layers.GetItem("_QuerySpatialFilter");
+                if(this.args.get("VISIBLE").equals("true"))
+                    layer.SetVisible(true);
+                else
+                    layer.SetVisible(false);
 
-		map.Save(resourceService);
-	    }
+                map.Save(resourceService);
+            }
 
-	    return result;
+            return result;
         }
 
-	public boolean ShowSpatialFilter() throws MgException, FileNotFoundException, IOException
-	{
-	    boolean result = true;
-	    MgResourceIdentifier sdfResId = new MgResourceIdentifier("Session:"+this.args.get("SESSION")+"//Filter.FeatureSource");
+        public boolean ShowSpatialFilter() throws MgException, FileNotFoundException, IOException
+        {
+            boolean result = true;
+            MgResourceIdentifier sdfResId = new MgResourceIdentifier("Session:"+this.args.get("SESSION")+"//Filter.FeatureSource");
 
-	    MgResourceService resourceService = (MgResourceService)this.site.CreateService(MgServiceType.ResourceService);
-	    MgFeatureService featureService = (MgFeatureService)this.site.CreateService(MgServiceType.FeatureService);
+            MgResourceService resourceService = (MgResourceService)this.site.CreateService(MgServiceType.ResourceService);
+            MgFeatureService featureService = (MgFeatureService)this.site.CreateService(MgServiceType.FeatureService);
 
-	    MgFeatureCommandCollection updateCommands = new MgFeatureCommandCollection();
+            MgFeatureCommandCollection updateCommands = new MgFeatureCommandCollection();
 
-	    MgMap map = new MgMap();
-	    map.Open(resourceService, this.args.get("MAPNAME"));
+            MgMap map = new MgMap();
+            map.Open(resourceService, this.args.get("MAPNAME"));
 
-	    MgLayer layer = null;
-	    MgLayerCollection layers = map.GetLayers();
-	    if(layers.Contains("_QuerySpatialFilter"))
-	    {
-		layer = (MgLayer) layers.GetItem("_QuerySpatialFilter");
-		updateCommands.Add(new MgDeleteFeatures("Filter", "ID like '%'"));
-	    }
-	    else
-	    {
-		// Create the Feature Source (SDF)
+            MgLayer layer = null;
+            MgLayerCollection layers = map.GetLayers();
+            if(layers.Contains("_QuerySpatialFilter"))
+            {
+                layer = (MgLayer) layers.GetItem("_QuerySpatialFilter");
+                updateCommands.Add(new MgDeleteFeatures("Filter", "ID like '%'"));
+            }
+            else
+            {
+                // Create the Feature Source (SDF)
 
-		MgFeatureSchema sdfSchema = this.CreateFilterSchema();
-		MgCreateSdfParams sdfParams = new MgCreateSdfParams("MAPCS", map.GetMapSRS(), sdfSchema);
-		featureService.CreateFeatureSource(sdfResId, sdfParams);
+                MgFeatureSchema sdfSchema = this.CreateFilterSchema();
+                MgCreateSdfParams sdfParams = new MgCreateSdfParams("MAPCS", map.GetMapSRS(), sdfSchema);
+                featureService.CreateFeatureSource(sdfResId, sdfParams);
 
-		// Create the Layer
+                // Create the Layer
 
-		MgResourceIdentifier layerResId = new MgResourceIdentifier("Session:"+this.args.get("SESSION")+"//Filter.LayerDefinition");
+                MgResourceIdentifier layerResId = new MgResourceIdentifier("Session:"+this.args.get("SESSION")+"//Filter.LayerDefinition");
 
-		String lineSep = System.getProperty("line.separator");
-		BufferedReader buffReader = new BufferedReader(new FileReader(GetQueryXmlTemplatePath()));
-		String nextLine = "";
-		StringBuffer strBuffer = new StringBuffer();
-		while((nextLine = buffReader.readLine()) != null)
-		{
-		    strBuffer.append(nextLine);
-		    strBuffer.append(lineSep);
-		}
-		String layerDefinition = strBuffer.toString();
-		layerDefinition = layerDefinition.replaceAll("%s", sdfResId.ToString());
+                String lineSep = System.getProperty("line.separator");
+                BufferedReader buffReader = new BufferedReader(new FileReader(GetQueryXmlTemplatePath()));
+                String nextLine = "";
+                StringBuffer strBuffer = new StringBuffer();
+                while((nextLine = buffReader.readLine()) != null)
+                {
+                    strBuffer.append(nextLine);
+                    strBuffer.append(lineSep);
+                }
+                String layerDefinition = strBuffer.toString();
+                layerDefinition = layerDefinition.replaceAll("%s", sdfResId.ToString());
 
-		MgByteSource byteSource = new MgByteSource(layerDefinition.getBytes(), layerDefinition.length());
-		resourceService.SetResource(layerResId, byteSource.GetReader(), null);
+                MgByteSource byteSource = new MgByteSource(layerDefinition.getBytes(), layerDefinition.length());
+                resourceService.SetResource(layerResId, byteSource.GetReader(), null);
 
-		layer = new MgLayer(layerResId, resourceService);
+                layer = new MgLayer(layerResId, resourceService);
 
-		layer.SetName("_QuerySpatialFilter");
-		layer.SetLegendLabel("_QuerySpatialFilter");
-		layer.SetDisplayInLegend(false);
-		layer.SetSelectable(false);
+                layer.SetName("_QuerySpatialFilter");
+                layer.SetLegendLabel("_QuerySpatialFilter");
+                layer.SetDisplayInLegend(false);
+                layer.SetSelectable(false);
 
-		layers.Insert(0, layer);
-	    }
+                layers.Insert(0, layer);
+            }
 
-	    // Make the layer visible
+            // Make the layer visible
 
-	    layer.SetVisible(true);
-	    map.Save(resourceService);
+            layer.SetVisible(true);
+            map.Save(resourceService);
 
-	    // Add the geometry to the filter feature source
+            // Add the geometry to the filter feature source
 
-	    MgPolygon polygon = this.CreatePolygonFromGeomText(this.args.get("GEOMTEXT"));
-	    MgAgfReaderWriter agfWriter = new MgAgfReaderWriter();
-	    MgByteReader byteReader = agfWriter.Write(polygon);
+            MgPolygon polygon = this.CreatePolygonFromGeomText(this.args.get("GEOMTEXT"));
+            MgAgfReaderWriter agfWriter = new MgAgfReaderWriter();
+            MgByteReader byteReader = agfWriter.Write(polygon);
 
-	    MgPropertyCollection propertyValues = new MgPropertyCollection();
-	    propertyValues.Add(new MgGeometryProperty("Geometry", byteReader));
+            MgPropertyCollection propertyValues = new MgPropertyCollection();
+            propertyValues.Add(new MgGeometryProperty("Geometry", byteReader));
 
-	    updateCommands.Add(new MgInsertFeatures("Filter", propertyValues));
+            updateCommands.Add(new MgInsertFeatures("Filter", propertyValues));
 
-	    featureService.UpdateFeatures(sdfResId, updateCommands, false);
+            featureService.UpdateFeatures(sdfResId, updateCommands, false);
 
-	    return result;
+            return result;
         }
-        
+            
         public ArrayList<Feature> Execute() throws MgException
-	{
-	    ArrayList<Feature> result = new ArrayList<Feature>();
-	    MgResourceService resourceService = (MgResourceService)this.site.CreateService(MgServiceType.ResourceService);
+        {
+            ArrayList<Feature> result = new ArrayList<Feature>();
+            MgResourceService resourceService = (MgResourceService)this.site.CreateService(MgServiceType.ResourceService);
 
-	    MgMap map = new MgMap();
-	    map.Open(resourceService, this.args.get("MAPNAME"));
-	    MgLayer layer = (MgLayer) map.GetLayers().GetItem(this.args.get("LAYERNAME"));
+            MgMap map = new MgMap();
+            map.Open(resourceService, this.args.get("MAPNAME"));
+            MgLayer layer = (MgLayer) map.GetLayers().GetItem(this.args.get("LAYERNAME"));
 
-	    MgFeatureService featureService = (MgFeatureService)this.site.CreateService(MgServiceType.FeatureService);
-	    MgResourceIdentifier resId = new MgResourceIdentifier(layer.GetFeatureSourceId());
-	    String featureClass = layer.GetFeatureClassName();
-	    String featureGeometry = layer.GetFeatureGeometryName();
+            MgFeatureService featureService = (MgFeatureService)this.site.CreateService(MgServiceType.FeatureService);
+            MgResourceIdentifier resId = new MgResourceIdentifier(layer.GetFeatureSourceId());
+            String featureClass = layer.GetFeatureClassName();
+            String featureGeometry = layer.GetFeatureGeometryName();
 
-	    // Initialize the coordinate system transform
+            // Initialize the coordinate system transform
 
-	    String[] schemaClass = layer.GetFeatureClassName().split(":");
-	    MgClassDefinition classDef = featureService.GetClassDefinition(resId, schemaClass[0], schemaClass[1]);
-	    MgGeometricPropertyDefinition geomProp = (MgGeometricPropertyDefinition) classDef.GetProperties().GetItem(featureGeometry);
-	    String spatialContext = geomProp.GetSpatialContextAssociation();
+            String[] schemaClass = layer.GetFeatureClassName().split(":");
+            MgClassDefinition classDef = featureService.GetClassDefinition(resId, schemaClass[0], schemaClass[1]);
+            MgGeometricPropertyDefinition geomProp = (MgGeometricPropertyDefinition) classDef.GetProperties().GetItem(featureGeometry);
+            String spatialContext = geomProp.GetSpatialContextAssociation();
 
-	    MgCoordinateSystemTransform csTransform = null;
-	    MgCoordinateSystemTransform csInverseTransform = null;
-	    MgCoordinateSystemFactory coordSysFactory = new MgCoordinateSystemFactory();
+            MgCoordinateSystemTransform csTransform = null;
+            MgCoordinateSystemTransform csInverseTransform = null;
+            MgCoordinateSystemFactory coordSysFactory = new MgCoordinateSystemFactory();
 
-	    MgSpatialContextReader scReader = featureService.GetSpatialContexts(resId, false);
-	    while(scReader.ReadNext() && csTransform==null)
-	    {
-		if(spatialContext.equals(scReader.GetName()))
-		{
-		    MgCoordinateSystem source = coordSysFactory.Create(scReader.GetCoordinateSystemWkt());
-		    MgCoordinateSystem target = coordSysFactory.Create(map.GetMapSRS());
-		    csTransform = coordSysFactory.GetTransform(source, target);
-		    csInverseTransform = coordSysFactory.GetTransform(target, source);
-		}
-	    }
-	    scReader.Close();
+            MgSpatialContextReader scReader = featureService.GetSpatialContexts(resId, false);
+            while(scReader.ReadNext() && csTransform==null)
+            {
+                if(spatialContext.equals(scReader.GetName()))
+                {
+                    MgCoordinateSystem source = coordSysFactory.Create(scReader.GetCoordinateSystemWkt());
+                    MgCoordinateSystem target = coordSysFactory.Create(map.GetMapSRS());
+                    csTransform = coordSysFactory.GetTransform(source, target);
+                    csInverseTransform = coordSysFactory.GetTransform(target, source);
+                }
+            }
+            scReader.Close();
 
-	    // Execute the query
+            // Execute the query
 
-	    int queryMax = Integer.parseInt(this.args.get("QUERYMAX").trim());
-	    MgFeatureQueryOptions queryOptions = new MgFeatureQueryOptions();
+            int queryMax = Integer.parseInt(this.args.get("QUERYMAX").trim());
+            MgFeatureQueryOptions queryOptions = new MgFeatureQueryOptions();
 
-	    if(this.args.get("USEPROPERTYFILTER").equals("true"))
-	    {
-		String propertyFilter = this.args.get("PROPERTYNAME");
-		int operator = Integer.valueOf(this.args.get("OPERATOR"));
-		int count = 0;
-		if(this.args.get("ISSTRING").equals("true"))
-		{
-		    propertyFilter = propertyFilter + this.strExpressions[operator].replaceAll("%s", this.args.get("VALUE"));
-		}
-		else
-		{
-		    propertyFilter = propertyFilter + this.numExpressions[operator].replaceAll("%s", this.args.get("VALUE"));
-		}
-		queryOptions.SetFilter(propertyFilter);
-	    }
+            if(this.args.get("USEPROPERTYFILTER").equals("true"))
+            {
+                String propertyFilter = this.args.get("PROPERTYNAME");
+                int operator = Integer.valueOf(this.args.get("OPERATOR"));
+                int count = 0;
+                if(this.args.get("ISSTRING").equals("true"))
+                {
+                    propertyFilter = propertyFilter + this.strExpressions[operator].replaceAll("%s", this.args.get("VALUE"));
+                }
+                else
+                {
+                    propertyFilter = propertyFilter + this.numExpressions[operator].replaceAll("%s", this.args.get("VALUE"));
+                }
+                queryOptions.SetFilter(propertyFilter);
+            }
 
-	    if(this.args.get("USESPATIALFILTER").equals("true"))
-	    {
-		MgPolygon polygon = this.CreatePolygonFromGeomText(this.args.get("GEOMTEXT"));
-		MgGeometry geometry = (MgGeometry) polygon.Transform(csInverseTransform);
-		queryOptions.SetSpatialFilter(featureGeometry, geometry, MgFeatureSpatialOperations.Intersects);
-	    }
+            if(this.args.get("USESPATIALFILTER").equals("true"))
+            {
+                MgPolygon polygon = this.CreatePolygonFromGeomText(this.args.get("GEOMTEXT"));
+                MgGeometry geometry = (MgGeometry) polygon.Transform(csInverseTransform);
+                queryOptions.SetSpatialFilter(featureGeometry, geometry, MgFeatureSpatialOperations.Intersects);
+            }
 
-	    int count = 0;
-	    MgAgfReaderWriter geometryReaderWriter = new MgAgfReaderWriter();
-	    MgFeatureReader featureReader = featureService.SelectFeatures(resId, layer.GetFeatureClassName(), queryOptions);
-	    String displayValue = null;
-	    while(featureReader.ReadNext() && (queryMax <= 0 || count < queryMax))
-	    {
-		MgByteReader byteReader = featureReader.GetGeometry(featureGeometry);
-		MgGeometry geometry = geometryReaderWriter.Read(byteReader);
-		MgPoint centerPoint = geometry.GetCentroid();
-		centerPoint = (MgPoint) centerPoint.Transform(csTransform);
+            int count = 0;
+            MgAgfReaderWriter geometryReaderWriter = new MgAgfReaderWriter();
+            MgFeatureReader featureReader = featureService.SelectFeatures(resId, layer.GetFeatureClassName(), queryOptions);
+            String displayValue = null;
+            while(featureReader.ReadNext() && (queryMax <= 0 || count < queryMax))
+            {
+                MgByteReader byteReader = featureReader.GetGeometry(featureGeometry);
+                MgPoint centerPoint = null;
+                try 
+                {
+                    MgGeometry geometry = geometryReaderWriter.Read(byteReader);
+                    centerPoint = geometry.GetCentroid();
+                    centerPoint = (MgPoint) centerPoint.Transform(csTransform);
+                }
+                catch (MgException ex) //Maybe because of bad geometry
+                {
+                    centerPoint = null;
+                }
 
-		Map idList = new HashMap(this.GetFeatureIdList(featureReader));
-		
-		int propertyType = featureReader.GetPropertyType(this.args.get("OUTPUTPROPERTY"));
-		switch(propertyType)
-		{
-		    case MgPropertyType.Boolean :
-			displayValue = String.valueOf(featureReader.GetBoolean(this.args.get("OUTPUTPROPERTY")));
-			break;
-		    case MgPropertyType.Byte :
-			displayValue = String.valueOf(featureReader.GetByte(this.args.get("OUTPUTPROPERTY")));
-			break;
-		    case MgPropertyType.Single :
-			displayValue = String.valueOf(featureReader.GetSingle(this.args.get("OUTPUTPROPERTY")));
-			break;
-		    case MgPropertyType.Double :
-			displayValue = String.valueOf(featureReader.GetDouble(this.args.get("OUTPUTPROPERTY")));
-			break;
-		    case MgPropertyType.Int16 :
-			displayValue = String.valueOf(featureReader.GetInt16(this.args.get("OUTPUTPROPERTY")));
-			break;
-		    case MgPropertyType.Int32 :
-			displayValue = String.valueOf(featureReader.GetInt32(this.args.get("OUTPUTPROPERTY")));
-			break;
-		    case MgPropertyType.Int64 :
-			displayValue = String.valueOf(featureReader.GetInt64(this.args.get("OUTPUTPROPERTY")));
-			break;
-		    case MgPropertyType.String :
-			displayValue = featureReader.GetString(this.args.get("OUTPUTPROPERTY"));
-			break;
-		    case MgPropertyType.DateTime :
-		    case MgPropertyType.Null :
-		    case MgPropertyType.Blob :
-		    case MgPropertyType.Clob :
-		    case MgPropertyType.Feature :
-		    case MgPropertyType.Geometry :
-		    case MgPropertyType.Raster :
-			displayValue = "[unsupported data type]";
-			break;
-		}
-		result.add(new Feature(displayValue, centerPoint, idList));
-		count++;
-	    }
+                Map idList = new HashMap(this.GetFeatureIdList(featureReader));
+                
+                int propertyType = featureReader.GetPropertyType(this.args.get("OUTPUTPROPERTY"));
+                switch(propertyType)
+                {
+                    case MgPropertyType.Boolean :
+                        displayValue = String.valueOf(featureReader.GetBoolean(this.args.get("OUTPUTPROPERTY")));
+                        break;
+                    case MgPropertyType.Byte :
+                        displayValue = String.valueOf(featureReader.GetByte(this.args.get("OUTPUTPROPERTY")));
+                        break;
+                    case MgPropertyType.Single :
+                        displayValue = String.valueOf(featureReader.GetSingle(this.args.get("OUTPUTPROPERTY")));
+                        break;
+                    case MgPropertyType.Double :
+                        displayValue = String.valueOf(featureReader.GetDouble(this.args.get("OUTPUTPROPERTY")));
+                        break;
+                    case MgPropertyType.Int16 :
+                        displayValue = String.valueOf(featureReader.GetInt16(this.args.get("OUTPUTPROPERTY")));
+                        break;
+                    case MgPropertyType.Int32 :
+                        displayValue = String.valueOf(featureReader.GetInt32(this.args.get("OUTPUTPROPERTY")));
+                        break;
+                    case MgPropertyType.Int64 :
+                        displayValue = String.valueOf(featureReader.GetInt64(this.args.get("OUTPUTPROPERTY")));
+                        break;
+                    case MgPropertyType.String :
+                        displayValue = featureReader.GetString(this.args.get("OUTPUTPROPERTY"));
+                        break;
+                    case MgPropertyType.DateTime :
+                    case MgPropertyType.Null :
+                    case MgPropertyType.Blob :
+                    case MgPropertyType.Clob :
+                    case MgPropertyType.Feature :
+                    case MgPropertyType.Geometry :
+                    case MgPropertyType.Raster :
+                        displayValue = "[unsupported data type]";
+                        break;
+                }
+                result.add(new Feature(displayValue, centerPoint, idList));
+                count++;
+            }
 
-	    return result;
+            return result;
         }
 
-	public String GetSelectionXML() throws MgException, JSONException
-	{
-	    MgResourceService resourceService = (MgResourceService)this.site.CreateService(MgServiceType.ResourceService);
-	    MgFeatureService featureService = (MgFeatureService)this.site.CreateService(MgServiceType.FeatureService);
+        public String GetSelectionXML() throws MgException, JSONException
+        {
+            MgResourceService resourceService = (MgResourceService)this.site.CreateService(MgServiceType.ResourceService);
+            MgFeatureService featureService = (MgFeatureService)this.site.CreateService(MgServiceType.FeatureService);
 
-	    MgMap map = new MgMap();
-	    map.Open(resourceService, this.args.get("MAPNAME"));
-	    MgLayer layer = (MgLayer) map.GetLayers().GetItem(this.args.get("LAYERNAME"));
-	    MgResourceIdentifier resId = new MgResourceIdentifier(layer.GetFeatureSourceId());
-	    String featureClass = layer.GetFeatureClassName();
+            MgMap map = new MgMap();
+            map.Open(resourceService, this.args.get("MAPNAME"));
+            MgLayer layer = (MgLayer) map.GetLayers().GetItem(this.args.get("LAYERNAME"));
+            MgResourceIdentifier resId = new MgResourceIdentifier(layer.GetFeatureSourceId());
+            String featureClass = layer.GetFeatureClassName();
 
-	    String[] schemaClass = layer.GetFeatureClassName().split(":");
-	    MgClassDefinition classDef = featureService.GetClassDefinition(resId, schemaClass[0], schemaClass[1]);
+            String[] schemaClass = layer.GetFeatureClassName().split(":");
+            MgClassDefinition classDef = featureService.GetClassDefinition(resId, schemaClass[0], schemaClass[1]);
 
-	    MgPropertyCollection properties = new MgPropertyCollection();
-	    MgDataPropertyDefinition dataPropDef = null;
-	    JSONObject json = new JSONObject(this.args.get("IDLIST"));
+            MgPropertyCollection properties = new MgPropertyCollection();
+            MgDataPropertyDefinition dataPropDef = null;
+            JSONObject json = new JSONObject(this.args.get("IDLIST"));
 
-	    Iterator it = json.keys();
-	    while(it.hasNext())
-	    {
-		String key = (String) it.next();
-		Object value = json.get(key);
-		dataPropDef = (MgDataPropertyDefinition) classDef.GetProperties().GetItem(key);
-		switch(dataPropDef.GetDataType())
-		{
-		    case MgPropertyType.Boolean :
-			properties.Add(new MgBooleanProperty(key, Boolean.valueOf(value.toString())));
-			break;
-		    case MgPropertyType.Byte :
-			properties.Add(new MgByteProperty(key, Byte.valueOf(value.toString())));
-			break;
-		    case MgPropertyType.Single :
-			properties.Add(new MgSingleProperty(key, Float.valueOf(value.toString())));
-			break;
-		    case MgPropertyType.Double :
-			properties.Add(new MgDoubleProperty(key, Double.valueOf(value.toString())));
-			break;
-		    case MgPropertyType.Int16 :
-			properties.Add(new MgInt16Property(key, Short.valueOf(value.toString())));
-			break;
-		    case MgPropertyType.Int32 :
-			properties.Add(new MgInt32Property(key, Integer.valueOf(value.toString())));
-			break;
-		    case MgPropertyType.Int64 :
-			properties.Add(new MgInt64Property(key, Long.valueOf(value.toString())));
-			break;
-		    case MgPropertyType.String :
-			properties.Add(new MgStringProperty(key, value.toString()));
-			break;
-		    case MgPropertyType.DateTime :
-		    case MgPropertyType.Null :
-		    case MgPropertyType.Blob :
-		    case MgPropertyType.Clob :
-		    case MgPropertyType.Feature :
-		    case MgPropertyType.Geometry :
-		    case MgPropertyType.Raster :
-			break;
-		}
-	    }
+            Iterator it = json.keys();
+            while(it.hasNext())
+            {
+                String key = (String) it.next();
+                Object value = json.get(key);
+                dataPropDef = (MgDataPropertyDefinition) classDef.GetProperties().GetItem(key);
+                switch(dataPropDef.GetDataType())
+                {
+                    case MgPropertyType.Boolean :
+                        properties.Add(new MgBooleanProperty(key, Boolean.valueOf(value.toString())));
+                        break;
+                    case MgPropertyType.Byte :
+                        properties.Add(new MgByteProperty(key, Byte.valueOf(value.toString())));
+                        break;
+                    case MgPropertyType.Single :
+                        properties.Add(new MgSingleProperty(key, Float.valueOf(value.toString())));
+                        break;
+                    case MgPropertyType.Double :
+                        properties.Add(new MgDoubleProperty(key, Double.valueOf(value.toString())));
+                        break;
+                    case MgPropertyType.Int16 :
+                        properties.Add(new MgInt16Property(key, Short.valueOf(value.toString())));
+                        break;
+                    case MgPropertyType.Int32 :
+                        properties.Add(new MgInt32Property(key, Integer.valueOf(value.toString())));
+                        break;
+                    case MgPropertyType.Int64 :
+                        properties.Add(new MgInt64Property(key, Long.valueOf(value.toString())));
+                        break;
+                    case MgPropertyType.String :
+                        properties.Add(new MgStringProperty(key, value.toString()));
+                        break;
+                    case MgPropertyType.DateTime :
+                    case MgPropertyType.Null :
+                    case MgPropertyType.Blob :
+                    case MgPropertyType.Clob :
+                    case MgPropertyType.Feature :
+                    case MgPropertyType.Geometry :
+                    case MgPropertyType.Raster :
+                        break;
+                }
+            }
 
-	    MgSelection selection = new MgSelection(map);
-	    selection.AddFeatureIds(layer, featureClass, properties);
+            MgSelection selection = new MgSelection(map);
+            selection.AddFeatureIds(layer, featureClass, properties);
 
-	    return selection.ToXml();
+            return selection.ToXml();
         }
-        
+            
         private Map GetFeatureIdList(MgFeatureReader featureReader) throws MgException
-	{
-	    MgClassDefinition classDef = featureReader.GetClassDefinition();
-	    MgPropertyDefinitionCollection idProps = classDef.GetIdentityProperties();
-	    Map idList = new HashMap();
+        {
+            MgClassDefinition classDef = featureReader.GetClassDefinition();
+            MgPropertyDefinitionCollection idProps = classDef.GetIdentityProperties();
+            Map idList = new HashMap();
 
-	    for(int i=0; i<idProps.GetCount(); i++)
-	    {
-		MgDataPropertyDefinition idProp = (MgDataPropertyDefinition) idProps.GetItem(i);
+            for(int i=0; i<idProps.GetCount(); i++)
+            {
+                MgDataPropertyDefinition idProp = (MgDataPropertyDefinition) idProps.GetItem(i);
 
-		switch(idProp.GetDataType())
-		{
-		    case MgPropertyType.Boolean :
-			idList.put(idProp.GetName(), featureReader.GetBoolean(idProp.GetName()));
-			break;
-		    case MgPropertyType.Byte :
-			idList.put(idProp.GetName(), featureReader.GetByte(idProp.GetName()));
-			break;
-		    case MgPropertyType.Single :
-			idList.put(idProp.GetName(), featureReader.GetSingle(idProp.GetName()));
-			break;
-		    case MgPropertyType.Double :
-			idList.put(idProp.GetName(), featureReader.GetDouble(idProp.GetName()));
-			break;
-		    case MgPropertyType.Int16 :
-			idList.put(idProp.GetName(), featureReader.GetInt16(idProp.GetName()));
-			break;
-		    case MgPropertyType.Int32 :
-			idList.put(idProp.GetName(), featureReader.GetInt32(idProp.GetName()));
-			break;
-		    case MgPropertyType.Int64 :
-			idList.put(idProp.GetName(), featureReader.GetInt64(idProp.GetName()));
-			break;
-		    case MgPropertyType.String :
-			idList.put(idProp.GetName(), featureReader.GetString(idProp.GetName()));
-			break;
-		    case MgPropertyType.DateTime :
-			idList.put(idProp.GetName(), featureReader.GetDateTime(idProp.GetName()));
-			break;
-		    case MgPropertyType.Null :
-		    case MgPropertyType.Blob :
-		    case MgPropertyType.Clob :
-		    case MgPropertyType.Feature :
-		    case MgPropertyType.Geometry :
-		    case MgPropertyType.Raster :
-			break;
-		}
-	    }
+                switch(idProp.GetDataType())
+                {
+                    case MgPropertyType.Boolean :
+                        idList.put(idProp.GetName(), featureReader.GetBoolean(idProp.GetName()));
+                        break;
+                    case MgPropertyType.Byte :
+                        idList.put(idProp.GetName(), featureReader.GetByte(idProp.GetName()));
+                        break;
+                    case MgPropertyType.Single :
+                        idList.put(idProp.GetName(), featureReader.GetSingle(idProp.GetName()));
+                        break;
+                    case MgPropertyType.Double :
+                        idList.put(idProp.GetName(), featureReader.GetDouble(idProp.GetName()));
+                        break;
+                    case MgPropertyType.Int16 :
+                        idList.put(idProp.GetName(), featureReader.GetInt16(idProp.GetName()));
+                        break;
+                    case MgPropertyType.Int32 :
+                        idList.put(idProp.GetName(), featureReader.GetInt32(idProp.GetName()));
+                        break;
+                    case MgPropertyType.Int64 :
+                        idList.put(idProp.GetName(), featureReader.GetInt64(idProp.GetName()));
+                        break;
+                    case MgPropertyType.String :
+                        idList.put(idProp.GetName(), featureReader.GetString(idProp.GetName()));
+                        break;
+                    case MgPropertyType.DateTime :
+                        idList.put(idProp.GetName(), featureReader.GetDateTime(idProp.GetName()));
+                        break;
+                    case MgPropertyType.Null :
+                    case MgPropertyType.Blob :
+                    case MgPropertyType.Clob :
+                    case MgPropertyType.Feature :
+                    case MgPropertyType.Geometry :
+                    case MgPropertyType.Raster :
+                        break;
+                }
+            }
 
-	    return idList;
+            return idList;
         }
-        
+            
         private boolean IsValidDataType(int type)
-	{
-	    boolean valid = true;
+        {
+            boolean valid = true;
 
-	    switch(type)
-	    {
-		case MgPropertyType.Blob:
-		case MgPropertyType.Clob:
-		case MgPropertyType.Byte:
-		case MgPropertyType.Feature:
-		case MgPropertyType.Geometry:
-		case MgPropertyType.Null:
-		    valid = false;
-		    break;
-	    }
+            switch(type)
+            {
+            case MgPropertyType.Blob:
+            case MgPropertyType.Clob:
+            case MgPropertyType.Byte:
+            case MgPropertyType.Feature:
+            case MgPropertyType.Geometry:
+            case MgPropertyType.Null:
+                valid = false;
+                break;
+            }
 
-	    return valid;
+            return valid;
         }
-        
+            
         private MgFeatureSchema CreateFilterSchema() throws MgException
-	{
-	    MgFeatureSchema filterSchema = new MgFeatureSchema();
-	    filterSchema.SetName("FilterSchema");
+        {
+            MgFeatureSchema filterSchema = new MgFeatureSchema();
+            filterSchema.SetName("FilterSchema");
 
-	    MgClassDefinition filterClass = new MgClassDefinition();
-	    filterClass.SetName("Filter");
-	    MgPropertyDefinitionCollection properties = filterClass.GetProperties();
+            MgClassDefinition filterClass = new MgClassDefinition();
+            filterClass.SetName("Filter");
+            MgPropertyDefinitionCollection properties = filterClass.GetProperties();
 
-	    MgDataPropertyDefinition idProperty = new MgDataPropertyDefinition("ID");
-	    idProperty.SetDataType(MgPropertyType.Int32);
-	    idProperty.SetReadOnly(true);
-	    idProperty.SetNullable(false);
-	    idProperty.SetAutoGeneration(true);
-	    properties.Add(idProperty);
+            MgDataPropertyDefinition idProperty = new MgDataPropertyDefinition("ID");
+            idProperty.SetDataType(MgPropertyType.Int32);
+            idProperty.SetReadOnly(true);
+            idProperty.SetNullable(false);
+            idProperty.SetAutoGeneration(true);
+            properties.Add(idProperty);
 
-	    MgGeometricPropertyDefinition geometryProperty = new MgGeometricPropertyDefinition("Geometry");
-	    geometryProperty.SetGeometryTypes(MgFeatureGeometricType.Surface);
-	    geometryProperty.SetHasElevation(false);
-	    geometryProperty.SetHasMeasure(false);
-	    geometryProperty.SetReadOnly(false);
-	    geometryProperty.SetSpatialContextAssociation("MAPCS");
-	    properties.Add(geometryProperty);
+            MgGeometricPropertyDefinition geometryProperty = new MgGeometricPropertyDefinition("Geometry");
+            geometryProperty.SetGeometryTypes(MgFeatureGeometricType.Surface);
+            geometryProperty.SetHasElevation(false);
+            geometryProperty.SetHasMeasure(false);
+            geometryProperty.SetReadOnly(false);
+            geometryProperty.SetSpatialContextAssociation("MAPCS");
+            properties.Add(geometryProperty);
 
-	    filterClass.GetIdentityProperties().Add(idProperty);
-	    filterClass.SetDefaultGeometryPropertyName("Geometry");
+            filterClass.GetIdentityProperties().Add(idProperty);
+            filterClass.SetDefaultGeometryPropertyName("Geometry");
 
-	    filterSchema.GetClasses().Add(filterClass);
+            filterSchema.GetClasses().Add(filterClass);
 
-	    return filterSchema;
+            return filterSchema;
         }
         
         private MgPolygon CreatePolygonFromGeomText(String geomText) throws MgException
-	{
-	    MgGeometryFactory geometryFactory = new MgGeometryFactory();
+        {
+            MgGeometryFactory geometryFactory = new MgGeometryFactory();
 
-	    String[] vertices = geomText.split(",");
-	    int count = Integer.valueOf(vertices[0]);
+            String[] vertices = geomText.split(",");
+            int count = Integer.valueOf(vertices[0]);
 
-	    MgCoordinateCollection coords = new MgCoordinateCollection();
-	    for(int i=0; i<count; i++)
-	    {
-		MgCoordinate coord = geometryFactory.CreateCoordinateXY(Double.valueOf(vertices[(i*2)+1]), Double.valueOf(vertices[(i*2)+2]));
-		coords.Add(coord);
-	    }
+            MgCoordinateCollection coords = new MgCoordinateCollection();
+            for(int i=0; i<count; i++)
+            {
+                MgCoordinate coord = geometryFactory.CreateCoordinateXY(Double.valueOf(vertices[(i*2)+1]), Double.valueOf(vertices[(i*2)+2]));
+                coords.Add(coord);
+            }
 
-	    MgLinearRing linearRing = geometryFactory.CreateLinearRing(coords);
-	    MgPolygon polygon = geometryFactory.CreatePolygon(linearRing, null);
+            MgLinearRing linearRing = geometryFactory.CreateLinearRing(coords);
+            MgPolygon polygon = geometryFactory.CreatePolygon(linearRing, null);
 
-	    return polygon;
+            return polygon;
         }
 
     }

Modified: trunk/MgDev/Doc/samples/javaviewersample/query/querycontroller.jsp
===================================================================
--- trunk/MgDev/Doc/samples/javaviewersample/query/querycontroller.jsp	2013-01-12 04:16:28 UTC (rev 7299)
+++ trunk/MgDev/Doc/samples/javaviewersample/query/querycontroller.jsp	2013-01-12 06:33:04 UTC (rev 7300)
@@ -70,16 +70,16 @@
                 break;
             case Command.EXECUTEQUERY:
                 responseType = "text/plain";
-		ArrayList<Feature> resultList = query.Execute();
-		for(int i=0;i<resultList.size();i++)
-		{
-		    jsonObj.put("displayValue", resultList.get(i).displayValue);
-		    jsonObj.put("centerX", resultList.get(i).centerX);
-		    jsonObj.put("centerY", resultList.get(i).centerY);
-		    jsonObj.put("idList", resultList.get(i).idList);
-		    json.put(i, jsonObj.toString());
-		}
-		responseString = json.toString();
+                ArrayList<Feature> resultList = query.Execute();
+                for(int i=0;i<resultList.size();i++)
+                {
+                    jsonObj.put("displayValue", resultList.get(i).displayValue);
+                    jsonObj.put("centerX", resultList.get(i).centerX);
+                    jsonObj.put("centerY", resultList.get(i).centerY);
+                    jsonObj.put("idList", resultList.get(i).idList);
+                    json.put(i, jsonObj.toString());
+                }
+                responseString = json.toString();
                 break;
             case Command.GETSELECTIONXML:
                 responseType = "text/xml";

Modified: trunk/MgDev/Doc/samples/javaviewersample/query/querymain.jsp
===================================================================
--- trunk/MgDev/Doc/samples/javaviewersample/query/querymain.jsp	2013-01-12 04:16:28 UTC (rev 7299)
+++ trunk/MgDev/Doc/samples/javaviewersample/query/querymain.jsp	2013-01-12 06:33:04 UTC (rev 7300)
@@ -50,7 +50,7 @@
     }
     catch (MgException e)
     {
-        errorMsg = e.GetMessage();
+        errorMsg = e.GetExceptionMessage();
         errorDetail = e.GetDetails();
     }
 %>

Modified: trunk/MgDev/Doc/samples/javaviewersample/theme/thememain.jsp
===================================================================
--- trunk/MgDev/Doc/samples/javaviewersample/theme/thememain.jsp	2013-01-12 04:16:28 UTC (rev 7299)
+++ trunk/MgDev/Doc/samples/javaviewersample/theme/thememain.jsp	2013-01-12 06:33:04 UTC (rev 7300)
@@ -50,7 +50,7 @@
     }
     catch (MgException e)
     {
-        errorMsg = e.GetMessage();
+        errorMsg = e.GetExceptionMessage();
         errorDetail = e.GetDetails();
     }
 %>



More information about the mapguide-commits mailing list