Posts tagged "InvalidCoercionException"

LiveCycle ES: ALC-DSC-119-000: InvalidCoercionException using a custom component

Issue

The exception below occurs when using a custom component (DSC) in LiveCycle ES 8.2.1 designed to extend the functionality provided by the services from Adobe. The component includes the TaskManager DSC JAR file.

####<09-Jul-2010 15:04:21 o'clock CEST> <Error> <com.adobe.workflow.AWS> <PI> <server1> <[ACTIVE] ExecuteThread: '1' for queue: 'weblogic.kernel.Default (self-tuning)'> 
<<anonymous>> <BEA1-2CB96822045F171B0B4D> <> <1278680661381> <000000> <stalling action-instance: 2101 with message: Cannot coerce object: 
com.adobe.idp.taskmanager.dsc.userservice.UserServiceInfo@33142fb of type: com.adobe.idp.taskmanager.dsc.userservice.UserServiceInfo to type: 
class com.adobe.idp.taskmanager.dsc.userservice.UserServiceInfo:

ALC-DSC-119-000: com.adobe.idp.dsc.util.InvalidCoercionException: Cannot coerce object: com.adobe.idp.taskmanager.dsc.userservice.UserServiceInfo@33142fb of type: 
com.adobe.idp.taskmanager.dsc.userservice.UserServiceInfo to type: class com.adobe.idp.taskmanager.dsc.userservice.UserServiceInfo
at com.adobe.idp.dsc.util.CoercionUtil.toType(CoercionUtil.java:1047)
at com.adobe.workflow.datatype.CoercionUtil.toType(CoercionUtil.java:168)
at com.adobe.workflow.engine.PEUtil.processMapping(PEUtil.java:968)
at com.adobe.workflow.engine.PEUtil.invokeAction(PEUtil.java:666)
at com.adobe.workflow.engine.SynchronousBranch.handleInvokeAction(SynchronousBranch.java:466)
at com.adobe.workflow.engine.SynchronousBranch.execute(SynchronousBranch.java:863)
at com.adobe.workflow.engine.ProcessEngineBMTBean.continueBranchAtAction(ProcessEngineBMTBean.java:2773)
at com.adobe.workflow.engine.ProcessEngineBMTBean.asyncInvokeProcessCommand(ProcessEngineBMTBean.java:704)
at com.adobe.workflow.engine.adobe_ProcessEngineBMTEJB_e5zjcz_ELOImpl.asyncInvokeProcessCommand(adobe_ProcessEngineBMTEJB_e5zjcz_ELOImpl.java:1697)
at com.adobe.workflow.engine.ProcessCommandControllerBean.doOnMessage(ProcessCommandControllerBean.java:156)
at com.adobe.workflow.engine.ProcessCommandControllerBean.onMessage(ProcessCommandControllerBean.java:99)
at weblogic.ejb.container.internal.MDListener.execute(MDListener.java:429)
at weblogic.ejb.container.internal.MDListener.transactionalOnMessage(MDListener.java:335)
at weblogic.ejb.container.internal.MDListener.onMessage(MDListener.java:291)
at weblogic.jms.client.JMSSession.onMessage(JMSSession.java:4072)
at weblogic.jms.client.JMSSession.execute(JMSSession.java:3962)
at weblogic.jms.client.JMSSession$UseForRunnable.run(JMSSession.java:4490)
at weblogic.work.ServerWorkManagerImpl$WorkAdapterImpl.run(ServerWorkManagerImpl.java:518)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:181)

Reason

This error occurs when you include the TaskManager DSC JAR in your component. The TaskManager DSC (that is, the service itself) is not meant for use as a library.

Solution

Remove the TaskManager JAR from your component and use the libraries provided with the SDK. Or, extract any required classes from the DSC JAR and include them in your component.

reference (181617740/2660587)

VN:F [1.9.22_1171]
Was this helpful? Please rate the content.
Rating: 1.0/10 (1 vote cast)

LiveCycle ES: ALC-DSC-119-000: InvalidCoercionException: Cannot coerce object: Apr 07, 2010

Issue

When you use Date objects in a LiveCycle ES 8.2.1 orchestration after migrating from LiveCycle 7, the following exception may occur:

ALC-DSC-119-000: com.adobe.idp.dsc.util.InvalidCoercionException: Cannot coerce object: Apr 07, 2010 of type: java.lang.String to type: class java.util.Date
 at com.adobe.idp.dsc.util.CoercionUtil.toDateTime(CoercionUtil.java:532)
 at com.adobe.idp.dsc.util.CoercionUtil.toType(CoercionUtil.java:966)
 at com.adobe.workflow.datatype.CoercionUtil.toType(CoercionUtil.java:168)
 at com.adobe.workflow.dom.VariableAttr.setBoundValue(VariableAttr.java:67)
 at com.adobe.workflow.pat.service.PATExecutionContextImpl.setProcessDataValue(PATExecutionContextImpl.java:791)
 at com.adobe.workflow.pat.service.PATExecutionContextImpl.setProcessDataWithExpression(PATExecutionContextImpl.java:375)
 at com.adobe.workflow.qpac.set_value.SetValueService.execute(SetValueService.java:72)
 at com.adobe.workflow.engine.PEUtil.executeAction(PEUtil.java:558)

Reason

This exception occurs if you are trying to use the parseDate() or parseDateTime() functions in your XPath expressions. In LiveCycle ES, it’s not necessary to use these functions to convert Strings into Date objects. These functions cannot handle formatted date strings. For more information about the date functions, see the LiveCycle online Help: http://livedocs.adobe.com/livecycle/8.2/wb_help/wwhelp/wwhimpl/common/html/wwhelp.htm?context=Workbench_ES&file=000812.html.

Solution

Use a direct assignment in the XPath expression to convert the String into a Date variable.

reference: (181553843/2610966)

VN:F [1.9.22_1171]
Was this helpful? Please rate the content.
Rating: 0.0/10 (0 votes cast)

LiveCycle ES: InvalidCoercionException when using TaskManagerQueryService.taskSearch(TaskSearchFilter filter)

Issue

When you use the API in LiveCycle ES to call the method, “TaskManagerQueryService.taskSearch(TaskSearchFilter filter),” the following exception may occur:

ALC-DSC-119-000: com.adobe.idp.dsc.util.InvalidCoercionException: Cannot coerce object: 
com.adobe.idp.taskmanager.dsc.client.query.TaskSearchFilter@1972b9a of type: 
com.adobe.idp.taskmanager.dsc.client.query.TaskSearchFilter to type: 
class com.adobe.idp.taskmanager.dsc.client.query.TaskSearchFilter
 at com.adobe.idp.dsc.util.CoercionUtil.toType(CoercionUtil.java:1047)
 at com.adobe.idp.dsc.interceptor.impl.InvocationInterceptor.intercept(InvocationInterceptor.java:127)
 at com.adobe.idp.dsc.interceptor.impl.RequestInterceptorChainImpl.proceed(RequestInterceptorChainImpl.java:60)
 at com.adobe.idp.dsc.transaction.interceptor.TransactionInterceptor$1.doInTransaction(TransactionInterceptor.java:74)
 at com.adobe.idp.dsc.transaction.impl.ejb.adapter.EjbTransactionCMTAdapterBean.execute(EjbTransactionCMTAdapterBean.java:342)
 at com.adobe.idp.dsc.transaction.impl.ejb.adapter.EjbTransactionCMTAdapterBean.doSupports(EjbTransactionCMTAdapterBean.java:212)
 at com.adobe.idp.dsc.transaction.impl.ejb.adapter.EjbTransactionCMTAdapter_z73hg_ELOImpl.doSupports

Solution

  1.  Make sure that the processId object passed into the filter.addCondition() is a valid object.
  2. Verify that the libraries you are importing contain no abstract references to classes with similar names and make sure that they are the latest versions.

Additional Information

Here is the code which would generate the error message above (or download here):

____________________________

 

ServiceClientFactory factory = ServiceClientFactory.createInstance(context);

TaskManagerQueryService queryManager = TaskManagerClientFactory.getQueryManager(factory);

TaskManager taskManager = TaskManagerClientFactory.getTaskManager(factory);

TaskSearchFilter filter = new TaskSearchFilter();

filter.addCondition(TaskSearchingConstants.pPROCESS_INSTANCE_ID, Operator.EQUALS, processId);

filter.addSortAsc(TaskSearchingConstants.pPROCESS_START_TIME);

// To look on every task !!! Need to have an Administrator context!!!

filter.setAdminIgnoreAllAcls(true);

List<TaskRow> result = queryManager.taskSearch(filter);

____________________________

reference: (181492707)

VN:F [1.9.22_1171]
Was this helpful? Please rate the content.
Rating: 0.0/10 (0 votes cast)