Saturday, October 23, 2010

Catch me if you can in LA and win Prizes!

Find me at Adobe MAX, have your photo taken with me and win tons of really cool prizes!

That's correct. The “I’m With Adobe CEM” photo contest is simple. Find me at MAX. I’ll be carrying a sign that says “I’m With Adobe CEM.” Take your photo with me and tweet the pic to our @AdobeCEM Twitter handle to be entered to win. Full details are here.

If you find me, you can also get one of 99 exclusive LiveCycle ES Developer tattoos!  All you have to do is show me you're registered for at least one LiveCycle ES session and say the magic passphrase.  If you don't know the passphrase, you may have to do some searching.  It is linked to the outcome of the best hockey game ever, the 2010 Olympic finals between Canada and the USA!

If you have not registered for a LiveCycle ES session yet, I'll be at this really cool one Monday from 5:00 - 6:30 PM called Extending LiveCycle ES for Java Developers and we still have a few seats left!

That's it.  Now I am going to disguise myself and start running really fast.  Catch me if you can!

Wednesday, October 20, 2010

VMWare and Flex at Adobe MAX

I just got word from my good friend Pratima Rao that she will be speaking on a pivotal session at Adobe MAX this year.  Pratima has god-like intelligence and has been leading a Flex project at VMWare for the VMWare View product.  This advanced project required some really state of the art technology and new management console work.  The real world experience sessions like the one she will deliver are my favorite type of sessions at MAX as they give the opportunity to ask questions about what went right and what could have been done better.  Real world use of Flex in a critical enterprise setting is something that is now becoming more popular and this session should provide some great insights.

Here is the session (highly recommended on my list):

Title: The New Standard for VMware Management Consoles
Description: Flex is already in use in two VMware applications in the VMware management suite: VMware View (which delivers personalized virtual desktops as a managed service) and VMware vCloud Director (which enables provisioning, deploying, and managing virtualized workloads in internal and external clouds). Moving forward, the Flex footprint expands into VMware's broad customer base with its next-generation management console for vSphere. VMware's 25,000-plus strong partner and customer ecosystems will soon be able to leverage Flex to integrate their solutions into the VMware management UIs. Join the VMWare team to hear about how they use Flex to improve VMware product experiences.

Speakers:
Pratima Rao, Harish Dhurvasula, Saul Bancroft
Times:
Monday, October, 25th, 2:00 pm - 3:00 pm

Tuesday, October 19, 2010

Sometimes a Picture says it all.

We do use and love Firefox. We support Mozilla fully.

Monday, October 18, 2010

Silicon Valley Code Camp Cloud Session

Last weekend I taught two sessions at the Silicon Valley Code Camp in Sunnyvale, CA.  One of the sessions was on cloud computing called "Manipulating PDF with Java on the Cloud: For fun and profit!".  The slide deck is available to anyone who wants to have it.  Please email me if you wish to get it.

The slide deck was not the main part however.  Here are the steps required to repeat the code camp.

1. First, you have to have an instance of LiveCycle ES2 up and running on the cloud.  Adobe has this all bundled up for you and if you are a member of the Adobe Enterprise Developer Program (AEDP), you have ten free hours per month (YAMMV).  You can also set up another cloud account and install it yourself.  I've looked around and found some cloud accounts that seem to be good for this.  See the note at the end of this post for more details.

2. Log in to the cloud and start your instance. 

3. Press the start instance button.  When your instance is up and running, there are two methods to use to connect.  The easiest is to download and install the Developer Express Desktop network client.  This simply intercepts all traffic bound for localhost (http://127.0.0.1) on port 8080 and redirects it to the cloud.  The second methods is to use the public URL for the cloud instance.  Either way is fine.

Note: the rest of this tutorial will assume you are using the network desktop client.



4. If using the LiveCycle Desktop networking application, log in with the same credentials you used to log into the cloud.

5. Start up Eclipse and start a new Java project.  Within your project, add a new package, then add a Java class called "CreatePDF".

6. You will need several core Java libs from the LiveCycle ES install.  These are located under the /sdks directory.  For this example, you will need the following *.jars:
  • adobe-encryption-client.jar
  • adobe-livecycle-client.jar
  • adobe-usermanager-client.jarThese JAR files are located in the following path:
    {install directory}/LiveCycle/LiveCycle_ES_SDK/client-libs/common
  • adobe-utilities.jar This file is located in the following path:
    {install directory}/LiveCycle/LiveCycle_ES_SDK/client-libs/jboss
  • jbossall-client.jar This file is located in the following path:
    {install directory}/LiveCycle/jboss/client
    (Use a different JAR file if LiveCycle ES is not deployed on JBoss.)
  • You will also need the third-party JAR files to use the SOAP stack rather than EJB endpoints. If you want to invoke a remote LiveCycle ES instance and there is a firewall between the client application and LiveCycle ES, then it is recommended that you use the SOAP mode. When using the SOAP mode, you have to include additional JAR files located in the following path:

    {install directory}/LiveCycle/LiveCycle_ES_SDK/client-libs/thirdparty
    Within your class, you should see some skeleton code under your new project. Highlight all code, delete it and replace the deleted skeleton code with this source code:

    package org.duanesworldtv.samples;

    /*
     * This Java Quick Start uses the following JAR files
     * 1. adobe-distiller-client.jar
     * 2. adobe-livecycle-client.jar
     * 3. adobe-usermanager-client.jar
     * 4. adobe-utilities.jar
     * 5. jbossall-client.jar (use a different JAR file if LiveCycle ES is not deployed
     * on JBoss)

     *
     *  These JAR files are located in the following path:
     * /LiveCycle/LiveCycle_ES_SDK/client-libs
     *
     * For complete details about the location of these JAR files,
     * see "Including LiveCycle ES library files" in Programming
     * with LiveCycle ES
     */
    import java.io.File;
    import java.io.FileInputStream;
    import java.util.Properties;
    import com.adobe.livecycle.generatepdf.client.CreatePDFResult;
    import com.adobe.idp.Document;
    import com.adobe.idp.dsc.clientsdk.ServiceClientFactory;
    import com.adobe.idp.dsc.clientsdk.ServiceClientFactoryProperties;
    import com.adobe.livecycle.distiller.client.DistillerServiceClient;
     
    public class CreatePDF {
     
     public static void main(String[] args)
     {
      try
      {
          //Set connection properties required to invoke LiveCycle ES                                          
          Properties ConnectionProps = new Properties();
          ConnectionProps.setProperty(ServiceClientFactoryProperties.DSC_DEFAULT_SOAP_ENDPOINT, "http://127.0.0.1:8080");
          ConnectionProps.setProperty(ServiceClientFactoryProperties.DSC_TRANSPORT_PROTOCOL,ServiceClientFactoryProperties.DSC_SOAP_PROTOCOL);        
          ConnectionProps.setProperty(ServiceClientFactoryProperties.DSC_SERVER_TYPE, "JBoss");
          ConnectionProps.setProperty(ServiceClientFactoryProperties.DSC_CREDENTIAL_USERNAME, "administrator");
          ConnectionProps.setProperty(ServiceClientFactoryProperties.DSC_CREDENTIAL_PASSWORD, "{password}");
     
      // Create a ServiceClientFactory instance
      ServiceClientFactory factory = ServiceClientFactory.createInstance(ConnectionProps);
     
      DistillerServiceClient disClient = new DistillerServiceClient(factory );
     
      // Get a PS file document to convert to a PDF document and populate a com.adobe.idp.Document object
      String inputFileName = "/Users/duane/Desktop/eclipse/workspace/JavaOne2009-docs/test.ps";
      FileInputStream fileInputStream = new FileInputStream(inputFileName);
      Document inDoc = new Document(fileInputStream);
      
      //Set run-time options
      String adobePDFSettings = "Standard";
      String securitySettings = "No Security";
        
      //Convert a PS  file into a PDF file
      CreatePDFResult result = new CreatePDFResult();
      result = disClient.createPDF(
        inDoc, inputFileName, adobePDFSettings,
        securitySettings, null, null
      );
         
      //Get the newly created document
      Document createdDocument = result.getCreatedDocument();
         
      //Save the PDF file
      createdDocument.copyToFile(new File("/Users/duane/Desktop/eclipse/workspace/JavaOne2009-docs/DuanesWorldTest.pdf"));
      }
      catch (Exception e) {
       e.printStackTrace();
      }
     }
    }
     
    Be sure to replace the package name, class name and paths with your own.
    7. Now compile your class and run it.  When Eclipse runs this, it should try to hit 127.0.0.1:8080 to make the request.  This will be intercepted by the desktop networking client and forwarded to the cloud instance where the invocation request will be fulfilled.  When completed, you should find a new instance of a PDF document under the path you used at the end of this code!

    We've also been doing some research into cloud computing providers.  While Adobe uses The Amazon cloud for various reasons (including legal, compliance, support and technical), We've found some hidden gems.   After testing a few, we found the best VPS Cloud Hosting at sherweb.com.  Regardless of where you go for cloud hosting, this tutorial should work fine once you get Livecycle ES up and running.



    Adobe MAX 2010 - Final LiveCycle Sessions

    This will be the last blog post before Adobe MAX 2010.  Every week Technoracle has been picking a new LiveCycle ES session and promoting it as the "Pick of the Week".  Unfortunately, this approach hasn't really done justice to the entire slate of LiveCycle related topics available at MAX this year.  As a result, we are publishing the remaining sessions below.

    Again, if you have never been to MAX, please consider it as a place where your tech skills get an annual boost, where really cool new stuff can be learned, and where we share the latest news.  See you there in 5 days!


    Join author J.P. Terry for a hands-on lab covering advanced form design techniques and his latest tips and tricks. For instance, you'll learn how to add an auto-completion feature to a PDF form that provides relevant suggestions as the user...
    Read more »

    Join product experts and learn how to build an enterprise composite application using Adobe LiveCycle Mosaic ES. Discover how to assemble and integrate multiple enterprise applications on the client side while ensuring user interface integrity of your enterprise look and...
    Read more »

    Get an introduction to Adobe application modeling technology, and learn how to define a single data model that can be leveraged by multiple form types, including PDF forms and forms created in Flash. Attendees will learn how to build a...
    Read more »

    Learn about the client-side architecture of the Adobe LiveCycle Collaboration Service development model, which enables peer-to-peer, collaborative apps with Flex and Adobe AIR. See how to structure your Flex apps to enable synchronized, multiuser participation, complete with rich audio/video communication...
    Read more »

    Use best-in-class tools to create an enterprise RIA that enables users to browse and view documents, connect to a document management store, display a master detail list (of users, customers, invoices, or similar), and display associated secured documents. You'll learn...
    Read more »

    Learn how Deloitte Consulting has leveraged the Adobe Flash Platform and Adobe LiveCycle Enterprise Suite to develop highly repeatable solutions for citizen engagement management at state and federal government agencies. By attending this session, you'll find out how Deloitte has...
    Read more »

    This program for enterprise developers combines 1.5 days of introductory preconference training on LiveCycle ES2.5 (Enterprise Suite) with a full conference pass to MAX 2010.
    The preconference lab, "Developing a LiveCycle ES2.5 Application," is an essential introduction to developing user-centric applications...
    Read more »

    Join product experts and others as we work through the process of creating a Plain Old Java Object (POJO) that will be packaged and deployed to the Adobe LiveCycle Enterprise Suite service container as a custom component. Once your component...
    Read more »

    Hear top design professionals explain how to unlock new value hidden in complex enterprise systems through the expression of user-centric goals in design patterns. You'll learn how Adobe is converging solutions, platforms, and tools to help you better serve your...
    Read more »

    Hear from Adobe insiders and learn about the hidden gems and community resources that can help you build, share, and leverage the LiveCycle Enterprise Suite developer ecosystem. This session will review the Adobe Developer Connection program, the latest Adobe forums,...
    Read more »

    Find out how Northwestern Mutual improved customer service in its Service Request Center by leveraging Adobe LiveCycle Enterprise Suite and other integrated technologies. By intelligently providing access only to those forms applicable to a specific contract, the financial services company...
    Read more »

    Learn how to take advantage of the built-in hooks between Flex and Adobe LiveCycle ES, building a web-based, data-driven application. You'll create complex data models using the latest modeling elements and exchange data between Flex and LiveCycle via built-in LiveCycle...
    Read more »

    Learn how Adobe has embraced Amazon EC2 to deliver a comprehensive cloud offering for Adobe LiveCycle ES2. Hear from product experts how the cloud is quickly becoming the definition of rapid application development environments, with the ability to start up...
    Read more »

    Hear how focusing on user experience can improve the value of the enterprise applications you deliver. Also learn about architectural changes in the next release of Adobe LiveCycle Enterprise Suite as well as new features in servers, client runtimes, and...
    Read more »

    Learn how the combination of Day's leading web solutions and Adobe's enterprise portfolio provides a unique opportunity to developers: a unified web content and application delivery platform. By introducing web content management, digital asset management, and social collaboration to Adobe’s...
    Read more »

    Explore the innovation in PDF and Adobe Flash and how these two technologies converge to enable the next generation of correspondence. Learn how to speed up the development of a correspondence application, leveraging the new Interactive Statement Solution Accelerator within...
    Read more »

    Hear from product experts and discover how you can extend your enterprise to iPhone, iPad, Android, Windows Mobile, and BlackBerry devices by leveraging the Adobe LiveCycle Enterprise Suite platform. The session will include best practices for integrating business processes, accessing...
    Read more »

    Come see how the South African Revenue Service (SARS) provides improved benefits and services delivery to customers through online, automated tax filing. e@syFile is a set of Adobe AIR applications that leverage the Flash Platform and Adobe LiveCycle to enable...
    Read more »