- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Rekursiver Freigabe-Workflow
Hallo!
Aktuell stoรe ich auf das Problem / den Wunsch, dass der bisherige Freigabe-Workflow (Modell einfaches 4-Augen-Prinzip) deutlich erweitert werden muss. Eine Herausforderung dabei ist, dass es mรถglich sein muss, Ordner komplett rekursiv freizugeben. Sprich im Medien-Bereich ganze Verzeichnisse mit Grafiken zum Beispiel, oder wenn man im Inhalt 20 Seiten unterhalb eines Menรผpunktes geรคndert hat, dass man dann alle diese Seiten mit einem Arbeitsschritt freigeben kann.
Bei der Suche hier in der Community bin ich auf einen Verweis auf folgende Seite gestoรen:
https://github.com/e-Spirit/basicworkflows
Der Freigabeworkflow dort klingt schon sehr sehr gut, aber ich glaube nicht, dass er mein Problem zur Gรคnze lรถst. Das ist natรผrlich noch umfangreich zu testen.
Hat jemand so einen Freigabe-Workflow wie von mir beschrieben schon mal umgesetzt? Vielleicht ist jemand auch bereit, mir diesen zur Verfรผgung zu stellen.
Danke fรผr Eure Mithilfe im Voraus!
Grรผรe
Marcus
- Labels:
-
Developers
-
Documentation
-
Knowledgebase
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hallo Marcus,
ein kleiner (aber hoffentlich hilfreicher) Werbeeinwurf: Wir bieten fรผr genau solche Szenarien eine Projektlรถsung an:
http://www.e-spirit.com/marketplace/de/workflow-framework
Viele Grรผรe
Sascha
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Habe mal den in meiner Mail beschriebenen Freigabeworkflow getestet. Der scheitert jedoch sofort bei Ausfรผhrung:
Client Version: 5.1.410.67084
Java Version: 1.7.0_03 Oracle Corporation
FSVersion=5.1.410.67084#3298;JDK=1.7.0_03 32bit Oracle Corporation;OS=Windows 7 6.1 x86;Date=12.06.2015 09:48:16
de.espirit.firstspirit.access.script.SyntaxError: java.lang.ClassNotFoundException: com.espirit.moddev.basicworkflows.release.WfFindRelatedObjectsExecutable
at de.espirit.firstspirit.server.script.ClassCallerEngine.getExecutable(ClassCallerEngine.java:46)
at de.espirit.firstspirit.common.ScriptUtil.getExecutable(ScriptUtil.java:86)
at de.espirit.firstspirit.store.access.templatestore.ScriptImpl.getExecutable(ScriptImpl.java:275)
at de.espirit.firstspirit.server.taskmanagement.TaskImpl.doTransition(TaskImpl.java:1085)
at de.espirit.firstspirit.server.taskmanagement.TaskImpl.doAutomaticActivities(TaskImpl.java:1524)
at de.espirit.firstspirit.server.taskmanagement.TaskImpl.doTransition(TaskImpl.java:1157)
at de.espirit.firstspirit.server.taskmanagement.TaskImpl.doTransition(TaskImpl.java:1025)
at de.espirit.firstspirit.client.action.WorkflowAction.startWorkflow(WorkflowAction.java:475)
at de.espirit.firstspirit.client.action.WorkflowAction.startWorkflow(WorkflowAction.java:89)
at de.espirit.firstspirit.client.action.WorkflowAction.startWorkflow(WorkflowAction.java:98)
at de.espirit.firstspirit.client.action.WorkflowUtil.startWorkflow(WorkflowUtil.java:65)
at de.espirit.firstspirit.client.action.WorkflowMenuAction$WFStartAction.actionPerformed(WorkflowMenuAction.java:269)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2018)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2341)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
at javax.swing.AbstractButton.doClick(AbstractButton.java:376)
at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:833)
at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:877)
at java.awt.Component.processMouseEvent(Component.java:6505)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3321)
at java.awt.Component.processEvent(Component.java:6270)
at java.awt.Container.processEvent(Container.java:2229)
at java.awt.Component.dispatchEventImpl(Component.java:4861)
at java.awt.Container.dispatchEventImpl(Container.java:2287)
at java.awt.Component.dispatchEvent(Component.java:4687)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4492)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422)
at java.awt.Container.dispatchEventImpl(Container.java:2273)
at java.awt.Component.dispatchEvent(Component.java:4687)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:707)
at java.awt.EventQueue.access$000(EventQueue.java:101)
at java.awt.EventQueue$3.run(EventQueue.java:666)
at java.awt.EventQueue$3.run(EventQueue.java:664)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
at java.awt.EventQueue$4.run(EventQueue.java:680)
at java.awt.EventQueue$4.run(EventQueue.java:678)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:677)
at de.espirit.firstspirit.client.AWTDispatchingEventQueue.defaultDispatchEvent(AWTDispatchingEventQueue.java:161)
at de.espirit.firstspirit.client.AWTDispatchingEventQueue._dispatchEvent(AWTDispatchingEventQueue.java:138)
at de.espirit.firstspirit.client.AWTDispatchingEventQueue.dispatchEvent(AWTDispatchingEventQueue.java:131)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:211)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:128)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:117)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:113)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
Caused by: java.lang.ClassNotFoundException: com.espirit.moddev.basicworkflows.release.WfFindRelatedObjectsExecutable
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at de.espirit.firstspirit.server.module.ExtendedUrlClassLoader.findClass(ExtendedUrlClassLoader.java:92)
at de.espirit.firstspirit.server.module.ModuleClassesLoader.findClass(ModuleClassesLoader.java:135)
at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
at de.espirit.firstspirit.server.module.MutableClassLoader.loadClass(MutableClassLoader.java:121)
at de.espirit.firstspirit.server.script.ClassCallerEngine.getExecutable(ClassCallerEngine.java:42)
... 51 more
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Wo muss ich die mitgelieferten java-Klassen (als jar dann natรผrlich) auf den FS-Server packen? In server\lib oder shared\lib?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
So, habe das nun als Modul gebaut. Damit zieht er alle Klassen an.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Der Basicworkflow ist wie der Name schon sagt ein basic Workflow. D.h. wenn er fรผr deinen Anwendungsfall ausreichend ist, dann ist das super. Hast du aber in deinem Projekt spezielle Anforderungen an die Freigabe, muss er dementsprechend angepasst werden.
Viele Gรผรe
Thorsten

