Adobe LiveCycle 9.0 (ES2) DDX Reference

When trying to fully take advantage of Adobe Acrobat files using ColdFusion, you’re going to have to delve into the world of DDX. Although several bloggers have linked to the Adobe DDX reference so that ColdFusion programmers can get the full syntax, almost all of the links no longer work due to reorganization of Adobe’s web site. To help the ColdFusion community, I’m posting a live link to the PDF reference as of now:

Because at some point this link will also suffer from bit rot, I’ve decided to make a copy available from this blog as well.

My coworker Brian Hall and I spent a considerable amount of time with Google, our dev laptops, and several ColdFusion bloggers / experts to make some PDFs generated from dynamic data. I’ll be posting our findings, including the not-seen-in-one place styling of an automatically generated table of contents using DDX in ColdFusion.

Although I don’t yet have my posts with how-tos ready, I do want to warn the ColdFusion folks out there to make sure to consult the documentation for (dis)allowed DDX elements. For instance, you may wish to view the list of elements supported in ColdFusion 9.0.1. If the previous link fails, look for the detailed information in the CFPDF tag reference.

Using Google MyMaps as Live KML Data Sources

I felt very clever when I discovered how to get to the actual KML exported as part of the “View in Google Earth” feature of Google’s MyMaps area of Google Maps.  I still don’t know why I didn’t make the leap sooner from downloading the data to using it live in an application.  Although I figured it out on my own, I would have made the “discovery” sooner if I just had read Mike Williams Google Maps API Tutorial with a closer eye to detail.  My one excuse is that I didn’t originally use alternatives to Google’s own GGeoXML class.  Now that I’m collaborating with multiple map maintainers, I don’t want to go through the whole download/massage/publish cycle.  Instead I want to use the excellent editing and collaboration facilities of the MyMaps interface to allow others to keep things updated properly.

In the spirit of sharing, I want to walk you through the process of going from MyMaps to your own hosted map using that data as an overlay.

  1. Get a Google Account
  2. Sign in and Visit Google Maps
  3. Create your first My Map.  Click the My Maps link in the left side bar, then click Create New Map.
  4. Set the center point and map display type using the normal maps interface.
  5. Edit the map by using the Edit button.
  6. Save the map using the Save button.

Note that you can add polylines and markers to your map, as well as edit the marker information as plain text, rich text, or HTML.  You can pick icons for your markers or add your own.  Note that adding your own doesn’t add to a data store, but uses a URL reference.  If you don’t maintain or control the server hosting the image, you won’t be able to guarantee that your custom marker will always be available.

When you’re happy with your map, use the View in Google Earth link above the map display itself (between RSS and Print).  Instead of letting Google Earth load the file, save it to your computer.

To help with my examples, I created a Demo Map Showing East Carolina University in my public Google account.  The link in my blog post was created by using the handy Link link within the interface.

You’ll note that the file size of the kml file is very small, which if you’ve created many markers with detailed information will seem confusing.  This XML doesn’t contain your data, but contains a URL to your data.  For instance, here is the contents of the KML file exported for my demo map:

  Demo Map Showing East Carolina University

The important feature of this file is the href element inside that link element. That’s the URL we want to our actual KML data. If we with to use it with GGeoXML, we can just replace the entities with their single character equivalents and construct the layer:

geoXml = new GGeoXml("");

That’s all there is to it. Now if you or any collaborator edits the map, the next time it’s reloaded the GGeoXML class will pick up the latest version. Next time I’ll discuss using the much more advanced Geoxml class. It requires one more bit of work because it cannot load data from URLs that are not within the same domain.

Sponsor: NC jQuery & JavaScript Camp: Winter 2010

I paid the extra money to become a sponsor of NC jQuery & JavaScript Camp: Winter 2010.  I’m going to be attending with Brian Hall and perhaps others on January 30.  The current list of attendees is really exciting.  My anticipation has been raised by listening to the yayQuery podcast and the Official jQuery podcast.

jquery Logo