After reading a couple of great articles recently I thought I’d give writing a component (or DSC – Document Service Component) for LiveCycle ES a go. For inspiration I read Mike Hodgson’s Devnet walkthrough article on how to build a component and Christoph Room’s sample for integrating LiveCycle ES with Adobe Share.

Since using the Twitter API has become the modern day “Hello World” I decided to give it a shot. After googling for 5 minutes I found the Think Tank Twitter java interface. A few lines of code and I had my class written ready for LiveCycle integration;
package com.markszulc.lc;
import thinktank.twitter.Twitter;
public class TwitterComponent {
public void UpdateTwitter(String accountid, String password, String tweet){
// Make a Twitter object
System.out.println("****** Updating Twitter!!");
System.out.println("AccountID: " + accountid);
Twitter twitter = new Twitter(accountid,password);
// Set my status
twitter.updateStatus(tweet);
}
}
I then quickly put together the XML component descriptor that tells LiveCycle ES what properties to display in the panel and how to invoke the class, compile and I was done.. all up less than 1 hour from idea to implementation!

Now anyone can invoke Twitter just by setting a couple of properties!!
Download the Twitter Component for LiveCycle ES here: twittercomponent10.zip
Next stop is to work out how to expose exception handling.. stay tuned for version 1.1..









January 30th, 2010 at 5:55 pm
Hi Mark,
I was just trying to write one of these and struggling with lots of weird 3rd party jar files needed by java-twitter. Then I thought, “hang on.. I wonder if anyone out there has already done this?” … very nice job
By the way we’ve got a cool custom component development perspective for Eclipse in the works which makes this sort of thing even easier to build and integrate..
Gary.
August 26th, 2010 at 11:19 am
Hi,
I am using your LC Twitter Component for a nice LiveCycle Rightsmanagement Demo which is http://www.whereismypdf.com
I programmed a LC Process which is called by an Event RMProtectedDocument and then Twitter is called … but sometimes the Twitter Component makes an Error like this:
java.io.Exception: Server returned HTTP response code 401 for url http://twitter.com/statuses/update.json
Any idea?
August 26th, 2010 at 5:06 pm
Hi Sven
A 401 error means the client wasnt authorised. Are you sure that in the instances where its failing that you are providing the correct credentials to Twitter?
Mark
September 2nd, 2010 at 9:16 am
Hi Mark,
guess that the new oAuth authentication in Twitter is now blocking your component.
September 2nd, 2010 at 2:45 pm
@Marco good point. I’ll need to find time to build v2.0.
November 14th, 2010 at 1:56 am
I finally had a change to sit down and understand Twitter’s oAuth system and have rebuilt the Twitter component. You can download it here;
http://www.markszulc.com/blog/twitter-component-for-adobe-livecycle-es2-5/