Archive for the 'LiveCycle ES' Category

Mar 13 2010

LiveCycle ES2 Guides – Adding custom validation classes to your model

The Modeler in LiveCycle ES2 ships with several built-in validation classes, which you can apply to the models properties using the Styles definition. Obviously these standard classes don’t cover all use cases, especially not validation behavior that is specific to a non-US region for example. One of the cool things about Fiber models is that you can extend them using custom ActionScript code, so that you can use your custom validation classes in your projects (I plan to write another article on working with custom methods in your model by overwriting the generated value objects).

So, you can add and apply your own validation classes to the model. You just need to refer to your custom class in the Style validation annotation of the property. First, copy the validation class itself into the correct folder of your Workbench project. That’s also the trickiest part within the LiveCycle Modeler (compared to doing this for the Flash Builder modeler). The FB modeler generates the code into your Flex project folder and you can easily find it, but Workbench doesn’t generate the code in the directory where all your other projects are located (on Vista/Win7 that is C:\Users\username\Workbench ES2\). I am not exactly sure why, but I think because the model generated classes are mostly temp files that don’t have to be checked into the server (downside is that you need to backup modifications of custom classes yourself).

That ‘temp’ folder that stores all model generated classes is much deeper on your disk drive. On my system it’s C:\Users\username\AppData\Roaming\Adobe\LiveCycle\ES2\Guides\generated\. Here you find subfolders structured per LiveCycle application. For your project, find the folder where the generated myModel.as and myModel.swf files are located. Consider this folder the ‘root’ that is used by the compiler, so this is where yoy copy your custom validator classes to.

The last step is to define the style validation annotations within the property. Basically you’d define your property like this:

<property type=”string”>
<style>
<validation>
<annotation name=”ActionScriptValidator”>
<item name=”ValidatorClass”>mx.validators.SocialSecurityValidator</item>
<item name=”allowedFormatChars”>”-()”</item>
</annotation>
</validation>
</style>
</property>

The ValidatorClass item defines the class path, and in this case the ‘allowedFormatChars’ is one of the parameters that is used by that class. Now make sure that Workbench recompiles your class (just move an entity a few pixels, save and the recompile will hapen). Now your custom validator class is compiled into the model itself and you are ready to use the related properties within your guide!

ps: Workbench will inform you on compilation errors if you made errors in your class.

No responses yet

Feb 11 2010

LiveCycle ES2 integrated with MS Sharepoint Server 2007

Very soon a connector for MS Sharepoint Server will be released. This offers bi-directional integration options to either connect to Sharepoint from a LiveCycle process, or to connect to a LiveCycle service from a Sharepoint document/folder.

I have recorded a demonstration that shows you how to store the result of a forms process in LiveCycle in a Sharepoint folder. I have used a very simple holiday request form that is filled in from the LiveCycle Workspace. After filling it in a static PDF is generated using the Output service and the result is stored into Sharepoint using one of the standard services. Check out the recording on http://www.vimeo.com/9378807

No responses yet

Jan 21 2010

Building a controlled Twitter solution using Adobe LiveCycle ES

Look at these videos that demonstrate how you can use LiveCycle ES to build a process and an AIR application to publish tweets to a corporate Twitter account where you have control on what’s published or not. Part 1 focuses on building the client with Flash Builder 4 with the LC Service Discovery plugin. In part 2 you will see how to archive all tweets in a PDF/A format within LiveCycle Content Services.

Part1: http://www.vimeo.com/8886180

Part2: http://www.vimeo.com/8886413

2 responses so far

Jun 25 2009

Change the GDS (Global Document Storage) location of a Production LiveCycle ES System

Published by Bart Vossen under LiveCycle ES

Important Remark: 
Within the LiveCycle Documentation you will find the following on the GDS: 
 
“The global document storage (GDS) is a directory used to store long-lived files such as PDF files used within a process or DSC deployment archives. Long-lived files are a critical part of the overall state of the LiveCycle ES environment. If some or all long-lived documents are lost or corrupted, the LiveCycle ES server may become unstable. Input documents for asynchronous job invocation are also stored in the GDS and must be available in order to process requests. Therefore, it is important that the GDS is stored on the redundant array of independent disks (RAID) and backed up regularly.”
 
So the GDS is the cornerstone of a LiveCycle system. Changing this location should be carefully executed by product experts. Take a back-up before you start and don’t try this at home …
 
Disease:
For whatever reason you want to change the location of the GDS. As explained above this is possible but should be very carefully executed.
 
Prescription:
Disclaimer: This section will describe the different steps to execute in order to move the location of the GDS. These steps should be considered as a Guideline and not as a by Adobe Supported set of actions. You are encouraged to execute this first in a Test environment before doing this in a Production environment. The different Steps are:
  1. Alert and Ask the End-Users to get out of the LiveCycle Application/Server
  2. Put the LiveCycle Application/Server in ‘Operate in safe backup mode’. In Adminui go to Settings > Core System > Backup Settings – select the ‘Operate in safe backup mode’ and hit the OK button. 
  3. Backup the GDS folder
  4. Zip or Tar the GDS folder
  5. Change the location of the GDS folder. In Adminui go to Settings > Core System > Core Configurations and change the location of the GDS Directory. Hit the OK button; you will get a second page and hit the OK button again
  6. Shutdown the LiveCycle Application/Server
  7. Check whether the LiveCycle Application/Server system user has access to the new GDS folder
  8. UnZip or UnTar the files in the new GDS folder
  9. StartUp the LiveCycle Application/Server
  10. Do some basic validations. In Adminui go to Services > Applications and Services and choose Archive Management and Endpoint Management and check visually whether you get the expected information
  11. Deactivate the ‘Operate in safe backup mode’. In Adminui go to Settings > Core System > Backup Settings – unselect the ‘Operate in safe backup mode’ and hit the OK button

Tip to stay healthy:
Make sure that you have the final location of the GDS available, before you install LiveCycle in a Production environment. 

 
 

One response so far

May 12 2009

e-Invoicing with Adobe

As many people know, e-Invoicing is gaining a lot of traction these days in order to save money. In general many of the solutions use PDF as the format for the electronic invoice. But there is PDF and PDF. We have created a sample electronic Invoice in PDF format that is more then just a digital invoice, and also focuses on the experience of the recipient in addition to the ability to exchange structured data. Have a look at a video that includes a demo. If you would like to download the sample and play with it yourself, here it is.

3 responses so far

Apr 15 2009

Fasten the development of Adobe Interactive Forms with Logica’s Form-O-Matic

A while ago the Adobe Benelux presales team had the pleasure to attend a presentation by Logica, who explained the Form-O-Matic solution. This is a framework which is orginaly built as add-on for SAP Interactive Forms by Adobe, but can be used as well within the standalone LiveCycle Designer on xdp forms. With this framework, you can produce interactive forms in an instant with a minimum of technical know-how.

Logica’s Form-O-Matic is a solution which:
- is smart, because it provides a fast way of developing interactive forms which decrease the likelihood of errors and reduce costs.
- is uniforn, fast and controllable. This is thanks to a unique development method based on the inputting of standard parameters. Doing so the development time is reduced by more than 50%.
- is simple and optimised. Form-O-Matic can be adapted very rapidly to your organisation’s requirements, for example in terms of the house style and design of the form and the naming of each parameter.
- provides simple error detection. By using the debug mode in Form-O-Matic, a single parameter enables all dynamic actions to be displayed in text on a separate screen.

We have seen Form-O-Matic in action, and it can shorten the lead time for development of Interactive Forms, and provide error detection. It reduces the aftercare of the Form, and it is quickly to implement, and easy to use and maintain.

See also the following factsheet about Logica’s Form-O-Matic.

For more information you can reply on this post, or contact Logica directly through erp.nl@logica.com

One response so far

Jan 20 2009

Using the Belgian eid card for accessing a LiveCycle Rights Management protected document

Disease:
Typically LiveCycle Rights Management (a.k.a. Policy) protected documents use a userid/password mechanism for authenticating towards the policy server, and consequently open the protected document. A more secure way of authentication can be obtained by using client certificates. A real strong way of authentication can be accomplished when the authentication certificate resides on a smartcard, protected by a PIN code. The authentication certificate on the Belgian eid card is such an example. How can that be used to authenticate towards a Policy protected document?

Prescription:
To achieve this follow these steps:
1) First of all the authentication certificate must be known/registered/uploaded to the LiveCycle server. Open the adminui –> Settings –> Trust Store Management –> Certificates.
When importing the .cer file, specify that you want to trust the certificate for “Certificate Authentication”, and provide an alias.

2) Next this certificate must be mapped to an existing user in LiveCycle.
Open the adminui –> Settings –> User Management –> Configuration –> Certificate mapping.
The mapping between a certificate and a user is done for a defined alias, and is accomplished by mapping a certificate attribute (Mail, CN, DN,… ) to a user property (Full Name, Given Name, Mail, login ID, …).

In the case of the Belgian eid card the CN on the authentication certificate contains also the word “Authentication”. In my case my CN = Peter Schellemans (Authentication). So in order to get a working certificate mapping towards an existing user, make sure you have a user with a similar Full Name. In my case I have a user (adminui –> Settings –> User Management –> Users and Groups) with First Name = Peter, Last Name = Schellemans (Authentication).

3) Next add this user as part of your Policy. When opening the policy protected document you will now get the choice between userid/password authentication and client certificate authentication.

Tip to stay healthy:
If you want a higher level of security when authenticating towards a policy protected document, Adobe LiveCycle allows you to map certificates towards users, used in a policy definition.

One response so far

Dec 23 2008

Accessing MS-Office (custom) properties from LiveCycle ES processes

You probably know the case, you want to convert a file to PDF and add a fax page so you can send it to a customer using your fax-server, or you just want to add a coverpage so you can archive the file in a effective way and have all the metadata nicely grouped on that coverpage.

There are simple ways to let LiveCycle ES take care of that process for you. Below a short explanation of some of the available services that are relevant in this context.

Within LiveCycle Workbench ES, one of the services in the common category that you can use is “Export XMP“. This service will extract all the available metadata from a PDF document. If you have converted a MS-Office document to a PDF document, you will be surprised what metadata is also converted. All these properties are now accessible using the service above. Here is a screenshot of some custom properties in a Word document.

Result of the Export XMP service is an XML structure that you can query. For instance, if you want to know what’s in some of the custom metadata fields, you can check this file. Here is a sample of the result of an Export XMP service.

<?xpacket begin=”” id=”W5M0MpCehiHzreSzNTczkc9d”?>
<x:xmpmeta xmlns:x=”adobe:ns:meta/” x:xmptk=”Adobe XMP Core 4.2-jc015 52.349034, 2008 Jun 20 00:30:39-PDT (debug)”>
<rdf:RDF xmlns:rdf=”
http://www.w3.org/1999/02/22-rdf-syntax-ns#”>
<rdf:Description rdf:about=”"
xmlns:xmp=”
http://ns.adobe.com/xap/1.0/“>
<xmp:CreateDate>2008-12-23T09:45:28+01:00</xmp:CreateDate>
<xmp:CreatorTool>Acrobat PDFMaker 9.0 for Word</xmp:CreatorTool>
<xmp:ModifyDate>2008-12-23T09:45:28+01:00</xmp:ModifyDate>
<xmp:MetadataDate>2008-12-23T09:45:28+01:00</xmp:MetadataDate>
</rdf:Description>
<rdf:Description rdf:about=”"
xmlns:pdf=”
http://ns.adobe.com/pdf/1.3/“>
<pdf:Producer>Acrobat Distiller 9.0.0 (Windows)</pdf:Producer>
<pdf:Keywords>”PDF, Metadata”</pdf:Keywords>
</rdf:Description>
<rdf:Description rdf:about=”"
xmlns:dc=”
http://purl.org/dc/elements/1.1/“>
<dc:format>application/pdf</dc:format>
<dc:creator>
<rdf:Seq>
<rdf:li>Marcel van Espen</rdf:li>
</rdf:Seq>
</dc:creator>
<dc:title>
<rdf:Alt>
<rdf:li xml:lang=”x-default”>This is a test document</rdf:li>
</rdf:Alt>
</dc:title>
<dc:description>
<rdf:Alt>
<rdf:li xml:lang=”x-default”>Onderwerp</rdf:li>
</rdf:Alt>
</dc:description>
<dc:subject>
<rdf:Bag>
<rdf:li>PDF, Metadata</rdf:li>
</rdf:Bag>
</dc:subject>
</rdf:Description>
<rdf:Description rdf:about=”"
xmlns:pdfx=”
http://ns.adobe.com/pdfx/1.3/“>
<pdfx:Company>Adobe Systems Incorporated</pdfx:Company>
<pdfx:Department>Development</pdfx:Department>
<pdfx:Language>English</pdfx:Language>
<pdfx:Office>Amsterdam</pdfx:Office>
</rdf:Description>
</rdf:RDF>
</x:xmpmeta>
<?xpacket end=”w”?>

Now, you will see some familiar tags in there. If you would like to access the custom property Office (With value Amsterdam) as highlighted in bold above, you will need to do the following:

  1. Store the result data from the Export XMP service in a variable of type XML (for this example this will be xmpdocxml)
  2. Create a variable of type string (In this case it will be office) to store the office location (of course you can also put it in a form template, but this is out of scope for this example)
  3. Use a set value service to set /process_data/@Office = /process_data/xmpdocxml/x:xmpmeta/rdf:RDF/rdf:Description/pdfx:Office

That’s it. You can of course repeat this for all the other elements, and do what you like with it. I have created a simple example and made it available on acrobat.com. In the sample (zip file) I included a LiveCycle LCA file that you can import, a sample Word document and an XML file that is just showing you the metadata.

If this is too much for you, there is an even simpler service to retrieve the metadata from a document. This service, Export Metadata, gives you a nice XML structure that you can browse using your XPATH editor. Note that this only retrieves the basic metadata!

2 responses so far

Oct 23 2008

Adobe on Business Process Modelling Notation (BPMN)

Recently I was asked by a large system integrator about Adobe’s standpoint on the Business Process Modelling Notation (BMPN) specification.

Not many people know that Adobe participates in quite some industry standards and supports their maturity/evolution such as BPMN, BPEL, BPDM and XPDL and that we are voting members of standard bodies such as OMG, OASIS and WFMC. Adobe is represented in all these standards bodies and actively participates in reviewing and authoring of these standards. We take a lot of that knowledge back into the decisions we make when developing our enterprise products, especially Adobe’s LiveCycle Enterprise Suite.

BPMN (Business Process Modelling Notation) is a specification for a couple of things:

  • A graphical notation. E.g. How different activities are represented in a process diagram.
  • Semantics of the graphical notation. E.g. What does it mean when you connect activities with a line.

From wikipedia:

The primary goal of BPMN is to provide a standard notation that is readily understandable by all business stakeholders. These business stakeholders include the business analysts who create and refine the processes, the technical developers responsible for implementing the processes, and the business managers who monitor and manage the processes. Consequently BPMN is intended to serve as common language to bridge the communication gap that frequently occurs between business process design and implementation.

Using the Process perspective in LiveCycle Workbench, one can visually create process maps that define and control your automated business processes. Since Workbench implements the main constructs for the graphical notation and the semantics of that notation as specified by BPMN, business analysts can create process diagrams using swimlanes, activities, events and associations following common modeling methodologies (we still have a gap to cover when it comes to modeling of Gateways).

LiveCycle Process Designer

To summarize: if you have been trained in BPMN, you will find it easy to model a process using LiveCycle Workbench.

If you want to read more on Adobe’s comments on BPEL and general standards, you should read this article on de LiveCycle DevNet:

ps: One should know that the current BPMN spec (v1.1) does not specify how a process diagram should be persisted by a modeling tool. There is no XML schema for example. However, there is another specification – XDPL – which does provide this and the BPMN v2 specification currently in review also has a defined schema for persistence. Since standards have not been defined or widely accepted, LiveCycle Workbench currently persist that process definition using custom XML for which Adobe has publish the XML Schema (which after installation can be found under the LiveCycle SDK/schema directory).

One response so far

Oct 22 2008

LiveCycle Data Services 2.6 Capacity Planning Guide Now Available

Finally the Capacity Planning Guide for LiveCycle Data Services 2.6 has been published on the Adobe site. A document like this was asked for a few times during a DrLiveCycle consult, so it seems very welcomed by Flex developers leveraging Adobe LCDS.

As Damon Cooper, Director of Engineering, wrote on his website:

With LiveCycle Data Services 2.6, you can create Adobe Flex applications that can deliver thousands of messages per second to thousands of end users simultaneously:

This document presents the results of software benchmark tests performed by Adobe engineers on my LiveCycle Data Services team and show how LiveCycle Data Services 2.6 can scale linearly and perform under load using various messaging scenarios that represent real-world situations. It provides a starting point for those who need to plan a hardware and software infrastructure that scales in a linear fashion to meet peak period demand.

You can download the Capacity Planning Guide for LiveCycle Data Services 2.6 from www.adobe.com/go/lcds26_cap_planning_guide.

No responses yet

Next »