cancel
Showing results for 
Search instead for 
Did you mean: 

Receive File Adapter - Error in CallSAPAdapter Name not known

Former Member
0 Kudos

Using xml to File Adapter. Just want to store the xml file somewhere ie on XI Server in folder E:\usr\sap\interface\XMLfiles

Getting error in Adapter Engine - Exception caught by adapter framework: Object not found in lookup of CallSAPAdapter.

Delivery of the message to the application using connection File_http://sap.com/xi/XI/System failed, due to: com.sap.aii.af.ra.ms.api.RecoverableException: Object not found in lookup of CallSAPAdapter.: com.sap.engine.services.jndi.persistent.exceptions.NameNotFoundException: Object not found in lookup of CallSAPAdapter..

Receiver Adapter configured to receive file write a .tmp version no conversion so set type to Binary.

I can see the Communication Channel in the monitor green.

Any ideas to find the problem

thanks,

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Tony,

To create file on XI server which Transport Protocol are you using? If you are using NFS...then File Path should be : /usr/sap/interface/XMLfiles/FileName...

Please provide us more details.

Nilesh

Former Member
0 Kudos

I tried changing the communication channel as suggested with no further success. I have viewed the LogViewer on the server in cluster->server->logs defaultTrace.trc and com.sap.xi -> xi.log with no more information available.

So is it that I cannot do a simple XML send to file receiver and leave its content unchanged?

My test message payload was of the order

<?xml version="1.0"?><LIST><S_STX><C_STDS><D_STDS1>... with all the data in.

Adapter type = file

Receiver

Transport Protocol = File System (NFS)

Message Protocol = File

Adapter Engine = Integration Server

Target Directory = E:/usr/sap/Interfaces/XMLFiles (and tried it with /usr/sap/interface/XMLFiles)

Create filedirectory = ticked

Filename filename.xml

File Construction Mode = add timestamp

Write Mode = use temporary file

Temporary filename scheme = filename.tmp

Filetype = Binary

Module Tab

1 localejbs/CallSAPAdapter Local Enterprise Bean 0

and thats it.

On testing from the Integration Engine it reaches the Adapter Engine and reports the error as stated in my first post.

The message data is of the construct

- <SOAP:Envelope xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/">

- <SOAP:Header>

- <sap:Main xmlns:sap="http://sap.com/xi/XI/Message/30" versionMajor="3" versionMinor="0" SOAP:mustUnderstand="1" xmlns:wsu="http://www.docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" wsu:Id="wsuid-main-92ABE13F5C59AB7FE10000000A1551F7">

<sap:MessageClass>ApplicationMessage</sap:MessageClass>

<sap:ProcessingMode>asynchronous</sap:ProcessingMode>

<sap:MessageId>09c99665-f3cf-d247-993b-8cb46c37d820</sap:MessageId>

<sap:TimeSent>2007-09-19T16:42:31Z</sap:TimeSent>

- <sap:Sender>

<sap:Party agency="http://sap.com/xi/XI" scheme="XIParty">AS2</sap:Party>

<sap:Service>XMLFILE</sap:Service>

</sap:Sender>

- <sap:Receiver>

<sap:Party agency="http://sap.com/xi/XI" scheme="XIParty">MyCompany</sap:Party>

<sap:Service>XMLFILE</sap:Service>

</sap:Receiver>

<sap:Interface namespace="http://warburtons.com/genhdr">MI_XMLFILE_V3</sap:Interface>

</sap:Main>

- <sap:ReliableMessaging xmlns:sap="http://sap.com/xi/XI/Message/30" SOAP:mustUnderstand="1">

<sap:QualityOfService>ExactlyOnce</sap:QualityOfService>

</sap:ReliableMessaging>

- <sap:Diagnostic xmlns:sap="http://sap.com/xi/XI/Message/30" SOAP:mustUnderstand="1">

<sap:TraceLevel>Information</sap:TraceLevel>

<sap:Logging>Off</sap:Logging>

</sap:Diagnostic>

- <sap:HopList xmlns:sap="http://sap.com/xi/XI/Message/30" SOAP:mustUnderstand="1">

- <sap:Hop timeStamp="2007-09-19T16:42:31Z" wasRead="false">

<sap:Engine type="IS">is.00.srvsapxidev</sap:Engine>

<sap:Adapter namespace="http://sap.com/xi/XI/System">XI</sap:Adapter>

<sap:MessageId>09c99665-f3cf-d247-993b-8cb46c37d820</sap:MessageId>

- <sap:Branch>

<sap:MessageId>707ecbbd-a474-514d-b731-f4003c38c4df</sap:MessageId>

<sap:Party agency="http://sap.com/xi/XI" scheme="XIParty">ASD</sap:Party>

<sap:Service>IP_I_XMLFILE_Collect</sap:Service>

</sap:Branch>

- <sap:Branch>

<sap:MessageId>09c99665-f3cf-d247-993b-8cb46c37d820</sap:MessageId>

<sap:Party agency="http://sap.com/xi/XI" scheme="XIParty">MyCompany</sap:Party>

<sap:Service>XMLFILE</sap:Service>

</sap:Branch>

<sap:Info>3.0</sap:Info>

</sap:Hop>

- <sap:Hop timeStamp="2007-09-19T16:44:56Z" wasRead="false">

<sap:Engine type="AE">af.xid.srvsapxidev</sap:Engine>

<sap:Adapter namespace="http://sap.com/xi/XI/System">XIRA</sap:Adapter>

<sap:MessageId>09c99665-f3cf-d247-993b-8cb46c37d820</sap:MessageId>

</sap:Hop>

</sap:HopList>

</SOAP:Header>

- <SOAP:Body>

- <sap:Manifest xmlns:sap="http://sap.com/xi/XI/Message/30" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:wsu="http://www.docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" wsu:Id="wsuid-manifest-5CABE13F5C59AB7FE10000000A1551F7">

- <sap:Payload xlink:type="simple" xlink:href="cid:payload-51041e0166cf11dcb67b00145e2b1128@sap.com">

<sap:Name>PayloadName</sap:Name>

<sap:Description>PayloadDescription</sap:Description>

<sap:Type>Application</sap:Type>

</sap:Payload>

</sap:Manifest>

</SOAP:Body>

</SOAP:Envelope>

The Payload is

<?xml version="1.0" ?>

- <LIST>

etc

Message status

2007-09-19 17:44:56 Success Message successfully received by messaging system. Profile: XI URL: http://srvsapxidev:50000/MessagingSystem/receive/AFW/XI Credential (User): XIISUSER

2007-09-19 17:44:56 Success Using connection File_http://sap.com/xi/XI/System. Trying to put the message into the receive queue.

2007-09-19 17:44:56 Success Message successfully put into the queue.

2007-09-19 17:44:56 Success The message was successfully retrieved from the receive queue.

2007-09-19 17:44:56 Success The message status set to DLNG.

2007-09-19 17:44:56 Success Delivering to channel: CC_toMyCompany_XMLFILE

2007-09-19 17:44:56 Error Exception caught by adapter framework: Object not found in lookup of CallSAPAdapter.

2007-09-19 17:44:56 Error Delivery of the message to the application using connection File_http://sap.com/xi/XI/System failed, due to: com.sap.aii.af.ra.ms.api.RecoverableException: Object not found in lookup of CallSAPAdapter.: com.sap.engine.services.jndi.persistent.exceptions.NameNotFoundException: Object not found in lookup of CallSAPAdapter..

2007-09-19 17:44:56 Success The asynchronous message was successfully scheduled to be delivered at Wed Sep 19 17:49:56 BST 2007.

2007-09-19 17:44:56 Success The message status set to WAIT.

Now I have been reading all the documentation available and forum questions in this area but there is a lot of information but not quite for what I am currently trying to do. I need to preserve the xml file as xml for further processing. This is just a resting place for the file as I am trying to cut down a long running (over a day) collect BPM scenario by collecting the files in the directory then triggering the collect scenario to read in the files from this directory and perform all the processing and mapping in one chunk of short time. (But that is another story)

Any more suggestions appreciated could the SAPCallAdapter not be where I think it is? Does my directory and filename case have to be exact lower and upper case. (I will test this tomorrow)...and let you know if any difference and continue to read the links put on by the other person who answered.

thanks,

bhavesh_kantilal
Active Contributor
0 Kudos

In your receiver file adapter, did you remove / change the standard module shipped by SAP?

If yes, delete thsi comm channel and recreate a new one. The standard module shipped by SAP when you create a Comm Channel has to be the last module in the chain of the adapters.

Regards

Bhavesh

henrique_pinto
Active Contributor
0 Kudos

He probably changed it.

The correct adapter name is "CallSapAdapter", only S is capital letter, not "CallSAPAdapter".

Regards,

Henrique.

Answers (2)

Answers (2)

Former Member
0 Kudos

Yes deleting and recreating the Communication Channel gave the right module and then it worked. It is a basic mistake made but learned from. Thankyou for all your input we are now more familiar with the Log Viewer and tools as a result.

Former Member
0 Kudos