cancel
Showing results for 
Search instead for 
Did you mean: 

How to find out what is causing an error in a BPM process

monika_eggers
Active Participant
0 Kudos

I have a very basic question and I can't figure it out from help.sap.com

I have a BPM process deployed to a SAP NW Java BPM 7.40 system. It can be triggered with a web service call.

It goes into error immediately. I go to NW Administrator > Operations > Process and Tasks > Manage Processes and see the process with status  "Error". But the "Error log" tab below is grayed out. I can't see any error message anywhere.

How do I find out what is wrong?

Accepted Solutions (1)

Accepted Solutions (1)

junwu
Active Contributor
0 Kudos

how about the default trace?

i think there is another tab which can show the history information, normally it contains error information. in the history tab, select show "advanced"

monika_eggers
Active Participant
0 Kudos

Ah, I didn't notice that on the history tab I can switch from Basic to Medium or Advanced, in Basic it was showing nothing. In Medium and Advanced it shows:

Mapping failed
com.sap.engine.services.jndi.persistent.exceptions720.NameNotFoundException: Object not found in lookup of test.sap.com.polreuse.ejbs.UUIDProviderLocal.
java.lang.IllegalArgumentException: Could not lookup 'test.sap.com/bpmear/LOCAL/UUIDProvider/test.sap.com.polreuse.ejbs.UUIDProviderLocal' bean
com.sap.mapping.lib.execution.api.exception.TExecutionException
at EJB::test.sap.com/bpmear/LOCAL/UUIDProvider/test.sap.com.polreuse.ejbs.UUIDProviderLocal( StandardInvocation:invoker )
at ( DeepExpression )
at UUID( TerminalPart:expression )
at result( BroadPart:child )
at ( NarrowMapping )
at com.sap.mapping.lib.execution.implementation.Compiler$StandardMappingFunction@241ade69( StandardInvocation:invoker )
at ( DeepExpression )
at MessageHeader( TerminalPart:expression )
at http://sap.com/xi/SAPGlobal20/Global:NewLBrdngFSCreateRequest( BroadPart:child )
at ( NarrowMapping )

What could this mean? I didn't deploy all parts correctly or something like that?

Also, where do I check the default trace?

junwu
Active Contributor
0 Kudos

have you deployed the ejb?

monika_eggers
Active Participant
0 Kudos

I thought that's what I did, I didn't see error messages, but apparently I did it wrong or it failed? Is there a "deployment log" or another place that I can check?

junwu
Active Contributor
0 Kudos

go to jndi from nwa to check if you can find your ejb

junwu
Active Contributor
0 Kudos

the jndi string you provided may be wrong

monika_eggers
Active Participant
0 Kudos

I searched for jndi in the NW Administrator and found JNDI Browser. There I searched for object name UUIDProviderLocal (as the errors above are

Object not found in lookup of test.sap.com.polreuse.ejbs.UUIDProviderLocal.

Could not lookup 'test.sap.com/bpmear/LOCAL/UUIDProvider/test.sap.com.polreuse.ejbs.UUIDProviderLocal' bean)

I find one result with this information:

Object Name: test.sap.com/bpmear/LOCAL/UUIDProvider/test.sap.com.UUIDProviderLocal

Class Name: javax.naming.Reference

Context Name: test.sap.com/bpmear/LOCAL/UUIDProvider

Object Value: Reference Class Name: test.sap.com.UUIDProviderLocal

              Type: clientAppName

              Content: test.sap.com/bpmear

              Type: interfaceType

              Content: local

              Type: local

              Content: test.sap.com.UUIDProviderLocal

              Type: ejb-link

              Content: UUIDProvider

I'm not sure which conclusion to draw from this.

junwu
Active Contributor
0 Kudos

can you try that string in your bpm ejb function?

monika_eggers
Active Participant
0 Kudos

Thank you, this helped me to understand the problem.

It was trying to look up test.sap.com.polreuse.ejbs.UUIDProviderLocal

The JNDI Browser on NW Administrator showed test.sap.com.UUIDProviderLocal

I searched for UUIDProviderLocal in the NW Developer Studio and found:

polnlbv0 => src => functions => test.sap.com => polnlbv0 => getnewuuid.function

had a line that looked like this:

<Galaxy.Rule.EjbFunction
m:c='1' m:i='E0CA4A873EEDDF8E446911E2C3BEA088B4627104' nameTranslatable='false'
documentationTranslatable='false' deprecated='false'
lookupName='test.sap.com/bpmear/LOCAL/UUIDProvider/test.sap.com.
polreuse.ejbs.UUIDProviderLocal'/>

I changed it to:

<Galaxy.Rule.EjbFunction
m:c='1' m:i='E0CA4A873EEDDF8E446911E2C3BEA088B4627104' nameTranslatable='false'
documentationTranslatable='false' deprecated='false'
lookupName='test.sap.com/bpmear/LOCAL/UUIDProvider/test.sap.com.UUIDProviderLocal'/>

and redeployed and now the BPM process can run

Answers (0)