Salut!
Ich möchte zwei Anwendungen (Mediawiki und Alfresco) über einen Webservice mit Hilfe der von Alfresco angebotenen Implementierung verbinden.
Ich kann erfolgreich Seiten erstellen, löschen, verändern und Dateien heraufladen. Will ich aber eine neue Version einer Datei heraufladen, kommt es zu dem im Folgenden beschriebenen Fehler:
Hier habe ich die übergebenen Parameter ausgeben lassen, die unteren sind die, bei denen der Fehler ausgelöst wird:
Und hier ist die Funktion, aus der der Aufruf stattfindet:
Die PHP-Version ist 5.1.6 auf CentOS 5, soap ist installiert.
Kann mir jemand einen Hinweis auf die Ursache des Fehlers geben? Ich komme dem Ganzen einfach nicht auf die Spur und habe von der Soap-Integration keine wirkliche Ahnung.
Vielen Dank im Voraus!
lg
Nico
Ich möchte zwei Anwendungen (Mediawiki und Alfresco) über einen Webservice mit Hilfe der von Alfresco angebotenen Implementierung verbinden.
Ich kann erfolgreich Seiten erstellen, löschen, verändern und Dateien heraufladen. Will ich aber eine neue Version einer Datei heraufladen, kommt es zu dem im Folgenden beschriebenen Fehler:
PHP-Code:
Notice: Undefined property: SoapFault::$faultstring in /var/www/html/mediawiki/includes/Exception.php on line 230
SoapFault exception: [soapenv:Server.generalException] (null) in /opt/alfresco/alfresco-php-library/Alfresco/Service/WebService/AlfrescoWebService.php:74 Stack trace:
#0 /opt/alfresco/alfresco-php-library/Alfresco/Service/WebService/AlfrescoWebService.php(74): SoapClient->__soapCall('update', Array, Array, Array, Array)
#1 /opt/alfresco/alfresco-php-library/Alfresco/Service/WebService/AlfrescoWebService.php(47): AlfrescoWebService->__soapCall('update', Array)
#2 [internal function]: AlfrescoWebService->__call('update', Array)
#3 /opt/alfresco/alfresco-php-library/Alfresco/Service/Session.php(168): AlfrescoWebService->update(Array)
#4 /var/www/html/mediawiki/extensions/ExternalStoreAlfresco.php(159): Session->save()
#5 /var/www/html/mediawiki/includes/ExternalStore.php(61): ExternalStoreAlfresco->store('10.129.24.48:80...', NULL)
#6 /var/www/html/mediawiki/includes/Revision.php(676): ExternalStore::insert('alfresco://10.1...', NULL)
#7 /var/www/html/mediawiki/includes/filerepo/LocalFile.php(838): Revision->insertOn(Object(DatabaseMysql))
#8 /var/www/html/mediawiki/includes/filerepo/LocalFile.php(690): LocalFile->recordUpload2('', '', '', Array, false)
#9 /var/www/html/mediawiki/includes/SpecialUpload.php(551): LocalFile->upload('mwrepo://local/...', '', '', 1, Array)
#10 /var/www/html/mediawiki/includes/SpecialUpload.php(282): UploadForm->internalProcessUpload(NULL)
#11 /var/www/html/mediawiki/includes/SpecialUpload.php(264): UploadForm->processUpload()
#12 /var/www/html/mediawiki/includes/SpecialUpload.php(14): UploadForm->execute()
#13 [internal function]: wfSpecialUpload(NULL, Object(SpecialPage))
#14 /var/www/html/mediawiki/includes/SpecialPage.php(678): call_user_func('wfSpecialUpload', NULL, Object(SpecialPage))
#15 /var/www/html/mediawiki/includes/SpecialPage.php(464): SpecialPage->execute(NULL)
#16 /var/www/html/mediawiki/includes/Wiki.php(193): SpecialPage::executePath(Object(Title))
#17 /var/www/html/mediawiki/includes/Wiki.php(45): MediaWiki->initializeSpecialCases(Object(Title), Object(OutputPage), Object(WebRequest))
#18 /var/www/html/mediawiki/index.php(90): MediaWiki->initialize(Object(Title), Object(OutputPage), Object(User), Object(WebRequest))
#19 {main}
PHP-Code:
ARGUMENTS:Array (
[0] => Array (
[username] => test
[password] => test ) )
OPTIONSArray ( )
INPUT_HEADERSArray ( )
OUTPUT_HEADERSArray ( )
ARGUMENTS:Array (
[0] => Array (
[store] => Array (
[scheme] => workspace
[address] => SpacesStore )
[query] => Array (
[language] => lucene
[statement] => PATH:"app:company_home/cm:Projects/cm:Archiv/cm:mediawiki/cm:mediawiki" )
[includeMetaData] => ) )
OPTIONSArray ( )
INPUT_HEADERSArray (
[0] => SoapHeader Object (
[namespace] => http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd
[name] => Security
[data] =>
[mustUnderstand] => 1 ) )
OUTPUT_HEADERSArray ( )
ARGUMENTS:Array (
[0] => Array (
[statements] => Array (
[create] => Array (
[0] => Array (
[id] => sessionTICKET_dbe78dba1923c8e76cd0dfa0419e646607ba32e60
[parent] => Array (
[store] => Array (
[scheme] => workspace
[address] => SpacesStore )
[uuid] => aa85d891-42c2-11dd-8a56-9d9dae762acd
[associationType] => {http://www.alfresco.org/model/content/1.0}contains
[childName] => {http://www.alfresco.org/model/content/1.0}Image - Herausforderung.jpg )
[type] => {http://www.alfresco.org/model/content/1.0}content
[property] => Array (
[0] => Array (
[name] => {http://www.alfresco.org/model/content/1.0}name
[isMultiValue] =>
[value] => Image - Herausforderung.jpg )
[1] => Array (
[name] => {http://www.alfresco.org/model/content/1.0}initialVersion
[isMultiValue] =>
[value] => )
[2] => Array (
[name] => {http://www.alfresco.org/model/content/1.0}autoVersion
[isMultiValue] =>
[value] => ) ) ) )
[writeContent] => Array (
[0] => Array (
[property] => {http://www.alfresco.org/model/content/1.0}content
[content] =>
[format] => Array (
[mimetype] => text/html
[encoding] => UTF-8 )
[where_id] => sessionTICKET_dbe78dba1923c8e76cd0dfa0419e646607ba32e60 ) )
[addAspect] => Array (
[0] => Array (
[aspect] => {http://www.alfresco.org/model/content/1.0}versionable
[where_id] => sessionTICKET_dbe78dba1923c8e76cd0dfa0419e646607ba32e60 ) ) ) ) )
OPTIONSArray ( )
INPUT_HEADERSArray (
[0] => SoapHeader Object (
[namespace] => http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd
[name] => Security
[data] =>
[mustUnderstand] => 1 ) )
OUTPUT_HEADERSArray ( )
PHP-Code:
class AlfrescoWebService extends SoapClient
{
[...]
public function __soapCall($function_name, $arguments=array(), $options=array(), $input_headers=array(), $output_headers=array())
{
if (isset($this->ticket))
{
// Automatically add a security header
$input_headers[] = new SoapHeader($this->securityExtNS, "Security", null, 1);
// Set the JSESSION cookie value
$sessionId = Repository::getSessionId($this->ticket);
if ($sessionId != null)
{
$this->__setCookie("JSESSIONID", $sessionId);
}
}
return parent::__soapCall($function_name, $arguments, $options, $input_headers, $output_headers);
}
[...]
}
Kann mir jemand einen Hinweis auf die Ursache des Fehlers geben? Ich komme dem Ganzen einfach nicht auf die Spur und habe von der Soap-Integration keine wirkliche Ahnung.
Vielen Dank im Voraus!
lg
Nico
