Unable to Receive Files at the Receiver end

Hello All,
I have configured scenario Proxy to File with 1:2 transformation (Interface collections) ie
1 Sender and  Receiver Service
1 Sender interface
2 Receiver interface
1 Message and interface mapping
1 Receiver determination
1 Interface determination
2 Receiver file channel with FCC
The QoS is Exactly Once.
My scenario is failing at Adapter Engine (Receiver end) failing to create 2 text files.
My Question is
1. The Status of the File Receiver channel in monitoring are in error status displaying "Message processing failed. Cause: com.sap.engine.interfaces.messaging.api.exception.MessagingException: Error: invalid receiver channel 'a3478068e95133a8ad28777a3fe1344d'" What is the reason for this ? I checked the Cache update and cache is upto date.
2.In SXMB_MONI , When Checked the trace part of Receiver Determination it correctly displays
"<Trace level="2" type="T">Number of Receivers:1</Trace> "
But when i checked Trace for Interface Determination it is displaying " InterfaceCollection</Trace>
  <Trace level="2" type="T">...valid InbIf without Condition: InterfaceCollection</Trace>
  <Trace level="2" type="T">Number of receiving Interfaces:1</Trace> "
Here it should display "Number of receiving Interfaces:2 " Right?   What is the reason for this ? do we have todo multimapping?
3.In Message monitoring for Adapter Engine i could see messages in Holding state. what is the specific reason in his case (I know the literal/functional meaning) of messages going to holding state  . "Maintain Order at Runtime" is checked in Interface Determination?
May I know in which situation the messages would goto into holding state (isit because IE was not able to find 2 receiver interface)  and without unchecking the "Maintain Order at Runtime" option and manual intervention isit possible to process the scenario successfully?
Many thanks in Advance .
Regards,
Pavithra

Hello Ninad,
Since I am using EHP 1 SAP NetWeaver PI 7.11 , there is no explicit option of selecting "Enhanced Interface Determination" ( Its understood implicitly through the Signature tab in Message mapping (1:n transformation)) and I have done multimapping as message mapping (In the mapping editor, switch to the Signature tab page) for my scenario
The cache (AE) is perfectly fine
I am noting down my observation here.
My scenario uses QoS EO and the " Maintain Order at Runtime" option was checked. There were many System error messages due to other issues for the previous month and holding messages for this month.
I guess due to this the channels were in  error though the channels' status were in green but it was displaying message " Message processing failed. Cause:com.sap.engine.interfaces.messaging.api.exception.MessagingException: Error: invalid receiver channel '1ac04de4d1103d09b5b9c764c8895e98'"
Now I filtered all the 'system error' messages with Sequence Id and deleted all of them and Resent all the holding messages and there were no message in holding .Now again i tried sending some data's ...the channel are functioning fine and no such error messages are displayed
Regards,
Pavithra

Similar Messages

  • Empty file handling in Receiver File adapter (FCC - Premature end of file)

    Hi
    My interface is Flat file to Flat File interface with file content conversion which is working fine in SAP PI 7.1 EHP1.
    If I want to process the empty file from sender system, PI should place the same empty file in the receiver FTP Location as per my requirement.
    I am facing the below error message when PI tries to place the empty file.
    Message processing failed. Cause: org.xml.sax.SAXParseException: Premature end of file.
    But if I am not using FCC, I am able to get the empty file at the receiver end.
    Please suggest on this, If I am using FCC in the receiver side.
    Thanks
    Gabriel

    Hi Gabriel,
                       You can write a simple script to copy a file from source folder to target in case the fiel size is ZERO bytes. The script will not copy the file if the filesize is more than zero bytes, This will be processed normally by PI server. You can call the script from sender communication channel parameter : "RUN OS command before message processing". Could you please specify the Operating System (OS) you are using in your PI server.
    Regards
    Anupam

  • HT5887 I am not able to transfer files on airdrop from phone to another. Whereas I can receive files from the other phone. Both devices are iPhone 5.

    I am not able to transfer files on airdrop from phone to another. Whereas I can receive files from the other phone. Both devices are iPhone 5.

    I have tried all sorts of Settings but just doesnt seem to work one way. I keep getting messages "Airdrop cancelled".

  • How conform that a receiving file is completly received.

    i am sending a file.
    how conform that a receiving file is completly received?

    server code
    package server;
    import java.beans.XMLEncoder;
    import java.io.*;
    import java.net.*;
    import java.nio.channels.FileLock;
    import java.sql.ResultSet;
    import java.util.ArrayList;
    public class Server2 {
        public static void main(String args[]) {
            int port = 6789;
            Server2 server = new Server2(port);
            server.startServer();
        // declare a server socket and a client socket for the server;
        // declare the number of connections
        ServerSocket echoServer = null;
        Socket clientSocket = null;
        int numConnections = 0;
        int port;
        public Server2(int port) {
            this.port = port;
        public void stopServer() {
            System.out.println("Server cleaning up.");
            System.exit(0);
        public void startServer() {
            // Try to open a server socket on the given port
            // Note that we can't choose a port less than 1024 if we are not
            // privileged users (root)
            try {
                echoServer = new ServerSocket(port);
            } catch (IOException e) {
                System.out.println(e);
            System.out.println("Server is started and is waiting for connections.");
            System.out.println("With multi-threading, multiple connections are allowed.");
            System.out.println("Any client can send -1 to stop the server.");
            // Whenever a connection is received, start a new thread to process the connection
            // and wait for the next connection.
            while (true) {
                try {
                    clientSocket = echoServer.accept();
                    numConnections++;
                    Server2Connection oneconnection = new Server2Connection(clientSocket, numConnections, this);
                    new Thread(oneconnection).start();
                } catch (IOException e) {
                    System.out.println(e);
    class Server2Connection implements Runnable {
        //BufferedReader is;
        ObjectInputStream is;
        ObjectOutputStream os;
        XMLEncoder xml;
        Socket clientSocket;
        String numConn;
        int id;
        Server2 server;
    FileLock fl ;
        public Server2Connection(Socket clientSocket, int id, Server2 server) {
            this.clientSocket = clientSocket;
            this.id = id;
            this.server = server;
            numConn = "Connection " + id + " established with: " + clientSocket;
            System.out.println("Connection " + id + " established with: " + clientSocket);
            try {
                is = new ObjectInputStream(clientSocket.getInputStream());
                os = new ObjectOutputStream(clientSocket.getOutputStream());
                //xml = new XMLEncoder(new BufferedOutputStream( new FileOutputStream("first.xml")));
              //  xml = new XMLEncoder(new BufferedOutputStream( new FileOutputStream("first.xml")));
                FileOutputStream fs = new FileOutputStream("first.xml");
                BufferedOutputStream br = new BufferedOutputStream(fs);
                xml = new XMLEncoder(br);
                //fl =  fs.getChannel().lock();
            } catch (IOException e) {
                System.out.println(e);
        public void run() {
            Object line;
            try {
                boolean serverStop = false;
                int n = 0;
                while (true) {
                    line = is.readObject();
                    if (line instanceof String) {
                        String s = (String) line;
                        System.out.println("In Server :: The input is " + s);
                        UserData ud = new UserData();
                        ud.setAdd("karachi");
                        ud.setId("123");
                        ud.setName("XML testing..");
                        System.out.println("Tring to lock locked..");
                        fl.channel().tryLock();
                        System.out.println("File locked..");
                        xml.writeObject(ud);
                        xml.flush();
                        //os.writeObject(ud);
                        n = Integer.parseInt(s);
                    if (n == -1) {
                        serverStop = true;
                        break;
                    if (n == 0) {
                        break;
                //  System.out.println("Connection " + id + " closed.");
                fl.release();
                is.close();
                os.close();
                xml.close();
                clientSocket.close();
                if (serverStop) {
                    server.stopServer();
            } catch (Exception e) {
                System.out.println("Exception..." + e);
    client code
    * To change this template, choose Tools | Templates
    * and open the template in the editor.
    package scoket1;
    import java.beans.XMLDecoder;
    import server.UserData;
    //import server.MyRS;
    import java.io.*;
    import java.net.*;
    import java.sql.ResultSet;
    import java.util.ArrayList;
    import javax.swing.JOptionPane;
    public class Client {
        public static void main(String[] args) {
            String hostname = "localhost";
            int port = 6789;
            // declaration section:
            // clientSocket: our client socket
            // os: output stream
            // is: input stream
            Socket clientSocket = null;
            ObjectOutputStream os = null;
            ObjectInputStream is = null;
            XMLDecoder de = null;
            // Initialization section:
            // Try to open a socket on the given port
            // Try to open input and output streams
            try {
                clientSocket = new Socket(hostname, port);
                os = new ObjectOutputStream(clientSocket.getOutputStream());
                is = new ObjectInputStream(clientSocket.getInputStream());
                de = new XMLDecoder(new BufferedInputStream(new FileInputStream("first.xml")));
            } catch (UnknownHostException e) {
                System.err.println("Don't know about host: " + hostname);
            } catch (IOException e) {
                System.err.println("Couldn't get I/O for the connection to: " + hostname);
            // If everything has been initialized then we want to write some data
            // to the socket we have opened a connection to on the given port
            if (clientSocket == null || os == null || is == null) {
                System.err.println("Something is wrong. One variable is null.");
                return;
            try {
                while (true) {
                    System.out.print("Enter an integer (0 to stop connection, -1 to stop server): ");
                    BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
                    String keyboardInput = br.readLine();
                    os.writeObject(keyboardInput);
                    int n = Integer.parseInt(keyboardInput);
                    if (n == 0 || n == -1) {
                        break;
    //                Object responseObj = null;
    //                responseObj = is.readObject();
                    Object test = null;
                    test = (Object) de.readObject();
                    if (test instanceof String) {
                        String msg = (String) test;
                        System.out.println(msg);
                    } else if (test instanceof UserData) {
                        System.out.println("XML File Test succesful .. be happy ..");
                        System.out.println("Array of User Data ..");
                        UserData ud = (UserData) test;
                        System.out.println("Name:-    " + ud.getName());
                        System.out.println("ID :-     " + ud.getId());
                        System.out.println("Address:- " + ud.getAdd());
                // clean up:
                // close the output stream
                // close the input stream
                // close the socket
                os.close();
                is.close();
                clientSocket.close();
            } catch (UnknownHostException e) {
                System.err.println("Trying to connect to unknown host: " + e);
            } catch (Exception e) {
                System.err.println("Exception:  " + e);
    }

  • Unable To Execute Files In The Temporary Directory. Setup Aborted. Error 5: Access Is Denied.

    Hi Everyone,
    Whenever I install some new software in my new laptop I get this error:-
    Unable To Execute Files In The Temporary Directory. Setup Aborted. Error 5: Access Is Denied.
    I have tried synchronizing the clocks but it doesn't remove the problem.
    These softwares work on another laptop that i have, which also runs windows 7.
    Can someone please tell me the solution as this is extremely urgent.
    Thanks In Advance.
    -Michael

    In short:
    ============
    My permissions were all fine, so if anyone has trouble resolving the issue after sorting permissions then make sure you try fully disabling your anti-virus / anti-spyware / firewall applications, because that was the cause for me.
    In detail:
    ============
    Problem:
    Failed to install this application
    - http://www.ssware.com/cryptoobfuscator/download.htm
    - on Windows 8.1 x64
    - Get error message "Unable To Execute Files In The Temporary Directory. Setup Aborted. Error 5: Access Is Denied."
    First Candidate Solution
    The issue turns out to NOT be security rights on the Temp folder
    ESET Smart Security HIPS Advanced Memory Scanner is the cause
    http://kb.eset.com/esetkb/index?page=content&id=SOLN2908&actp=search&viewlocale=en_US&searchid=1392804914417
    Instead, I went and turned off all the ESS protections one by one and it turned out to be HIPS that is causing this false positive.
    In fact, it is the Advanced Memory Scanner option under HIPS that is causing the error, while the application in question is legit (using Inno Setup and presumably trying to write to the user temp folder, not sure whether just logs or to execute from there)
    Furthermore, Smart Security logs have no entries under HIPS even though I ticked "Log all blocked operations" under the HIPS "Advanced setup" - it was quite a journey to find out the cause :)
    Thank you. I have the same OS and installed ESET Smart Security as well. And it is resolved now.
    I just want to add, that by "Temporarily disable protection" and "Temporarily disable firewall", it doesn't work. You have to disable HIPS, as KristjanL said. 

  • How do you send a File from the Clinent End To the Server?

    Hi, I'm jut learing Java and am tring to send a file from the Cleints end to the Servers' end, I know how to do this in Php, but its some what different in Java, i know where is a File Class which i can post the information into but for some reason it woudn't work
    <%@ page import=" javax.servlet.*, java.io.File" %>
    <%
    String fullname, emailadds, genre, filename;
    fullname = request.getParameter("Name");
    emailadds = request.getParameter("email");
    genre = request.getParameter("genre");
    filename = request.getParameter("clip");
    File file = new File();
    file.isFile();
    if (file.isFile())
    out.print("File is true");
    else
    out.print("file ain't there");
    %>
    just as a tester i tried this to see if file is being read, but it won't compile
    I keep getting this error sign! Have i missed out a lib or somthing?
    \upload_jsp.java:52: cannot find symbol
    symbol : constructor File()
    location: class java.io.File
    File file = new File();

    Sham, dont show your anger... and dont use provocative words...
    Now, coming to your problems.
    your jsp/html should contain some thing like
    <form action="/uploadServlet" method="post">
    <input type="file" name="file"/>
    <input type ="submit" value="upload"/>
    </form>and for servlet code, refer to
    http://forum.java.sun.com/thread.jspa?threadID=516176&messageID=2461686
    or the easiest way would be to use 'commons-fileupload' api available on http://jakarta.apache.org/commons/

  • My 5 year old iPod classic will not play on my Yamaha CRX-332 cd receiver but my 3 year old iPhone 3g will.  Any suggestions to get my iPod to read the receiver or get the receiver to read the iPod?

    My 5 year old iPod classic will not play on my Yamaha CRX-332 cd receiver but my 3 year old iPhone 3g will.  Any suggestions to get my iPod to read the receiver or get the receiver to read the iPod?  The receiver should be able to play the iPod with a USB connection or with the iPod dock.  Neither works with my iPod however both work with my iPhone 3g.  The iPod has the latest software.  Any thoughts?

    If it is a 5-year old iPod, there is the possibility that the receiver simply won't work with the older software (there hasn't been an iPod Classic software update in years). You might try contacting Yamaha support (or doing a google search) to see if it is a known issue. One solution (probably the easiest) is to get a cable that connects a min jack (i.e., a headphone jack) to stereo cables, and just connect the iPod up that way. You eliminate the risk of corrupting the iPod, and it is a solution that should always work. Just use a wall charger to power the iPod.

  • Archiving files in the Receiver File Adapter

    Hi All,
    I am trying to archive the file created in the Receiver File adapter. Reading from the link below,
    http://help.sap.com/saphelp_nw04/helpdata/en/bc/bb79d6061007419a081e58cbeaaf28/content.htm
    I gave the command cp %F <target dir> in the Command Line of "Run Operating System Command After Message Processing". As well as I tried cmd.exe copy %f <target file>
    But it does not work. Can anyone please help me out?
    Thanks
    Shivanjali

    Hi Aamir,
    For my case its not feasible to make a bat file...
    I want to write a direct OS command in adapter only.
    Do you know what is the basic difference for running OS command before processing and after processing.
    In my opinion if i use a OS command after file processing then it ll take a file name with timestamp so there may be a problem...
    thanks
    Shivanjali

  • Can we archive files using the receiver file channel

    Dear all,
    I'm looking for a option, where in I want to archive the files being sent to the target system.
    Do we have that facility in XI Receiver File communication channel.
    Can the same be achieved for JMS Receiver channel.
    Kindly give your comments or responses.
    Regards,
    Younus

    Hi,
    AFAIK only the sender file adapter has such a functionality.
    A workaround would be to send the file to a second receiver (for example a archive directory on your PI server).
    Regards
    Patrick

  • Problems downloading a program/file off the internet, end up as Excel files

    When I attempt to download a program or a file off the internet, and save it to disk it appears as an unreadable excel spreadsheet on my desktop. What is going on?

    Hi, Mary.
    1. Can you provide an example, such as a URL / link to a file you have attempted to download?
    2. See my "Resetting Launch Services" FAQ.
    Good luck!
    Dr. Smoke
    Author: Troubleshooting Mac® OS X
    Note: The information provided in the link(s) above is freely available. However, because I own The X Lab™, a commercial Web site to which some of these links point, the Apple Discussions Terms of Use require I include the following disclosure statement with this post:
    I may receive some form of compensation, financial or otherwise, from my recommendation or link.

  • Unable to share files over the local network, OS X Lion

    About two weeks ago, my coworker and I realized that we were no longer able to share files over the local network. We have not made any changes to our preference settings. We are able to access FileMaker Pro databases files located on another computer in our office via the network, but we are unable to access any other files by trying to login to the computer remotely. We also have internet access. I am able to login to each of our work computers form home, but not from the office. I'm am not sure what has changed, but it is important that we have the ability to share files at work. Can you give me directions on how to fix our problem. Thanks!
    Debbie Roberts
    Univesrity of Texas at Austin

    I had this problem when I first setup my Mac. One thing I know is that File Sharing in System Preferences doesn't necessarily need to be on, because iTunes does all of the networking itself.
    I know that you've checked and checked again on the firewall, but what I did was turn the firewall on. In the list of ALLOW, there should be a line that is labeled iTunes Music Sharing. Check it. It was the magic link, and all of my iTunes libraries on the three computers in the house (two Windows, one my Mac) could "see" each other.
    Turning on the firewall might seem strange, but it worked for me.
    I hope this helps.
    MacBook Mac OS X (10.4.9)

  • Writing in Files at the Line (END-1)

    I need to make my program write something not at the end of the program, but just before the last line. The basic idea is to have the word END at the end of the file, but when writing new things, I can either delete the things written before (which is not an option) or write at the end of the file, but then the new things I write will be below the end.
    Or, alternately, if there is a command which can tell the program to read the whole file, from top to bottom, that would be nice too.

    The best way to do that would be to retrieve all the text from the file into a String or StringBuffer object, and then append text at the places you want to append to.
    You can then take your modified String and rewrite over the existing text in the file.

  • Unable to delete file on the remote host

    Hi,
    I tried to delete a file on the remote host using File.delete method as well as using Runtime.getRuntime.exec("del filename")
    But both of them failed to work. First one returned false, but the second one is throwing IOException always.
    I am trying this through a java application in Windows NT environment. I am using jdk1.3. How can i solve this problem?.
    IOException occured at DataLoadFromTxtToOra exeBatchForTWS: CreateProcess: del \\ERSWEB\DTemp\ERS\HEB_428\DATAFILES\ERSWEB\DLCOMMA.txt error=2
    Regards,
    Babu

    you should be able to do that if you have rights on the file, try the following code and substitute the computer/share names:
                   File aFile = new File("\\\\COMPUTER\\share\\filename.ext");
                   System.out.println("Read: " + aFile.canRead());
                   System.out.println("Write: " + aFile.canWrite());
                   System.out.println("Exists: " + aFile.exists());
                   System.out.println("File: " + aFile.isFile());
                   aFile.delete();Mind the slashes: a single backslash is causing a escape character: \n for example is a (unix) return. A double \\ defeats it and results in a single \ in the filename
    If everything returns true I think the file will be deleted. If isFile() returns false you've got the path/filename wrong.

  • Unable to open files or the program with having to switch users.... Why?

    Updated to 10.5.6 now when i try to open any filemaker files or the filemaker program it starts to open and closes in a split second. If i log out and open as new user it will open.
    I have deleted and reinstalled filemaker and this did not solve the issue. All my other programs & files open without issues. Why is this?

    If it works in a new user account, then there's a probability you have a bad preference file. Look for FM's preference files in /Home/Library/Preferences/ then drag them to your Desktop. If FM now works that was the problem. Delete the preference files now on the Desktop. If this didn't solve the problem, let us know.

  • Can't receive file of the idoc

    hello,anyone, i had created an ALE from client400 to client600,the status of  the client400 is "Data passed to port OK", but there is not received any data in the client600.what is the problem?
    Message was edited by:
            yongrong xu

    Hi,
    One more thing, check in SM58.
    Also refer below weblog for troubleshooting related to IDOCs.
    /people/raja.thangamani/blog/2007/07/19/troubleshooting-of-ale-process
    Regards,
    Atish

Maybe you are looking for