Showing posts with label Alfresco. Show all posts
Showing posts with label Alfresco. Show all posts

Friday, April 6, 2012

Broken pipe and Transactional update cache is full

In your web applications u can see errors like following:
2012-04-06 10:01:05,031  WARN  [webscripts.connector.RemoteClient] [http-80-1] Exception during close() of HTTP API connection ClientAbortException:  java.net.SocketException: Broken pipe

Solution: In most situations this occurs when your client ajax connection is closed but response is ready. And server can't write response for client. In my case, I used YUI AJAX Get connection and set timeout "5000". When I see this warning message I increase timeout time to "300000" and log tail is happy now :)

Friday, March 2, 2012

End old tasks in Alfresco from Admin

I have been working with Alfresco for a while now. It is a very comprehensive tool, but today I need delete old tasks in archive task node. 

The purpose of the Workflow JavaScript API is to allow access to Alfresco advanced workflows from within JavaScript. The API supports EMCA Script 1.6 compatible JavaScript. Through this API workflow definitions, instances, paths, tasks and transitions can be accessed and managed.

Wednesday, February 29, 2012

Connect to Remote database through SSH using Port Forwarding with Java

Yesterday I need connect connect our remote MySQL database that was setup on SSH enabled server and query database. Since it was on SSH enabled server, we can’t connect it directly using JDBC connection API.To achieve this, we first need to create SSH session and then using Port Forwarding we can forward the request to server and connect to database. I used JSchJSch is a pure Java implementation of SSH2.

Friday, January 27, 2012

Lucene İndex Recovery (Alfresco)

Last week I searched some documents in our DM system. However my program failed to find them. (fts-alfresco)
I remember that in some files has problems and it doesn’t let lucene to create index for those documents. Solution is recovery of index. How to recovery index ???

Step1. Stop Alfresco
Step2. Delete everything under /alf_data/lucene-indexes (don't delete folder)
           Delete everything under /alf_data/backup-lucene-indexes (don't delete folder)
Step3. Edit file /tomcat/webapps/alfresco/WEB-INF/classes/alfresco/repository.properties
           Set the property index.recovery.mode as follows: index.recovery.mode=FULL
Step4. Start Alfresco see logs, must create index
Step5. Stop Alfresco + change "index.recovery.mode=FULL" to default

Step6. Start Alfresco

Monday, October 10, 2011

Google Docs integration with Alfresco

Hi again :) In this post I'll write How to Use the Google Docs Integration with Alfresco. Lets start:

Alfresco provides powerful and massively scalable repository services for the control of critical information. Google Docs™ provides a refreshing and empowering user experience for the creation and development of that information. Both solutions have experienced extraordinary adoption within the small/mid-market market and both have moved into the Enterprise market with equal aplomb and success.

The increasing market demand for and adoption of Alfresco and Google Docs™ has made an intersection of the two solutions immanent. True to the character of the company and culture of the community, Alfresco recognized the need, identified the value, and delivered a solution.

Thursday, October 6, 2011

Show Help Ballon (tooltip) in Alfresco Share

Hi.
When I have developed our document management (+case management) head our IT department want show comment in every task which typed by task sender.
I'm using Alfresco 4.0 version. And I have done this using alfresco share standard functions which developed by Alfresco team.
Code for salution goes here:

Tuesday, August 2, 2011

Read Alfresco node to byte array in Javascript

When I created response document for all appeals I want replace signature in document too. But I must save signature images in repository because I want nobody can see signatures. Then I write small class and read image node from repository to byte array then send it to jasper report as Base64 encoded.
But how can u read image from byte array and show it in your document? If u are interested about this then u must read my other post :)

Friday, July 29, 2011

Update Task variables from Alfresco Javascript API

Hi. Alfresco has it's own javascript API for workflow. U can read abaut this from alfresco wiki:
1. Alfresco Javascript API
2. Workflow Administration

U can read and write task variables in JBPM. The Alfresco JavaScript action lets you embed custom JavaScript into process definitions in much the same way that you can embed BeanShell scripts. To do so, simply add an <action> element with class="org.alfresco.repo.workflow.jbpm.AlfrescoJavaScript" attribute. Inside the <action> element, include a <script> element that defines the JavaScript to execute. As with the BeanShell script definitions, this <script> element may optionally contain <variable> elements
and an <expression> element if you want to limit access to process and task variables.

Saturday, July 23, 2011

Errors and SOLUTIONs for Alfresco installation

Hi.
      Alfresco uses log4j for logging. When u install and use Alfresco u can see errors, warn, debug and etc. in alfresco.log file.

In Linux u can follow errors as: tail -f /opt/usr/local/apache/tomcat/logs/catalina.out
In Windows u can do this by any log tail programs. Personally I am using WinTail :)

U can configure your logging settings in file log4j.properties in directory  <tomcat_webapps_dir>/alfresco/WEB-INF/classes

Thursday, July 14, 2011

JBPM Swimlane for Alfresco

Often, a process has the notion of a role in which multiple tasks during the process get assigned to the same  actor playing that role. For example, suppose you are defining a process that contains multiple tasks performed by "marketing". Rather than assign the marketing group or individual repeatedly to each task, it would be nice if you could make the assignment once, and then tell the other tasks to use the same assignment. In jBPM this is implemented through swimlanes. An actor can be assigned to a swimlane, and then all tasks that need to be performed by the same actor refer to the swimlane.

Alfresco creates one swimlane for you automatically called "initiator". The initiator swimlane is a convenient way to assign tasks to whoever started the workflow.