Obviously, check if that class is available and where it is referred from in the code. As I remember, there isn't a package called "ntaskint", so check where this is coming from.
Cheers, Anjana. On Sat, Apr 12, 2014 at 6:46 AM, Ishan Jayawardena <is...@wso2.com> wrote: > We developed the quartz task manager and we are currently working on the > ntask task manager. While developing the task handling component that uses > ntask, we observed that we cannot schedule a task in it due to a class not > found error. See the below error message. The ntask component (which is > used by the component that we are currently writing) cannot load the actual > task implementation. Does anyone know how to get rid of this? > > java.lang.ClassNotFoundException: class org.wso2.carbon.ntaskint.core.Task > at > org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:501) > at > org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:421) > at > org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:412) > at > org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107) > at java.lang.ClassLoader.loadClass(ClassLoader.java:247) > at > org.wso2.carbon.ntask.core.impl.TaskQuartzJobAdapter.execute(TaskQuartzJobAdapter.java:58) > at org.quartz.core.JobRunShell.run(JobRunShell.java:213) > at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:439) > at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) > at java.util.concurrent.FutureTask.run(FutureTask.java:138) > at > java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918) > at java.lang.Thread.run(Thread.java:662) > Thanks, > Ishan. > > > > On Mon, Apr 7, 2014 at 9:11 AM, Anjana Fernando <anj...@wso2.com> wrote: > >> Hi Paul, >> >> Task Server is actually another server itself. NTask component is the >> task scheduling component we put to all our Carbon server when we need >> distributed task scheduling functionality. That component support >> scheduling tasks in a standalone manner (in a single server), or in a >> clustered mode for the distributed nature (it does the coordination using >> Hazelcast), or else, also a "remote" mode where it can interface with an >> external Task Server. >> >> So basically the full required functionality of distributed tasks can be >> achieved with the ntask component working in the clustered mode, where it >> identifies all the participating servers in the cluster and do the proper >> fail-over/load balanced scheduling of scheduled tasks. And they schedule >> the tasks themselves using their internal Quartz functionality. With TS, >> all the task triggering is offloaded to TS, where it will be sending HTTP >> messages to each server saying to execute the tasks. This should happen >> through the LB as I explained in the earlier mail. >> >> So basically Task Server = ntask component + remote tasks component. What >> any other Carbon server will need is just the ntask component for full task >> scheduling functionality. >> >> Cheers, >> Anjana. >> >> >> On Sat, Apr 5, 2014 at 1:43 PM, Paul Fremantle <p...@wso2.com> wrote: >> >>> Can someone clarify? I'm lost but I really don't understand why we are >>> creating any other approach than task server. It is the only approach that >>> scales clearly. Is our task server code too heavyweight? >>> >>> Paul >>> >>> >>> On 5 April 2014 08:47, Chanaka Fernando <chana...@wso2.com> wrote: >>> >>>> Hi Kasun/Anjana, >>>> >>>> I think what Anjana mentioned and Ishan mentioned are somewhat converge >>>> to same idea (even though they looks different). >>>> >>>> What we have discussed and agreed was that we are developing a separate >>>> carbon-component which is used for executing the ntask component. Since we >>>> need a common interface to support both the existing quartz based >>>> synapse-tasks implementation and the ntask component, we have defined the >>>> TaskManager interface. >>>> >>>> When ESB is loading the synapse configuration, it will create an object >>>> of type TaskManager according to the Task provider mentioned in the >>>> configuration. This task manager object will delegate the scheduling and >>>> other task related stuff to the respective implementation of the >>>> TaskManager (which can be either QuartzTaskManager or NTaskManager). >>>> >>>> @Kasun/Anjana: are we missing something here? >>>> >>>> >>>> Thanks, >>>> Chanaka >>>> >>>> >>>> On Sat, Apr 5, 2014 at 9:32 AM, Kasun Indrasiri <ka...@wso2.com> wrote: >>>> >>>>> >>>>> >>>>> >>>>> On Sat, Apr 5, 2014 at 9:22 AM, Anjana Fernando <anj...@wso2.com>wrote: >>>>> >>>>>> Hi Ishan, >>>>>> >>>>>> On Sat, Apr 5, 2014 at 7:33 AM, Ishan Jayawardena <is...@wso2.com>wrote: >>>>>> >>>>>>> Currently, we have developed following design and started to work on >>>>>>> it. >>>>>>> >>>>>>> Synapse will have defined the TaskManager, and Task interfaces whose >>>>>>> implementations will provide the concrete tasks and management of those >>>>>>> tasks depending on the scheduler(ie quartz or ntask). >>>>>>> For instance, for inbuilt quartz based task scheduling, we >>>>>>> will refactor and develop a quartz task manager, and a task type while >>>>>>> maintaining the compatibility with existing tasks. >>>>>>> Additionally, we are developing an ntask based task manager. >>>>>>> >>>>>>> We will introduce the following new element to synapse.xml that >>>>>>> provides the class name of the TaskManager implementation so that >>>>>>> Synapse >>>>>>> can create a single task manger object when it starts up. >>>>>>> <definitions xmlns="http://ws.apache.org/ns/synapse"> >>>>>>> <taskExecutor >>>>>>> provider="org.apache.synapse.task.NTaskTaskManager"/> >>>>>>> </definitions> >>>>>>> >>>>>> >>>>>> I guess the NTask based task manager implementation should have a >>>>>> WSO2 package name, since it is a WSO2 specific implementation, and >>>>>> something you will not ship with Synapse. >>>>>> >>>>>> Exactly. >>>>> I've mentioned this several times in our offline discussions as well.. >>>>> Why are putting a dependency from synapse to a WSO2 component? Again... >>>>> have a look at how we have integrated synapse registry with WSO2 registry. >>>>> This must be implemented as a carbon component. >>>>> >>>>> Cheers, >>>>>> Anjana. >>>>>> >>>>>> >>>>>>> >>>>>>> The class name of the Task implementation can be obtained at the >>>>>>> time the user adds a new task through the UI. By using that class >>>>>>> name, Synapse can create the task object, initialize it and hand it >>>>>>> over to >>>>>>> the task manager instance to schedule. >>>>>>> >>>>>>> Thanks, >>>>>>> Ishan. >>>>>>> >>>>>>> >>>>>>> >>>>>>> On Mon, Mar 24, 2014 at 8:23 PM, Isuru Udana <isu...@wso2.com>wrote: >>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> On Mon, Mar 24, 2014 at 8:04 PM, Sagara Gunathunga <sag...@wso2.com >>>>>>>> > wrote: >>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> On Mon, Mar 24, 2014 at 11:52 AM, Kasun Indrasiri >>>>>>>>> <ka...@wso2.com>wrote: >>>>>>>>> >>>>>>>>>> I would like to clarify the objective of this task: >>>>>>>>>> >>>>>>>>>> - Introduce the concept of a Task provider in to ESB. Which means >>>>>>>>>> any existing task (task config) can be ran on the available task >>>>>>>>>> provider( >>>>>>>>>> this can be ntask, quartz or anything) >>>>>>>>>> >>>>>>>>> >>>>>>>>> Is this means we continue to support Quartz as well ? >>>>>>>>> >>>>>>>> Yes. Idea is to introduce an interface at the synapse level which >>>>>>>> providers can implement. Quartz based implementation is one of the >>>>>>>> possible >>>>>>>> task provider implementation. >>>>>>>> >>>>>>>>> IMO for simple use cases it's important to continue support for >>>>>>>>> Quartz while Task server may fit into complex use cases. >>>>>>>>> >>>>>>>>> Thanks ! >>>>>>>>> >>>>>>>>> >>>>>>>>>> - However, the recipes concept is completely transparent at >>>>>>>>>> Synapse level. Simply we don't have to thing about recipes when >>>>>>>>>> doing this. >>>>>>>>>> Recipe(or Dish) can be consider as a place where specific logic is >>>>>>>>>> executed >>>>>>>>>> on top of generic task. >>>>>>>>>> - All the details on sequence deployment, template invocation is >>>>>>>>>> not related to ESB task provider concept. >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> On Sat, Mar 22, 2014 at 7:36 AM, Ishan Jayawardena < >>>>>>>>>> is...@wso2.com> wrote: >>>>>>>>>> >>>>>>>>>>> I am working on $subject to support scheduled invocation of >>>>>>>>>>> recipes in the ESB. This mainly includes replacing the existing >>>>>>>>>>> quartz >>>>>>>>>>> based task scheduler with ntask scheduler. The new task type is >>>>>>>>>>> based on >>>>>>>>>>> ntask, and it will be added as a new component in the mediation >>>>>>>>>>> category. >>>>>>>>>>> We can use the existing task management UI of the ESB to add and >>>>>>>>>>> manage >>>>>>>>>>> tasks. >>>>>>>>>>> >>>>>>>>>>> In addition to the task schedule information, template name and >>>>>>>>>>> template parameter values, a special property must be added to the >>>>>>>>>>> task >>>>>>>>>>> parameter list at the time of task creation so that the task can >>>>>>>>>>> invoke the >>>>>>>>>>> template within its execute method. >>>>>>>>>>> >>>>>>>>>>> The task, >>>>>>>>>>> reads properties and builds a synapse sequence by inserting >>>>>>>>>>> the recipe template in it, >>>>>>>>>>> deploys the sequence into synapse, >>>>>>>>>>> injects a message to the above sequence to invoke the >>>>>>>>>>> template. >>>>>>>>>>> >>>>>>>>>>> Thanks, >>>>>>>>>>> Ishan. >>>>>>>>>>> >>>>>>>>>>> -- >>>>>>>>>>> Ishan Jayawardena >>>>>>>>>>> Senior Software Engineer >>>>>>>>>>> Mobile: +94 (77) 408 2330 >>>>>>>>>>> >>>>>>>>>>> _______________________________________________ >>>>>>>>>>> Architecture mailing list >>>>>>>>>>> Architecture@wso2.org >>>>>>>>>>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> -- >>>>>>>>>> Kasun Indrasiri >>>>>>>>>> Software Architect >>>>>>>>>> WSO2, Inc.; http://wso2.com >>>>>>>>>> lean.enterprise.middleware >>>>>>>>>> >>>>>>>>>> cell: +94 77 556 5206 >>>>>>>>>> Blog : http://kasunpanorama.blogspot.com/ >>>>>>>>>> >>>>>>>>>> _______________________________________________ >>>>>>>>>> Architecture mailing list >>>>>>>>>> Architecture@wso2.org >>>>>>>>>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture >>>>>>>>>> >>>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> -- >>>>>>>>> Sagara Gunathunga >>>>>>>>> >>>>>>>>> Senior Technical Lead; WSO2, Inc.; http://wso2.com >>>>>>>>> V.P Apache Web Services; http://ws.apache.org/ >>>>>>>>> Linkedin; http://www.linkedin.com/in/ssagara >>>>>>>>> Blog ; http://ssagara.blogspot.com >>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> -- >>>>>>>> *Isuru Udana* >>>>>>>> Senior >>>>>>>> * Software Engineer* >>>>>>>> WSO2 Inc.; http://wso2.com >>>>>>>> email: isu...@wso2.com cell: +94 77 3791887 >>>>>>>> blog: http://mytecheye.blogspot.com/ >>>>>>>> twitter: http://twitter.com/isudana >>>>>>>> >>>>>>>> _______________________________________________ >>>>>>>> Architecture mailing list >>>>>>>> Architecture@wso2.org >>>>>>>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture >>>>>>>> >>>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> Ishan Jayawardena >>>>>>> Senior Software Engineer >>>>>>> Mobile: +94 (77) 408 2330 >>>>>>> >>>>>>> _______________________________________________ >>>>>>> Architecture mailing list >>>>>>> Architecture@wso2.org >>>>>>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture >>>>>>> >>>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> *Anjana Fernando* >>>>>> Technical Lead >>>>>> WSO2 Inc. | http://wso2.com >>>>>> lean . enterprise . middleware >>>>>> >>>>>> _______________________________________________ >>>>>> Architecture mailing list >>>>>> Architecture@wso2.org >>>>>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture >>>>>> >>>>>> >>>>> >>>>> >>>>> -- >>>>> Kasun Indrasiri >>>>> Software Architect >>>>> WSO2, Inc.; http://wso2.com >>>>> lean.enterprise.middleware >>>>> >>>>> cell: +94 77 556 5206 >>>>> Blog : http://kasunpanorama.blogspot.com/ >>>>> >>>> >>>> >>>> >>>> -- >>>> -- >>>> Chanaka Fernando >>>> >>>> Technical Lead >>>> WSO2, Inc.; http://wso2.com >>>> lean.enterprise.middleware >>>> >>>> mobile: +94 773337238 >>>> Blog : http://soatutorials.blogspot.com >>>> LinkedIn:http://www.linkedin.com/pub/chanaka-fernando/19/a20/5b0 >>>> Twitter:https://twitter.com/chanakaudaya >>>> Wordpress:http://chanakaudaya.wordpress.com >>>> >>>> >>>> >>>> >>>> _______________________________________________ >>>> Architecture mailing list >>>> Architecture@wso2.org >>>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture >>>> >>>> >>> >>> >>> -- >>> Paul Fremantle >>> CTO and Co-Founder, WSO2 >>> OASIS WS-RX TC Co-chair, Apache Member >>> >>> UK: +44 207 096 0336 >>> US: +1 646 595 7614 >>> >>> blog: http://pzf.fremantle.org >>> twitter.com/pzfreo >>> p...@wso2.com >>> >>> wso2.com Lean Enterprise Middleware >>> >>> Disclaimer: This communication may contain privileged or other >>> confidential information and is intended exclusively for the addressee/s. >>> If you are not the intended recipient/s, or believe that you may have >>> received this communication in error, please reply to the sender indicating >>> that fact and delete the copy you received and in addition, you should not >>> print, copy, retransmit, disseminate, or otherwise use the information >>> contained in this communication. Internet communications cannot be >>> guaranteed to be timely, secure, error or virus-free. The sender does not >>> accept liability for any errors or omissions. >>> >> >> >> >> -- >> *Anjana Fernando* >> Technical Lead >> WSO2 Inc. | http://wso2.com >> lean . enterprise . middleware >> > > > > -- > Ishan Jayawardena > Senior Software Engineer > Mobile: +94 (77) 408 2330 > -- *Anjana Fernando* Technical Lead WSO2 Inc. | http://wso2.com lean . enterprise . middleware
_______________________________________________ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture