cancel
Showing results for 
Search instead for 
Did you mean: 

Alfresco indexing Wiki content

finner
Champ in-the-making
Champ in-the-making
Hi,
I've been asked to look into indexing our Wiki content using Alfresco. Since a Wiki allows ad-hoc editing of content, structure, change monitoring (versioning) and access control it  has been described as a CMS.
So, I have the following basic questions:

Can I use Alfresco to index our Wiki content ?
if so, how would I go about it ? Does it make sense to do this ?
Has anyone done this before ?
Where can I get more info ?

As an aside, I found this article of interest. It's a discussion on Enterprise Wikis and Content Management. It's over a year old (28 April 2006).
http://www.cmswatch.com/Feature/145-Wikis-in-the-enterprise

As always,
thanks very much for any and all comments.
Finner
6 REPLIES 6

rwetherall
Confirmed Champ
Confirmed Champ
Hi,

So I guess the short answer to the question of whether you can index you Wiki content with Alfresco is yes!

In order to do this your Wiki content needs to stored in the Alfresco repository.  Once done the content will be indexed and can be manipulated by the multitude of other document management functions that Alfresco provides.  As well as still being available to your Wiki.

This is an approach we have already investigated and we currently provide an Alfresco MediaWiki integration with our PHP Library.

When the integration is installed into a standard MediaWiki installation all content entered and managed in the Wiki will be stored in the Alfresco repository.

What Wiki implementation are you using?

For information the Alfresco Wiki http://wiki.alfresco.com is best .. specifically you will find some information about installing the MediaWiki integration here http://wiki.alfresco.com/wiki/Alfresco_MediaWiki_Installation_Instructions

Hope this helps,
Roy

finner
Champ in-the-making
Champ in-the-making
Thanks for rapid reply.
Our Wiki is using MediaWiki so I guess we're off on the right track.
I will have a read of the MediaWiki installation.

Finner

finner
Champ in-the-making
Champ in-the-making
Hi Roy,
Thanks again for your info. I've had a look at the WikiMedia integration with Alfresco. My understanding is the following:

- Install/configure Alfresco PHP to the server where the Wiki is. (i.e., the PHP is configured to point to my Alfresco repo / api)
- Copy the content of the Wiki into my Alfresco repo as per normal.

My Alfresco repo and my Wiki can be on different machines.
Is that correct ?

Finner

finner
Champ in-the-making
Champ in-the-making

Hi,
I think I'm nearly there but i have an error on when saving or eding a wiki page.

I've installed mediaWiki and an apache HTTP server on my localhost.
Alfresco is also installed on localhost and running on port 8095

AlfrescoConfig.php

$alfDebug = true;

/** The web service end point that will be used when accessing the Alfresco repository **/



$alfURL = "http://localhost:8095/alfresco/api";

/** Store that should be used to store the wiki content in **/

$alfWikiStore = "workspace://SpacesStore";

/** Path to the space the contains the wiki content **/

$alfWikiSpace = "app:company_home/cm:wiki";

/** User credentails used to connect to Alfresco with **/

$alfUser = "admin";

$alfPassword = "admin";
# -------------------------------------------------------------------------------

# Alfresco Extension Configuration

# -------------------------------------------------------------------------------
# include the alfresco extensions classes
require_once("extensions/ExternalStoreAlfresco.php");

# Configure in some external stores
$wgDefaultExternalStore = array("alfresco://localhost:8095/alfresco/api");
$wgExternalStores = array("alfrescoComm21");

By the way, I'm assuming the $wgExternalStores = array() is the name of the mysql database ?

The error I get when I try to save after editing/adding a wiki page. It looks like it's looking up localhost:8080

Is there default port setting I need to change in the Alfresco PHP library. ??

Quote:

...
[error] [client 127.0.0.1] PHP Warning: SoapClient:Smiley FrustratedoapClient(http://localhost:8080/alfresco/api/AuthenticationService?wsdl) [function.SoapClient-SoapClient]: failed to open stream: Connection refused in /www/alfresco-php-library/Alfresco/Service/WebService/AlfrescoWebService.php on line 42, referer: http://localhost/alfresco/Examples/
[Fri Jul 20 14:43:12 2007] [error] [client 127.0.0.1] PHP Warning: SoapClient:Smiley FrustratedoapClient() [function.SoapClient-SoapClient]: I/O warning : failed to load external entity "http://localhost:8080/alfresco/api/AuthenticationService?wsdl" in /www/alfresco-php-library/Alfresco/Service/WebService/AlfrescoWebService.php on line 42, referer: http://localhost/alfresco/Examples/
[Fri Jul 20 14:43:12 2007] [error] [client 127.0.0.1] PHP Fatal error: SOAP-ERROR: Parsing WSDL: Couldn't load from 'http://localhost:8080/alfresco/api/AuthenticationService?wsdl' in /www/alfresco-php-library/Alfresco/Service/WebService/AlfrescoWebService.php on line 42, referer: http://localhost/alfresco/Examples/
[Fri Jul 20 14:43:12 2007] [error] [client 127.0.0.1] PHP Fatal error: Uncaught SoapFault exception: [WSDL] SOAP-ERROR: Parsing WSDL: Couldn't load from 'http://localhost:8080/alfresco/api/AuthenticationService?wsdl' in /www/alfresco-php-library/Alfresco/Service/WebService/AlfrescoWebService.php:42\nStack trace:\n#0 /www/alfresco-php-library/Alfresco/Service/WebService/AlfrescoWebService.php(42): SoapClient->SoapClient('http://localhos...', Array)\n#1 /www/alfresco-php-library/Alfresco/Service/WebService/WebServiceFactory.php(35): AlfrescoWebService->__construct('http://localhos...', Array)\n#2 /www/alfresco-php-library/Alfresco/Service/Repository.php(65): WebServiceFactory::getAuthenticationService('http://localhos...')\n#3 /www/alfresco-php-library/Examples/SimpleBrowse/index.php(41): Repository->authenticate('admin', 'admin')\n#4 {main}\n thrown in /www/alfresco-php-library/Alfresco/Service/WebService/AlfrescoWebService.php on line 42, referer: http://localhost/alfresco/Examples/
...

Thanks in advance.
Finner

finner
Champ in-the-making
Champ in-the-making
ok,
I got the PHP library examples working on apache now.
In Repository.php the Alfresco Repository is hardcoded



public function __construct($connectionUrl="http://localhost:8080/alfresco/api")

So if you are running Alfresco on a different port, you need to change it accordingly.

But now I'm getting an internal error on the Wiki page when I try and save. The error on the wiki page is :
Unable to store text to external storage http://localhost:8095/alfresco/api

Backtrace:

#0 /usr/local/apache2/htdocs/wiki/includes/Article.php(1336): Revision->insertOn(Object(DatabaseMysql))
#1 /usr/local/apache2/htdocs/wiki/includes/Article.php(1205): Article->doEdit('this is page 2?…', '', 98)
#2 /usr/local/apache2/htdocs/wiki/includes/EditPage.php(865): Article->updateArticle('this is page 2?…', '', false, false, '', '')
#3 /usr/local/apache2/htdocs/wiki/includes/EditPage.php(426): EditPage->attemptSave()
#4 /usr/local/apache2/htdocs/wiki/includes/EditPage.php(279): EditPage->edit()
#5 /usr/local/apache2/htdocs/wiki/includes/Wiki.php(432): EditPage->submit()
#6 /usr/local/apache2/htdocs/wiki/includes/Wiki.php(48): MediaWiki->performAction(Object(OutputPage), Object(Article), Object(Title), Object(User), Object(WebRequest))
#7 /usr/local/apache2/htdocs/wiki/index.php(89): MediaWiki->initialize(Object(Title), Object(OutputPage), Object(User), Object(WebRequest))
#8 {main}

And in the apache logs :
[error] [client 127.0.0.1] PHP Notice:  Only variable references should be returned by reference in /usr/local/apache2/htdocs/wiki/includes/ExternalStore.php on line 41, referer: http://localhost/wiki/index.php?title=Page2&action=edit


My php.ini doesn't have the lines
extension=php_mysql.so
extension=php_soap.so
extension=php_sockets.so
because the files don't exist anywhere,
however a
./php -m
does list soap as an extension.

Any ideas as to what the Wiki might be complaining about ?

Finner

finner
Champ in-the-making
Champ in-the-making
It's working now !!!!!
I had incorrect values in LocalSettings.php.

Finner