Monthly Archives: February 2010
The Java Web ADF Task Framework provides a convenient way for developers to write simple, focused, functional units, known as Tasks, without having to deal with complexities of JSF or Javascirpt programming. The Task Framework shields you from low level programming like building UIs and wiring them up to server-side java objects through AJAX. Instead, the framework allows you to focus exclusively on the functionality you are trying to build.
For those of you not familiar with the Task Framework, this article provides a gentle introduction. Basically, a Task is made up of 3 fundamental units – Parameters, Actions, and Tools. Parameters represent input that needs to be captured from the user. This can be some text that the user needs to enter, or an option that the user needs to pick. Actions and Tools both allow the user to invoke the task after specifying the Parameter values. Tools differ from Actions such that they allow the user to interact with the map (like specifying a location or an area) before invoking the task.
The ADF provides StringValidator, DateValidator, NumberValidator, and NumberSpinner java classes in the com.esri.adf.web.data.tasks.validator package which validate text, dates, and numbers respectively.
The following code snippet shows how to use a StringValidator to validate the text through a regular expression pattern.
By default, Actions and Tools of a Task enforce validation on all Parameters of that Task. If any Parameter value fails validation, all Actions and Tools in the Task are automatically disabled so that the user cannot invoke the Task. You can override this behaviour for each individual Action or Tool by disabling validation or explicitly specifying which Parameters to validate.
Content contributed by Divesh Goyal, Product Engineer, ArcGIS Java Team
High-quality 3D data visualization is mainstream now thanks to Google Earth and Bing Maps (Virtual Earth). Users expect to see geospatial data in 3D. However 3D GIS users are now beginning to move beyond just visualization and need to do true 3D analyses, solving problems that can’t be solved in 2D.
ArcGIS 3D Analyst offers a range of 3D vector analysis tools enabling users to solve these 3D problems. New functionality includes the following:
- A suite of 3D set operators, including Intersect 3D, Union 3D, Inside 3D, Is Closed 3D and Difference 3D, perform geoprocessing tasks using closed multipatches and 3D features.
- Geoprocessing tools that expose 3D vector analysis specifically for virtual city workflows, such as Skyline and Skyline Barrier.
- Enhancement of existing geoprocessing tools to work better with 3D. For example, the Select by Location dialog box uses 3D distances, and multipatch objects can participate in the Line of Sight tool.
- Network datasets with full 3D connectivity.
- Interactively measure in 3D using the Measure tool to display distance along a surface, height of 3D object, distance between two points in 3D, distance from observer (that is, how far away is an object?).
Benefits of 3D vector analysis
3D Vector Analysis3D vector analysis allows city planners to analyze their 3D city model and determine impact of newly proposed projects on the city environment.
Geoscientist can create cross-sections and fence diagrams using the new Intersect3D tool.
Facilities managers can analyze 3D transportation networks to find the best route between locations.
Mission planners can analyze flight paths / routes through hostile territory with regards to threat levels.
Gert van Maren
3D Product Manager
You will also need to update the style sheet to point to version 1.6:
<link rel="stylesheet" type="text/css" href="http://serverapi.arcgisonline.com/jsapi/arcgis/1.6/js/dojo/dijit/themes/tundra/tundra.css">
Here is a brief overview of the features added at version 1.6:
- Support for Dojo 1.4.1
- Ability to rename Dojo namespaces
- Support for the Web Mercator Auxiliary Sphere (102100) as an overlay spatial reference for caches created in the Google Maps/Bing Maps tiling scheme. You can alternatively continue to use Web Mercator (102113) as an overlay spatial reference.
- Several bug fixes
For a complete list of enhancements and bug fixes, view the ‘What’s new in Version 1.6′ document.
This is the first post in the Planning your DevSummit series aimed at helping you make the most of your time at the 2010 Developer Summit. We’re really excited by the technical sessions, user presentations, demo theaters and seminars we’ve got lined up for you and there is certainly a lot to take in. Hopefully we can help make planning your days at the DevSummit that little bit easier.
The Technical Sessions
Server developers have a rich set of sessions available this year so I’ve split them into three Planning your DevSummit posts covering Web APIs, Working with Services, and Administering ArcGIS Server.
Day 0: Presummit Seminars
If you’re new to Server development and are looking for an in-depth introduction, A Developer’s Guide to ArcGIS Server (1:00pm) will provide an overview of ArcGIS Server’s capabilities and this might help you decide which other sessions you might want to attend.
There are then three overview sessions for the Web APIs in case you didn’t attend the Presummit Seminar mentioned above:
- An Overview of the ArcGIS APIs for Silverlight/WPF (2:45pm)
- An Overview of the ArcGIS APIs for Flex (2:45pm)
Using and Extending the ArcGIS WebMap for Flex (4:30pm) introduces the new out-of-the-box web mapping application built on the ArcGIS API for Flex. Be sure to catch this one if you are interested in RIA Flex mapping solutions. Again, you won’t need to know any Flex for this.
Three Web API specific sessions are available on day two which assume a little more experience with the Web APIs. They go over the new features available in ArcGIS Server 10 and how to make use of them.
- Working with the ArcGIS API for Flex (10:30am)
- Working with the ArcGIS API for Microsoft Silverlight/WPF (2:45pm)
These sessions will be repeated at the end of Day 3.
If you’re using (or planning on using) the Web APIs to work with ArcGIS Online Enhancing your Applications with ArcGIS Online (1:00pm) is worth considering.
The last day offers three sessions on Patterns and Best Practices (again, one for each Web API):
- Patterns and Best Practices for Building Applications with the ArcGIS API for Microsoft Silverlight/WPF (8:30am)
- Patterns and Best Practices for Building Applications with the ArcGIS API for Flex (10:15am)
These sessions look at common problems during design and development and talk about how to overcome them to provide the best user experience built on top of solid, maintainable code.
Lastly, I should also mention the Developer-to-Developer: The ESRI Development Process (8:30am) session, as it will be useful and of interest to any developer.
You can download the complete Web API Sessions Overview as a PDF document to print out and bring with you to the DevSummit as a convenient reference.
In the run-up to the DevSummit we’ll be posting more of these guides to help you pick out the sessions you’ll likely want to attend, and we’ll also be discussing the User Presentations. These are the guides you can look forward to:
- ArcGIS Server: Web APIs (Overview PDF)
- ArcGIS Server: GIS Services (Overview PDF)
- ArcGIS Server: Administration (Overview PDF)
- ArcGIS Desktop (Overview PDF)
- ArcGIS Mobile (Overview PDF)
- ArcGIS Geodatabase (Overview PDF)
- ArcGIS Geoprocessing (Overview PDF)
If you’ve got suggestions for what you’d like to see in these guides, let us know.
Rank the posts and give the team some feedback so they know what type of information you want to see on the blog.
So you may or may not know that some of our Water Utility Resource Center Team is located in Philadelphia.
Yes, Philadelphia, the City that was hit by Snowpocalypse 1.0 and Snowpocalypse the Redux a few days later. Well we dug out from both of those storms and have resumed making templates only to have yet another major snow storm that is hitting us as we write this blog.
So, needless to say we are tired of winter and need some cheering up.
The one thing that would make us all very happy (aside from temperatures in the 70s) is to hear from ArcGIS users that have implemented the templates. Specifically we’d love for you to answer these questions and send us a screen shot or 2 of how you’ve implemented the templates:
- Who is your organization
- What template or templates did you implement
- Why did you implement the template
- How easy was it for you to implement
- What did you like or dislike about the template
Since we appreciate you taking the time to provide us this information and cheer us up, the first 3 examples we get for each of the templates will receive a free virtual campus course as a token of our gratitude. You can email your template stories at email@example.com
Thanks and don’t forget your mittens…
I was talking to a utility the other day about hydrants and sharing the location of out of service hydrants. The problem they had was that the hydrants had really bad location descriptions. They have coordinates, points, but the peopling wanting the data just want to see a list of the hydrants and information about where they are located. I thought about this for a while and it dawned on me, what a great use of reverse geocoding. You can easily reverse geocode all the hydrants and apply the addresses found to the location description field. If you need to apply location descriptions, give it a shot. Here is a link to a function to batch reverse geocode. Would I think would be cool if you could change this function so it would not only get an address, but if the hydrant was within a certain distance from an intersection, it would use the intersection not the address information for the description field. Maybe this is something ArcGIS Team water can work on. Let us know if you think this would help you.
ArcGIS Team Water
Geometric Networks for Developers – Learn how to take advantage of the Geometric Network through code with examples on how to create, update and edit network features with examples of how to perform Trace Tasks; including the placement and use of Flags and Barriers.
Introduction to the Mosaic Dataset – The Mosaic Dataset is the data model for managing ortho images as well as basic level products from various sensor platforms. This session will briefly demonstrate techniques used in processing sensor data and focus on the key developer concepts of raster types and raster functions in managing sensor data in ArcGIS.
Introduction to Query Layers – Learn about the new ArcGIS 10 functionality that allows geographic information in databases to be quickly and easily integrated into GIS projects. Query Layers will allow developers to incorporate spatial and non-spatial data directly from a database removing the need to import this information into a geodatabase before it can be used by ArcGIS. This session will introduce developers to the query layers API and discuss some of the uses for this new data source.
A list and schedule of all the demo theaters can be found here. If you aren’t going to be in Palm Springs for the Developer Summit this year you will still be able to access this content. After the Developer Summit we will follow up with a post that links to all the tech workshops and demo theaters.
The Business Analyst suite of products offer a vast variety of tools and reports that allow you dig deep into your current business model and better understand the potential of your business. Since Business Analyst is designed to appeal to large audience of clients sometimes the sheer number of tools and how they interconnect can be intimidating to some users. In order to help you better understand what our products can do for you we are going to be producing a series of videos targeting specific workflows. These workflows are just examples of some standard approaches that have been utilized with our products.
The data and names in the videos are all fictional and do not represent any real life businesses. Each of these workflows can be easily modified to fit your needs.
The first video is called Determine My Store(s) Trade Area. This video examines a single approach on how to analyze a stores potential by examining various trade areas. This analysis shows how with only store location data an analyst can quickly and easily determine the viability of a store.
The second video is called Determine the Lifestyles of My Customer. This video shows how to use Business Analyst to learn more about customers even when a customer list is not available. See how this fictitious hardware store learns what items to promote and how to promote them.
You can access these videos from the ArcGIS Resource Center and be sure to check back as we intend on adding new videos on topics such as Determine my Best and Worst Performing Store and Determine Market Penetration. These workflows are designed to be used with the current version of Business Analyst desktop and we will be updating them later this year when the newest version of Business Analyst is released.
Enjoy and I hope they become a valuable resource for you.