Connect to webservice via TCP/IP or RFC in ABAP ( SAP to WEB Connectivity)

Hi All ,
    My requirement is  I want to fetch some data from a 'Web site'  into my abap program .
   How should i do ? what is the step by step process of doing these ? by RFC or TCP/IP .
  If go for TCP/IP connection or RFC then please tell me waht is the program id , where it is created at SAP side or Web side .
Regards ,
Nilesh K Jain .

Hi! It all depends on what is your system where the website is running on.
On the portal? Or another system ? Or??
I think the best way for you is to create remote function modules and create with these RFC's webservices on SOAP manner.
For information on the webservices you can look:
http://help.sap.com/saphelp_nw04/helpdata/en/9b/dad1ae3908ee44a5caf57e10918be9/content.htm
And with this SDN site:
Web Services Development in ABAP [original link is broken]
you can find the steps how to create the webservices in ABAP

Similar Messages

  • XModem via TCP for Java

    I am sure that many of you experienced developers have read requests in the past concerning implmentation of Ward Christenen's XModem protocol over a TCP socket. If not, well... you are about to...
    This is a major hack... but it is starting to come together... thanks to Fred Potter for his source code to start this project...
    Objective:
    Basically, I want to create a console application which accepts an incoming connection and starts the receive mode for a XModem file transfer. I am using CGTerm (for Commodore retrocomputing) but can test with HyperTerminal as well...
    The user who connects to the server selects SEND and the FILE to send for a XModem file transfer... and the transfer begins...
    The incoming blocks of 128 bytes are written to a file
    After the transfer is over the server disconnects the client terminal.
    Here is what I have so far:
    import java.net.*;
    import java.lang.*;
    import java.io.*;
    // X-Modem Server implementation via TCP/IP socket
    public class XServer {
    public static FileWriter fw;
    public static void main(String[] args) throws IOException {
    // define the file
    try {   
    fw = new FileWriter("filename.txt");
    } catch (Exception e) {
    System.out.println(e);
    System.exit(0);
    int port = Integer.parseInt(args[0]);
    ServerSocket server = new ServerSocket(port);
    System.out.println("X-Server v1.0 - waiting for connection");
    Socket client = server.accept();
    // Handle a connection and exit.
    try {
    InputStream inputStream = client.getInputStream();
    OutputStream outputStream = client.getOutputStream();
    new PrintStream(outputStream).println("Go to send file mode!"); // sent to client
    System.out.println("Ready to receive file via X-Modem...");
    * BEGIN TRANSFER HERE!
    // set the debug flag
    XModem.debug = true;
    * Here we are instantiating a new InputStream that represents the remote
    * file that we are receiving. In this single line we are attempting to
    * start the flow.
    * Behind The Scenes: We're sending a NAK across the serial line repeatedly
    * until we finaly start seeing the data flow. If we don't see the data
    * flow, then we throw an exception.
    System.out.println("Sending NAK to start receive mode...");
    InputStream incomingFile;
    try {
    incomingFile = new XModemRXStream(inputStream, outputStream);
    } catch (IOException e) {
    System.out.println("ERROR! Unable to start file transfer!");
    e.printStackTrace();
    return;
    System.out.println("Starting file transfer...");
    * Here we are reading from the incoming file, byte by byte, and printing out.
    * Behind The Scenes: Internally, the read() method is handling the task of
    * asking for the next data block from the remote computer, processing it (i.e.
    * parsing, running checksums), and then putting it in an internal buffer. Not
    * all calls to read() will request a new data block as each block contains at
    * least 128 bytes of data. Sometimes you will only hit the buffer.
    try {
    for (;;) {
    int c = incomingFile.read();
    if (c==-1)
    break; // End of File
    // print character / byte
    System.out.print(c+",");
    // write to file
    try {       
    //System.out.print(".");
    fw.write(c);
    } catch (Exception e) {
    System.out.println(e);
    System.exit(0);
    } catch (IOException e) {
    System.out.println("error while reading the incoming file.");
    e.printStackTrace();
    return;
    // done
    System.out.println("File sent.");
    new PrintStream(outputStream).println("");
    new PrintStream(outputStream).println("transfer successful!");
    } finally {
    //client.close();
    // save the file
    try {   
    fw.close();
    System.out.println("file saved.");
    } catch (Exception e) {
    System.out.println(e);
    System.exit(0);
    * XModem keeps track of settings that the Receive and Transmit Stream classes will
    * reference.
    * <p>Copyright: Copyright (c) 2004</p>
    * @author Fred Potter
    * @version 0.1
    class XModem {
    public static boolean debug = false;
    * XModemRXStream is an easy to use class for receiving files via the XModem protocol.
    * @author Fred Potter
    * @version 0.1
    class XModemRXStream
    extends InputStream {
    // CONSTANTS
    private static final int SOH = 0x01;
    private static final int EOT = 0x04;
    private static final int ACK = 0x06;
    private static final int NAK = 0x15;
    private static final int CAN = 0x18;
    private static final int CR = 0x0d;
    private static final int LF = 0x0a;
    private static final int EOF = 0x1a;
    // block size - DON'T CHANGE - I toyed with the idea of adding 1K support but the code is NOT there yet.
    private static final int bs = 128;
    // PRIVATE STUFF
    private int ebn; // expected incoming block #
    private byte[] data; // our data buffer
    private int dataPos; // our position with the data buffer
    private InputStream in;
    private OutputStream out;
    * Creates a new InputStream allowing you to read the incoming file. All of the XModem
    * protocol functions are handled transparently.
    * As soon as this class is instantiated, it will attempt to iniatate the transfer
    * with the remote computer - if unsuccessful, an IOException will be thrown. If it
    * is successful, reading may commense.
    * NOTE: It is important not to wait too long in between calls to read() - the remote
    * computer will resend a data block if too much time has passed or even just give up
    * on the transfer altogether.
    * @param in InputStream from Serial Line
    * @param out OutputStream from Serial Line
    public XModemRXStream(InputStream in, OutputStream out) throws
    IOException {
    this.in = in;
    this.out = out;
    // Initiate the receive sequence - basically, we send a NAK until the data
    // starts flowing.
    init:for (int t = 0; t < 10; t++) {
    if (XModem.debug) {
    System.out.println("Waiting for response [ try #" + t + " ]");
    long mark = System.currentTimeMillis();
    out.write(NAK);
    // Frequently check to see if the data is flowing, give up after a couple seconds.
    for (; ; ) {
    if (in.available() > 0) {
    break init;
    try {
    Thread.sleep(10);
    catch (Exception e) {}
    if (System.currentTimeMillis() - mark > 2000) {
    break;
    // We have either successfully negotiated the transfer, OR, it was
    // a failure and timed out. Check in.available() to see if we have incoming
    // bytes and that will be our sign.
    if (in.available() == 0) {
    throw new IOException();
    // Initialize some stuff
    ebn = 1; // the first block we see should be #1
    data = new byte[bs];
    dataPos = bs;
    * Reads the next block of data from the remote computer. Most of the real XModem protocol
    * is encapsulated within this method.
    * @throws IOException
    private synchronized void getNextBlock() throws IOException {
    if (XModem.debug) {
    //System.out.println("Getting block #" + ebn);
    // Read block into buffer. There is a 1 sec timeout for each character,
    // otherwise we NAK and start over.
    byte[] buffer;
    recv:for (; ; ) {
    buffer = new byte[bs + 4];
    for (int t = 0; t < 10; t++) {
    System.out.println("\nReceiving block [ #" + ebn + " ]");
    // Read in block
    buffer = new byte[buffer.length];
    for (int i = 0; i < buffer.length; i++) {
    int b = readTimed(1);
    // if EOT - don't worry about the rest of the block.
    if ( (i == 0) && (b == EOT)) {
    buffer[0] = (byte) (b & 0xff);
    break;
    // if CAN - the other side has cancelled the transfer
    if (b == CAN) {
    throw new IOException("cancelled");
    if (b < 0) {
    if (XModem.debug) {
    System.out.println("Time out... NAK'ing");
    out.write(NAK);
    continue recv;
    else {
    buffer[i] = (byte) (b & 0xFF);
    break;
    int type = buffer[0] & 0xff; // either SOH or EOT
    if (type == EOT) {
    if (XModem.debug) {
    System.out.println("EOT!");
    out.write(ACK);
    break;
    int bn = buffer[1] & 0xff; // block number
    int bnc = buffer[2] & 0xff; // one's complement to block #
    if (
    (bn != ebn) && (bn != (ebn - 1)) ||
    (bn + bnc != 255)) {
    if (XModem.debug) {
    System.out.println("NAK'ing type = " + type + " bn = " + bn +
    " ebn = " +
    ebn + " bnc = " + bnc);
    out.write(NAK);
    continue recv;
    byte chksum = buffer[ (buffer.length - 1)];
    byte echksum = 0;
    for (int i = 3; i < (buffer.length - 1); i++) {
    echksum = (byte) ( ( (echksum & 0xff) + (buffer[i] & 0xff)) & 0xff);
    if (chksum != echksum) {
    out.write(NAK);
    continue recv;
    out.write(ACK);
    if (ebn == 255) {
    ebn = 0;
    else {
    ebn++;
    break;
    // We got our block, now save it in our data buffer.
    data = new byte[bs];
    for (int i = 3; i < (buffer.length - 1); i++) {
    data[(i - 3)] = buffer;
    dataPos = 0;
    public synchronized int read() throws IOException {
    // If at the end of our buffer, refill it.
    if (dataPos == bs) {
    try {
    getNextBlock();
    catch (IOException e) {
    throw new IOException();
    // If we're still at end of buffer, say so.
    if ( dataPos == bs) {
    return -1;
    int d = data[dataPos];
    if (d == EOF)
    return -1;
    dataPos++;
    return d;
    * A wrapper around the native read() call that provides the ability
    * to timeout if no data is available within the specified timeout value.
    * @param timeout timeout value in seconds
    * @throws IOException
    * @return int an integer representing the byte value read.
    private int readTimed(int timeout) throws IOException {
    long start = System.currentTimeMillis();
    for (; ; ) {
    if (in.available() > 0) {
    return (in.read());
    try {
    Thread.sleep(10);
    catch (InterruptedException ex) {
    //if (System.currentTimeMillis() - start > timeout * 1000) {
    if (System.currentTimeMillis() - start > timeout * 5000) {
    return -1;
    Here was the output...
    Original file:
    (Commodore CBM SEQ file exported to PC using DirMaster)
    ��
    � �
    � ��� �� �� ��� ��
    � �� �� ���� �� ��� ��
    � ��� ����������������������������������������������
    �� ����� ������� ����� �� ����� ������ ����� ���
    � �� ������ ������ ��� ��� �� ��� ���� �� ������
    � � ���
    ����
    � � ��OWERED BY �OLOR 64 ��� V8
    �UNNING �ETWORK64 V1.26A

    �UPPORTING 38400 �AUD �ATES
    �����/����/�������

    �ESTING �CHO-�ET V1 BETA

    �EATURING �ESSAGES, �ILES,
    �ET�AIL, AND �NLINE �AMES!
    �YS�P: � � � � � � � � �

    �RESS ANY KEY TO LOGIN\C�
    The result when the file was uploaded and received by my XServer:
    ? ? ??OWERED BY ?OLOR 64 ??? V8
    ?UNNING ?ETWORK64 V1.26A
    ?UPPORTING 38400 ?AUD ?ATES
    ?ESTING ?CHO-?ET V1 BETA
    ?EATURING ?ESSAGES, ?ILES,
    ?ET?AIL, AND ?NLINE ?AMES!
    ?YS?P: ? ? ? ? ? ? ? ? ?
    ?RESS ANY KEY TO LOGIN\C?
    The result is different!
    Can someone help me along here... I have been trying to figure out how to do this for approx. a year or so... it has been a very slow process.
    I could use a guru to help me out so I can write the upload and download routines for my Commodore BBS PETSCII Emulation Server.
    Visit http://www.retrogradebbs.com for details.
    Thanks.
    Please help out a dedicated developer who is in over his head...
    -Dave

    Ok. Fair enough. What about general information about Xmodem. This is a hard project because of how obscure the legacy technology is that I am having to implement using Java and MySQL.
    I have two major issues which I have to figure out how to troubleshoot and debug, if possible.
    1. The 23+ blocks exception when a file is being received
    2. The exception which is thrown immediately if I try to receive a binary file instead of an ASCII file.
    I read that telnet is a 7-bit technology and that is why Xmodem, which is an 8-bit technology is not that popular as a viable protocol via telnet, whereas Kermit is, since it was developed for 7-bit systems, i.e. mainframes and minicomputers.
    Is this correct?
    If that is the case, why does www.serio.com have a viable X-Y-ZModem library available (for several hundred $$$ of course) which can be used with both RS-232 serial ports and TCP socket ports? Obviously, it can be done. They are the ONLY company with this library for sale for Java to do this. I cannot justify that $$$ amount for a mere hobby (writing the BBS emulation server for supporting Commodore PETSCII (CG) callers via CGTerm or a native C-64 terminal program using Jim Brain's TCPSER middleware, which emulates a Hayes modem via telnet for telBBSing/retrocomputing.
    I really want to learn how to implement a file transfer protocol, since back in the 80s, I used Xmodem, Punter, Y/Z Modem, etc., a lot to upload and download files via modem at baud rates of 2400, 14.4, 19.2, and 38.4, respectively.
    It's fun to learn how the old skool gurus of telecommunications technology did it. It is one thing to run a BBS which supports these technologies and features, and it is an entirely other thing to learn how to design and develop them yourself for implementation into a project such as I taken on.
    It CAN be done. It WILL be done. However, I have just started my exhaustive research on how it needs to be done. I have read up as much as I could on XModem by Ward C., the father of the protocol.
    But, I have no information to help me figure out why the communications are acting as they do so far.
    Can someone please download the xserver.zip file on my website at:
    www.retrogradebbs.com/projects/xserver.zip
    Compile it. Run it. Connect using HyperTerminal, Netrunner, or another telnet terminal emulation program which supports Xmodem file transfers using WinSock.
    See what happens. With finals due in the next two days, this project will have to be put on hold until after I submit my two final projects.
    If anyone knows what needs to be done to support both ASCII and BINARY file transfers via Xmodem via a socket instead of a modem with RTS/CTS hardware flow control, please respond.
    I know for a fact that this can be done.
    - Dave

  • How do I transfer a sound file via TCP?

    I have a .wav file that I'm trying transfer via TCP.  Using LV 8.5, I modified the "Sound File to Output.vi" example to send the data across a TCP connection to a client vi.  But, I've encountered numerous errors along the way with trying to convert the sound data which is a  1-D array of waveform double.  I've attached my server and client VI, but essentially, what I tried to do is break down the array into the y and dt components, send those over the TCP connection, rebuild the waveform client-side, and then play the waveform.  Is there something I'm missing?  Do I need the timestamp information as well and send that over too?  Please let me know how this can be accomplished.  Thanks!
    Attachments:
    Streaming Music - Server.vi ‏97 KB
    Streaming Music - Client.vi ‏65 KB

    One thing to clarify: While the Sound Output Write does not need the dt information, the dt information wouold be required when you use the Configure VI in order to set up the rate.  However, you only need to send that parameter once. Thus, it would seem to me that you want to change your client code so that it checks to see if it receives a special command or something to indicate the start of a new song that may have been sampled at a different rate. If this is the case, then you can reconfigure the sound output. Otherwise, all that you're listening for is just song data that you send along to the Sound Output Write.

  • How to Ping Hardware via TCP/IP

    I need to ping a device to check connectivity via TCP/IP.  I'm currently using a 3rd party control that has a memory leak.  Is there a way to do this within Labview without using a 3rd Party control?

    [SOLVED]
    Hi
    I need to check several devices by pinging them.
    I don't want to use the windows console method with parsing.
    If I use the ping.llb described under the second link above the labview runtime is crahing latest after 12 hours without any replies. Ping frequency was 400 ms, 1 second would be OK but not nice.
    After all the crashs I decide to use the .net Framework which includes an own Ping class.
    Attached you can find this, at the moment test,  VI which is running in a mini project on my PC.
    For testing purposes I set the delay time constant low, later my wish is something between 400-100ms.
    Problem: If you open the WinXP task manager the used memory of process "labview.exe" is rising rapidly until .net throw an exeption.
    How can I prevent that the memory is rising until a crash occur??? If I reduce the time the memory usage is rising as well, just slow....
    Here is the link to the class description: http://msdn.microsoft.com/en-us/library/system.net.networkinformation.ping.aspx
    Thanks for your help
    Tim
    SOLUTION: I connected the "close reference" on the wrong wire....
    It seems to run even with 0 ms time constant (for testing). I have attached the corrected version.
    Message Edited by computerkammer on 05-17-2008 08:31 AM
    Attachments:
    pingdotnet1.vi ‏17 KB

  • Socket communication via TCP-IP

    Hi,
    I am new to CF and would like to establish TCP-IP socket
    communication with a remote server. How can I exchange XML messages
    with a remote server / port via TCP-IP. Do I need to use the event
    gateways of does CF offer another way of setting up socket
    communication ?
    Many thanks in advance !
    John

    Do I need to use the event gateways of does CF offer another way
    of setting up socket communication ?
    I would say, yes, use the socket gateway that ships with
    Coldfusion. However, it has a functionality I cannot really
    understand. If you are a client setting up a socket to connect to
    the gateway, the gateway expects your code to have, beforehand, a
    value for the variable
    originatorID. Yet,
    originatorID is a large, unique integer that the gateway
    code generates when you connect. That seems to me to be a
    chicken-and-egg dilemma.

  • How to call webservice via SOAP on WebAS 620

    Hi,
    I am working on WebAS 620 and want to call from ABAP side a Webservice via SOAP.
    The webservice belongs to a third party tool and is placed on a different server.
    This webservice is pretty easy (2 import parameters and 1 export).
    Unfortunately it seems to me that the SOAP framework does not support such calls. It just supports calls of RFC enabled function modules. This is not what I want.
    Do you know if this is possible and how I can do it?
    Best regards,
    Jan Heffter

    check this weblog
    /people/durairaj.athavanraja/blog/2004/09/20/consuming-web-service-from-abap
    Regards
    Raja

  • I have problem in transfeering data using field point via tcp

    I am reading the values from the filed point, which is connected, to the RT controller and transferring the values to the client PC via TCP at a specified acquisition rate.
     Case1 when the acquisition rate is 0.1 minutes I get the values from the controller correctly i.e. 5v, 5v, and the chart shows no change. The timed out of the TCP read is default value i.e. is 250ms
     But when I change the acquisition rate to .5 minutes I get the values as 5v, 0v, 5v, and 0v. The time out of the TCP read is same as first case. The inputs to the field point are at the constant 5v.
    Please tell how to solve the problem so as to see the plot in the chart continuously as inputs for the field points the read
    ing are at constant rate of input 5v.

    Suresh,
    Since this question deals with using the LabVIEW TCP/IP functions, you are better off posting it to the LabVIEW discussion forum.
    Regards,
    Aaron

  • SOAP Adapter:  Content Type Issue in WebServices via HTTP

    Hi,
    I have configured a Receiver SOAP adapter. When i had to test the message i had an HTTP 415 error.
    i found that the sender SOAP adpater that received this message is not capable of handling Content-Type: Application/XML i.e. which is being transmitted by the Receiver SOAP Adapter.
    Please let me know how to configure in the Receiver SOAP adapter so that the HTTP Content-Type would be TEXT/XML instead of Application/XML .
    Thanks in Advance,
    Venkatesh

    Hi Michal,
    I have created a Web service for a RFC function Module. The webservice is available in SOAMANAGER.
    It got activated also .  But whenever I tried to test, I am getting the below error,
    "Message Envelope not found. Probably Empty SOAP message"
            Request:
            POST /sap/bc/srt/rfc/sap/yotci_i015_linkp8sap/100/yotci_i015_linkp8sap/yotci_i015_linkp8sap HTTP/1.1
    Host: sapkrftewd01.krft.net:8030
    Content-Type: text/xml; charset=UTF-8
    Connection: close
    Authorization: <value is hidden>
    Content-Length: 657
    SOAPAction: ""
    <?xml version="1.0" encoding="UTF-8" ?><SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xs="http://www.w3.org/2001/XMLSchema"><SOAP-ENV:Header><sapsess:Session xmlns:sapsess="http://www.sap.com/webas/630/soap/features/session/"><enableSession>true</enableSession></sapsess:Session></SOAP-ENV:Header><SOAP-ENV:Body><ns1:YotciI015Linkp8sap xmlns:ns1='urn:sap-com:document:sap:soap:functions:mc-style'><IvParam1>POD</IvParam1><IvParam2>00006095</IvParam2><IvParam3>01/14/2009</IvParam3><IvParam4>PDF</IvParam4></ns1:YotciI015Linkp8sap></SOAP-ENV:Body></SOAP-ENV:Envelope>
             Response:
            HTTP/1.1 500 Message E 1S 406 cannot be processed in plugin mode HTTP
    content-type: text/xml; charset=utf-8
    content-length: 0
    accept: text/xml
    sap-srt_id: 20090224/141936/v1.00_final_6.40/49A4677A2D0736EDE10000000A3597E9
    server: SAP Web Application Server (1.0;700)
    Is this because of "do not use SOAP envelope" check?
    I didn't check this check box.
    If that is the error could you please tell me how to see the "do not use SOAP envelope"?
    Where can I find SOAP channel?
    I am very new to SOAP concept. 
    One JAVA application is going to invoke this Webservice from SAP.
    Please help me.
    Thanks,
    Bala.

  • Creation of RFC destination for SAP-Access Connectivity

    Hi,
           I want to create a RFC destination for SAP-Access connectivity.
    Can I get some help regarding it's connection type,activation type and gateway options required for the same.
    Regrads,
    Anthony D'souza

    Hi
    Please see the following:
    1. Create an entry in Trxn DBCA for SQL Server in SAP, you are creating a database connection for the SQL server in SAP.
    2. You use this connection, and write Native SQL stmnts...between EXECSQL...ENDEXEC to fetch the data..and then normal ABAP statements to put that data into your ztable.
    TABLE DBCON Entry can be like this...depends on your External database..
    CON_NAME          Raj                      Logical name for connection
    DBMS                   MSS                   Microsoft SQL Server
    USER_NAME        <User name>       For SQL Server
    PASSWORD         <password>         " "
    CON_ENV             MSSQL_SERVER=<server> MSSQL_DBNAME=<database name>
    DB_RECO                 Availability type for an open database connect
    FUNCTION z_houston_connect.
    ""Local interface:
    EXEC SQL.
    CONNECT TO 'RAJ' AS 'V'
    ENDEXEC.
    EXEC SQL.
    SET CONNECTION 'V'
    ENDEXEC.
    *- Get the data from MS-SQL Server
    EXEC SQL.
    open C1 for
    select
    l.loc_id,
    l.loc_name,
    a.acc_id,
    a.acc_name,
    d.person
    from ho_loc_mast as l
    inner join snd_acc_mast as a on l.loc_id = a.loc_id
    inner join snd_acc_addr as d on a.loc_id = d.loc_id and
    a.acc_id = d.acc_id
    where l.loc_id = '001'
    ENDEXEC.
    DO.
    EXEC SQL.
    FETCH NEXT C1 into :wa-c_locid, :wa-c_locname, :wa-c_acc_id, :wa-c_acc_name, :wa-c_person
    ENDEXEC.
    IF sy-subrc = 0.
    PERFORM loop_output.
    ELSE.
    EXIT.
    ENDIF.
    ENDDO.
    EXEC SQL.
    CLOSE C1
    ENDEXEC.
    ENDFUNCTION.
    Regards,
    Raj

  • Como puedo monitorear un proceso en tiempo real usando una plataforma con LINUX, no importa que esta conectado a via TCP/IP con un equipo con SO windows, que actua como serviddor OPC

    Como puedo monitorear un proceso en tiempo real usando una plataforma con LINUX, no importa que esta conectado a via TCP/IP con un equipo con SO windows, que actua como serviddor OPC.
    Ing. Jorge Mirabal

    Jorge,
    Necesitas compar el programa de RT de National Instruments para hacer cualquier cosa en tiempo real o determinatistico como le acostrumbran llamar. La plataforma que uses no imporata. El sistema de desarrollo es el mismo en cualquier plataforma.
    Ing. Otman Estrada
    PS. Ademas de talves poderte ayadar, conteste tu pregunta porque queria ponerme el titulo de Ingeniero. Aqui en EEUU no se acostrumbra eso no importa cuanta educaccion tienes. Como dicen aqui, pienso que es "cool".

  • Error in Importing webservice via ActionScript

    Hi All
    This is regarding the Webservice via ActionScript (Import->Web Service) for Flex 3
    I am using the same method to import the webservice. The proxy classes are getting generated. I am using the following code for accessing the method:
       var myVar:Welcome = new Welcome();
       myVar.name = "shilpa";
        var myService:WelcomeNoteService = new WelcomeNoteService();
        myService.addwelcomeEventListener(handleResult);
        myServ.addWelcomeNoteServiceFaultEventListener(handleFault);
        myService.welcome(myVar);
    Here Welcome is the function name in webservice (for which proxy class is generated) and WelcomeNoteService is the webservice name (for which proxy classes is also generated).
    When I try to access 
    public function handleResult(event:WelcomeResultEvent):void{
    Alert.show(event.result.toString());
    event.result is coming as null.
    I have tried to debug also , but not able to find the error.

    Hi,
    <i>My dev is on SP 15 and Cons on SP 10..While transporting SLD product using file system i got following error:
    </i>
    See SAP Note 832142 for known restrictions about transporting objects between
    different XI 3.0 support packages And See SAP Note 834507 for known restrictions about cross-release transports.
    Also see the CMS Guide at market place, how to guide,
    https://websmp201.sap-ag.de/~form/sapnet?_FRAME=CONTAINER&_OBJECT=011000358700003090422005E
    Also refer 780297 for continiuosly updated errors.
    May be all this will help you to analyse if not directly arrive at the solution.
    All the best,
    Anirban.

  • Transfering sound via TCP or UDP without delay.

    Hi,
    I'm trying to transfert music via TCP or UDP. But I have delays between packets of bytes that i'm sending and receiving.
    I have sound, delay, sound, delay. Here's my to VI, server and client.
    http://osiris.teccart.qc.ca/osiris/soundserverudp.vi
    http://osiris.teccart.qc.ca/osiris/soundclientudp.vi
    Can someone tell me what i'm doing wrong?

    Hi,
    try change order Sound subVIs.
    Look to exampe: ...National Instruments\LabVIEW 7.1\examples\sound\sound adv.llb\Continuous Sound Output.vi
    When I change size of 'Number of buffers' to 3 and more I hearing continuous sound.
    Have a nice day.
    JCC

  • JCO.Server Error while trying to execute a RFC program from SAP

    Hi,
    We are connecting to an external registered server program from SAP via Web Methods.
    The external server program is registered with the SAP Gateway. We have created a TCP/IP RFC destination and are able to connect to the destination successfully via SM59.
    An RFC function is created in SAP and is called using the syntax CALL FUNCTION "/NGN/BAPI_STRE_SEARCH_PROCESS" DESTINATION 'PRDB2B'. We have also handled the COMM_FALIURE and SYSTEM_FALIURE exceptions in the function call.
    We are monitoring the gateway via SMGW and see a connection log to the RFC destination as below
    Number - 10
    LUname - dev01
    TPName - sapgw00
    User - KRAORANE
    Status - CONNECTED
    Symbolic - PRDB2B
    Conversation - 86520353
    Prot - REG
    SAP return code - 0
    CPIC rtn code - 0
    The external program returns results as expected.
    However sometimes the RFC fails and returns the message “JCO.Server could not create server function /NGN/BAPI_STRE_SEARCH_PROCESS”.
    We are not able to figure what exactly is causing this error. Any help will be highly appreciated.
    -Kiran

    Hi,
    Please see the below links..
    JCO.Server Error while trying to execute a RFC program from SAP
    Re: JCO.Servcer could not find server function
    Re: JCO.Server could not find server function 'SET_SLD_DATA'
    /people/kathirvel.balakrishnan2/blog/2005/07/26/remote-enable-your-rfchosttoip-to-return-host-ip-to-jco
    Re: interfacing SAP with an existing java applications
    http://help.sap.com/saphelp_nw04/helpdata/en/47/80f671ee6e4b41b63c0fe46bd6e4f8/content.htm
    http://www.sapgenie.com/faq/jco.htm
    Regards
    Chilla..

  • Exposing an RFC enabled function as a Web Service in Minisap

    Hi all,
    i'm trying to expose an RFC enabled function as a Web Service in my Minisap installation. Everything works fine, until i actually want to finish the Web Service wizard. It always quotes that the object can only be deployed in an sap paket. If i try to put it in the $TMP paket, by marking it as a local object, i always get the message that test objects can not be deployed in external pakets.
    Any idea?
    Furthermore the virtual interface with the name i selected in the Web Service wizard seems to exist, at least i can not try to deploy the Web Service again with the same name. Actually, i also can't find a place where i can delete the virtual interface. Any hint on that issue is also appreciated.
    Thanks in advance!
    /Marc

    I wanted to write a web service adapter:
    @WebService
    public class MyWebService implements StreamSender {
         private StreamSender eventSender;
         @WebMethod
         public void echo(String msg) {
              eventSender.sendInsertEvent(new MyEvent(msg));
    After deploying I've got NullPointerException, eventSender is null. This is because MyWebService instance is NOT on the spring context, since it was created by jetty via reflection.
    So now I'm trying another approach. I want to inject an adapter from the spring context into the web service:
    I wanted to write a web service adapter:
    @WebService
    public class MyWebService {
         private MyWSAdapter myAdapter;
         @Resource
         private WebServiceContext context;
         @WebMethod
         public void echo(String msg) {
              myAdapter = getMyAdapterFromSpringContext();
              myAdapter.sendInsertEvent(new MyEvent(msg));
         public MyWSAdapter getMyAdapterFromSpringContext() {
              ServletContext sc = (ServletContext) context.getMessageContext().get(MessageContext.SERVLET_CONTEXT);
              ApplicationContext springContext = WebApplicationContextUtils.getWebApplicationContext(sc);
              return (MyWSAdapter) springContext.getBean("myWSAdapter");
    So far i'm getting java.lang.NoClassDefFoundError for org.springframework.web.context.support.WebApplicationContextUtils (org.springframework.spring-web_2.5.6.jar), and trying to figure out where is the jetty classpath.

  • RFC Trace in SAP R/3

    Hello everybody,
    I would like to know how to log a RFC Call on SAP R/3 and the data flow from a RFC.
    Thanks for your helps,

    Use t.code ST01 to activate RFC trace.
    Use t.code ST11 to list the file of the trace. The file name should start with dev_rfc . ST11 is sorted by date so double click on the latest changed dev_rfc file.
    Here where it gets kind of ugly.
    Look for string ' **** Trace file opened at '
    A few lines below that you'll find the data stream that was passed to and from SAP via a RFC. The human readable data is on the right side looking like this.
    000000   05000000 05000331 00040000 00010331  .......1.......1 
    000010   03310004 00000002 03310503 00000503  .1.......1...... 
    000020   05140010 C62F2556 F757D147 9D44C888  ....Æ/%V÷WÑG.DÈ. 
    000030   BB189C64 05140512 00000512 01300028  »..d.........0.( 
    000040   5341504C 5A48525F 50414E20 20202020  SAPLZHR_PAN      
    000050   20202020 20202020 20202020 20202020                   
    000060   20202020 20202020 01300335 000C0000          .0.5.... 
    000070   000A0000 00010000 00100335 03020008  ...........5.... 
    000080   000000AB 00000010 03020304 00AB3132  ...«.........«12 
    000090   30373030 31313030 30313242 6C61636B  07001100012Black 
    0000a0   74686F72 6E652050 656E6E73 796C7661  thorne Pennsylva 
    0000b0   6E696120 20202020 20426C61 636B7468  nia      Blackth 
    0000c0   6F726E65 20504120 20202020 20202020  orne PA          
    0000d0   20202020 20202034 32332053 2E204D61         423 S. Ma 
    0000e0   696E2053 742E2020 20202020 20202020  in St.           
    0000f0   20202020 20202020 20202020 20202031                 1 
    000100   38383130 20202020 20417468 656E7320  8810     Athens  
    000110   20202020 20202020 20202020 20202020                   
    000120   20205553 20504120 20202020 20202030    US PA        0 
    000130   30303030 33343634 35030403 0400AB31  000034645.....«1 
    000140   32303135 30313130 30303135 43415261  201501100015CARa 
    000150   64202020 20202020 20202020 20202020  d                
    000160   20202020 20202020 20204341 52616420            CARad  
    000170   20202020 20202020 20202020 20202020                   
    000180   20202020 20202020 32363030 20566961          2600 Via 
    000190   20466F72 74756E61 2044722C 20537569   Fortuna Dr, Sui 
    0001a0   74652033 34302020 20202020 20202020  te 340    
    I hope this helps.
    Mike V.

Maybe you are looking for

  • Upgrade from 160 GB to 1 TB internal hard drive for MacBook Aluminum Late 2008?

    I'm trying to upgrade my MacBook Aluminum (Not Pro) Late 2008 from 160 GB SATA Disk to 1 TB Western Digital WD10JPVT Scorpio Blue 1 TB 2.5" Internal Notebook Hard Drive. But I wasn't sure if this would work with my laptop and if it will fit. Can anyo

  • Late 2007 MacBook Crashing

    In December when working on an iMovie project I went to add an effect to my project and my computer hung for about 30 minutes and then came up with the "hold the power button" panic message. After which iMovie and iDVD would not load at all, just bou

  • Help Needed in mapping business scenario

    Hi All, I have a RM inter unit despatches for this we are using STO. While doing inter unit despatches we have to pay freight on per kg (Gross Weight) for a source and destination. This has already been mapped by creating a condition type and conditi

  • Website looks normal in FF but not in IE

    Someone made this website for my volleyball club in dreamweaver, and the size looks normal in FF. I made some changes to the template (sidenote: I pretty much have no idea what i'm doing) and I think messed something up. Now in FF the size looks norm

  • Bill Generation Issue in CC&B 2.4

    Hi All, I'm working on Oracle Utilities CC&B 2.4 on Windows OS. Application and Framework details are as given below: Product Name Release ID Release ID Suffix Build Number Patch Number Oracle Utilities Customer Care and Billing V2.4.0 029 0 000 Orac