« Back

Integrating Alfresco Web Client as a set of portlets with Liferay

General Blogs August 21, 2009 By Jonas Yuan

 In ten steps, you could be able to set Alfresco (3.1 or above) web client as a set of portlets in Liferay portal (5.2 or above). It is simple for Do-It-Yourselfers.

Download URL:  liferay.cignex.com/palm_tree/0387/sso/liferay/alfresco-portlet

Demo URL:  liferay.cignex.com 

1) Get Alfresco web client application: alfresco.war (from Alfresco Tomcat bundle)

2) Unzip it to $ALFRESCO_HOME (any folder in your local machine, e.g., new folder /Alfresco)

3) Update dir.root in $ALFRESCO_HOME/ WEB-INF/classes/alfresco/repository.propertes.

dir.root=../../alf_data

4) Create a database alfresco in MySQL

drop database if exists alfresco;

create database alfresco character set utf8;

grant all on alfresco.* to 'alfresco'@'localhost' identified by 'alfresco' with grant option;

grant all on alfresco.* to 'alfresco'@'localhost.localdomain' identified by 'alfresco' with grant option; 

5) Remove the file $ALFRESCO_HOME/WEB-INF/lib/portlet-api-lib.jar 

6) Add /WEB-INF/faces-config.xml to the faces config files list at $ALFRESCO_HOME/WEB-INF/web.xml like

<context-param>

      <param-name>javax.faces.CONFIG_FILES</param-name>

      <param-value>/WEB-INF/faces-config.xml,/WEB-INF/faces-config-app.xml,/WEB-INF/faces-config-beans.xml,/WEB-INF/faces-config-navigation.xml,/WEB-INF/faces-config-common.xml,/WEB-INF/faces-config-repo.xml,/WEB-INF/faces-config-wcm.xml,/WEB-INF/faces-config-custom.xml</param-value>

</context-param>

7) Download and add files: faces-config.xml, liferay-display.xml, liferay-portlet.xml, portlet.xml to $ALFRESCO_HOME/WEB-INF

8) Create a  folder license under $ALFRESCO_HOME /WEB-INF/classes/alfresco/extension and add license file to  $ALFRESCO_HOME /WEB-INF/classes/alfresco/extension/ license

9) Package all files as a WAR: alfresco.war; 

10) Deploy it in $LIFERAY_HOME/deploy

Note that you may not be able to add alfresco portlets in Liferay portal pages properly, since some alfresco portlets requires to be signed in first. Simple solution - you can create an account “admin/admin” (default account in alfresco) in Liferay, and assign this account to the role “Administrator”.  Then login as “admin/admin” in Liferay portal, and add alfresco portlets in Liferay portal pages. 

Or, you can use the result WAR directly:  download WAR from http://liferay.cignex.com/palm_tree/0387/sso/liferay/alfresco-portlet/alfresco.war and deploy it in $LIFERAY_HOME/deploy.  That’s it. Note that use JDK 1.6.0_14 or above.

Wiki Article URL: http://www.liferay.com/web/guest/community/wiki/-/wiki/Main/Full+Integration+-+Liferay,+Alfresco,+SSO+and+LDAP

 
Threaded Replies Author Date
Could you check the url? I can't reach the... Peter Mesotten August 24, 2009 4:53 AM
Hi Peter, thank you! The server... Jonas Yuan August 24, 2009 9:24 AM
Server is down. By the way, you're writing a... Dmitry Babain August 25, 2009 5:16 AM
Hi Damitry, thanks. The server is up now. Yes,... Jonas Yuan August 25, 2009 9:41 AM
Hi Damitry, as promised, the server... Jonas Yuan August 31, 2009 11:37 AM
Hi Jonas, can it be, that this only works for... Norgan Han October 2, 2009 12:02 PM
Hi Norgan, thank you. Interesting ... it should... Jonas Yuan October 2, 2009 1:07 PM
Hi Jonas, I dont have an enterprise license.... Norgan Han October 2, 2009 3:43 PM
Oops, I did test 2.1, the same error shows up... Norgan Han October 2, 2009 3:46 PM
Hi Norgan, Thanks. Interesting issues ... You... Jonas Yuan October 7, 2009 2:31 PM
VM-LIN-216:/opt/liferay-portal-5.2.3/tomcat-6.0... Norgan Han October 9, 2009 1:23 PM
Hi Norgan, Thanks. The JDK I build the WAR is... Jonas Yuan October 10, 2009 12:29 AM
Jonas thanks for you effort in putting this... James Arnott October 30, 2009 8:42 AM
Hi James, Thank you. You may refer to... Jonas Yuan October 30, 2009 8:46 AM
Yes, did not see that. So that got be further.... James Arnott October 30, 2009 1:58 PM
Hi James, thank you. Do you get issues fixed?... Jonas Yuan November 3, 2009 1:37 PM
Hi James, Do you get it fixed? Jonas Yuan November 26, 2009 5:01 AM
I've also tried your 10 step method above but... James Arnott October 30, 2009 8:57 AM
Wow this is way awesome, thank you for this I... Pablo M Mino November 19, 2009 12:23 PM
Hi Pablo, Thank you. Did you get the issue... Jonas Yuan November 22, 2009 5:59 AM
Well, I couldn't fix why 2 of 6 portlets didn't... Pablo M Mino November 26, 2009 8:16 AM
My Placeholder John J November 29, 2009 5:55 AM
It works for me with liferay 5.2.3 and... John J December 2, 2009 6:10 AM
Great! Thank you, John. Jonas Yuan December 3, 2009 1:02 PM
I followed the ten setps above to modify... Will Wu December 15, 2009 3:01 AM
Hi Will, you may try this: Or, you can use the... Jonas Yuan December 15, 2009 5:11 AM
Hi Pablo, you may not use 5.3 trunk - it is... Jonas Yuan December 3, 2009 1:04 PM
Hi again, I wanted to share something that... Pablo M Mino February 3, 2010 8:09 AM
Hi Pablo, good catch. Thanks. This would be a... Jonas Yuan February 5, 2010 5:47 AM
Hi Jonas, you had any luck reproducing it? It... Pablo M Mino February 23, 2010 7:30 AM
Hi Pablo, sorry that I could not find time to... Jonas Yuan March 25, 2010 2:16 PM
Hi, Jonas, I have the same problems with Int In... Wei Cheng June 22, 2010 12:47 PM
BTY, I turned on the logging for alfresco and... Wei Cheng June 22, 2010 12:49 PM
Hi Wei, thanks. It seems that you met TLD... Jonas Yuan June 28, 2010 9:18 AM
Hi Jonas, at first a big thank you for the... Ace Man June 29, 2010 6:21 AM
Hmmm. No answer yet. Is this the right place to... Ace Man July 1, 2010 6:57 AM
Hi Ace, Thanks. Sorry that I just came back... Jonas Yuan July 1, 2010 10:10 AM
Hi Jonas, thank you for your answer. It turns... Ace Man July 2, 2010 1:06 AM
Ok. 1 step further: In the portlet.xml i... Ace Man July 2, 2010 2:31 AM
Hi Ace, Thanks. It should work well when using... Jonas Yuan August 16, 2010 2:38 PM
Hi Jonas, It was a nice article. We are... Brian Ko February 11, 2010 11:01 AM
Hi Brian, thanks. Of course, you would be able... Jonas Yuan February 11, 2010 5:56 PM
Dear All, i'm trying my first steps on using... Int ln March 15, 2010 2:27 PM
Hi Int In, Make sure that you have created... Jonas Yuan March 25, 2010 1:28 PM
Hi, I have been using liferay 5.2.3 and I... SZ khan March 25, 2010 9:57 AM
Hi Sultan, thanks. Do you get any kind of error... Jonas Yuan March 25, 2010 1:25 PM
Hi Jonas, I did it for your 10 steps plan. But... P Cache August 13, 2010 6:04 AM
Hi P Cache, thanks. This is due to different... Jonas Yuan August 16, 2010 2:42 PM
Hi Jonas, thanks for your fast response. I... P Cache August 20, 2010 2:52 AM
Sorry for my long error messages. I took a look... P Cache August 23, 2010 3:54 AM
Hi P Cache, you can take cleanup process and... Jonas Yuan August 23, 2010 10:55 AM
Unfortunately it doesn't work either after... P Cache August 24, 2010 4:06 AM
Hi P Cache, Thanks. Alfresco UI is based on... Jonas Yuan August 26, 2010 12:04 PM
What do you mean with update JSTL in Alfresco... P Cache August 29, 2010 5:03 AM
Hi P Cache, you may need: 1)replaced the... Jonas Yuan September 1, 2010 5:22 PM
Hi Jonas, I have the same problems as P Cache.... Francois Fournel April 6, 2011 9:45 AM
great wiki gratz jonas, I followed it but i... Ricardo Vieira August 31, 2010 7:50 AM
Hi Ricardo Vieira, it seems that you had... Jonas Yuan September 1, 2010 5:27 PM
thats the thing, i have my liferay working on... Ricardo Vieira September 2, 2010 2:28 AM
Hi Richard, Thanks. Yes, Alfresco uses port... Jonas Yuan September 9, 2010 7:29 AM
Hi Jonas, I'm using the last version of... Cristoforo Seccia September 2, 2010 3:46 AM
Hi Cristoforo, thanks. You are right that step... Jonas Yuan September 9, 2010 8:20 AM
Hey Jonas! Thanks for your precise description.... Myden De September 9, 2010 3:49 AM
Hi Myden, thanks. You may try Tomcat bundle... Jonas Yuan September 9, 2010 7:59 AM
[...] Haven’t tried using SSO approaches yet:... Anonymous June 26, 2011 8:42 PM
HI Jonas, Could you check the url? I can't... Ahmed Fehri November 5, 2012 12:49 AM
Hi Fehri, Thanks. It seems that it would be... Jonas Yuan November 17, 2012 5:00 PM
When i go for Download a Alfresco by URL : ... Deval Dholariya March 18, 2013 3:01 AM
i want some material for learn to liferay... Deval Dholariya March 18, 2013 3:08 AM

Could you check the url? I can't reach the Cignex site...
Posted on 8/24/09 4:53 AM.
Hi Peter, thank you! The server liferay.cignex.com was down (in last weekend - due to hardware issue). It will be up as soon as possible.

The server liferay.cignex.com is up now. Please let me know if you have any questions.
Posted on 8/24/09 9:24 AM in reply to Peter Mesotten.
Server is down. By the way, you're writing a very much awaited wiki articleemoticon
Posted on 8/25/09 5:16 AM in reply to Jonas Yuan.
Hi Damitry, thanks. The server is up now. Yes, the server has an hardware issue. It is planning to use another server - more stable and robust box - same URL: liferay.cignex.com

Hope that the wiki articles would be helpful.
Posted on 8/25/09 9:41 AM in reply to Dmitry Babain.
Hi Damitry, as promised, the server liferay.cignex.com was updated with 64-bit OS Linux (RedHat), 8G available memory. It should be stable and robust. Please inform me if you find any performance issue related.
Posted on 8/31/09 11:37 AM in reply to Jonas Yuan.
Hi Jonas,
can it be, that this only works for the enterprise versions and not for Alfresco Community edition. ? I tried both approaches as described here with liferay 5.2.3, TOmcat 6 on java 1.6.0.14. and Alf 3.2 Community. I still get this classcast exception
...
18:49:30,204 ERROR [PortletHotDeployListener:663] java.lang.ClassCastException: org.springframework.beans.factory.BeanCreationException cannot be cast to org.springframework.web.context.WebApplicationContext
java.lang.ClassCastExceptio­n: org.springframework.beans.factory.BeanCreationException cannot be cast to org.springframework.web.context.WebApplicationContext
...

Would be great, if you could check it out
Regards, Norgan
Posted on 10/2/09 12:02 PM.
Hi Norgan, thank you. Interesting ... it should work for Alfresco 3.2 community version too. Is the Alfresco E 3.1 working for you? I did not have a package for Alfresco 3.2 community version yet. But I will have it when Alfresco 3.2 E version is ready.

Is it urgent for you? will you use Alfresco 3.2 community version only? It would be nice to know your requirements.

Thanks.
Jonas Yuan
Posted on 10/2/09 1:07 PM in reply to Norgan Han.
Hi Jonas, I dont have an enterprise license. What I need is 3.1 or 3.2, I think the enterprise version does not have the workflow API yet.
Posted on 10/2/09 3:43 PM in reply to Jonas Yuan.
Oops, I did test 2.1, the same error shows up emoticon So it must be something I am doing wrong - maybe the java version.

found another exception btw :

PropertyAccessException 2:
org.springframework.beans.TypeMismatchException: Failed to convert property value of type [java.lang.String] to required type [org.alfresco.repo.search.MLAnalysisMode] for property 'defaultMLSearchAnalysisMode'; nested exception is java.lang.IllegalArgumentException: Unsupported value: EXACT_LANGUAGE_AND_ALL
Caused by:
java.lang.IllegalArgumentException: Unsupported value: EXACT_LANGUAGE_AND_ALL
at sun.beans.editors.EnumEditor.setValue(EnumEditor.java:71)

Does that look more familiar ?
Posted on 10/2/09 3:46 PM in reply to Jonas Yuan.
Hi Norgan, Thanks. Interesting issues ...

You may try the following. You would have everything in this package. :-)
"Or, you can use the result WAR directly: download WAR from http://liferay.cignex.com/palm_tree/0387/sso/liferay/alfresco-portlet/alfresco.w­ar and deploy it in $LIFERAY_HOME/deploy. That’s it."

Please let me know if you meet any issues.
Posted on 10/7/09 2:31 PM in reply to Norgan Han.
VM-LIN-216:/opt/liferay-portal-5.2.3/tomcat-6.0.18 # java -version
java version "1.6.0_0"
OpenJDK Runtime Environment (build 1.6.0_0-b11)
OpenJDK Client VM (build 1.6.0_0-b11, mixed mode)
---
rm -rf alf_data; rm -rf webapps/alfresco; drop database alfresco; cp your.war deploy/alfresco.war
---
"ready to deplo ... " .. shutdown - startup .... <follofing log>
---
first the known "EXACT_LANGUAGE_AND_ALL", then ...
.plugin.PluginPackageException: Unable to communicate with repository http://plugins.liferay.com/community
20:09:23,017 WARN [PluginPackageUtil:318] Unable to communicate with repository http://plugins.liferay.com/official
20:09:23,031 WARN [PluginPackageUtil:318] Unable to communicate with repository http://plugins.liferay.com/community
20:09:26,714 INFO [PortletHotDeployListener:227] Registering portlets for alfresco
20:09:27,058 ERROR [PortletHotDeployListener:663] java.lang.ClassCastException: org.springframework.beans.factory.BeanCreationException cannot be cast to org.springframework.web.context.WebApplicationContext
java.lang.ClassCastExceptio­n: org.springframework.beans.factory.BeanCreationException cannot be cast to org.springframework.web.context.WebApplicationContext
at org.alfresco.web.scripts.portlet.WebScriptPortlet.init(WebScriptPortlet.java:85)­
at com.liferay.portlet.InvokerPortletImpl.init(InvokerPortletImpl.java:250)
[...]
20:­09:27,059 ERROR [PortletHotDeployListener:663] java.lang.ClassCastException: org.springframework.beans.factory.BeanCreationException cannot be cast to org.springframework.web.context.WebApplicationContext
java.lang.ClassCastExceptio­n: org.springframework.beans.factory.BeanCreationException cannot be cast to org.springframework.web.context.WebApplicationContext
at org.alfresco.web.scripts.portlet.WebScriptPortlet.init(WebScriptPortlet.java:85)­
at com.liferay.portlet.InvokerPortletImpl.init(InvokerPortletImpl.java:250)
at com.liferay.portlet.PortletInstanceFactoryImpl.init(PortletInstanceFactoryImpl.j­ava:245)
... <some times> ...
20:09:27,232 INFO [PortletHotDeployListener:351] 6 portlets for alfresco are available for use
Oct 9, 2009 8:09:27 PM org.apache.catalina.core.StandardContext start
SEVERE: Error listenerStart
Oct 9, 2009 8:09:27 PM org.apache.catalina.core.StandardContext start
SEVERE: Context startup failed due to previous errors
20:09:27,266 WARN [PluginPackageUtil:1303] Unable to reindex unistalled package alfresco: Unable to communicate with repository http://plugins.liferay.com/official
20:09:27,268 INFO [PortletHotDeployListener:381] Unregistering portlets for alfresco
20:09:27,275 INFO [PortletHotDeployListener:417] 6 portlets for alfresco was unregistered


For complete log send me a mail at spam minus 01 at gmx doth de I appreciate your help )
Posted on 10/9/09 1:23 PM in reply to Jonas Yuan.
Hi Norgan, Thanks. The JDK I build the WAR is 1.6.0_14. You would need to use JDK 1.6.0_14 or above. I should update the same in blog entry. Please change your JDK version to 1.6.0_14 or above.
Posted on 10/10/09 12:29 AM in reply to Norgan Han.
Jonas thanks for you effort in putting this together.

Not sure if there is a better place for this. Let me know if there is.

I tried your "Alfresco 3.1 E, LDAP ADS and SSO CAS" on your demo page.

After starting it I get :

20:56:04,263 User:System WARN [repo.admin.ConfigurationChecker] The Alfresco 'dir.root' property is set to a relative path './alf_data'. 'dir.root' should be overridden to point to a specific folder.

20:56:04,310 User:System ERROR [repo.admin.ConfigurationChecker] CONTENT INTEGRITY ERROR: System content not found in content store.
20:56:04,310 User:System ERROR [repo.admin.ConfigurationChecker] Ensure that the 'dir.root' property is pointing to the correct data location.
20:56:04,315 User:System ERROR [web.context.ContextLoader] Context initialization failed
org.alfresco.error.AlfrescoRuntimeException: Ensure that the 'dir.root' property is pointing to the correct data location.
at org.alfresco.repo.admin.ConfigurationChecker.check(ConfigurationChecker.java:312­)
at org.alfresco.repo.admin.ConfigurationChecker.access$000(ConfigurationChecker.jav­a:72)
...
SEVERE: Error listenerStart
Oct 28, 2009 8:56:04 PM org.apache.catalina.core.StandardContext start
SEVERE: Context startup failed due to previous errors

Even though I've set the dir.root directory in the WEB-INF/classes/alfresco/repository.properties file.

Also your log4j.properties in WEB-INF/classes is CRLF, LF which the parser does not seem to like.

Thanks for any help.

Using JRE_HOME: /usr/java/jdk1.6.0_14
Server version: Apache Tomcat/6.0.20
Server built: May 14 2009 01:13:50
Server number: 6.0.20.0
OS Name: Linux
OS Version: 2.6.18-128.el5
Architecture: i386
JVM Version: 1.6.0_14-b08
JVM Vendor: Sun Microsystems Inc.
Posted on 10/30/09 8:42 AM.
Hi James, Thank you.

You may refer to http://liferay.cignex.com/palm_tree/full-liferay-53-alfresco-31-readme.txt.

"Note­ that, you may need to reset "dir.root" as "dir.root=/opt/sso/liferay53/alf_data" in custom-repository."

Hope that it helps.
Posted on 10/30/09 8:46 AM in reply to James Arnott.
I've also tried your 10 step method above but have these problems...

Needed util*jar from liferay's WEB-INF/lib copied into alfresco's WEB-INF/lib

http://10.10.1.218:8080/alfresco/ gives me this now...

java.lang.IllegalStateException: No Factories configured for this Application. This happens if the faces-initialization does not work at all - make sure that you properly include all configuration settings necessary for a basic faces application and that all the necessary libs are included. Also check the logging output of your web application and your container for any exceptions!
If you did that and find nothing, the mistake might be due to the fact that you use some special web-containers which do not support registering context-listeners via TLD files and a context listener is not setup in your web.xml.
A typical config looks like this;
<listener>
<listener-class>org.apache.myfaces.webapp.StartupServletContextLi­stener</listener-class>
</listener>
at javax.faces.FactoryFinder.getFactory(FactoryFinder.java:93)
at org.alfresco.web.app.servlet.FacesHelper.getFacesContextImpl(FacesHelper.java:13­1)
at org.alfresco.web.app.servlet.FacesHelper.getFacesContext(FacesHelper.java:86)
at org.apache.jsp.index_jsp._jspService(index_jsp.java:171)
...

Also I get this in the Document List portlet ...

The Web Script /alfresco/168s/ui/doclist has responded with a status of 500 - Internal Error.

500 Description: An error inside the HTTP server which prevented it from fulfilling the request.

Message: Wrapped Exception (with status template): Read-Write transaction started within read-only transaction

Exception: org.alfresco.error.AlfrescoRuntimeException - Read-Write transaction started within read-only transaction

org.alfresco.repo.transaction.RetryingTransactionHelper.doInTransaction(Retryin­gTransactionHelper.java:294)
org.alfresco.repo.transaction.RetryingTransactionHe­lper.doInTransaction(RetryingTransactionHelper.java:229)
org.alfresco.repo.web.s­cripts.RepoStore$RepoScriptLoader$1.doWork(RepoStore.java:858)
org.alfresco.repo­.web.scripts.RepoStore$RepoScriptLoader$1.doWork(RepoStore.java:856)
Posted on 10/30/09 8:57 AM.
Yes, did not see that. So that got be further. I now am stuck at the same problem as below...

And when I hit login in the alfresco portlet I get...

javax.faces.FacesException: org.apache.jasper.JasperException: javax.faces.el.EvaluationException: Cannot get value for expression '#{NavigationBean.toolbarLocation}'
caused by:
javax.portlet.PortletException: org.apache.jasper.JasperException: javax.faces.el.EvaluationException: Cannot get value for expression '#{NavigationBean.toolbarLocation}'
caused by:
org.apache.jasper.JasperException: javax.faces.el.EvaluationException: Cannot get value for expression '#{NavigationBean.toolbarLocation}'
caused by:
javax.faces.el.EvaluationException: Cannot get value for expression '#{NavigationBean.toolbarLocation}'
caused by:
javax.faces.el.EvaluationException: Exception getting value of property toolbarLocation of base of type : org.alfresco.web.bean.NavigationBean
caused by:
javax.faces.el.EvaluationException: Bean: org.alfresco.web.bean.NavigationBean, property: toolbarLocation
caused by:
java.lang.reflect.InvocationTargetException
caused by:
java.lang.NullPointerException

Hide Details

javax.faces.FacesException: org.apache.jasper.JasperException: javax.faces.el.EvaluationException: Cannot get value for expression '#{NavigationBean.toolbarLocation}'
at org.apache.myfaces.context.portlet.PortletExternalContextImpl.dispatch(PortletEx­ternalContextImpl.java:174)
at org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderView(JspViewHandlerI­mpl.java:175)
at org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecut­or.java:41)
...
Posted on 10/30/09 1:58 PM in reply to Jonas Yuan.
Hi James, thank you. Do you get issues fixed? It seems that there are special characters in JSP file. Please use proper TEXT editor to update JSP files. Hope that this helps.
Posted on 11/3/09 1:37 PM in reply to James Arnott.
Wow this is way awesome, thank you for this

I have a little problem, Document List and My spaces portlets display an error HTTP 500 instead, I saw some errors on console while the war deployed so i guess they are related

Can you add some explanation on the wiki about what the war did, as you do with many things on your book? I don't know where all this portlets came from and why it all works emoticon

Thanks again
Posted on 11/19/09 12:23 PM.
Hi Pablo, Thank you. Did you get the issue fixed?

More details about Alfresco integration would be addressed in the book: Liferay Portal 5.3 Enterprise Intranets. Hope that it would help.
Posted on 11/22/09 5:59 AM in reply to Pablo M Mino.
Hi James, Do you get it fixed?
Posted on 11/26/09 5:01 AM in reply to James Arnott.
Well, I couldn't fix why 2 of 6 portlets didn't worked, I assumed it was a problem with my 5.3 code from trunk, which is giving me several problems

I'll try again and let you know as soon as I can
Posted on 11/26/09 8:16 AM in reply to Jonas Yuan.
My Placeholder
Posted on 11/29/09 5:55 AM in reply to Pablo M Mino.
It works for me with liferay 5.2.3 and Alfresco3.2 R2 Community Edition. Thanks!
Posted on 12/2/09 6:10 AM in reply to John J.
Great! Thank you, John.
Posted on 12/3/09 1:02 PM in reply to John J.
Hi Pablo, you may not use 5.3 trunk - it is unstable at moment.
Posted on 12/3/09 1:04 PM in reply to Pablo M Mino.
I followed the ten setps above to modify Alfresco3.2 R2 Community Edition, but it fails to show up in the 'Add Application' list. Was there something else you implemented in the alfresco.war?
Posted on 12/15/09 3:01 AM in reply to John J.
Hi Will, you may try this:

Or, you can use the result WAR directly: download WAR from http://liferay.cignex.com/palm_tree/0387/sso/liferay/alfresco-portlet/alfresco.w­ar and deploy it in $LIFERAY_HOME/deploy. That’s it. Note that use JDK 1.6.0_14 or above.
Posted on 12/15/09 5:11 AM in reply to Will Wu.
Hi again,

I wanted to share something that might be weird, probably a mistake of mine but I can't explain this

my company wants to use oracle for liferay, and Mysql for alfresco 3.2 community, because community does not support use of oracle 10XE as I read on their forums.

When Liferay loads it shows it is using oracle10g dialect and all good, but when I deploy alfresco as portlets, this message changes to MySQL dialect

I thought it was a printing error because Liferay runs perfectly and using the oracle DB, but I found that when you deploy new portlets from SDK, the portlets will display an error because they couldn't create their tables... surprisingly I remove alfresco, the dialect message goes back to oracle10g and the portlet deploys correctly

resuming, it seems that although it doesn't affect Liferay it does affect new portlets which need to execute queries

any idea of what's happening?
Posted on 2/3/10 8:09 AM.
Hi Pablo, good catch. Thanks. This would be a bug. I am trying to reproduce the issue and come back to you shortly.
Posted on 2/5/10 5:47 AM in reply to Pablo M Mino.
Hi Jonas,
It was a nice article. We are considering liferay as our portal. But we are using open text as our CMS. You mentioned that we can integrate any CMIS compliant CMS in this way. Do we have any instruction on how to integrate with opne text using CMIS?
Posted on 2/11/10 11:01 AM.
Hi Brian, thanks. Of course, you would be able to integrate OpenText using CMIS in Liferay portal 6. You may refer to this blogs: http://www.liferay.com/web/jonas.yuan/blog/-/blogs/integrating-alfresco-through-­cmis-in-liferay
Posted on 2/11/10 5:56 PM in reply to Brian Ko.
Hi Jonas, you had any luck reproducing it? It would point to be a bug from the dialect detector right?
Posted on 2/23/10 7:30 AM in reply to Jonas Yuan.
Dear All,

i'm trying my first steps on using Alfresco + Liferay, i'm really new to the world of both. And quite lost.

I was trying to have something working to then explore it. But fail to do so.

i have downloaded : liferay-portal-5.2.3

and created databases as explained :

create database alfresco character set utf8;
grant all on alfresco.* to 'alfresco'@'localhost' identified by 'alfresco' with grant option;
grant all on alfresco.* to 'alfresco'@'localhost.localdomain' identified by 'alfresco' with grant option;

Alfresco.war was downloaded from => http://www.liferay.com/web/jonas.yuan/blog/-/blogs/integrating-alfresco-web-clie­nt-as-a-set-of-portlets-with-liferay

and i copy this file un "<LIFERAY>"/deploy

accessing http://localhost:8081/alfresco/

produce a page containing Alfresco error message : see below,

also blow is the content of the Alfresco.log, if that could help.

many thanks for any help,

best regards.

I.N.

java.lang.IllegalStateException: No Factories configured for this Application. This happens if the faces-initialization does not work at all - make sure that you properly include all configuration settings necessary for a basic faces application and that all the necessary libs are included. Also check the logging output of your web application and your container for any exceptions!
If you did that and find nothing, the mistake might be due to the fact that you use some special web-containers which do not support registering context-listeners via TLD files and a context listener is not setup in your web.xml.
A typical config looks like this;
<listener>
<listener-class>org.apache.myfaces.webapp.StartupServletContextLi­stener</listener-class>
</listener>

Hide Details

java.lang.IllegalStateException: No Factories configured for this Application. This happens if the faces-initialization does not work at all - make sure that you properly include all configuration settings necessary for a basic faces application and that all the necessary libs are included. Also check the logging output of your web application and your container for any exceptions!
If you did that and find nothing, the mistake might be due to the fact that you use some special web-containers which do not support registering context-listeners via TLD files and a context listener is not setup in your web.xml.
A typical config looks like this;
<listener>
<listener-class>org.apache.myfaces.webapp.StartupServletContextLi­stener</listener-class>
</listener>

at javax.faces.FactoryFinder.getFactory(FactoryFinder.java:93)
at org.alfresco.web.app.servlet.FacesHelper.getFacesContextImpl(FacesHelper.java:13­1)
at org.alfresco.web.app.servlet.FacesHelper.getFacesContext(FacesHelper.java:86)
at org.apache.jsp.index_jsp._jspService(index_jsp.java:160)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:98)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:331)
a­t org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:329)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilt­erChain.java:269)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.­java:188)
at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154)
a­t com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:94)
at com.liferay.portal.kernel.servlet.PortalClassLoaderFilter.doFilter(PortalClassLo­aderFilter.java:78)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilt­erChain.java:215)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.­java:188)
at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154)
a­t com.liferay.portal.servlet.filters.gzip.GZipFilter.processFilter(GZipFilter.java­:140)
at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:91)
at com.liferay.portal.kernel.servlet.PortalClassLoaderFilter.doFilter(PortalClassLo­aderFilter.java:78)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilt­erChain.java:215)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.­java:188)
at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154)
a­t com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:94)
at com.liferay.portal.kernel.servlet.PortalClassLoaderFilter.doFilter(PortalClassLo­aderFilter.java:78)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilt­erChain.java:215)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.­java:188)
at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154)
a­t com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:94)
at com.liferay.portal.kernel.servlet.PortalClassLoaderFilter.doFilter(PortalClassLo­aderFilter.java:78)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilt­erChain.java:215)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.­java:188)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:2­13)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:1­72)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108­)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:875)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConne­ction(Http11BaseProtocol.java:665)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:52­8)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorker­Thread.java:81)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:68­9)
at java.lang.Thread.run(Thread.java:619)


-------------------------------

Alfresco.lo g


20:24:25,332 INFO [org.alfresco.config.SystemPropertiesFactoryBean] Loading properties file from class path resource [alfresco/domain/hibernate-cfg.properties]
20:24:47,323 ERROR [org.alfresco.repo.content.transform.magick.AbstractImageMagickContentTransforme­r] ImageMagickContentTransformer not available: Failed to perform ImageMagick transformation:
Execution result:
os: Linux
command: [./ImageMagick/bin/convert, /opt/intellinium/liferay-portal-5.2.3/tomcat/temp/Alfresco/ImageMagickContentTra­nsformer_init_source_2493142994370496254.gif[0], /opt/intellinium/liferay-portal-5.2.3/tomcat/temp/Alfresco/ImageMagickContentTra­nsformer_init_target_7372697971745053892.png]
succeeded: false
exit code: 1
out:
err: Cannot run program "./ImageMagick/bin/convert": java.io.IOException: error=2, No such file or directory
20:24:48,382 WARN [org.springframework.jmx.support.JmxUtils] Found more than one MBeanServer instance. Returning first from list.
20:24:50,163 INFO [org.alfresco.config.xml.XMLConfigService$PropertyConfigurer] Loading properties file from class path resource [alfresco/file-servers.properties]
20:24:51,054 WARN [org.springframework.jmx.support.JmxUtils] Found more than one MBeanServer instance. Returning first from list.
20:25:04,470 ERROR [org.alfresco.repo.content.transform.RuntimeExecutableContentTransformer] Failed to start a runtime executable content transformer:
Execution result:
os: Linux
command: [./bin/pdf2swf, -V]
succeeded: false
exit code: 1
out:
err: Cannot run program "./bin/pdf2swf": java.io.IOException: error=2, No such file or directory
20:25:13,147 INFO [org.alfresco.repo.domain.schema.SchemaBootstrap] Schema managed by database dialect org.hibernate.dialect.MySQLInnoDBDialect.
20:25:13,342 INFO [org.alfresco.repo.domain.schema.SchemaBootstrap] Executing database script /opt/intellinium/liferay-portal-5.2.3/tomcat/temp/Alfresco/AlfrescoSchemaCreate-­org.hibernate.dialect.MySQLInnoDBDialect-1658299978196645316.sql (Generated).
20:25:17,121 INFO [org.alfresco.repo.domain.schema.SchemaBootstrap] Executing database script /opt/intellinium/liferay-portal-5.2.3/tomcat/temp/Alfresco/AlfrescoSchemaUpdate-­org.hibernate.dialect.MySQLInnoDBDialect-6312960806937138666.sql (Copied from classpath:alfresco/dbscripts/create/2.2/org.hibernate.dialect.MySQLInnoDBDialect­/AlfrescoPostCreate-2.2-MappedFKIndexes.sql).
20:25:17,139 INFO [org.alfresco.repo.domain.schema.SchemaBootstrap] Executing database script /opt/intellinium/liferay-portal-5.2.3/tomcat/temp/Alfresco/AlfrescoSchemaUpdate-­org.hibernate.dialect.MySQLInnoDBDialect-5034659005061150090.sql (Copied from classpath:alfresco/dbscripts/create/2.2/org.hibernate.dialect.MySQLInnoDBDialect­/AlfrescoPostCreate-2.2-Extra.sql).
20:25:17,465 INFO [org.alfresco.repo.domain.schema.SchemaBootstrap] Executing database script /opt/intellinium/liferay-portal-5.2.3/tomcat/temp/Alfresco/AlfrescoSchemaUpdate-­org.hibernate.dialect.MySQLInnoDBDialect-577119894437256806.sql (Copied from classpath:alfresco/dbscripts/create/2.2/org.hibernate.dialect.MySQLInnoDBDialect­/post-create-indexes-04.sql).
20:25:17,486 INFO [org.alfresco.repo.domain.schema.SchemaBootstrap] Executing database script /opt/intellinium/liferay-portal-5.2.3/tomcat/temp/Alfresco/AlfrescoSchemaUpdate-­org.hibernate.dialect.MySQLInnoDBDialect-2655125586342253084.sql (Copied from classpath:alfresco/dbscripts/create/3.0/org.hibernate.dialect.MySQLInnoDBDialect­/create-activities-extras.sql).
20:25:17,604 INFO [org.alfresco.repo.domain.schema.SchemaBootstrap] All executed statements written to file /opt/intellinium/liferay-portal-5.2.3/tomcat/temp/Alfresco/AlfrescoSchemaUpdate-­All_Statements-1232695067970631292.sql.
20:25:17,981 DEBUG [org.alfresco.repo.avm.TransactionalLookupCache.init] preRegister called. Server=com.sun.jmx.mbeanserver.JmxMBeanServer@1e48b4c, name=log4j:logger=org.alfresco.repo.avm.TransactionalLookupCache.init
20:26:14,58­2 INFO [org.alfresco.service.descriptor.DescriptorService] Successfully installed license from file [/opt/intellinium/liferay-portal-5.2.3/tomcat/temp/0-alfresco/WEB-INF/classes/al­fresco/extension/license/alfresco-enterprise-v3.1-partner-unlimited.lic]
20:26:14­,772 WARN [org.alfresco.repo.admin.ConfigurationChecker] The Alfresco 'dir.root' property is set to a relative path '../../alf_data'. 'dir.root' should be overridden to point to a specific folder.
20:26:14,772 INFO [org.alfresco.repo.admin.ConfigurationChecker] The Alfresco root data directory ('dir.root') is: ../../alf_data
20:26:14,843 INFO [org.alfresco.repo.admin.patch.PatchExecuter] Checking for patches to apply ...
20:26:16,092 INFO [org.alfresco.repo.admin.patch.PatchExecuter]
=== Applied patch ===
ID: patch.db-V3.0-0-CreateActivitiesExtras
RESULT:
Script completed
=====================================
20:26:16,103 INFO [org.alfresco.repo.module.ModuleServiceImpl] Found 0 module(s).
20:26:21,476 ERROR [org.alfresco.smb.protocol] Failed to get local domain/workgroup name, using default of WORKGROUP
20:26:21,477 ERROR [org.alfresco.smb.protocol] (This may be due to firewall settings or incorrect <broadcast> setting)
20:26:22,039 WARN [org.alfresco.util.OpenOfficeConnectionTester] An initial OpenOffice connection could not be established.
20:26:22,174 INFO [org.alfresco.service.descriptor.DescriptorService] Alfresco JVM - v1.6.0_12-b04; maximum heap size 1016,125MB
20:26:22,175 INFO [org.alfresco.service.descriptor.DescriptorService] Alfresco license: Enterprise - v3.1 granted to Cignex (does not expire)
20:26:22,176 INFO [org.alfresco.service.descriptor.DescriptorService] Alfresco started (Enterprise): Current version 3.1.0 (142) schema 1008 - Installed version 3.1.0 (142) schema 1008
20:27:49,983 ERROR [org.apache.catalina.core.ContainerBase....] "Servlet.service()" pour la servlet jsp a généré une exception
java.lang.IllegalStateException: No Factories configured for this Application. This happens if the faces-initialization does not work at all - make sure that you properly include all configuration settings necessary for a basic faces application and that all the necessary libs are included. Also check the logging output of your web application and your container for any exceptions!
If you did that and find nothing, the mistake might be due to the fact that you use some special web-containers which do not support registering context-listeners via TLD files and a context listener is not setup in your web.xml.
A typical config looks like this;
<listener>
<listener-class>org.apache.myfaces.webapp.StartupServletContextListener</listene­r-class>
</listener>

at javax.faces.FactoryFinder.getFactory(FactoryFinder.java:93)
at org.alfresco.web.app.servlet.FacesHelper.getFacesContextImpl(FacesHelper.java:13­1)
at org.alfresco.web.app.servlet.FacesHelper.getFacesContext(FacesHelper.java:86)
at­ org.apache.jsp.index_jsp._jspService(index_jsp.java:160)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:98)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:331)
­at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:329)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilt­erChain.java:269)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.­java:188)
at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154)
­at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:94)
at com.liferay.portal.kernel.servlet.PortalClassLoaderFilter.doFilter(PortalClassLo­aderFilter.java:78)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilt­erChain.java:215)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.­java:188)
at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154)
­at com.liferay.portal.servlet.filters.gzip.GZipFilter.processFilter(GZipFilter.java­:140)
at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:91)
at com.liferay.portal.kernel.servlet.PortalClassLoaderFilter.doFilter(PortalClassLo­aderFilter.java:78)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilt­erChain.java:215)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.­java:188)
at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154)
­at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:94)
at com.liferay.portal.kernel.servlet.PortalClassLoaderFilter.doFilter(PortalClassLo­aderFilter.java:78)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilt­erChain.java:215)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.­java:188)
at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154)
­at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:94)
at com.liferay.portal.kernel.servlet.PortalClassLoaderFilter.doFilter(PortalClassLo­aderFilter.java:78)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilt­erChain.java:215)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.­java:188)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:2­13)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:1­72)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at­ org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
at­ org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108­)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:875)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConne­ction(Http11BaseProtocol.java:665)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:52­8)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorker­Thread.java:81)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:68­9)
at java.lang.Thread.run(Thread.java:619)
Posted on 3/15/10 2:27 PM.
Hi,
I have been using liferay 5.2.3 and I followed all the 10 steps as described above..alfresco is running but I am not able to included it as a portlet in liferay...am I doing something wrong?
Posted on 3/25/10 9:57 AM.
Hi Sultan, thanks. Do you get any kind of error message?
Posted on 3/25/10 1:25 PM in reply to sultan zahir khan.
Hi Int In,

Make sure that you have created database alfresco from scratch, and remove existing alfresco /alf_data.
Posted on 3/25/10 1:28 PM in reply to Int ln.
Hi Pablo, sorry that I could not find time to work on this recently. Hope that I could do it as earlier as possible.
Posted on 3/25/10 2:16 PM in reply to Pablo M Mino.
Hi, Jonas,
I have the same problems with Int In and James Arnott. I got the following messages after following your instructions.
Also, I tried your suggestions to create database alfresco from scratch, and remove existing alf_data. Unfortunately it's still the same.
I am using the alfresco.war from http://liferay.cignex.com/palm_tree/book/0387/chapter13/full-integration/ and liveray community version 6.02. LDAP and CAS are working fine.
Do you have any solutions for this?

Thanks!

java.lang.IllegalStateException: No Factories configured for this Application. This happens if the faces-initialization does not work at all - make sure that you properly include all configuration settings necessary for a basic faces application and that all the necessary libs are included. Also check the logging output of your web application and your container for any exceptions!
If you did that and find nothing, the mistake might be due to the fact that you use some special web-containers which do not support registering context-listeners via TLD files and a context listener is not setup in your web.xml.
A typical config looks like this;
<listener>
<listener-class>org.apache.myfaces.webapp.StartupServletContextLi­stener</listener-class>
</listener>
Posted on 6/22/10 12:47 PM in reply to Jonas Yuan.
BTY, I turned on the logging for alfresco and here is what I got. Do you think it's related?

Thanks!

18:51:29,983 INFO [org.apache.myfaces.config.FacesConfigurator] Reading standard config org/apache/myfaces/resource/standard-faces-config.xml
18:51:30,269 INFO [org.apache.myfaces.config.FacesConfigurator] Reading config jar:file:/E:/Liferay/liferay-portal-6.0.2/tomcat-6.0.26/webapps/alfresco/WEB-INF­/lib/util-taglib.jar!/META-INF/faces-config.xml
18:51:30,277 WARN [org.apache.myfaces.config.FacesConfigurator] /WEB-INF/faces-config.xml has been specified in the javax.faces.CONFIG_FILES context parameter of the deployment descriptor. This should be removed, as it will be loaded twice. See JSF spec 1.1, 10.3.2
18:51:30,279 INFO [org.apache.myfaces.config.FacesConfigurator] Reading config /WEB-INF/faces-config.xml
18:51:30,288 INFO [org.apache.myfaces.config.FacesConfigurator] Reading config /WEB-INF/faces-config-app.xml
18:51:30,297 INFO [org.apache.myfaces.config.FacesConfigurator] Reading config /WEB-INF/faces-config-beans.xml
18:51:30,424 INFO [org.apache.myfaces.config.FacesConfigurator] Reading config /WEB-INF/faces-config-navigation.xml
18:51:30,442 INFO [org.apache.myfaces.config.FacesConfigurator] Reading config /WEB-INF/faces-config-common.xml
18:51:30,453 INFO [org.apache.myfaces.config.FacesConfigurator] Reading config /WEB-INF/faces-config-repo.xml
18:51:30,464 INFO [org.apache.myfaces.config.FacesConfigurator] Reading config /WEB-INF/faces-config-wcm.xml
18:51:30,472 INFO [org.apache.myfaces.config.FacesConfigurator] Reading config /WEB-INF/faces-config-custom.xml
18:51:30,475 INFO [org.apache.myfaces.config.FacesConfigurator] Reading config /WEB-INF/faces-config.xml
18:51:30,493 INFO [org.apache.myfaces.config.FacesConfigurator] Starting up MyFaces-package : myfaces-api in version : 1.1.5 from path : file:/E:/Liferay/liferay-portal-6.0.2/tomcat-6.0.26/webapps/alfresco/WEB-INF/lib­/myfaces-api-1.1.5.jar
18:51:30,493 INFO [org.apache.myfaces.config.FacesConfigurator] Starting up MyFaces-package : myfaces-impl in version : 1.1.5 from path : file:/E:/Liferay/liferay-portal-6.0.2/tomcat-6.0.26/webapps/alfresco/WEB-INF/lib­/myfaces-impl-1.1.5.jar
18:51:30,493 INFO [org.apache.myfaces.config.FacesConfigurator] MyFaces-package : tomahawk-sandbox not found.
18:51:30,493 INFO [org.apache.myfaces.config.FacesConfigurator] MyFaces-package : tomahawk not found.
18:51:30,666 INFO [org.apache.myfaces.config.FacesConfigurator] Serialization provider : class
Posted on 6/22/10 12:49 PM in reply to Wei Cheng.
Hi Wei, thanks. It seems that you met TLD issue. Do you get it solved?
Posted on 6/28/10 9:18 AM in reply to Wei Cheng.
Hi Jonas, at first a big thank you for the article.
I finally managed it to get Alfresco 3.2 (CE) and Liferay 6.0.2 up and running (without CAS and/or LDAP, still workin on that).
But i only have one portlet "Alfresco Client Portlet". The others don´t show up.
catalina logs says:
14:29:30,792 INFO [PortletHotDeployListener:223] Registering portlets for alfresco
14:29:31,084 ERROR [PortletBagFactory:114] java.lang.ClassNotFoundException: org.alfresco.web.scripts.portlet.WebScriptPortlet
java.lang.ClassNotFoundExceptio­n: org.alfresco.web.scripts.portlet.WebScriptPortlet
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:15­16)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:13­61)
at com.liferay.portlet.PortletBagFactory.create(PortletBagFactory.java:111)
at com.liferay.portal.deploy.hot.PortletHotDeployListener.initPortlet(PortletHotDep­loyListener.java:450)
at com.liferay.portal.deploy.hot.PortletHotDeployListener.doInvokeDeploy(PortletHot­DeployListener.java:252)
at com.liferay.portal.deploy.hot.PortletHotDeployListener.invokeDeploy(PortletHotDe­ployListener.java:104)
at com.liferay.portal.kernel.deploy.hot.HotDeployUtil._doFireDeployEvent(HotDeployU­til.java:104)
at com.liferay.portal.kernel.deploy.hot.HotDeployUtil._flushPrematureEvents(HotDepl­oyUtil.java:167)
at com.liferay.portal.kernel.deploy.hot.HotDeployUtil.flushPrematureEvents(HotDeplo­yUtil.java:43)
at com.liferay.portal.servlet.MainServlet.initPlugins(MainServlet.java:798)
at com.liferay.portal.servlet.MainServlet.init(MainServlet.java:351)
at javax.servlet.GenericServlet.init(GenericServlet.java:212)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1173)
­at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:993)
at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4187­)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4496)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
­at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:546)
at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:637)
at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:563)
at­ org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:498)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1277)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:321)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.ja­va:119)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:785)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
at org.apache.catalina.core.StandardService.start(StandardService.java:519)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
at org.apache.catalina.startup.Catalina.start(Catalina.java:581)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at­ sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.jav­a:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)

repeated 5 times.
After that it reads:
14:29:31,287 INFO [PortletHotDeployListener:368] 1 portlet for alfresco is available for use

Aren´t the other portlets included in the Community Edition? What do i have to do to get them working, because i can´t afford a commercial license.
Posted on 6/29/10 6:21 AM in reply to Jonas X. Yuan.
Hmmm. No answer yet. Is this the right place to ask? Or maybe better in the forum?
Posted on 7/1/10 6:57 AM in reply to Ace Man.
Hi Ace, Thanks. Sorry that I just came back late.

It seems that "WebScriptPortlet" is missing. Could you please double check the JAR files?

java.lang.ClassNotFoundException: org.alfresco.web.scripts.portlet.WebScriptPortlet
Posted on 7/1/10 10:10 AM in reply to Ace Man.
Hi Jonas, thank you for your answer.

It turns out, that i have Alfresco 3.3(CE) and Web Scripts are now a part of Spring Surf (see http://forums.alfresco.com/en/viewtopic.php?f=36&t=27373). Don´t know what that means or what to do now.
Now i am looking for help how to integrate the 3.3 webscripts in Liferay 6.
Posted on 7/2/10 1:06 AM in reply to Jonas X. Yuan.
Ok. 1 step further:
In the portlet.xml i changed all refences from "org.alfresco.web.scripts.portlet.WebScriptPortlet" to "org.springframework.extensions.webscripts.portlet.WebScriptPortlet".
Now i am able to add the webscripts in Liferay. But when i add a Portlet then the stylesheet and code gets displayed in the portlet emoticon
I think i have to use an old version of Alfresco.
Posted on 7/2/10 2:31 AM in reply to Ace Man.
Hi Jonas,
I did it for your 10 steps plan. But when I trying to invoke http://localhost:8080/alfresco, the following System Error appears:

java.lang.IllegalStateException: No Factories configured for this Application. This happens if the faces-initialization does not work at all - make sure that you properly include all configuration settings necessary for a basic faces application and that all the necessary libs are included. Also check the logging output of your web application and your container for any exceptions!
If you did that and find nothing, the mistake might be due to the fact that you use some special web-containers which do not support registering context-listeners via TLD files and a context listener is not setup in your web.xml.
A typical config looks like this;
<listener>
<listener-class>org.apache.myfaces.webapp.StartupServletContextLi­stener</listener-class>
</listener>

Can you help me with this problem please?
Posted on 8/13/10 6:04 AM.
Hi Ace, Thanks. It should work well when using alfresco 3.3. Do you get this fixed?
Posted on 8/16/10 2:38 PM in reply to Ace Man.
Hi P Cache, thanks. This is due to different version of JSTL. Liferay 6 has upgraded JSTL version.

Upgrading JSTL version in alfresco portlets, you should be able to fix this issue.

Hope that this helps.
Posted on 8/16/10 2:42 PM in reply to P Cache.
Hi Jonas, thanks for your fast response. I replaced JSTL-1.1.jar with JSTL-1.2.jarin alfresco portlet, but the error still appears. I'm using Liferay 6.0.4 and Alfresco 3.3. I bought your book "Liferay Portal 6 Enterprise Intranets" today. I followed all the steps you described there to integrate Alfresco as a set of portlets. Without success.

Here's the whole error message:

java.lang.IllegalStateException: No Factories configured for this Application. This happens if the faces-initialization does not work at all - make sure that you properly include all configuration settings necessary for a basic faces application and that all the necessary libs are included. Also check the logging output of your web application and your container for any exceptions!
If you did that and find nothing, the mistake might be due to the fact that you use some special web-containers which do not support registering context-listeners via TLD files and a context listener is not setup in your web.xml.
A typical config looks like this;
<listener>
<listener-class>org.apache.myfaces.webapp.StartupServletContextLi­stener</listener-class>
</listener>

at javax.faces.FactoryFinder.getFactory(FactoryFinder.java:93)
at org.alfresco.web.app.servlet.FacesHelper.getFacesContextImpl(FacesHelper.java:13­1)
at org.alfresco.web.app.servlet.FacesHelper.getFacesContext(FacesHelper.java:86)
at org.apache.jsp.index_jsp._jspService(index_jsp.java:171)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377)
a­t org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilt­erChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.­java:206)
at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:177)
a­t com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:107)
at com.liferay.portal.kernel.servlet.PortalClassLoaderFilter.doFilter(PortalClassLo­aderFilter.java:67)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilt­erChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.­java:206)
at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:177)
a­t com.liferay.portal.servlet.filters.gzip.GZipFilter.processFilter(GZipFilter.java­:126)
at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:104)
at com.liferay.portal.kernel.servlet.PortalClassLoaderFilter.doFilter(PortalClassLo­aderFilter.java:67)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilt­erChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.­java:206)
at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:177)
a­t com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:107)
at com.liferay.portal.kernel.servlet.PortalClassLoaderFilter.doFilter(PortalClassLo­aderFilter.java:67)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilt­erChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.­java:206)
at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:177)
a­t com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:107)
at com.liferay.portal.kernel.servlet.PortalClassLoaderFilter.doFilter(PortalClassLo­aderFilter.java:67)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilt­erChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.­java:206)
at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:177)
a­t com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:107)
at com.liferay.portal.kernel.servlet.PortalClassLoaderFilter.doFilter(PortalClassLo­aderFilter.java:67)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilt­erChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.­java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:2­33)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:1­91)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109­)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:852)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Pr­otocol.java:588)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Thread.java:637)

Hope you can help me along with that problem.
Posted on 8/20/10 2:52 AM in reply to Jonas X. Yuan.
Sorry for my long error messages. I took a look at catalina.out and it says the following:

=== Applied patch ===
ID: patch.db-V3.0-0-CreateActivitiesExtras
RESULT:
Script completed
=====================================
10:01:09,896 User:System INFO [repo.module.ModuleServiceImpl] Found 0 module(s).
10:01:10,255 User:System WARN [alfresco.util.OpenOfficeConnectionTester] An initial OpenOffice connection could not be established.
10:01:10,291 User:System INFO [service.descriptor.DescriptorService] Alfresco JVM - v1.6.0_20-b02-279-10M3065; maximum heap size 1019,875MB
10:01:10,291 User:System INFO [service.descriptor.DescriptorService] Alfresco license: Enterprise - v3.1 granted to Cignex (does not expire)
10:01:10,291 User:System INFO [service.descriptor.DescriptorService] Alfresco started (Enterprise): Current version 3.1.0 (142) schema 1008 - Installed version 3.1.0 (142) schema 1008
10:01:22,416 INFO [PortletHotDeployListener:220] Registering portlets for alfresco
10:01:22,420 WARN [SAXReaderImpl:429] XSD validation is diasabled because org.apache.xerces.parsers.XIncludeAwareParserConfiguration cannot be cast to org.apache.xerces.xni.parser.XMLParserConfiguration
10:01:22,426 WARN [SAXReaderImpl:429] XSD validation is diasabled because org.apache.xerces.parsers.XIncludeAwareParserConfiguration cannot be cast to org.apache.xerces.xni.parser.XMLParserConfiguration
10:01:22,568 WARN [SAXReaderImpl:429] XSD validation is diasabled because org.apache.xerces.parsers.XIncludeAwareParserConfiguration cannot be cast to org.apache.xerces.xni.parser.XMLParserConfiguration
10:01:22,687 WARN [SAXReaderImpl:429] XSD validation is diasabled because org.apache.xerces.parsers.XIncludeAwareParserConfiguration cannot be cast to org.apache.xerces.xni.parser.XMLParserConfiguration
10:01:22,764 INFO [PortletHotDeployListener:374] 6 portlets for alfresco are available for use
10:01:22,924 FATAL [InternalException:88] Exception:
org.apache.axis.ConfigurationException: org.apache.axis.deployment.wsdd.WSDDException: java.lang.ClassCastException: org.apache.axis.encoding.ser.BeanSerializerFactory cannot be cast to org.apache.axis.encoding.SerializerFactory
java.lang.ClassCastException: org.apache.axis.encoding.ser.BeanSerializerFactory cannot be cast to org.apache.axis.encoding.SerializerFactory
at org.apache.axis.encoding.ser.BaseSerializerFactory.createFactory(BaseSerializerF­actory.java:277)
at org.apache.axis.deployment.wsdd.WSDDService.deployTypeMapping(WSDDService.java:5­42)
at org.apache.axis.deployment.wsdd.WSDDService.initTMR(WSDDService.java:253)
at org.apache.axis.deployment.wsdd.WSDDService.<init>(WSDDService.java:233)
at org.apache.axis.deployment.wsdd.WSDDDeployment.<init>(WSDDDeployment.java:192)
a­t org.apache.axis.deployment.wsdd.WSDDDocument.setDocument(WSDDDocument.java:139)
­at org.apache.axis.deployment.wsdd.WSDDDocument.<init>(WSDDDocument.java:65)
at org.apache.axis.configuration.FileProvider.configureEngine(FileProvider.java:179­)
at org.apache.axis.AxisEngine.init(AxisEngine.java:172)
at org.apache.axis.AxisEngine.<init>(AxisEngine.java:156)
at org.apache.axis.server.AxisServer.<init>(AxisServer.java:88)
at org.apache.axis.server.DefaultAxisServerFactory.createServer(DefaultAxisServerFa­ctory.java:109)
at org.apache.axis.server.DefaultAxisServerFactory.getServer(DefaultAxisServerFacto­ry.java:73)
at org.apache.axis.server.AxisServer.getServer(AxisServer.java:73)
at org.apache.axis.transport.http.AxisServletBase.getEngine(AxisServletBase.java:18­5)
at org.apache.axis.transport.http.AxisServletBase.getOption(AxisServletBase.java:39­6)
at org.apache.axis.transport.http.AxisServletBase.init(AxisServletBase.java:112)
at­ org.apache.axis.transport.http.AxisServlet.init(AxisServlet.java:156)
at javax.servlet.GenericServlet.init(GenericServlet.java:212)
at com.liferay.portal.servlet.AxisServlet.init(AxisServlet.java:65)
at com.liferay.portal.kernel.servlet.PortalClassLoaderServlet.portalInit(PortalClas­sLoaderServlet.java:73)
at com.liferay.portal.kernel.util.PortalLifecycleUtil.register(PortalLifecycleUtil.­java:52)
at com.liferay.portal.kernel.servlet.PortalClassLoaderServlet.init(PortalClassLoade­rServlet.java:44)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1173)
­at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:993)
at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4187­)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4496)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
­at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:546)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1041)
at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:964)
at­ org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:502)
at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1345)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:303)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.ja­va:119)
at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1337­)
at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChild­ren(ContainerBase.java:1601)
at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChild­ren(ContainerBase.java:1610)
at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(Containe­rBase.java:1590)
at java.lang.Thread.run(Thread.java:637)

org.apache.axis.deployment.wsdd.WSDDExcepti­on: java.lang.ClassCastException: org.apache.axis.encoding.ser.BeanSerializerFactory cannot be cast to org.apache.axis.encoding.SerializerFactory
java.lang.ClassCastException: org.apache.axis.encoding.ser.BeanSerializerFactory cannot be cast to org.apache.axis.encoding.SerializerFactory
at org.apache.axis.encoding.ser.BaseSerializerFactory.createFactory(BaseSerializerF­actory.java:277)
at org.apache.axis.deployment.wsdd.WSDDService.deployTypeMapping(WSDDService.java:5­42)
at org.apache.axis.deployment.wsdd.WSDDService.initTMR(WSDDService.java:253)
at org.apache.axis.deployment.wsdd.WSDDService.<init>(WSDDService.java:233)
at org.apache.axis.deployment.wsdd.WSDDDeployment.<init>(WSDDDeployment.java:192)
a­t org.apache.axis.deployment.wsdd.WSDDDocument.setDocument(WSDDDocument.java:139)
­at org.apache.axis.deployment.wsdd.WSDDDocument.<init>(WSDDDocument.java:65)
at org.apache.axis.configuration.FileProvider.configureEngine(FileProvider.java:179­)
at org.apache.axis.AxisEngine.init(AxisEngine.java:172)
at org.apache.axis.AxisEngine.<init>(AxisEngine.java:156)
at org.apache.axis.server.AxisServer.<init>(AxisServer.java:88)
at org.apache.axis.server.DefaultAxisServerFactory.createServer(DefaultAxisServerFa­ctory.java:109)
at org.apache.axis.server.DefaultAxisServerFactory.getServer(DefaultAxisServerFacto­ry.java:73)
at org.apache.axis.server.AxisServer.getServer(AxisServer.java:73)
at org.apache.axis.transport.http.AxisServletBase.getEngine(AxisServletBase.java:18­5)
at org.apache.axis.transport.http.AxisServletBase.getOption(AxisServletBase.java:39­6)
at org.apache.axis.transport.http.AxisServletBase.init(AxisServletBase.java:112)
at­ org.apache.axis.transport.http.AxisServlet.init(AxisServlet.java:156)
at javax.servlet.GenericServlet.init(GenericServlet.java:212)
at com.liferay.portal.servlet.AxisServlet.init(AxisServlet.java:65)
at com.liferay.portal.kernel.servlet.PortalClassLoaderServlet.portalInit(PortalClas­sLoaderServlet.java:73)
at com.liferay.portal.kernel.util.PortalLifecycleUtil.register(PortalLifecycleUtil.­java:52)
at com.liferay.portal.kernel.servlet.PortalClassLoaderServlet.init(PortalClassLoade­rServlet.java:44)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1173)
­at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:993)
at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4187­)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4496)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
­at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:546)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1041)
at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:964)
at­ org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:502)
at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1345)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:303)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.ja­va:119)
at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1337­)
at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChild­ren(ContainerBase.java:1601)
at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChild­ren(ContainerBase.java:1610)
at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(Containe­rBase.java:1590)
at java.lang.Thread.run(Thread.java:637)

at org.apache.axis.deployment.wsdd.WSDDService.deployTypeMapping(WSDDService.java:5­63)
at org.apache.axis.deployment.wsdd.WSDDService.initTMR(WSDDService.java:253)
at org.apache.axis.deployment.wsdd.WSDDService.<init>(WSDDService.java:233)
at org.apache.axis.deployment.wsdd.WSDDDeployment.<init>(WSDDDeployment.java:192)
a­t org.apache.axis.deployment.wsdd.WSDDDocument.setDocument(WSDDDocument.java:139)
­at org.apache.axis.deployment.wsdd.WSDDDocument.<init>(WSDDDocument.java:65)
at org.apache.axis.configuration.FileProvider.configureEngine(FileProvider.java:179­)
at org.apache.axis.AxisEngine.init(AxisEngine.java:172)
at org.apache.axis.AxisEngine.<init>(AxisEngine.java:156)
at org.apache.axis.server.AxisServer.<init>(AxisServer.java:88)
at org.apache.axis.server.DefaultAxisServerFactory.createServer(DefaultAxisServerFa­ctory.java:109)
at org.apache.axis.server.DefaultAxisServerFactory.getServer(DefaultAxisServerFacto­ry.java:73)
at org.apache.axis.server.AxisServer.getServer(AxisServer.java:73)
at org.apache.axis.transport.http.AxisServletBase.getEngine(AxisServletBase.java:18­5)
at org.apache.axis.transport.http.AxisServletBase.getOption(AxisServletBase.java:39­6)
at org.apache.axis.transport.http.AxisServletBase.init(AxisServletBase.java:112)
at­ org.apache.axis.transport.http.AxisServlet.init(AxisServlet.java:156)
at javax.servlet.GenericServlet.init(GenericServlet.java:212)
at com.liferay.portal.servlet.AxisServlet.init(AxisServlet.java:65)
at com.liferay.portal.kernel.servlet.PortalClassLoaderServlet.portalInit(PortalClas­sLoaderServlet.java:73)
at com.liferay.portal.kernel.util.PortalLifecycleUtil.register(PortalLifecycleUtil.­java:52)
at com.liferay.portal.kernel.servlet.PortalClassLoaderServlet.init(PortalClassLoade­rServlet.java:44)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1173)
­at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:993)
at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4187­)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4496)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
­at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:546)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1041)
at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:964)
at­ org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:502)
at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1345)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:303)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.ja­va:119)
at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1337­)
at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChild­ren(ContainerBase.java:1601)
at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChild­ren(ContainerBase.java:1610)
at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(Containe­rBase.java:1590)
at java.lang.Thread.run(Thread.java:637)

I can't imagine what the problem is. Do you have any idea?
Posted on 8/23/10 3:54 AM in reply to P Cache.
Hi P Cache, you can take cleanup process and restart the portal. cleanup process is available in the book "Liferay Portal 6 Enterprise Intranets".

Hope that it helps,

Thanks
Posted on 8/23/10 10:55 AM in reply to P Cache.
Unfortunately it doesn't work either after cleanup. There is no change in the error message. What's kinda strange is the error message that the required method public static EngineConfigurationFactory newFactory(Object) is missing, although the method is there.

10:58:06,796 INFO [PortletHotDeployListener:374] 6 portlets for alfresco are available for use
10:58:06,891 WARN [EngineConfigurationFactoryFinder:184] Factory org.apache.axis.configuration.EngineConfigurationFactoryServlet Ignored: missing required method: public static EngineConfigurationFactory newFactory(Object).
10:58:07,160 FATAL [InternalException:88] Exception:
org.apache.axis.ConfigurationException: org.apache.axis.deployment.wsdd.WSDDException: java.lang.ClassCastException: org.apache.axis.encoding.ser.BeanSerializerFactory cannot be cast to org.apache.axis.encoding.SerializerFactory
java.lang.ClassCastException: org.apache.axis.encoding.ser.BeanSerializerFactory cannot be cast to org.apache.axis.encoding.SerializerFactory
at org.apache.axis.encoding.ser.BaseSerializerFactory.createFactory(BaseSerializerF­actory.java:277)
at org.apache.axis.deployment.wsdd.WSDDService.deployTypeMapping(WSDDService.java:5­42)
at org.apache.axis.deployment.wsdd.WSDDService.initTMR(WSDDService.java:253)
at org.apache.axis.deployment.wsdd.WSDDService.<init>(WSDDService.java:233)
at org.apache.axis.deployment.wsdd.WSDDDeployment.<init>(WSDDDeployment.java:192)
a­t org.apache.axis.deployment.wsdd.WSDDDocument.setDocument(WSDDDocument.java:139)
­at org.apache.axis.deployment.wsdd.WSDDDocument.<init>(WSDDDocument.java:65)
at org.apache.axis.configuration.FileProvider.configureEngine(FileProvider.java:179­)
at org.apache.axis.AxisEngine.init(AxisEngine.java:172)
at org.apache.axis.AxisEngine.<init>(AxisEngine.java:156)
at org.apache.axis.server.AxisServer.<init>(AxisServer.java:88)
at org.apache.axis.server.DefaultAxisServerFactory.createServer(DefaultAxisServerFa­ctory.java:109)
at org.apache.axis.server.DefaultAxisServerFactory.getServer(DefaultAxisServerFacto­ry.java:73)
at org.apache.axis.server.AxisServer.getServer(AxisServer.java:73)
at org.apache.axis.transport.http.AxisServletBase.getEngine(AxisServletBase.java:18­5)
at org.apache.axis.transport.http.AxisServletBase.getOption(AxisServletBase.java:39­6)
at org.apache.axis.transport.http.AxisServletBase.init(AxisServletBase.java:112)
at­ org.apache.axis.transport.http.AxisServlet.init(AxisServlet.java:156)
at javax.servlet.GenericServlet.init(GenericServlet.java:212)
at com.liferay.portal.servlet.AxisServlet.init(AxisServlet.java:65)
at com.liferay.portal.kernel.servlet.PortalClassLoaderServlet.portalInit(PortalClas­sLoaderServlet.java:73)
at com.liferay.portal.kernel.util.PortalLifecycleUtil.register(PortalLifecycleUtil.­java:52)
at com.liferay.portal.kernel.servlet.PortalClassLoaderServlet.init(PortalClassLoade­rServlet.java:44)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1173)
­at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:993)
at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4187­)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4496)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
­at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:546)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1041)
at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:964)
at­ org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:502)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1277)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:321)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.ja­va:119)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:785)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
at org.apache.catalina.core.StandardService.start(StandardService.java:519)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
at org.apache.catalina.startup.Catalina.start(Catalina.java:581)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at­ sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.jav­a:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)
Posted on 8/24/10 4:06 AM in reply to Jonas X. Yuan.
Hi P Cache, Thanks. Alfresco UI is based on JSTL old version 1.1. But Liferay 6 supports JSTL latest version 1.2. I think that it would be better to update JSTL in Alfresco UI portlet. This can resolve the issue completely.

Hope that it helps,
Posted on 8/26/10 12:04 PM in reply to P Cache.
What do you mean with update JSTL in Alfresco UI portlet. I replaced the JSTL-1.1.jar with JSTL-1.2.jar in <Alfresco-HOME>/WEB-INF/lib an build the war new. But this doesn't fix the problem. I also tried to adapt the DTD files in liferay-display.xml and liferay-portlet.xml from Version 5.2.0 to 6.0.0. But without am impact. I'm currently pretty helpless emoticon
Posted on 8/29/10 5:03 AM in reply to Jonas X. Yuan.
great wiki gratz jonas, I followed it but i cant seem to start alfresco, cause my LF is working on another port not 8080, cause i already have that port being used, so when i deployed Alfresco in my LF it gives the port error, "java.net.BindException: Address already in use <null>:8080" i cant find in alfresco.war where to change the port for alfresco, can u give me a little help pls
Posted on 8/31/10 7:50 AM.
Hi P Cache, you may need:

1)replaced the JSTL-1.1.jar with JSTL-1.2.jar;
2)change dependencies
portal-dependency-tlds=\c.tld
at liferay-plugin-package.properties

3) re-deploy the alfresco portlet
Posted on 9/1/10 5:22 PM in reply to P Cache.
Hi Ricardo Vieira, it seems that you had another app running in port 8080. Check it and close that app. You should be set.

Hope that it helps,
Posted on 9/1/10 5:27 PM in reply to Ricardo Vieira.
thats the thing, i have my liferay working on another port 8282 in this case, cause i do have another app in the 8080 port, i need alfresco to work with my liferay in 8282 port, i found lots of files in alfresco where the port is set to 8080, do i need to change all? shouldnt alfresco go for the port set in tomcat ?? (in this case 8282)
Posted on 9/2/10 2:28 AM in reply to Jonas X. Yuan.
Hi Jonas,

I'm using the last version of Liferay 6.0.5 as well as the last version of Alfresco CE 3.3g. I've the jdk 1.6.21 installed on my server (Windows Server 2008 R2 Enterprise) and fallowed the ten steps in order to integrate Alfresco into Liferay.

I was not able to archive two steps: the first one is related to the step 5). I can't find this jar in the indicated folder, neither into the entire unwrapped alferesco WAR, maybe in this version is no more available.

The second step is related to the 3). I've changed the "dir.root" property value to a non-relative path (i.e. "C:\liferay\data\alf_data") this saved me from a few exceptions.

After all, during the alfresco deploying, I've seen many exceptions and I'm not sure if I've done everything well even if the portlet is available in liferay.

Any suggestion about these latest releases??? Thanks.

Cristoforo.
Posted on 9/2/10 3:46 AM.
Hey Jonas!
Thanks for your precise description. I haved installed Alfresco as a set of portlets within Liferay. Everything work fine except the portlets are not show up under 'Add Application'. Alfresco works fine unter http://hostname/alfresco. But I can't add the portlets in Liferay because they are not in the add application menu. Do you have an idea what's wrong? I am using alfresco 3.2, liferay 5.2.3 and tomcat 6.0.18. Ah, and I don't use liferay and tomcat as a bundle.

Myden
Posted on 9/9/10 3:49 AM.
Hi Richard, Thanks. Yes, Alfresco uses port 8080 in its web app. Fortunately, here alfresco web client is used as a set of portlets. That is, you are not required to change port number in Alfresco.

Cheers
Posted on 9/9/10 7:29 AM in reply to Ricardo Vieira.
Hi Myden, thanks. You may try Tomcat bundle first. Logically it should work properly when using Liferay portal as a WAR file. But in this case, you may need to handle portal root path, etc.

Cheers,
Posted on 9/9/10 7:59 AM in reply to Myden De.
Hi Cristoforo, thanks. You are right that step 5) is not in need, since portlet-api-lib.jar got removed in Alfresco 3.3.

By the way, you do have correct setting for dir.root. Of course, you will see a lot of exception, like CIFS, images, tags, etc. These exception are expected ...

I am planning to address instructions for integration of Alfresco 3.3.x (or latest version) shortly.

Cheers,
Posted on 9/9/10 8:20 AM in reply to Cristoforo Seccia.
Hi Jonas,

I have the same problems as P Cache.
I did you said :
1)replaced the JSTL-1.1.jar with JSTL-1.2.jar;
2)change dependencies
portal-dependency-tlds=\c.tld
at liferay-plugin-package.properties

3) re-deploy the alfresco portlet

The error still remains.
Any more ideas ?

Thank you !
Posted on 4/6/11 9:45 AM in reply to Jonas X. Yuan.
[...] Haven’t tried using SSO approaches yet: 1. Rivet Logic STAr (Secure Token Authentication rivet amp for Alfresco) used with AWPr 2. Jonas Yuan / Cignex LDAP ADS and SSO CAS  and also blog post on a... [...] Read More
Posted on 6/26/11 8:42 PM.
HI Jonas,
Could you check the url? I can't reach the Cignex site ,thanks.
Posted on 11/5/12 12:49 AM in reply to .
Hi Fehri,

Thanks. It seems that it would be better to build a new demo server ...
Posted on 11/17/12 5:00 PM in reply to Fehri Ahmed.
When i go for Download a Alfresco by URL : liferay.cignex.com/palm_tree/0387/sso/liferay/alfresco-portlet
Then it give the Error and the show this URl:
http://www.cignex.com/palm_tree/0387/sso/liferay/alfresco-portlet/alfresco.w%C2%­ADar
Posted on 3/18/13 3:01 AM.
i want some material for learn to liferay alfresco integration so please give me links that give good guide line in easy way. (also pdf)
Posted on 3/18/13 3:08 AM.