Posts Tagged ‘arcgis server 9.3’

ArcGIS JavaScript API 1.5 released

October 8, 2009

Version 1.5 of the ArcGIS JavaScript API is now available! To take advantage of the new version, change your script reference to the ArcGIS JavaScript API to use v= 1.5, like this:

<script type="text/javascript" src="http://serverapi.arcgisonline.com/jsapi/arcgis/?v=1.5" />

Version 1.5 adds:

  • Support for Firefox 3.5
  • Support for Dojo 1.3.2
  • Ability to force a mouse cursor style change
  • Optional HTTPS access of the ArcGIS JavaScript API
  • Bug fixes

For more details on these items, take a look at the What’s New in Version 1.5 document.

The ArcGIS JavaScript Extension for the Google Maps API and the ArcGIS JavaScript Extension for Microsoft Virtual Earth (now Bing Maps) were not updated at this release.

Advertisements

Version 1.2 of the ArcGIS JavaScript API released

November 23, 2008

ESRI released Javscript  version 1.2 Javascript API and the details are here .

<script type=”text/javascript” src=”http://serverapi.arcgisonline.com/jsapi/arcgis/?v=1.2″></script&gt;

Please update in your CSS file too . Some features are listed below

  1. Support for Image services
  2. Support for Dojo 1.2
  3. More flexibility with cached and dynamic layer
  4. Refreshable map layers
  5. Improved graphics performance
  6. New methods for the geometry service
  7. Some bugs has been fixed in this release.

Competition Begins

October 21, 2008

In this post, I am just comparingMicrosoft Silver light API vs Javascript API vs Flex API.

Silver Light API :

Microsoft released Silver light 2 recently. The new API has features like .NET framework support, rich controls like Datagrid, List Box, Scroll viewer, Slider and calendar controls. Deep zoom: This enables unparalleled interactivity and navigation of ultrahigh resolution imagery.

We have already seen some of these new features used. Richie Carmichael developed a nice Microsoft Silverlight Map Viewer For ArcGIS Server 9.3. Microsoft Silverlight 2 will be available for download from http://www.microsoft.com/silverlight and if you have already been using Silverlight you will automatically updated.

Richie has a full write up about this new map control. You can find his write up here.   Albert Pascaul has  written about Using the ESRI Javascrip API as the silver light control SDK .

Another  Silver light impressions is registered here.

Doron’s has given his first impression about javascript API

ESRI resources on Silver Light API is here

Javascript API and Flex API:

There were lot of heated discussions going on blog space about JS API and Flex API.  James in his post provides wonderful insight Flex vs JS API and also comparison about Web ADF vs Javascript API is also quite useful.

“I developed a larger application with the Javascript API and then switched to flex. I am uniquely-positioned to give advice on the differences – Jeremy Bixby has given out the differences- Source : ESRI Forum

1) The javascript api implements an open-source framework, called “dojo” or “the dojo toolkit.” Flex is the framework for the esri flex api. So while javascript is the language that implements the dojo toolkit, actionscript is the language that implements the flex framework. Syntactically speaking, they are both quite similar. For example, in dojo there is the dojo.forEach loop, whereas using Adobe’s flex builder you can simply write “for each(var graphic in arrayOfGraphics){}”.

2) One major difference here is that you have to make reference to the dojo.for Each class in the header script for your application. With flex you can simply write the for each loop and not have to write any includes statement; the code that allows you to write the for each loop is in the flex library that you include in your flex project. Similarly, you have to find and include references for each component in the framework that you would like to use.

3) Developmentally speaking, Flex is hands down the winner (when developing with Adobe’s Flex Builder or Flex Builder Pro. Note that you don’t have to use the adobe developmental products, but it makes development fun!). Flex Builder has integrated support for CSS, component drag-and-drop, code collapse, auto completion, top-notch debugging tools and a profiling tool that allows you to gauge the performance of your application, capture data snapshots and identify areas where you can implement code and memory saving techniques to limit the number of object instantiations.

4) The dojo toolkit is poorly-documented. Half the time the web site with the api listed on it doesn’t even work. The flex framework is open-source, but it is privately-maintained by the Adobe company. If you are building applications that will replace an old IMS application or something like that, I have greater trust that a the flex framework will be better supported and be better integrated into whatever comes after flex then whatever the open-source equivalent is. Plus, the flex language reference, flex api and example snippets are all VERY instructive. Even the people who wrote dojo acknowledge that it is a work in progress, and the api has changed many times in the past year or so.

I guess the big difference here, for me, is the fact that the flex framework was developed privately and then released to be open-source. Dojo is intrinsically trying to develop from an open-source perspective. The result is a mess!

5) Object orientation of your code is easier with flex. If your application is a larger application and you need to encapsulate functionality in a series of objects, flex is the way you should go. To be sure, the dojo toolkit offers you the ability to develop an object-oriented application, but the management of the objects in flex builder as well as the testing and debugging functionality make life a lot easier. Unit testing is much easier with the flex unit testing framework (from adobe), then whatever dojo has going on.

6) The flex api from ESRI is more, well, flexible then the javascript api. Styling components is easier, and more likely to work correctly with any given flex component above and beyond esri components, and it is easier to trace inheritance in flex. Components are more likely to work together then they are in dojo.

7) There are also financial considerations here: to use the javascript api and dojo all you need is a text editor. Flex Builder Pro will run you $700ish. Even VS 2005 cost some X$.

8) Flex allows you to embed javascript in your flex, so that you can call javascript functions from your flex code! How is that for open-endedness and flexibility?”

I guess my bottom-line opinion is this: If you need to develop a large application that relies on complex algorithms, object orientation, or many different components, I would use flex. If you are looking to just throw a couple of maps on the internet with zoom in and zoom out, Javascript is probably the way for you to go. The javascript API does not expose as much as the REST API and Flex .

But finally one big reason to go off  the Web ADF. It uses the post back model and doesn’t work on ASP.NET MVC. Callbacks is eliminated when we use JS API and provides easy mechanism for the developer.

Most of the GIS professionals/projects developed /started using Javascript API as it straight forward approach and provides smooth transition from WEB ADF background.  Hence it would be difficult to judge or decide between these three at this moment, every API has its own features . The decision of selecting one depend on the bussiness requirement and other factors like developers skill set etc. I have added a opinion poll to caste your vote.

Cast your vote now ; and your answers will certainly matters a lot.

Honeymoon with 9.3

October 11, 2008

Hi Folks,

After long days of wait, finally day has come to work with ArcGIS 9.3. Like many, am also interested to know about features and enhancements in this latest edition. In my earlier post, I have discussed about ArcGIS Server 9.3. I have compiled the information from various sources. I got a chance to look at the documentation and resources (beta). Thanks to my friends who helped me to equip myself before I start; that gave me a head start.

As everyone, I have started with installation with brand new DVD from ESRI. I still remember my ArcView 3.0 CD’s, I had same excitment even now. I have encountered many installation woes  with 9.2, especially .NET ADF, I was worrying too.  But this time am lucky, my technical manager installed them perfectly.  Installation is a tough job and I add them as a task in my project plan. This is a very important step, as many of them find difficult in installation especially Server. If you look at ESRI forum, “Unable to Login in 9.2 Manager” top thread. I still wonder on seeing many work around suggested by the folks. I should appreciate ESRI this time for giving clear picture of installation steps. Utility to find existing older versions is of great help if you are new. The PDF document in installation CD helped lot for complete understanding.  I advice that one should strictly go through the documents and technical article before proceed. Otherwise, you may have to join ESRI party on thier forums 🙂

It would not be fair if  I did not talk about licensing.  If you have subscribed EDN then just activate them and get the 9.3 ECP files for all the products. For Desktop, I guess 9.2 license itself will work for 9.3. Pl correct me if am wrong. Soon, I will write a seperate post on ESRI licensing and products.  Keep watching!.

Let us dive into the action. I started with default “ESRI Web Mapping Application” . Once the project loaded in VS 2005; I noticed Ajax extension and rich controls. Just glanced on “Default.aspx” it preloaded with two map resource managers, Zoom Tool, and other basic navigation controls. Overview control moved to toolbar. Toolbar aligned left. Security features of 9.3 is adds lot of value. Seperate ESRI presentation on security models is to be referred for further understanding.  Updated Identify Control, Zoom previous and back tools, progress loading box to indicate server action comes with default template are few updates.  Login page will be helpful for developing enterprise application.

Server manager look and feel is also changed. Left panel has links to Manage a service, publish new service etc. Rich look and feel is nice for a developer. Publishing service is rather lot easier. Permission of using service with different user groups are great features. Almost rest of the functionality remains same. UI is has different look and provides warmth and comfort. After all we the developers see them whole day.

Once I add the services and changed resource item name “Layers” as opposed to “MapResourceItem0” and ran the application. Browser pops up with new look. Tools are aligned and Java scripts hassles are reduced.  I zoomed in and out and clicked Identify , it is brilliant. Then I clicked “Full Extent” oops application throws ugly error .  I am surprised  whether I did any mistake, everything looks OK, finally as usual – I searched in forum . It is confirmed that it is a ESRI bug [NIM035617]. This will be fixed SP1. Otherwise, application works fine.

Few other points:

  1. Resource manager equipped layer definition that layers, alias, color settings and styles can be set in no time. We can see fields, types and properties, without need of opening mxd. This saves lot of time.
  2. Map Identify class enhanced. Exclusions of unnecessary fields can be set easily.
  3. Adding identify results to results panel if necessary.
  4. Improved TOC and Over view controls using Ajax reduces much of callbacks
  5. Results Viewer: bi-directional highlight. The task can have different results behavior (fields, map tips etc).
  6. Map tips for all type of layers
  7. Out-of-box printing tool and export using Adobe Acrobat Reader (PDF).

and many more to be explored.

Recently James fee wrote an post about over-engineered application; some times I tool feel the same.  I started working with Avenue scripts–>MapObjects ->ArcObjects–>REST .  Due to technology advancements, products were improved with rich functionality and options, but I do not know how many of them uses them all.  At least how many of them know about the functionalities and features available?.  For example grid results controls attracted many users ; I expect this should be added by ESRI. This simple controls helps many. Most of GIS application requirements are fairly simple and straight forward. Nowadays Open source softwares provides easy solution on these when compared with propriety product. Anyway, 9.3 product is awesome on the whole at this moment, as being in honeymoon period.

I keep this post open to all ; professionals who works with 9.3 can share their experience and learnings. You can expect series of post on 9.3 experiences .

Welcome to ESRI ArcGIS 9.3 !

PS: As objective of my blog is share the basic fundamentals and help fellow buddy developers.  Hence many of the articles address the basic issue than much technical and complicated, for that, there were many sources and ESRI blogs.

Dojo and ArcGIS Server 9.3

July 16, 2008

What is Dojo and why is it important to ArcGIS users?

Recently Alex Russell and Neil Roberts from SitePen were here in Redlands showing  some of the capabilities of the Dojo toolkit and how it can greatly simplify your life if you’re a JavaScript developer. We anticipate that a lot of you will be encountering Dojo soon because the ArcGIS JavaScript API is built on top of it. This post gives an overview of what Dojo is and what you need to know about it to be successful when building ArcGIS JavaScript applications.

What is Dojo?

Dojo is a toolkit that helps you write more robust and performant JavaScript code. JavaScript is a language that runs within the Web browser, and there are various flavors of Web browser that interpret the JavaScript in slightly different ways. Toolkits such as Dojo, YUI, Prototype, and many others are designed to abstract away the browser idiosyncrasies so that you don’t have to learn them all and handle them in your code.

Additionally, there are often several ways to code the same thing using JavaScript. Toolkits like Dojo provide functions you can use to do things in easier or more efficient ways. Using libraries from a toolkit can reduce the lines of code you write and make your JavaScript applications quicker and more stable.

What does it mean that the ArcGIS JavaScript API is built on top of Dojo?

The ESRI developers who created the ArcGIS JavaScript API used Dojo to simplify their development process (Why reinvent things that work?) and to ensure that the applications you build behave the same in different browsers. For example, the map zoom and panning animations use Dojo, as does the graphics layer.

Furthermore, the zoom level slider and info windows that you see in your JavaScript API maps are Dojo widgets (dijits). The slider dijit is provided with Dojo, and the info window is a custom dijit created by ESRI for the ArcGIS JavaScript API.

How much Dojo do I need to know in order to use the ArcGIS JavaScript API?

The amount of Dojo you use when you work with the ArcGIS JavaScript API is up to you, but at a minimum you’ll need to use several common functions:

  • dojo.require() – Similar to the <script> include tag on an HTML page. It imports resources into your JavaScript page.
  • dojo.addOnLoad() – Similar to <body onload=””>. It registers an initializing block called after the page has finished loading and the dijits have been initialized.
  • dojo.connect() – Similar to the Element.addEventListener and Element.attachEvent JavaScript functions. It registers a listener to listen to specific events on an Object or element on the page and returns results from a function.
  • dojo.byId() – Similar to the document.getElementById(id) JavaScript function. The function searches and returns the first HTML element with the argument ID.

When writing your ArcGIS JavaScript applications, you can take advantage of the full Dojo toolkit, which includes buttons, grids, tree views, charts, and other widgets. The toolkit is divided into three parts:

Core – Essential functions like those listed above
Dijit – Themeable widgets such as trees, menus, and buttons
DojoX- Extension projects in various stages of development, such as graphics, grids, and charts

How do I get Dojo? Do I have to install it?

Dojo is included with the ArcGIS JavaScript API. When you include this script tag referencing the ArcGIS JavaScript API, you get access to the full Dojo tookit version 1.1.0:

<script type="text/javascript" src="http://serverapi.arcgisonline.com/jsapi/arcgis/?v=1"></script>

Many Dojo users download Dojo and host it themselves, or they reference the publicly available Dojo hosted on the AOL Content Delivery Network (CDN). When building ArcGIS JavaScript applications, there is no need to download or host Dojo, and you should use the Dojo included with the ArcGIS JavaScript API.

How do I get help with Dojo?

The Dojo Web site, www.dojotoolkit.org contains the official Dojo documentation. Documentation may be sparse, especially for projects in DojoX. Various books have recently become available that describe working with Dojo in more detail than you’ll find on the web site. The Dojo forums and the #dojo chat room on the IRC server irc.freenode.net are other good ways to get help.

Do the ESRI Web ADFs use Dojo?

At 9.3, ESRI’s .NET Web Application Developer Framework (ADF) contains a JavaScript library which should not be confused with the ArcGIS JavaScript API. The .NET Web ADF JavaScript library is dependent on the ASP.NET AJAX JavaScript Library and does not use Dojo.

The Java Web ADF also provides a JavaScript library, which was not written with a toolkit and consequently does not use Dojo.

Further Reading: http://blogs.esri.com/Dev/blogs/arcgisserver/archive/2008/07/09/What-is-Dojo-and-why-is-it-important-to-ArcGIS-users_3F00_.aspx#2369

ArcGIS Server 9.3 titbits

June 20, 2008

Tit bits for ArcGIS Server 9.3 RC

  1. ArcGIS 9.3 with Ajax Control Toolkit Version issue:

Issue: ESRI 9.3 RC has a reference to the AjaxControlToolkit.dll version 1.0.10920.32880 installed with the .NET SDK. Our project is using AjaxControlToolkit.dll version 3.0.20229.20843. When any ESRI map control is added to the project, we get the error: “Microsoft JScript runtime error: Sys.InvalidOperationException: Type AjaxControlToolkit.BoxSide has already been registered. The type may be defined multiple times or the script file that defines it may have already been loaded. A possible cause is a change of settings during a partial update”. We are able to remove the reference to AjaxControlToolkit.dll version 3 and run off of ESRI’s version 1, but then we are dependent on an older version of the library. 

Solution: The Web.config has an assemblyBinding section where you can do some assembly redirection. If you are using the latest version of the toolkit the following dependentAssembly element will work, otherwise you will need to change the version number to match the ajax control toolkit version you are using. 

       <dependentAssembly>
         <assemblyIdentity name=”AjaxControlToolkit” publicKeyToken=”28f01b0e84b6d53e”/>
         <bindingRedirect oldVersion=”1.0.10920.32880″ newVersion=”3.0.20229.20843″/>
      </dependentAssembly>

 Some links from ESRI Forum for chewing

  1. Sequence of Events in life cycle – comparison between 9.2 and 9.3
  2. ArcGIS Server Manager Enhancements going to be come up at final version
  3. Dojo Support for ArcGIS Server JavaScript API discussion
  4. Cannot login to ArcGIS/Rest/admin : ESRI sucks on login. Still many failed at this step. Refer 9.2 forum threads nearly 30+ (may be more) unable to login. ESRI please provide neat answer. Several victims on 9.2 Java ADF.

 

ESRI Javascript API is FREE

June 20, 2008

The JavaScript API’s are not part of the ArcGIS Server installation, but are being made available (for FREE!) to any JavaScript developers out on the Web. You can start using them right now with your 9.3 RC1 ArcGIS Server.

They are available at:
http://resources.esri.com/arcgisserver/index.cfm?fa=JSAPIs

The new resource centers have all of the downloads for the JavaScript API’s, Samples, SDK, and documentation.

 

Technology Migration ArcGIS Server 9.2 to 9.3

June 19, 2008

This post higlights some points on technology migration from ArcGIS Server 9.2 to 9.3. Some one might ask, “Hello ..dude..why do you want this so early ?”.  ArcGIS 9.3 is expected to release by this July. So this would be ideal period to discuss on this. This will be helpful for those who wants to develop new application in 9.3 or redevelop/migrate the existing 9.2 application or atleast curious to know about new features in 9.3.

Yet 9.2 Web ADF have not been explored fully, atleast by myself. Now 9.3 is almost ready. I guess 9.2 released in November 2006. With in 2 years ESRI came up with brand new 9.3.  Web ADF in 9.2 has been under lot of critiscm from several folks though used widely. The ADF learning path is bit hard, thats the naked truth thats the reason everyone hate using 9.2 atleast in .NET. On Other hand Java ADF in 9.2 seems good but lacks documentation. I have not heared much annoyance/comments with respect to java.  Server is not so easy as conventional IMS.  ArcGIS Server provides extensive functionalities than IMS product. It all depends on your requirement and bussiness needs.  Lets get into topic without further noise.

In General, 9.3 ADF built on the same framework in 9.2 with a number of technology and performance enhancements have been incorporated in 9.3 to provide comprehensive platform. The core object model has undergone minor (believe so) changes.  ADF (.NET) is hybrid platform- mix of server side and client side development enviroment. Basic web controls like Map, TOC and Overview has been re-engineered and scriptable now.

Your migration options depend on whether you built a Web ADF application using the Web Mapping Application template (includes applications generated by Manager) or you build a custom Web ADF application without the template.  Below matrix explains the possiblities to upgrade.

9.2 to 9.2 Migration

 Key points for developers:

  • Using ASP.NET partial postback pattern instead of client callback. If you might written lot of code for TOC, rendering by now controls will take care of all your needs. Even if required, it will be on client side
  • Customised Web ADF Javascript libraries. Night mare on Javascript is gone. Developer can get full details of script along with neat documentation.
  • Custom tasks uses partial post back
  • Shallow stateful pattern is no longer supported in 9.3.  Developers should be aware of this. Because adding/removing layers done thru pooled server objects using shallow stateful concepts. Here 9.3 HTTP hanlder (ESRI.ArcGIS.ADF.Web.UI.WebControls.MapHandler) responsible for Map draw operations.
  • Understanding of REST or Javascript API is must.

Sailent features in 9.3 :

  1. Ready made utilities for migrating from 9.2
  2. ArcGIS JavaScript Extension for the Google Maps API
  3. ArcGIS JavaScript Extension for Virtual Earth
  4. Javascript is made public, documented, JSON based, and object oriented. Makes life easy for developer.  9.3 ADF will use JSON instead of XML for it’s communications between the client and server – this alone speeds things up ~30%
  5. Integration with other Javascript frameworks – like Dojo or ExtJS. This allows much more control over how the application looks and behaves.
  6. Improved Map Control, TOC and Overview control. Number of callbacks is reduced.
  7. The resource manager can be managed in Javascript, and has lots of configuration – i.e. layer aliases, fields to show, map tips etc.
  8. Results Viewer: bi-directional highlight. The task can have different results behavior (fields, map tips etc). Kudos!
  9. Additional web controls, additional AjaxExtenders – DockExtender, HoverExpandExtender (pin window type of thing)
  10. Use of HTTP Handlers used instead of pages so the page lifecycle is avoided, so it’s faster
  11. Blending at 9.2 used a single tiling scheme. At 9.3 each resource has it’s own tiling scheme, and the “blending has been massively improved”
  12. Javascript intellisense for Visual Studio 2008.
  13. Better templates and utility to convert previous version templates.
  14. Eliminated lots of callbacks, http handlers improve performance because the control tree is not re-created and destroyed
  15. Visual studio 2008 and .NET 3.5 framework supported
  16. Out-of-box printing tool and export using Adobe Acrobat Reader (PDF)
  17. ArcGIS Image Server is now an optional extension to ArcGIS Server
  18. Integration with Arc Web services
  19. ArcSDE is fully integrated with ArcGIS Server. SDE license bundled with Server.
  20. Windows Vista Support
  21. PostgreSQL support
  22. OGC specifications
  23. Much more…..

Hear the  Latest Podcasts on ArcGIS Server 9.3 from ESRI. CLICK HERE 

To summarise ArcGIS Server 9.3 seems improved much quality and performance wise.

  • Those who are new to Server and about to start development in 9.3 then donot look back web ADF at all.
  • If you are graduating from 9.2 and coming out of Web ADF then 9.3 REST/javascript API will be solace.
  • Are you about to migrate to 9.3 then look at both pros and cons. Don’t jump.

I thank fellow bloggers Dave, James Fee, Tom and others who helped me with valuable inputs. I dare to write this post because am NOT in beta evaluation. Hence people like me who look for similar information, this post may help. If there were any mistakes/omissions/additions or want of further details, please do comment or email me.

ArcGIS Server 9.3 on Dojo

June 4, 2008

Dave has started blogging on Dojo toolkit and gave nice refrences for kick start.  For those who werent part of ArcGIS Server Beta program (me too),it’s worth noting that the Javascript API that will be shipping with 9.3 is based on Dojo.

Here is from Wiki on Dojo Tool kit for first sip

“The Dojo Toolkit is a modular open source JavaScript toolkit (or library), designed to ease the rapid development of JavaScript- or Ajax-based applications and web sites. It was started by Alex Russell in 2004 and is dual-licensed under the BSD License and the Academic Free License. The Dojo Foundation is a non-profit organization designed to promote the adoption of the toolkit”

Its right time to learn Dojo Tool kit for working ArcGIS Server 9.3.  Get ready folks.