Probl. Workflow Konvertierung

cancel
Showing results for 
Search instead for 
Did you mean: 
dmc
Active Member

Probl. Workflow Konvertierung

Hallo allerseits,

habe folgendes Problem: Alfresco2.0 auf Debian Etch - läuft, OpenOffice 2.x - läuft auch, ich habe eine Inhalts-Regel angelegt, die beim Hochladen einer Datei in einen userworkspace diese in ein OO.Writer-Dokument konvertiert wenn es sich um ein Word-Dokument handelt. Nach dem Upload erhalte ich aber nur folgende Fehlermeldung:

Bitte korrigieren Sie die unten genannten Fehler und klicken sie auf OK.
Die Operation Transaction didn't commit: Failed to execute transaction-level behaviour public abstract void org.alfresco.repo.node.NodeServicePolicies$OnAddAs pectPolicy.onAddAspect(org.alfresco.service.cmr.re pository.NodeRef,org.alfresco.service.namespace.QN ame) in transaction 24864cb2-0d2e-11dc-b92e-97f8e08b513f hat einen Systemfehler verursacht.

Eine Konvertierung von Hand funktioniert problemlos. Die Konvertierung anderer Formate bringt ähnliche Fehlermeldungen. Das gleiche passiert auch bei der automatischen Konvertierung von Grafikdateien. Hat jemand eine Idee was die Fehlermeldung bedeutet und wie ich den fehler abstellen kann?
Vielen Dank.
mfg. Mirko


Geändert von mhard666 (28.05.2007 um 17:41 Uhr). Grund: weitere Erkenntnisse
12 Replies
dmc
Active Member

Re: Probl. Workflow Konvertierung

Hallo Mirko,

seltsam. Vielleicht liefert das Log-File (im Alfresco-Verzeichnis: alfresco.log) eine Erklärung mit mehr Aussagekraft?

Grüße
dmc
Active Member

Re: Probl. Workflow Konvertierung

Hi,

wurde die Ursache schon gefunden? Da auch andere Formate nicht über Alfresco konvertiert werden können, würde ich eher von einem allgemeinen Problem ausgehen.
Beim Alfresco-Start steht im alfresco.log, ob die Verbindung zu OpenOffice hergestellt werden konnte oder nicht. Das wäre die erste Anlaufstelle.
Was auch nicht geht ist Alfresco auf Linux und OpenOffice auf Windows oder andersrum.

Aber wie Milton schon angeregt hatte, im alfresco.log ist bei Fehlern ein Stacktrace zu finden, der einem in der Regel weiterhilft.
dmc
Active Member

Re: Probl. Workflow Konvertierung

Hallo,
ich hab mir das logfile mal angesehen - hab ein ganz frisches erzeugt (nur Alfresco start und Konvertierungsversuch). Ich hab im Log nichts gefunden was auf erfolgreiche/fehlgeschlagene Konnektivität zu OO deutet. Andererseits, wenn ich in den Dateieigenschaften -> Aktion starten eine Transformation (Dokumente oder Bilder) anschiebe funktioniert das ja.
Ich häng mal auszugsweise das log an - ich hab leider überhaupt keinen Plan was die einzelnen Zeilen bedeuten, geschweige denn wie Abhilfe zu schaffen wär :
17:10:19,435 WARN  [org.springframework.remoting.rmi.RmiRegistryFactoryBean] Could not detect RMI registry - creating new one
17:10:43,467 INFO  [org.alfresco.repo.admin.ConfigurationChecker] The Alfresco root data directory ('dir.root') is: /opt/alfresco/alf_data
17:10:44,709 INFO  [org.alfresco.repo.admin.patch.PatchExecuter] Sucht nach anwendbaren Patches
17:10:44,781 INFO  [org.alfresco.repo.admin.patch.PatchExecuter] Es sind keine Patches erforderlich
17:10:44,790 INFO  [org.alfresco.repo.module.ModuleServiceImpl] Found 0 module(s).
17:10:46,233 INFO  [org.alfresco.service.descriptor.DescriptorService] Alfresco JVM - v1.5.0_10-b03; maximum heap size 506,313MB
17:10:46,234 INFO  [org.alfresco.service.descriptor.DescriptorService] Alfresco started (Community Network): Current version 2.0.0 (build-185) schema 38 - Installed version 2.0.0 (build-185) schema 38
17:13:20,252 ERROR [org.alfresco.util.transaction.SpringAwareUserTransaction] Transaction didn't commit
org.alfresco.error.AlfrescoRuntimeException: Failed to execute transaction-level behaviour public abstract void org.alfresco.repo.node.NodeServicePolicies$OnAddAspectPolicy.onAddAspect(org.alfresco.service.cmr.repository.NodeRef,org.alfresco.service.namespace.QName) in transaction d3a06198-0f91-11dc-94d4-b392c7b49135
   at org.alfresco.repo.policy.TransactionBehaviourQueue.execute(TransactionBehaviourQueue.java:201)
   at org.alfresco.repo.policy.TransactionBehaviourQueue.queue(TransactionBehaviourQueue.java:97)
   at org.alfresco.repo.policy.TransactionInvocationHandlerFactory$TransactionHandler.invoke(TransactionInvocationHandlerFactory.java:151)
   at $Proxy35.onAddAspect(Unknown Source)
   at sun.reflect.GeneratedMethodAccessor231.invoke(Unknown Source)

Caused by: org.springframework.dao.DataIntegrityViolationException: Non-root node has no primary parent:
   child: workspace://SpacesStore/d918122d-0f91-11dc-94d4-b392c7b49135
   at org.alfresco.repo.node.db.hibernate.HibernateNodeDaoServiceImpl.getPrimaryParentAssoc(HibernateNodeDaoServiceImpl.java:942)
   at sun.reflect.GeneratedMethodAccessor159.invoke(Unknown Source)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
   at java.lang.reflect.Method.invoke(Method.java:585)

17:13:20,362 ERROR [org.alfresco.web.ui.common.Utils] Die Operation Transaction didn't commit: Failed to execute transaction-level behaviour public abstract void org.alfresco.repo.node.NodeServicePolicies$OnAddAspectPolicy.onAddAspect(org.alfresco.service.cmr.repository.NodeRef,org.alfresco.service.namespace.QName) in transaction d3a06198-0f91-11dc-94d4-b392c7b49135 hat einen Systemfehler verursacht.
javax.transaction.RollbackException: Transaction didn't commit: Failed to execute transaction-level behaviour public abstract void org.alfresco.repo.node.NodeServicePolicies$OnAddAspectPolicy.onAddAspect(org.alfresco.service.cmr.repository.NodeRef,org.alfresco.service.namespace.QName) in transaction d3a06198-0f91-11dc-94d4-b392c7b49135
   at org.alfresco.util.transaction.SpringAwareUserTransaction.commit(SpringAwareUserTransaction.java:412)
   at org.alfresco.web.bean.dialog.BaseDialogBean.finish(BaseDialogBean.java:118)
   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
   at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
   at java.lang.reflect.Method.invoke(Method.java:585)

Caused by: org.alfresco.error.AlfrescoRuntimeException: Failed to execute transaction-level behaviour public abstract void org.alfresco.repo.node.NodeServicePolicies$OnAddAspectPolicy.onAddAspect(org.alfresco.service.cmr.repository.NodeRef,org.alfresco.service.namespace.QName) in transaction d3a06198-0f91-11dc-94d4-b392c7b49135
   at org.alfresco.repo.policy.TransactionBehaviourQueue.execute(TransactionBehaviourQueue.java:201)
   at org.alfresco.repo.policy.TransactionBehaviourQueue.queue(TransactionBehaviourQueue.java:97)
   at org.alfresco.repo.policy.TransactionInvocationHandlerFactory$TransactionHandler.invoke(TransactionInvocationHandlerFactory.java:151)
   at $Proxy35.onAddAspect(Unknown Source)
   at sun.reflect.GeneratedMethodAccessor231.invoke(Unknown Source)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)

Caused by: org.springframework.dao.DataIntegrityViolationException: Non-root node has no primary parent:
   child: workspace://SpacesStore/d918122d-0f91-11dc-94d4-b392c7b49135
   at org.alfresco.repo.node.db.hibernate.HibernateNodeDaoServiceImpl.getPrimaryParentAssoc(HibernateNodeDaoServiceImpl.java:942)
   at sun.reflect.GeneratedMethodAccessor159.invoke(Unknown Source)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
   at java.lang.reflect.Method.invoke(Method.java:585)
   at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:335)
dmc
Active Member

Re: Probl. Workflow Konvertierung

Caused by: org.springframework.dao.DataIntegrityViolationExce ption: Non-root node has no primary parent:
child: workspace://SpacesStore/d918122d-0f91-11dc-94d4-b392c7b49135
Das ist ein Problem, das eigentlich nichts mit der Konvertierung zu tun hat, sondern das deutet auf Inkonsistenzen in der Datenhaltung und bedeutet grob übersetzt, dass eine Datei keinen dazugehörigen Space hat.

Welche Datenbank wird denn verwendet? Kann man denn überhaupt eine Datei hochladen?

Der Stacktrace ist ja "bereinigt", da ist es schwierig mehr draus auszulesen. Du könntest auch die eigenen Klassen durch org.package ersetzten. Aber was man erkennt ist, dass die Ex. aus addAspect() kommt. Wahrscheinlich ist da ausserdem noch eine "Aspekt hinzufügen" Rule/Action involviert und das hat nichts mit der Transform Action zu tun. Könnte eine vererbte Regel sein.

Am besten man versucht den Fehler mit einem nicht nur neu gestarteten, sondern auch komplett geleerten/neu aufgesetzten Alfresco zu isolieren.

so long,
knutella
dmc
Active Member

Re: Probl. Workflow Konvertierung

Hi knutella,

das ist schon erstaunlich - habe das System eigentlich gerade erst aufgesetzt und noch gar nicht richtig am laufen.
Dateien hochladen geht auch einwandfrei - wenn keine Regeln im spiel sind.
Datenbank ist MySql 5.0

Fehler in neu aufgesetztem/komplett geleertem Alfresco isolieren heißt Datenbank löschen und neu anlegen und alfresco-ordner auch noch mal löschen und Alfresco neu installieren und einrichten?
dmc
Active Member

Re: Probl. Workflow Konvertierung

Der einfachste Weg, das System neu aufzusetzen ist bei der mysql ein drop database alfresco;create database alfresco;
Dazu dann noch das alf_data Verzeichnis leeren.
…wenn keine Regeln im spiel sind.
Welche anderen Regeln sind denn aktiv?

Kann es sein, dass der Ziel-Ordner für die konvertierte Datei gar nicht existiert?
dmc
Active Member

Re: Probl. Workflow Konvertierung

nee, sind keine anderen Regeln im Spiel - ich meinte genau die bezüglich der transformation.
Der Zielordner ist definitiv vorhanden, ich habe unter- und übergeordnete sowie den gleichen Ordner probiert - in allen hab ich irgendwelche Dateien erfolgreich hochgeladen und in alle habe ich händisch transformiert und kopiert. Abgesehen davon muss ich beim erstellen der Regel ja einen vorhandenen Ordner angeben - ok, könnt ich danach gelöscht haben, hab ich aber auch nicht.

mit nem create database alfresco hab ich doch nur ne leere Datenbank - ohne tabellen und so, oder lieg ich da falsch? muss ich da nicht noch mal das datenbankscript für mysql drüberlaufen lassen?
dmc
Active Member

Re: Probl. Workflow Konvertierung

Alfresco legt die Tabellen bei einer leeren Datenbank von selbst neu an. Wenn nötig, vorher noch ein backup der Daten durchführen.
dmc
Active Member

Re: Probl. Workflow Konvertierung

hab gestern Datenbank neu angelegt und alf_data geleert (gelöscht und aus dem Install-tar.gz das ursprügliche Verzeichnis kopiert) - Fehler tritt wieder auf
Werd vielleicht doch noch mal das Komplette alfresco neu machen (also tar.gz entpacken und Alfresco einrichten).

Hab grad im englischen Forum ne Antwort bekommen:

We fixed that bug in 1.4 Enterprise and 2.0.1 Enterprise. It is in the current HEAD code, if you want to test it.


Also nix neu installieren - auch gut, nur dass ich als nicht-Enterprise-User dann noch ein weilchen auf den Fix warten kann.


Geändert von mhard666 (01.06.2007 um 15:24 Uhr).