I’m getting the following exception while searching tasks using Search Task web service or portal client API.
I’m using wM 7.1.1 and Oracle 10g. Sometimes the query works fine but fails another time.
electric.util.WrappedException: SOAPException( Server.userException: java.io.IOException: com.webMethods.portal.service.meta2.MetaException: [POP.001.0002] A “java.sql.SQLException” occurred with the Message “[wm-cjdbc36-0039][Oracle JDBC Driver]Invalid operation for the current cursor position.” )
Could you please be specific about what particular query fails. You may set TASK logging category in MWS to Debug, this should print out all queries being executed, so we should see it before an exception
Second, there are likely additional exceptions found in the MWS logs, those you have attached do not provide exact details on where it failed. If you can cleanly reproduce error, then attach portion of MWS logs starting from the very first exception observed + debug traces of query details.
I would like also to question on why from your CAF application (not sure if this is task application or just a general CAF app) you need to use PCTaskClient remote APIs to talk via web services to very same MWS where task engine is running. PCTaskClient is to be used by any external applications needed to access TE. From MWS app you can use embedeed and much more efficient APIs, like when you create Custom Task Inbox you may see its using TaskSearchContentProvider which exposes a functionally identical search interface.
Is there any Java API to talk to TE if I am not using task application. The only document I found was the TE webservice API and the wrapper Java API (PCTaskClient) on top of these webservice operations. Is there any documentation on using these API’s if I am using simple CAF application to get task mertics (not task application with custom Inbox).
If you create a task application with inbox it uses two JSF managed beans to obtain a single task instance and to search for task. Both beans are custom generated in your task application and used respectively on the TaskDetails and TaskInboxResults portlets.
These are direct java APIs into a TE which you can use from any other portlet in the same application