Adding shapefiles to ArcGIS Viewer for Flex

2449
5
12-28-2012 08:34 PM
JosephNigro
New Contributor
Hello,
I am very new at the web GIS stuff. I must be missing something very simple and basic in terms of uploading my own data. I am just trying to set a up a viewer so that others can view some shapefiles that I have via an online interactive map. I downloaded the  ArcGIS Viewer for Flex 3.1 along with the App Builder 3.1. I went through the on-line video tutorials and loads of documentation. Correct me if I am wrong but it is not possible to upload shapefiles directly into the viewer. Instead I need to save them as an ArcGIS Online map service?? I also read something about zipping them 1st. When do I do that if I am saving them to ArcGIS Online via ArcMap? From what I understand, if using the viewer itself then I need to to add the path for the service to my config.xml to access these data? If using the app builder then I have the option of adding them through "operational layers - ArcGIS Online - My Content". Am I on the right track? If so I am not sure why I am able to save my shapefiles to ArcGIS Online - My Data via ArcMap but my Flex Viewer doesn't recognize these data when I go to operational layers - ArcGIS Online - My Content. I can even see it in my ArcGIS Online - My Content website. Any ideas? Is there a simple way to add some shapefiles?

Any info is much appreciated!

Thanks
Joe
Tags (2)
0 Kudos
5 Replies
AnthonyGiles
Frequent Contributor
Joe,

If you want to give te user the ability to load their own shape files in to the viewer client side there is a custom widget available designed by Robert:

http://www.arcgis.com/home/item.html?id=2e9096c5d5044d39a264df759611686f

If you want to serve your data from arcgis online you have to share the data to everyone to see it in the flex app builder.

Regards

Anthony
0 Kudos
JosephNigro
New Contributor
Thanks Anthony.  I did see the widget during my extensive searches to allow users to load their own shapefiles but all I want to do is to serve my data. So there is no way to do it unless I post it and share it with the world? Not even if I assign it to a group, which I've tried doing but still can't 'see' it in Flex. What if you want it to want to produce these viewers for everyone to see but to not actually have the ability to download the actual data if they have access to ArcGIS online? Any way to do that?

Ultimately I would like to produce a website like the following sites (below). What would be the best Arc product to use? I do want to stick with ESRI unless there is some high quality free option out there.

http://map.usaid.gov/
http://maps.worldbank.org/
http://hornofafrica.ngoaidmap.org/

Thanks again for all of your suggestions.
Joe


Joe,

If you want to give te user the ability to load their own shape files in to the viewer client side there is a custom widget available designed by Robert:

http://www.arcgis.com/home/item.html?id=2e9096c5d5044d39a264df759611686f

If you want to serve your data from arcgis online you have to share the data to everyone to see it in the flex app builder.

Regards

Anthony
0 Kudos
AnthonyGiles
Frequent Contributor
Joe,

You should be able to create applications similar to your example using ArcGIS online. After you have created your own web app you have the option to share the map as either a link or embedded into another web page. Another good thing about arcgis online is it will work with many different clients suh as mobile devices.

I have a very simple example running here, this was created using esri supplied basemap and my own shape files:

http://www.arcgis.com/home/webmap/viewer.html?webmap=17da1078c08648f0872f2abeba189de0

Regards

Anthony
0 Kudos
JosephNigro
New Contributor
Thanks Anthony. I will start focusing on ArcGIS online then. I'll need to figure out how to customize it a bit . It gets somewhat confusing because it seems like there are so many tools to do the same thing and lots of overlap. For example, when should I use ArcGIS Viewer for Flex, ArcGIS API for Flex, ArcGIS Server, or just ArcGIS online maps? Do you know the difference between all of these? I believe Server is if you want to serve up your maps and data from ArcMap and provide lots of GIS functionality to the end user. Is that correct? And the rest of the ones that I mention? Sorry. I've been doing lots of reading and still have them confused. Is there a webpage you know of that lists all of these options and what scenarios they are best used for?

Thanks again
Joe
0 Kudos
AnthonyGiles
Frequent Contributor
Joe,

It all depends on your own business needs. If you can publish to your own ArcGIS Server then you have the option to build applications to consume your data using any of the following APIs: flex, silverlight or JavaScript. Which one to use can vary for different reasons, such as what type of client are you aiming your application towards, mobile devices will probably handle JavaScript applications better than silverlight or flex. I personally cannot use silverlight as we are on a closed system where the silverlight plugin is not installed. To use Flex the client will have to have the flash plugin installed.

You may be also more comfortable programming in one language over another. Flex and silverlight have configurable viewers that you can download, where you will probably have to start from scratch with the JavaScript API. Flex seems to have more of an active forum and there are plenty of samples which do not required you to have to get too deep into programming.

ArcGIS online is a good option if you do not have access to your own arcgis server. You can do a limited amount using the free options but you are limited to things like only being allowed to upload 1000 features etc. If you do have a budget you can buy subscriptions to AGOL that provides more options. Sorry but this is not really my area so I can't really tell you what these are, but I believe you can publish data from ArcMap to the online servers.

I agree with you that there are many options available but first you need to decide what your end application needs to do and who your are targeting.

Hope this helps

Regards

Anthony
0 Kudos