Flexspaces with Adobe LiveCycle Content Services ES, Calais Integration works with ES2

FlexSpaces Easier To Use With LiveCycle Content Services ES

I finally updated FlexSpaces  (version 0.931) to not need a recompile for a server URL change with LiveCycle Content Sevices ES (changes to FlexSpacesConfig.xml and to server side services-config.xml still required).

Calais Integration

I tested with LiveCycle ContentSevices ES 8.2.1  and also with the LiveCycle ES2 M3 R3 beta. On ES2, I also tested with the Alfresco Calais Integration and it works fine via the FlexSpaces Calais UI (auto semantic tagging, tag suggestion, google map geo-tagging).  Nice thing about the ES2 installer is it allows you to include custom AMP files. I used the turnkey install, selected the custom option when the Configuration Manager ran.  I had the calaisIntegration.amp release 1.1  in c:\amps.  When the config mgr is deploying content services, check the include custom amps checkbox, and browse to choose c:\amps.

Remaining Problems

Still have two remaining problems with FlexSpaces on LC Content Services.  Get an authentication prompt on upload that can cause the first upload not work on AIR/Windows (on Mac/AIR, Windows/Mac/browser get errors on upload). Alfresco has an alf_ticket URL arg that makes it easy to authenticate with. You can’t use this with LiveCycle ContentServices. You have to use authentication headers. Flex doesn’t let you use  headers with FileReference.upload()   or navigateToURL()   (view a file given an Alfresco download URL).    For navigateToURL, it works other than getting an authentication prompt the first time using file viewing.For uploading, I think by switching to upload to  /remoting/lcfileupload  instead directly to a webscript url will be the part of the solution. This will get files into the LiveCycle “Repository”.  Just need to get files from there to the LiveCycle Content Services repository.  Unlike this ADC article I don’t want to have to require the LC Process Mgt option. If anybody has some suggested APIs or sample code, let me know. Don’t think there is a work around for the navigateToURL issue.

Details

1. Changed to new up a ChannelSet with channel URLs coming from the FlexSpaceConfig.xml Spring ActionScript file instead of compiling in a services-config.xml.2. See doc\livecycle\readmeLiveCycleContentServices.txt for FlexSpacesConfig.xml LC CS specific changes, and server side services-config.xml changes still required.3. Note FlexSpaces needs its FlexSpacesConfig.xml configured with a Calais key and a Google Map api key to get UI for the Calais Integration enabled (see doc\flexspacesAir\readmeFlexSpacesForAIR.txt)4. For instructions on adding an amp to an existing install (of 8.2.1, dir name, deploy areas different on ES2) see Dr Flex & Dr LiveCycle. (Haven’t tried the Calais Integration on LC CS 8.2.1. It should work since it works with Alfresco 2.1).

Both a FlexSpaces/Alfresco Gadget and Portlet for the GateIn Portal

FlexSpaces Gadget on GateIn gadget dashboard

I recently added both a FlexSpaces/Alfresco Gadget (Google) and a Portlet for the new GateIn (eXo+JBoss) Portal. See Alfresco Forge for downloads, Google Code  for source.  See previous posts on other portlets ( Liferay Portal portletJBoss Portal portlet).

The gadget and the portlet  work on both app server versions (Tomcat, JBoss AS) of the GateIn beta1. (I had to add a tld file to get the portlet to work on JBoss).

The gadget can be used on dashboard layouts. The portlet can be used in other layouts. In the screenshot, the FlexSpaces gadget is maximized, so it doesn’t look like the usual gadget layout. The beta1 seemed to not allow saving an edit to change from a 3 column to a 1 or 2 column. (FlexSpaces can made to take up less space by setting the show header area preference to false, and hiding the tree with the show / tree menu). Also the beta1 didn’t display default values for the FlexSpaces gadget when the edit UI mode is used, so editng the gadget xml is easier (This is only on gadgets, regular portet preferences UI edit mode was fine).

See the readmes in the flexspaces-gadget.zip file and the flexspacesGateInPortlet.zip file for setup instructions.

JBoss Portal Portlet for FlexSpaces/Alfresco

 FlexSpaces JBoss Portal portlet

In addition to a Liferay portlet, I recently added a JBoss Portal portlet for FlexSpaces (Alfresco Forge, Google Code).  See previous post about the Liferay portlet since some of the same things apply (setting up two app servers, pointers to SSO info, etc.).

How to setup:
1. Install Alfresco community or enterprise (I used Alfresco 3.2 community bundled with Tomcat)
2. Start alfresco user admin pw admin, install flexspaces 0.91+ webscripts, see readmeWebScripts.txt
3. shutdown Alfresco
4. Install a JBoss Portal community or enterprise (I used 2.7.2 community bundled with a 4.2.3 JBoss app server)
5. Change port 8080 to 9080 and port 8009 to 9009 in jboss-portal-2.7.2/server/default/deploy/jboss-web.deployer/server.xml
to not conflict with ports in alfresco running in a separate app server
6. Copy flexspaces-jboss-portlet.war to jboss-portal-2.7.2/server/default/deploy/
7. start jboss portal with jboss-portal-2.7.2\bin\run.bat
8. run http://localhost:9080/portal and log in with admin/admin (so portlet edit UI will be enabled)
9. startup alfresco
10. in jboss portal switch to FlexSpaces tab, click on “Edit” on the flexspaces portlet and setup alfresco url  if needed and other options and click update.
11. log into FlexSpaces portlet (admin/admin or other user/pw)

JBoss+eXo GateIn Portal (See GateIn website)
I tried the FlexSpaces JBoss portlet with the beta1 of GateIn and it didn’t work. I am looking into creating a FlexSpaces portlet and a gadget for this new portal)

Steve