Experiencing Problems in using the 'searchTaskFields' built-in service !

Hi guys … I’m trying to use the built-in ‘searchTaskFields’ service to perform a search, but I’m having problems:

  1. If I manually try to specify the inputs to use before running the ‘searchTaskFields’, the ‘value’ field is locked … That is, I’m unable to specify and value for the ‘value’ field …

  2. To counter the above problem, I’ve created a small flow service to pass the inputs into the ‘searchTaskFields’ service, and now it seems I AM able to pass it, but now the problem is that: whenever the search has a non-emtpy returning list, instead of getting that list, I get a NullPointerException (full error given below) … Whenever the search is crafted to NOT have any valid finds, no exception is generated, but then the output is empty too … It seems that the Null Pointer Exception is generated whenever the search is specified so that it does have valid finds …

The full error I get is the following:

com.wm.util.BasisException: SOAPException( Server.userException: com.webmethods.portal.bizPolicy.BizException: [POP.001.0002] A "java.lang.NullPointerException" occurred with the Message "at com.webmethods.portal.bizPolicy.command.task.webservice.SearchTasksFieldsWS.handle(SearchTasksFieldsWS.java:76)" )
	at com.wm.util.BasisRuntimeException.<init>(BasisRuntimeException.java:121)
	at com.wm.app.b2b.server.ISRuntimeException.<init>(ISRuntimeException.java:183)
	at pub.task.taskclient.searchTasksFields(taskclient.java:236)
	at sun.reflect.GeneratedMethodAccessor87.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at com.wm.app.b2b.server.JavaService.baseInvoke(JavaService.java:439)
	at com.wm.app.b2b.server.invoke.InvokeManager.process(InvokeManager.java:643)
	at com.wm.app.b2b.server.util.tspace.ReservationProcessor.process(ReservationProcessor.java:46)
	at com.wm.app.b2b.server.invoke.StatisticsProcessor.process(StatisticsProcessor.java:44)
	at com.wm.app.b2b.server.invoke.ServiceCompletionImpl.process(ServiceCompletionImpl.java:243)
	at com.wm.app.b2b.server.invoke.ValidateProcessor.process(ValidateProcessor.java:51)
	at com.wm.app.b2b.server.invoke.PipelineProcessor.process(PipelineProcessor.java:171)
	at com.wm.app.b2b.server.ACLManager.process(ACLManager.java:276)
	at com.wm.app.b2b.server.invoke.DispatchProcessor.process(DispatchProcessor.java:30)
	at com.wm.app.b2b.server.AuditLogManager.process(AuditLogManager.java:363)
	at com.wm.app.b2b.server.invoke.InvokeManager.invoke(InvokeManager.java:547)
	at com.wm.app.b2b.server.invoke.InvokeManager.invoke(InvokeManager.java:386)
	at com.wm.app.b2b.server.ServiceManager.invoke(ServiceManager.java:234)
	at com.wm.app.b2b.server.BaseService.invoke(BaseService.java:194)
	at com.wm.lang.flow.FlowInvoke.invoke(FlowInvoke.java:324)
	at com.wm.lang.flow.FlowState.invokeNode(FlowState.java:584)
	at com.wm.lang.flow.FlowState.step(FlowState.java:444)
	at com.wm.lang.flow.FlowState.invoke(FlowState.java:409)
	at com.wm.app.b2b.server.FlowSvcImpl.baseInvoke(FlowSvcImpl.java:1057)
	at com.wm.app.b2b.server.invoke.InvokeManager.process(InvokeManager.java:643)
	at com.wm.app.b2b.server.util.tspace.ReservationProcessor.process(ReservationProcessor.java:46)
	at com.wm.app.b2b.server.invoke.StatisticsProcessor.process(StatisticsProcessor.java:44)
	at com.wm.app.b2b.server.invoke.ServiceCompletionImpl.process(ServiceCompletionImpl.java:243)
	at com.wm.app.b2b.server.invoke.ValidateProcessor.process(ValidateProcessor.java:51)
	at com.wm.app.b2b.server.invoke.PipelineProcessor.process(PipelineProcessor.java:171)
	at com.wm.app.b2b.server.ACLManager.process(ACLManager.java:276)
	at com.wm.app.b2b.server.invoke.DispatchProcessor.process(DispatchProcessor.java:30)
	at com.wm.app.b2b.server.AuditLogManager.process(AuditLogManager.java:363)
	at com.wm.app.b2b.server.invoke.InvokeManager.invoke(InvokeManager.java:547)
	at com.wm.app.b2b.server.invoke.InvokeManager.invoke(InvokeManager.java:386)
	at com.wm.app.b2b.server.ServiceManager.invoke(ServiceManager.java:234)
	at com.wm.app.b2b.server.comm.DefaultServerRequestHandler.handleMessage(DefaultServerRequestHandler.java:119)
	at com.wm.app.b2b.server.HTTPMessageHandler.process(HTTPMessageHandler.java:160)
	at com.wm.app.b2b.server.HTTPDispatch.handleRequest(HTTPDispatch.java:181)
	at com.wm.app.b2b.server.Dispatch.run(Dispatch.java:354)
	at com.wm.util.pool.PooledThread.run(PooledThread.java:131)
	at java.lang.Thread.run(Thread.java:662)

Any ideas what might be causing this ? … I’ve tried changing all kinds of variables (e.g. what field is being searched, what value is being searched, what type of tasks are being searched, etc …), and the result is as described above …

Any ideas ?

Hi Ahmad,
Not sure if your issue is resolved, but you need to have a string list named fields in your pipeline when you run this service. the fields should have the expression for getting the result fields for the corresponding tasks.

Regards,
Sravan