Search
Legal
The views expressed in this blog are my own and do not necessarily reflect the views of Adobe Systems Incorporated.
Archives
September 07, 2007
Final Post
Although it doesn't seem possible for me to post to this blog any less frequently, I think I've found a way. Today is my last day at Adobe which means this blog will no longer be maintained and comments will no longer get approved. I've had 6 great years at Adobe and really enjoyed the people I've worked with and the projects I've worked on.
January 22, 2007
Make Magazine on PDFCasting
O'Reilly Make Magazine has a great article - "The complete guide to PDFs in iTunes". The title is maybe a little misleading because it's really about subscribing to PDFs using any RSS aggregator that supports enclosures - a.k.a PDFCasting - of which iTunes is a popular one. As I mentioned earlier, the free Adobe Reader 8.0 (and Acrobat 8.0) also support PDFCasting via the Tracker.
December 08, 2006
Adobe Tracker
John Dowell pointed me to a post on LifeHacker about the new Tracker in Reader / Acrobat 8.0 - I wrote about the motivation for having an RSS aggregator in Reader for PDFCasting previously.
December 07, 2006
Acrobat / Reader 8.0 REST Web Service support
Acrobat / Reader 8.0 has improved support for JavaScript networking which makes it easy to communicate with XML web services when combined with new support for XML processing. SOAP Web Services have been supported since Acrobat / Reader 6.0 however support for HTTP networking makes it possible to develop clients for a wider array of protocols - for example WebDAV, the Atom Publishing Protocol and other types of RESTive services like the Approver.com API. ECMAScript for XML (E4X) greatly simplifies producing and consuming XML messages which is really useful when interacting with XMLweb services.
Many of the collaboration workflows in Acrobat (for example the Review Initiation wizards) are developed in JavaScript because it's a more rapid development environment. As a result, we are also a customer of the JavaScript APIs that we add and the new Net.HTTP object is a good example of this.
December 06, 2006
The Adobe Synchronizer
Adobe Acrobat 8 and Reader 8 ship with a helper application called the Adobe Synchronizer. Synchronizer is a small application that runs in the background, providing synchronization of document reviews and Tracker subscriptions so that your data is available when you need it. On OS X, the process is called AdobeResourceSynchronizer and on Windows, it's called AdobeCollabSync.exe.
| Platform | Process Name | Startup Method |
|---|---|---|
| Windows | AdobeCollabSync.exe | Startup Menu |
| OS X | AdobeResourceSynchronizer | Login Item |
UPDATE: Removing the OS X Login Item is a little tricky because the Self Heal code that repairs the Reader install puts it back. See the note at the bottom of this post about how to disable self heal for this part of the install.
When does it run?
One of the design goals of Synchronizer was to make it as unobtrusive as possible for users especially when it is not needed.
- Synchronizer runs briefly on user login - if there is nothing to synchronize then it will exit immediatly.
- Synchronizer will run in the background if you are participating in a Shared Review or add a subscription to the Tracker.
- Synchronizer runs while Acrobat or Reader runs if you participate in a Shared Review or use specific features such as the Reviewing preferences panel or Tracker.
- Synchronizer will not run if you remove all Shared Reviews and subscriptions from the Tracker.
What does it do?
The Adobe Synchronizer is a networking agent that is used to build disconnection tolerant applications. The Synchronizer provides a local copy of data on a server so that applications can utilize it regardless of network connectivity. As data changes on the server, Synchronizer updates the local copy and as the user publishes changes made locally, Synchronizer makes the modifications to the server. If the client is disconnected from the network, Synchronizer will continue trying.
- Shared Review Workflows - Synchronizer sends and receives document comments and metadata in an XML file format (RSS 2.0 with some extensions) to a shared review location - either a Network Folder, a Sharepoint workspace, or WebDAV server.
- Review Tracker Subscriptions - The Synchronizer fetches any RSS / ATOM subscriptions that you add through the Review Tracker including attachments (such as in a PDFCast).
Where is the Synchronizer data stored?
Synchronizer stores a local copy of the data in your Acrobat user data directoryusing a combination of a small database (SQLite) and the filesystem.
On Windows, data is stored here:
C:\Documents and Settings\<USERNAME>\Application Data\Adobe\Acrobat\8.0\Synchronizer
On OS X, this is:
~/Library/Acrobat User Data/8.0_<ppc or x86>/Synchronizer
How do I make the Synchronizer Stop Synchronizing?
Synchronizer will no longer synchronize shared reviews or subscriptions once they are removed from Tracker. Once there is nothing to synchronize, it will no longer run in the background.
Stop Tracking Shared Reviews
To stop tracking a Shared Review, open the Review Tracker ("Comments->Review Tracker" menu). Click on the first tab item in the left-hand tab pane. Right click on the document that you no longer wish to track and select "Remove From Review Tracker". If you want to resume tracking the review, just open the shared review document again.
Removing a Subscription
To remove a subscription, open the Review Tracker ("Comments->Review Tracker" menu). Click on the "RSS" tab in the left pane. Right click on the feed you'd like to unsubscribe from and choose "Remove"
Remember, removing all RSS feeds and Reviews from the Review Tracker will cause Synchronizer to stop the next time you quit Acrobat or Reader. Alternatively, you can delete all of the folders described above to accomplish the same thing. IMPORTANT - this DELETES all of your local Review and RSS data. It is a permanent operation that cannot be undone.
UPDATE - Removing the OS X LoginItem permanently
Things are a bit more complicated than we initially thought - if you remove the LoginItem the code that repairs the Reader install will put it back. Until this is fixed, here's how you can work around the issue. Note that this will prevent all synchronization of RSS and Review data using Synchronizer while Reader is not running. Also note that this is an unsupported work-around, so you're mileage may vary. Please backup the file we're modifying before you edit it!
- Close Reader
- Navigate to /Library/Application Support/Adobe/Acrobat/ on your boot drive
- Back up the RdrENU80SelfHeal.xml file to some other place. (ENU refers to the English version of Reader so it may be a different name if you are using a non-english version)
- Open the RdrENU80SelfHeal.xml file in a text editor
- Search for AdobeResourceSynchronizer.app. You should see a section that looks like:
<key>from</key>
<string>Contents/Support/AdobeResourceSynchronizer.app</string>
<key>isappassociated</key>
<false/>
<key>iscolorprofile</key>
<false/>
<key>isinstalled</key>
<true/>
<key>isloginitem</key>
<true/>
- On the line after <key>isloginitem</key>, change <true/> to <false/>.
- Save the file
- Remove the login item from the Accounts System Preferences
- Launch Reader. You should no longer have the login item added on restart of Adobe Reader.
This post was written by the Adobe Synchronizer team - Steve Dakin, Barnaby James and Pat Wibbeler
October 12, 2006
More details about Shared Review
Kurt Foss has an interview with Randy Swineford, the product manager for Acrobat collaboration, about Shared Review. He goes into more detail about how Shared Review differs from the other review methods:
Shared Review files can be distributed any way you want—website, e-mail, document management system, network share drive and so on. Browser-based review files can only be distributed via a website (hence the name). The new shared-review infrastructure is no longer dependent on the location of the document. The path to the comment server is baked into the document when you send it for review, so you can open a document in a web browser, make comments, save it to your desktop/open Acrobat, make more comments, save it and then email it to someone else—in all cases, the review will "just work." This also means you can use the review document with a content management system that Adobe doesn't support (like eRoom) because you can just upload it like any other file and it will just work. Shared review works in the browser or in stand-alone Acrobat. And because each review has a unique review ID, you can send the same document for review multiple times (for example, if you wanted to have different sets of reviewers).
October 03, 2006
Acrobat Shared Review
Shared Review
Acrobat 8.0 introduces a new method for document reviews called Shared Review. In previous versions, Acrobat has supported two types of reviews - email reviews and online (or browser-based) reviews. Email reviews require the initiator to distribute the document by email and reviewers send their comments back - it works fairly well for small groups of people because there are no configuration issues (for the most part) but the only reviewer that sees my comments is the initiator.
Online reviewing, by contrast, uses a central comment store (usually some kind of WebDAV server or Network Folder) for comments and the document is viewed in the browser. The review is tracked by the URL of the document which sometimes caused problems and configuration was difficult but all of the reviewers can see each others comments as they are made.
For Acrobat 8.0, we looked into the problems that customers were encountering with the existing reviewing options and the type of network infrastructure that is commonly available. Shared Review is designed to take the best aspects of email and online reviewing and improve the whole experience - the idea was to make the whole review process robust.
- Reviewing works independently of how the file is distributed - you can open a review in the browser, save it locally and email it to someone else and it will just work.
- Setting up a shared review location and initiating a review is much easier than for online reviewing.
- Reviewing a document can be easily used when disconnected from the network.
- Review files can be enabled to allow Reader 8.0 users to participate (this requires Acrobat 8.0 Professional).
- Changes in the review since the last time the review was opened are tracked - for example, new reviewers and new comments.
- When reviewers cannot connect to the review location (for example, a reviewer outside your firewall) are automatically routed into an email workflow.
- Reviewer comments are stored as an RSS 2.0 file (a common XML format) with some extensions to make it easy to extract information (for example, to integrate the comment workflow with a server side application).
When you initiate a shared review, you specify a location for your comments (either a Network Folder, a WebDAV server or a Sharepoint Workspace) which is baked into the PDF so that whenever the document is opened, it will know where to locate the comments. Because of this, you can distribute the file anyway you want - through email, upload it to a content management system or put on a server (possibly to be distributed as a PDFCast). As with email reviews, Acrobat 8.0 Professional is able to Reader enable a shared review document so that anyone with Adobe Reader 8.0 will be able to participate.
When a participant receives a shared review document, the first thing they see is an opt-in dialog - a shared review needs to be able to talk to a commenting server and we need permission from the user to do this. If the user agrees to participate, the welcome dialog is shown which indicates the current state of the review since the last time the document was opened - how many new reviewers have joined, how many new comments have been made.
Participating in a shared review creates a subscription relationship between Acrobat / Reader and the comment server so comments are synchronized as changes are made. A utility called the Adobe Synchronizer copies new comments from the review location and publishes your comments in the background. The Synchronizer handles network disconnection by keeping a local copy of the review data so you can always work with the most recent version. This allows you to seamlessly participate in a review while disconnected, for example on a long airline flight. When you reconnect to the network, any comments that have been published and new comments from other reviewers will automatically be synchronized with your client.
Connected to the review location |
Disconnected from the review location |
The review tracker allows you to keep track of the review state for all of the reviews that you are participating in.
September 30, 2006
PDFCasting with Acrobat / Reader 8.0
Acrobat Tracker
Ted Padova has a useful how to article on using the Tracker in Acrobat to read blogs. Many people are surprised when they find out Acrobat 7.0 has an RSS reader in it - who ordered that? While it's true that RSS is most closely associated with keeping up to date with blogs, it can be used for tracking changes in many sources of information - for example workflow notifications, updates to documents, important sets of forms etc. Today, a lot of this information is sent around in email largely because it's universally available - in a lot of cases it's not the best tool for the job. For example, if a workflow item changes state 10 times that might generate 10 notification emails because you can't modify an email once it has been sent. FeedBurner has a report that highlights the potential of using RSS for content distribution.
The Tracker is designed to be a client for this type of information - with RSS you subscribe to a service that publishes this information as a feed. RSS and ATOM are open formats for feeds that can be easily generated using blogs, wikis, social bookmarking tools or just a text file on a server. By using an open format, Tracker can easily integrate with other products - the idea is that end users can just plug things together and they will work.
What's new with Tracker in Acrobat / Reader 8.0
The two big changes in Tracker for 8.0 are that Tracker is now available in Reader and that enclosures are supported. Enclosures are like email attachments associated with each item in the feed that can be binary files (like video or audio). Of more interest to Acrobat / Reader users, this content can be PDF documents that will be automatically downloaded to the local machine when the feed is updated. This is particularly useful for people who are occasionally disconnected from the network or who work with large documents because their documents and workflows are immediatly available when they need them. Some examples where this might be useful:
- A set of forms used within a company (such as PTO and Expense Reports) could be published as a feed that employees can subscribe to. When an updated PTO form becomes available, the feed is updated so that the enclosure point to the URL of the PTO form. This will cause the old form to be removed and a new version downloaded automatically. You could imagine the IRS publishing all of the tax forms as a feed so you always have the latest one when you need it.
- A sales organization can publish documents for marketing collateral and price lists to make sure that all of the salespeople always have the most current version. An example of this type of workflow is Spanning Partners Spanning SalesForce that provides RSS feeds to data within SalesForce.com including documents.
- A service could generate a feed with a personalized set of Shared Review documents that need to be reviewed by specific users. Shared Reviews (like Tracker) have the ability to work completely disconnected from the network.
- A service could publish a feed of documents requiring approval for each user. For example, Approver.com does document approval workflows with RSS feeds.
- Journals / serialized books can be published as articles in a feeds (or you could subscribe to a feed which is a collection of articles you may find interesting from a variety of sources). For example, a law firm could distribute WestLaw and Lexis articles customized to each persons practice area.
I created a sample PDFCast (the term is a derivative of Podcasting) to show how this works - the link below will add the subscription to the Tracker (you need Acrobat / Reader 8.0 for this to work).
Click here to add the PDFCast sample to the Acrobat / Reader 8.0 TrackerHere's a screen shot of what it looks like:

Clicking on the PDF icon on the left or the open button will cause the document to be opened from the local copy of the enclosure. In this particular case, I added some custom metadata to the feed and used some of the customization features of Tracker to group articles based on the value of that metadata. The UI and behavior of feeds in Tracker can be extensively customized - I'll cover this in a later blog post but it's all described in the Tracker SDK.
My lackluster blogging
Well I officially stink at keeping this blog going - I guess going to ETech put me behind a bit! Actually, getting Acrobat / Reader 8.0 finished is more likely the cause - at any rate, as the product is now announced, I have a little more time to talk about some of the new features that have been keeping me busy.
And for the sake of completeness, ETech was really interesting - well worth going. Audio for many of the sessions is now available from ITConversations - I particularly enjoyed Sam Ruby's Neurotransmitters talk, Eric Bonabeau's talk on Hunch Engines and the Roomba fighting.
February 11, 2006
O'Reilly ETech 2006
I'll be attending the O'Reilly Emerging Technologies 2006 conference in San Diego, March 6-9. I've been wanting to attend this conference for a while but I finally made time to go this year. Primarily, this is because I've been listening to the podcast of the presentations from the 2005 Conference on the always excellent IT Conversations - so even if you can't attend, you can still learn a lot from the conference. The conference schedule is published as an iCal file so you can subscribe to it using a client like Apple iCal or Mozilla Sunbird and then pick and choose what you want to attend.
Lest you get the impression that I'm some jet setting conference hound, I assure you this is quite a rarity and I spend almost all of my time at my desk writing code! I think the last conference I went to was BloggerCon III. At any rate, if you're going to be ETech and want to talk about Collaboration, I'd be interested in talking to you.
Introduction
Hi and welcome to my blog! I'm an engineer working on Collaboration in Adobe Reader / Acrobat. Since collaboration is one of those blanket terms that can mean just about anything, I end up working on just about everything. Specifically, I work on the Review and Markup of PDF documents and allowing people to share their comments with others.
These are the different areas that I'll be discussing on this blog:
- Web Services (SOAP / WSDL / REST) for Messaging
- Service Discovery using DNS Service Discovery
- Customizing Acrobat with JavaScript
- Content Syndication using RSS and the Acrobat Tracker
- Acrobat / Reader Networking issues
If there is a topic in this area that you'd like to know more about, send email or leave a comment and I'll see what I can do.

