|
RSS Feed - WebSphere MQ Support
|
RSS Feed - Message Broker Support
|
 |
|
Serialization Exception while invoking a business Process |
« View previous topic :: View next topic » |
Author |
Message
|
LazyBoy |
Posted: Fri Nov 16, 2007 1:44 am Post subject: Serialization Exception while invoking a business Process |
|
|
Voyager
Joined: 04 May 2006 Posts: 78
|
Hi Guys,
I am invoking a long running Business process from another Business Process , I get following Exception:
CNTR0020E: EJB threw an unexpected (non-declared) exception during invocation of method "bpc_invokeForMacroflow" on bean "BeanId(MyGoodsShippedApp#MyGoodsShippedEJB.jar#component.MYP02_2GS, null)". Exception data: com.ibm.bpe.api.ProcessError: Error during Serialization
org.eclipse.emf.ecore.xmi.DanglingHREFException: The object 'BO type = Message, route(containment), goodsShipped(containment), goodsReceivedNotice(containment), deliveryInstruction(containment), receivingInstruction(containment),' is not contained in a resource.
at org.eclipse.emf.ecore.xmi.impl.XMLHelperImpl.handleDanglingHREF(XMLHelperImpl.java:448)
The Same Business Process is invoked successfully, If its not long Running.
WPS version is 6.0.2.
Can anyone please suggest. |
|
Back to top |
|
 |
fjb_saper |
Posted: Fri Nov 16, 2007 3:34 am Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
my guess is this may have something to do with activation and passivation of an EJB. Typically ejbeans get passivated by the container when not currently actively needed to free container space for beans that are currently actively needed.
To better understand what this means I suggest you read up on activation and passivation of ejbs. You need to implement those methods on the bean. Any information that needs to be recalled needs to be serialized and saved... You may need to review from stateless to stateful...
Enjoy  _________________ MQ & Broker admin |
|
Back to top |
|
 |
LazyBoy |
Posted: Fri Nov 16, 2007 4:39 am Post subject: |
|
|
Voyager
Joined: 04 May 2006 Posts: 78
|
Just to add some more information.
I am initating a business process from another business process using the initate method of LocalBusinessFlowManager interface.
Following is the code in the java snippet of my invoker process
/*code snip */
PIID piid = flowManager.initiate(startActivity.getServiceTemplateID(),startActivity.getActivityTemplateID(),ProcessInstanceName,ClObjWrapper);
/*code snip */
This has been built on reference with the WPS Development guide and WID help.
During runtime I get an error only if the process to be invoked is long running, else it works fine.
Not sure what more needs to be done here . |
|
Back to top |
|
 |
fjb_saper |
Posted: Fri Nov 16, 2007 4:43 am Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
Look at my previous post. The difference is between short and long running processes. During a short running process the EJB does not get passivated.
During a long running process the chances that the EJB gets passivated are just a smidgen under 100%
I fear this has more to do with design as you might as well have to move from a stateless to a stateful ejb...  _________________ MQ & Broker admin |
|
Back to top |
|
 |
JLRowe |
Posted: Mon Nov 19, 2007 5:41 am Post subject: |
|
|
 Yatiri
Joined: 25 May 2002 Posts: 664 Location: South East London
|
Looks like an artefact is missing from the deployment, probably the schema files for your BO. This happens sometimes as the WID tool is a bit cruddy (but getting better).
Remove the process from the server, re-start server, re-build cleanly, re-deploy and try again.
If this fails, update WID and WPS to latest version, try again.
Also, look for errors logged by the WID runtime during a build (show view --> Error log), see if you can fix them up and then try a clean build. |
|
Back to top |
|
 |
LazyBoy |
Posted: Mon Dec 10, 2007 7:09 am Post subject: |
|
|
Voyager
Joined: 04 May 2006 Posts: 78
|
The Problem was with the NUll Namespace.The Business process which was being invoked used input BO's which had null Namespace.After changing the BO to a specfic Namespace solved the Problem. |
|
Back to top |
|
 |
|
|
 |
|
Page 1 of 1 |
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|
|
|