Hello all,

I hope someone can help me figure what am I doing wrong. I went through the manual in installing the worklet service through using the WAR file and making all of the configurations needed. But I found out each time I add the worklet into YAWL custom service and save it, when I reopen the file the worklet custom service is gone.

I made sure that I added the worklet NtreatFever.yawl into the worklet folder as specified in the manual. Do I have to add the actual specification somewhere to make it work?

Please see attachment for my YAWL files and let me know your feedback. I appreciate your help and time.

Thank you,

NTreatment.yawl (30.47 KB)
NTreatFever.yawl (10.85 KB)

Hi,

I just tried the example you gave me but it still did not work. I am realizing whenever I choose custom service = the worklet service and save, when I re-open the file it shows it is using the default.

I made sure the rule is placed under the rules folder and the Display worklet is in the worklet folder in repository but at runtime it is not working. I think mostly because custom service is not saving.

I hope you can help me?

N

Please see attachment for the log file. I hope you can help me solve this problem.

Thank you

"2016-03-26 16:53:21,056 [INFO ] WorkletService :- Exception monitoring and handling is disabled
2016-03-26 16:53:49,309 [INFO ] WorkletService :- HANDLE ENABLED WORKITEM EVENT
2016-03-26 16:53:49,315 [INFO ] WorkletService :- Connection to engine is active
2016-03-26 16:53:49,315 [INFO ] WorkletService :- Received workitem for worklet substitution: 1:ShowValue
2016-03-26 16:53:49,316 [INFO ] WorkletService :- specId = MainProcess - version 0.5
2016-03-26 16:53:49,382 [INFO ] RdrSetLoader :- Noha LOAD YSpecificationID= UID_78fa6a2c-8df5-4ca1-a2dc-ee2f3b662f0a
2016-03-26 16:53:49,429 [ERROR] RdrSetLoader :- Exception retrieving rule nodes from rules file
java.lang.ClassCastException: org.yawlfoundation.yawl.worklet.exception.ExletAction cannot be cast to java.lang.String
at org.hibernate.type.descriptor.java.StringTypeDescriptor.unwrap(StringTypeDescriptor.java:39)
at org.hibernate.type.descriptor.sql.VarcharTypeDescriptor$1.doBind(VarcharTypeDescriptor.java:57)
at org.hibernate.type.descriptor.sql.BasicBinder.bind(BasicBinder.java:92)
at org.hibernate.type.AbstractStandardBasicType.nullSafeSet(AbstractStandardBasicType.java:280)
at org.hibernate.type.AbstractStandardBasicType.nullSafeSet(AbstractStandardBasicType.java:275)
at org.hibernate.type.ComponentType.nullSafeSet(ComponentType.java:381)
at org.hibernate.persister.collection.AbstractCollectionPersister.writeElement(AbstractCollectionPersister.java:867)
at org.hibernate.persister.collection.AbstractCollectionPersister.recreate(AbstractCollectionPersister.java:1257)
at org.hibernate.action.internal.CollectionRecreateAction.execute(CollectionRecreateAction.java:58)
at org.hibernate.engine.spi.ActionQueue.execute(ActionQueue.java:362)
at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:354)
at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:279)
at org.hibernate.event.internal.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:326)
at org.hibernate.event.internal.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:52)
at org.hibernate.internal.SessionImpl.flush(SessionImpl.java:1213)
at org.hibernate.internal.SessionImpl.managedFlush(SessionImpl.java:402)
at org.hibernate.engine.transaction.internal.jdbc.JdbcTransaction.beforeTransactionCommit(JdbcTransaction.java:101)
at org.hibernate.engine.transaction.spi.AbstractTransactionImpl.commit(AbstractTransactionImpl.java:175)
at org.yawlfoundation.yawl.util.HibernateEngine.exec(HibernateEngine.java:154)
at org.yawlfoundation.yawl.worklet.support.Persister.persist(Persister.java:86)
at org.yawlfoundation.yawl.worklet.support.Persister.insert(Persister.java:78)
at org.yawlfoundation.yawl.worklet.rdr.RdrSetLoader.buildFromNode(RdrSetLoader.java:221)
at org.yawlfoundation.yawl.worklet.rdr.RdrSetLoader.buildFromNode(RdrSetLoader.java:229)
at org.yawlfoundation.yawl.worklet.rdr.RdrSetLoader.buildTree(RdrSetLoader.java:198)
at org.yawlfoundation.yawl.worklet.rdr.RdrSetLoader.buildItemLevelTree(RdrSetLoader.java:163)
at org.yawlfoundation.yawl.worklet.rdr.RdrSetLoader.load(RdrSetLoader.java:72)
at org.yawlfoundation.yawl.worklet.rdr.RdrSetLoader.loadFile(RdrSetLoader.java:58)
at org.yawlfoundation.yawl.worklet.rdr.RdrSetLoader.load(RdrSetLoader.java:31)
at org.yawlfoundation.yawl.worklet.rdr.Rdr.getRdrSet(Rdr.java:111)
at org.yawlfoundation.yawl.worklet.rdr.Rdr.getTree(Rdr.java:224)
at org.yawlfoundation.yawl.worklet.rdr.Rdr.getRdrTree(Rdr.java:132)
at org.yawlfoundation.yawl.worklet.WorkletService.getTree(WorkletService.java:1418)
at org.yawlfoundation.yawl.worklet.WorkletService.evaluate(WorkletService.java:1381)
at org.yawlfoundation.yawl.worklet.WorkletService.evaluate(WorkletService.java:1369)
at org.yawlfoundation.yawl.worklet.WorkletService.handleWorkletSelection(WorkletService.java:526)
at org.yawlfoundation.yawl.worklet.WorkletService.handleEnabledWorkItemEvent(WorkletService.java:288)
at org.yawlfoundation.yawl.engine.interfce.interfaceB.InterfaceB_EnvironmentBasedServer.processPostQuery(InterfaceB_EnvironmentBasedServer.java:160)
at org.yawlfoundation.yawl.engine.interfce.interfaceB.InterfaceB_EnvironmentBasedServer.doPost(InterfaceB_EnvironmentBasedServer.java:128)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:648)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:292)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
at org.yawlfoundation.yawl.util.CharsetFilter.doFilter(CharsetFilter.java:51)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:212)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:141)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:616)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:522)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1095)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:672)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1500)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1456)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:745)
2016-03-26 16:53:49,430 [WARN ] WorkletService :- Rule set does not contain rules for task: ShowValue OR No rule set found for specId: MainProcess - version 0.5"

Hello Ahense,

I tried to get the worklet to start but I am still having the errors. This is my latest error, I have been working hard to make it work but not sure what am I doing wrong.

Thank you,

Noh