Tuesday, January 25, 2011

Adobe LC ES2 (LCES2 Mobile Development) Using Flex and LCES2 PM Some Details for Developers

I know it’s been a while since I had updated my Blog, but here’s something that would be of interest for most of us developers who are associated with Flex and LCES.
I know most of us after the release of LC ES2 had worked on almost all the components including some custom Component Development and its further usage across the SOA Levels. But most of us although have been excited with the Mobile Platform (LC ES2) but haven’t been either able to use it or develop any Apps associated with that.  Also, Flex 4.1 SDK can be used with Adobe Flash Builder “Burrito” along with the Android SDK 2.3 to create your Custom Application. You can use Flex Hero with 4.5 to accomplish this. Offcourse there is lot of Development and efforts required along with Research to achieve this capabilities but the end result is sweet. Below is some part of the research that I had done to accomplish a development task. Hope it helps to all those who initiate development in this field.
With the easy-to-use LiveCycle Mobile ES2 interface, you can approve and process tasks in Minutes. And with a few simple clicks, enterprises can enable their Adobe LiveCycle Process Management installation to send tasks to both desktops and the LiveCycle Mobile ES2 application, not only to the browser-based Mobile application.
       Workflow tasks no longer get lost in email (or on desks) causing approval delays.
       Dedicated “inbox” lists all tasks directly assigned and delegated by others.
       100% signal, no noise—allows you to include only the items you must take action on.
       LiveCycle Mobile ES2 is multiscreen, with real-time synchronized desktop and mobile access.
       Tasks are summarized and detail can be locally viewed in PDF.
       User can take immediate action and not wait to be in the office or have access to a laptop.
       All approvals are audited for compliance.
       LiveCycle Mobile ES2 is ideal for invoices, contracts, requisitions, bills, loans, work orders, and
·         Anything requiring one or more approvals.

System requirements
For task approval and
Data capture capabilities
• Iphones OS 3.1
• Android 2.0
• Blackberry OS 5.0†
• Windows Mobile OS v6.1†
* Important: Adobe® LiveCycle® Mobile ES2 requires the Installation, use, and proper configuration of Adobe LiveCycle ES2 software (specifically Adobe LiveCycle Process Management ES2) for task approvals and data capture on enterprise-class server software and hardware. The mobile client will not work without a concurrent LiveCycle ES implementation.

Using LiveCycle Mobile ES2 for data capture
Users who need to capture data on the go can open forms and easily enter data from a mobile device. LiveCycle Mobile ES2 streamlines operations and processes—to quickly analyze, capture, or manage data. Data captured in the field can often be more accurate, reducing the need to rekey information, and providing a complete real-time picture of the situation or transaction as it happens for greater accuracy.
• Capture data in real time to shorten process and wait times, rather than waiting to get back to the office.
• Capture data in person for more accurate representation and to avoid rekeying errors.
• Route information on site to back-end systems to kick off a business process in the field.
• LiveCycle Mobile ES2 is ideal for internal time off forms, expense forms, requisition forms and work order forms. It is also useful for officers filing claims or loan applications in the field.
• For select devices, the native camera and voice recognition capabilities of the device can be used to attach pictures to forms or search for forms.
• For sales and service personnel, spend more time interacting with customers and less time on administrative duties and paperwork.

If you have a LC Process Management ES2, Content Services running (with the desired Business Logic) for your business implementation, then you can have the mobile apps ready for you to use, in order to approve tasks on the go with the LC workspace Mobile.
For Process Management you can use your iphones, Blackberry or Windows Mobile devices to approve tasks. The apps are available on the App Stores (Apple AppStore, Blackberry App World and Windows Live Market).
For Content Services only an iphones app is available on the Apple AppStore that will allow you to view the content on the go.
After the release of LC ES 2.5, the Mobile applications for Android, Blackberry and iphones are capable of rendering forms.  I think most of you already might be knowing this but, it would be good to explain the thing here, that in order to develop a “form” that will work on the mobile devices, you need to use LC guide Builder, which is a component of the LC Workbench development environment. This has a key support for the Mobile screens because the best thing is that the guides have the property to be rendered appropriately in accordance with your screen size. The XFA/PDF forms is a feature that although requires further analysis since, the adobe reader on Android can be an issue for get it properly supported.  I think down the line there would be iPad specific Version of the LC Mobile that would be coming up soon.

* Important: Adobe® LiveCycle® Mobile ES2 requires the Installation, use, and proper configuration of Adobe LiveCycle ES2 software (specifically Adobe LiveCycle Process Management ES2) for task approvals and data capture on enterprise-class server software and hardware. The mobile client will not work without a concurrent LiveCycle ES implementation.

(Bibliography – Adobe Mobile Solution Guide for LCES)

Sunday, November 28, 2010

Flex - Parsley's Dependency Injection Framework (IOC)


Flex Parsely's Spicelib framework has an unique feature of dependency injection using the (IOC) Control mechanism.
Parsley being an Application Framework for Flex and Flash applications has been built upon an IOC Container and messaging framework that can be used to create Highly decoupled architectures. It allows you to configure the objects to be managed by the container with MetaData, mxml, xml or as which can be extensible.
The Core of the Framework (IOC) Container and the Messaging Subsystem does not depend on the flex SDK at all.
It Provides the Messaging and Object Lifestyle Management. The Core Features of any IOC Container is the dependency injection.
For Flex Remoting the Framework can help you in two respects, first you can declare your remoteobjects in a parsley configuration class alongside other objects and inject them into your commands/Controller Class or you can use the support for asynchronous commands to also route results and exceptions or remoting invocations using a more decoupled manner.
 IoC Containers provide out of the box methods for instantiating and configuring your application’s objects. The use of an IoC container is dependent on your (and your application’s) needs. For smaller projects, it might not be appropriate.


Saturday, October 2, 2010

Some of the LiveCycle ES2 Process Management Issues Resolutions

LiveCycle Process Management 9

Task assignments to a user or user group fail even though the user domains in the development and production environments are configured exactly the same.

If a process that was tested in a development environment is executed in a production environment, the task assignment to a user or group fails even though the user domains in the development and production environments are configured exactly the same. The process is also not transferable to another computer (production environment) that had the same user or group added in the LiveCycle Administration Console. To resolve this issue, do one of the steps below:
  • Use the Assign Multiple Tasks operation: Create a UserList and add the group you have created to the UserList. In the User 2.0 service, select the UserList you created as the source of participants for that Assign Multiple Tasks operation.
  • Use the XPath option in the User 2.0 service: Provide either the name or email address of the group you have created. The Xpath expression resolves to the following (including the quotes):
    • “Group Name”
    • “groupEmail@someserver.com”
  • Production environment: Deploy the process, and then use Workbench to connect to the LiveCycle server. Check out and open the process, and then reconfigure the Initial User Selection properties. For example, if you have Assign To Specific User selected, browse and select a different user, and then browse and select the original user again. This sets the Initial User Selection properties to the correct user in the production environment.


Tuesday, September 28, 2010

Adobe AIR 2

The Adobe® AIR® 2 runtime enables developers to use HTML, JavaScript, Adobe Flash® software, and ActionScript® to build web applications that run as standalone client applications without the constraints of a browser. Adobe AIR and the Adobe Flash Platform unleash the creativity of designers and developers by providing a consistent and flexible development environment for the delivery of applications across devices and platforms. Support for additional platforms, including Android, is under development.

AIR 2 Comes with Global error handler

When an unexpected error occurs within an application, capture the error or error event in a single location and present useful information to the user, such as instructions on how to report the issue or restart the application.

Security improvements ENHANCED

Set the execution bit on a file. Take advantage of encrypted TLS sockets and access to the MAC address.

IPv6 network support

and with more features......


JVM Termination with Exit Code =1 ES2 Workbench Crashes

Finally Resolved the problem!!! 

The Problem is LC Server fails to log an exception from LC ES2 WB even though getting a failure after logon to the LC Server. 

The failure to display the LC Process designer Screen for either creating a Process or editing a process was occuring because of the Port conflict that comes up when the LCDS 3.1 and the LC WB Communication is running on the same server using the same port.

Just resolved the problem:
Edited the Services Config file with the RTMP tag and changed the port from 2038 to 2058. Redeployed the LCDS 3.1. LC ES2 WB Works fine now...

LC WB ES2 JVM Exit Code = 1 Termination Exception: Unable to view any existing processes or create new processes.

I had been facing this problem for two hours now. Checked the JVM args/JBoss Args (No exception on the JBoss Side), Facing issues only while connecting to Workbench in creating new processes or viewing existing processes. It fails to show the process designer screen and throws an JVM Exit Code exception.
Tried checking the Eclipse/WB related configuration files. Checked the javaw.exe by starting it with the required Xms/Xmx configurations. (No Change).
Cleaned the workbench.exe but still nodifference..
Started the Workbench Exe with the highest possible JVM args Still the problem persists..Not sure wht to do..

Sunday, September 26, 2010

Problem while running Oracle 9i/ (XDB) Jboss/Tomcat on the same port 8080

I Just faced this issue while running the JBoss and Oracle 9i XDB on 8080 port.
Jboss fails to start as the Oracle XDB is running on 8080.

one way to override this Configuration is by changing the configuration of the listener of Oracle. one can remove the xdb http configuration from the listener and restart the lsnrctl (listener). But this would stop the working of XDB.

One can first verify by running the Select Dual Query in the DB using the Sys User (DBA Previledge) for finding the current Httpport in use.

Also, one can run the PL/SQL command below by logging in as a Sys User in the DB.

- Sys/Password @ DBName as sysdba

$> begin

This would reset the HttpPort that is being used by the XDB.
Shutdown immediate;

Restart of the DB would take the changes.

Then you can restart the JBoss to take the changes and run both Oracle XDB as well as Jboss instance.