Inter module call ( no ear )

I have an appli say A containing EJB A, and a standalone module say MB containing EJB B.
MB is deployed standalone ( not in an ear).
I do not succeed to call EJB B from EJB A.
there is an ejb-ref in the module of A with an ejb-link to ejb B but when I deploy I get : Error: Unresolved : Test9
I alse have tried this syntax :
<ejb-link>moduleName#Test9<ejb-link>
I also get an error saying it could not find the module.
Any idea ?
thanks
Michel

I suppose you're trying to access the EJB's using "Local Interfaces". If this is the case your problem is due to the scope of every module, I mean MA can only see the LocalInterfaces of its EJB container, so it won't see any Local Interfaces from MB.
If you put this two modules in a single EAR you can use local references from MA to MB adding the MB jar file to the classpath of MA (using the "manifest" archive of the jar file).
I hope this helps you.

Similar Messages

  • Function module call with destination

    Hi,
    how can check if a function module call with destination works or not ?
    How can I debug.
    What can be the reason if it is not calles
    regards
    ertas

    * to chcek the rfc Destination By pass RFC destination name and Connection Type..
    RFC_CHECK_DESTINATION
    or
    RFC_CHECK_DESTINATION_ID
    or
    You can use this FM RFC_VERIFY_DESTINATION if your release is greater than 4.6C.
    Check this sample code from Craig Cmehil's weblog.
    CALL FUNCTION 'RFC_VERIFY_DESTINATION'
      EXPORTING
        DESTINATION = TMP
            TIMEOUT = 10
      EXCEPTIONS
        INTERNAL_FAILURE           = 1
        TIMEOUT                    = 2
        DEST_COMMUNICATION_FAILURE = 3
        DEST_SYSTEM_FAILURE        = 4
        UPDATE_FAILURE             = 5
        NO_UPDATE_AUTHORITY        = 6
        OTHERS                     = 7.
      IF SY-SUBRC EQ '0'.
        "* Do code here
      ENDIF.
    Prabhu

  • Rfc function module call error

    Hi Abaper,
    I'm doing upgrade from 4.7 to ecc 6.0 currently and encounter problem in one of the rfc function module that we used. I've tested the connection to destination using sm59 and the connection is successful.
    As an information, in the rfc setting, the target system is not Unicode system.
    When I test using se37 and put the rfc destination in my function module call, I always encountered system_error exception. There's no issue with this rfc call before in 4.7 system.
    Please help me on this. Thank you.
    Edited by: Abraham Bukit on Sep 3, 2008 2:36 AM

    Hi,
    I had the same issue in the past and solved it in the following way.
    If the destination system is not Unicode please try to set the password for the communication user set in SM59 using only upper-case characters and taking into account that the password shouldn't be longer than 8 characters.
    Hope this will help.

  • Problem with function module calling

    Hi,
    I have two questions here
    i have a function moduel 'Z_GET_MATL_BALANCE'
    in my code it called in the below said way
    CALL FUNCTION 'Z_GET_MATL_BALANCE'
        DESTINATION 'NONE'
        STARTING NEW TASK 'A'
        PERFORMING f_back ON END OF TASK
        EXPORTING
          ref_dte    = s_datum-low
          str_dte    = s_datum-high
          end_dte    = s_datum-high
          i_werks    = p_werks
          i_past     = 'X'
          i_future   = 'X'
          verselem   = p_mrpver
          plscn      = p_scenar
          r_outrec   = r_outrec
          supstk     = p_supstk
          days_ahead = w_days_ahead
          shipnt     = p_shipnt
        TABLES
          mat_bals   = w_zmat_bals_a
          i_zdatum   = i_datum
          mat_movmts = w_mat_movmts_a
          mat_ship   = i_mat_ship_a.
      IF sy-subrc NE 0.
        MESSAGE e005(ZMIM) WITH
       text-009 text-166 text-054 sy-subrc.
      ENDIF.
    FORM f_back USING task.
      CASE task.
        WHEN 'A' .
          RECEIVE RESULTS FROM FUNCTION 'Z_GET_MATL_BALANCE'
         TABLES
              mat_bals                     = w_zmat_bals_a
              mat_movmts                   = w_mat_movmts_a
              mat_ship                     = i_mat_ship_a
           EXCEPTIONS
                call_material_lesen_fail     = 1
                call_t450n_fail              = 2
                call_t399d_fail              = 3
                call_aufbauen_mdpsx_fail     = 4
                call_mdezx_aufbauen_fail     = 5
                call_t001w_fail              = 6
                call_zmrpelem_failed         = 7
                call_aufbauen_mdpsx_sim_fail = 8
                OTHERS                       = 9.
          IF SY-SUBRC NE 0.
           RET_CODE1 = SY-SUBRC.
          ENDIF.
    now my first question is what is the difference between function modules calling normally and in the above said way
    and the second question is
    under tables parameter i have four internal tables defined where as while calling the same function module using recive results i have three internal tables. is this correct?
    i am asking this because i am getting an error message while using this funciton module
    please do not give generic answers, all the helpful answers will get a def reward

    Call function starting new task is used to make Asynchronus RFC Call. In this case your function module will be called in a NEW SESSION and it will exceute independently from the Main program which is calling the FM. Also, the main program will continue its own processing and it will not wait for the RFC FM to complete.
    Its not mandatory to have all the TABLES parameters in the RETURN Perform (..Receive results from ...)

  • Need to track Function modules called when executing a transaction

    Hi All,
              Is there a way through which i can track function modules called, while executing a Transaction. Kindly provide pointers to it.
    Thanks in advance.
    Regards,
    Navin.

    Goto SE80 Transaction and use Program name for corresponding Transaction Use Find operation like Call Function .. then you will get list of FM ..
    There is no other option .
    reward Points if it is helpful
    Thanks
    Seshu

  • Can a function module call another function module

    Can a function module call another function module:-
      within the same function group
    (ii)  within different function  groups

    Hi,
    We can call function from another function. If there is a function which is like a calculator and all the operations are from different functions then we have to call the functions from the calculator function for different functions.
    If all the function are from same function group, Then the data is globally available to all the functions with in the group.
    Otherwise we have to declare the data definitions for each of the functions if they are in different function groups.  
    Yes it is possible to call a function module from another function module:-
    within the same function group
    (ii) within different function groups
    Reward.

  • Dynamic function module call

    Hi,
    I need to call few function modules dynamically.The exporting and importing parameters are also known only at run time.
    Can somebody help me out in this regard,
    Thanks and regards,
    Archna

    hi ,
    Create Function module according to your requirment  and call the same 
    such as
    Create functi0n module   where you are passing PLant  runtime   and get data related to Plant 
    write  code in function according to requirment  .
    FUNCTION zrfc_test.
    ""Local interface:
    *"  IMPORTING
    *"     VALUE(ZWERKS) TYPE  MARC-WERKS OPTIONAL
    *"  EXPORTING
    *"     VALUE(RETURN) LIKE  BAPIRET2 STRUCTURE  BAPIRET2
    *"  TABLES
    *"      ZIT_DATA STRUCTURE  MARC
      IF zwerks IS NOT INITIAL.
        SELECT *
          FROM marc
          INTO CORRESPONDING FIELDS OF TABLE zit_data
         WHERE werks = zwerks .
      ELSE.
        SELECT *
          FROM marc
          INTO CORRESPONDING FIELDS OF TABLE zit_data.
      ENDIF.
      IF sy-subrc = 0 .
        MESSAGE ' Selected ' TYPE 'I' .
      ENDIF.
    ENDFUNCTION.
      Suppose  at runtime you get Plant  7100
    types : begin  of w_marc .
             include structure  marc  .
    types : end of w_marc .
    data : it_data type standard table of w_marc with header line  .
    p_plant  = 7100 .
    Call to function module 
    CALL FUNCTION 'ZRFC_TEST'
    EXPORTING
       ZWERKS         = 'p_plant 
    IMPORTING
      RETURN         =
      TABLES
        zit_data       =  it_data  .
    You will get result in it_data .
    Note : if you don't know how to create  Function Module then  search on SDN you will get lots of Forum  .
    Regards
    Deepak.

  • Idoc - Error Status 51: Incorrect function module called up

    Hi,
    In the receiver system for the custom message type, I got this error.
    Incorrect function module called up
    Can any one pls help me to solve this one.
    Regards,
    Bala Raja

    Hi Bala,
         Check the inbound function module attached to process code in receiving system. Generally in every inbound function module first check is coded for checking message type or for checking funciton module like below.In the receiving system go to WE20 and then select the partner and select inbound message type. in that double click on assigned process code.then you have to double click on displayed FM. In that fm check first few lines. You will find this error message.
    LOOP AT IDOC_CONTRL.
        IF IDOC_CONTRL-IDOCTP(6) <> 'DESADV'.
          MESSAGE ID 'E0' TYPE 'E' NUMBER '029'
          WITH IDOC_CONTRL-IDOCTP ' ' 'IDOC_INPUT_DESADV'
          RAISING WF_ERROR_PROCESS.
        ENDIF.
      ENDLOOP.
    Thanks & Regards,
    Kalyan.

  • Caught ::EKdException in module call: The attribute SAPNotes does not exist.

    Hi,
    I am installing NW7.4, usage PI, and during the "define parameters" phase, while checking connection to the database, I get the following pop up error:
    Caught ::EKdException in module call: The attribute <SAPNotes> does not exist..
    I checked sapinst log for more meaningful entries and found the following:
    ERROR 2014-03-19 15:33:32.656
    FKD-00024  Unknown attribute SAPNotes in table tMSS_ServerParameters.
    Any ideas? OS is Windows 7, and DB is MSSQL 2012 (installed using SAP vb script provided) - pre-requisites checks were executed and I got OK's all around, including for the Windows 7 OS.
    Thanks,
    Marco

    Hello, same thing with system installtion NW 7.30 OS=2008R2 DB=SQLSERVER200R2
    see trace..
    TRACE      2014-03-25 11:17:47.819
    Copying SQL scripts from X:\nw730_installation\swpm\COMMON\INSTALL\MSS\SQL to  target...
    ERROR      2014-03-25 11:17:47.893 [kdxxcrow.hpp:112]
               lib=iakdblib
    FKD-00024  Unknown attribute SAPNotes in table tMSS_ServerParameters.
    TRACE      2014-03-25 11:17:47.898 [jsextension.hpp:141]
               JSExceptionHandler::setJSException()
    Member function 'Installer.setKdbClient()' has thrown ::EKdException. Converting to JavaScript exception EJS::EKdException.
    TRACE      2014-03-25 11:17:47.898
    Function setMessageIdOfExceptionMessage: modlib.jslib.caughtException but already set to modlib.jslib.caughtException
    TRACE      2014-03-25 11:17:47.941 [iaxxgenimp.cpp:649]
                CGuiEngineImp::showMessageBox
    Caught ::EKdException in module call: The attribute <SAPNotes> does not exist..
    ...end of trace
    with SWPM=SWPM10SP04_8-20009707.SAR
    it works finde.
    Winfried

  • IPIPGW and Inter-Zone calls using NetMeeting

    I'm using Netmeeting to test inter-zone calls through an IPIPGW. The IPIPGW registered in the zone0-gk zone should be used to establish the calls between zones.
    I have two local zones, zone1 and zone2 and I'm using NetMeeting to test basic connectivity, with one endpoint (1000) registered in zone1 and another (2000) in zone2.
    When a call is placed from 1000 to 2000 a call arrives at 2000 from the ipipgw. When this is accepted, another call arrived from the endpoint itself. (The same occurs in the opposite direction).
    I'm not sure whether this is a configuration error with the IPIPGW/GK or a feature of NetMeeting.
    voice service voip
    allow-connections h323 to h323
    h323
    interface Loopback0
    description IPIPGW/GK Source Interface
    ip address 10.0.0.10 255.255.255.255
    h323-gateway voip interface
    h323-gateway voip id zone0-gk ipaddr 10.0.0.10 1719
    h323-gateway voip h323-id ipipgw
    h323-gateway voip bind srcaddr 10.0.0.10
    interface FastEthernet0/0
    ip address 192.168.0.100 255.255.255.0
    ip route-cache same-interface
    duplex auto
    speed auto
    dial-peer voice 1 voip
    destination-pattern 2...
    session target ras
    codec transparent
    dial-peer voice 2 voip
    destination-pattern 1...
    session target ras
    codec transparent
    gateway
    timer receive-rtp 1200
    gatekeeper
    zone local zone0-gk test.com 10.0.0.10 invia zone0-gk outvia zone0-gk
    zone local zone1 test.com invia zone0-gk outvia zone0-gk
    zone local zone2 test.com invia zone0-gk outvia zone0-gk
    no zone subnet zone1 default enable
    zone subnet zone1 192.168.0.14/32 enable
    no zone subnet zone2 default enable
    zone subnet zone2 192.168.0.18/32 enable
    zone prefix zone1 1...
    zone prefix zone2 2...
    no use-proxy zone1 default inbound-to terminal
    no use-proxy zone1 default outbound-from terminal
    no use-proxy zone2 default inbound-to terminal
    no use-proxy zone2 default outbound-from terminal
    no shutdown

    I have since tried this using OpenPhone instead of NetMeeting (just in case this was a NetMeeting issue, but I am still unable to use the IPIPGW to get up a video call between two local zones.
    One OpenPhone believes it is transmitting video data, and the other believes it is receiving video data, but the receiving OpenPhone doesn't display the video (which is consistent with the behaviour observed with NetMeeting). The audio is working.
    The output of "show call active video" shows the inbound and outbound audio legs, but only the outbound video leg, not the inbound leg:
    Outgoing Channel Number = 259
    Type = VIDEO
    TX Bandwidth = 8250
    RemotePort = 49590
    LocalPort = 17538
    SelectedQos = best-effort
    Incoming Channel Number = 258
    Type = AUDIO
    RX Bandwidth = 63
    RemotePort = 49592
    LocalPort = 16766
    SelectedQos = best-effort
    Outgoing Channel Number = 258
    Type = AUDIO
    TX Bandwidth = 640
    RemotePort = 49592
    LocalPort = 16766
    SelectedQos = best-effort
    Examples on CCO show configurations for using the IPIPGW between an endpoint in a local zone and a remote zone endpoint. I'm unable to find any examples of the use of IPIPGW to set up a call between endpoints in local zones.

  • Inter cluster calling

    Hi ,
    We have 4 CUCM (7.x) cluster for four regions. Each cluster has 1 Pub. And 3 Subs. I want to enable inter cluster calling because all regions are at our MPLS Network.
    Kindly suggest what to do to enable calling across 4 regions.
    Regards,
    Soni

    Hi,
    this is the "Contact Center" forum, your post would get better exposure in the "IP Telephony" section, but anyway. The easiest thing would be to set up intercluster trunks between clusters, and perhaps use Locations-based CAC to control the number of calls.
    Or, a bit sophisticated approach: use a Gatekeeper (or a cluster of gatekeepers) to decide where to route the calls. You may also use Locations-based CAC or Gatekeeper CAC (or their combination).
    G.

  • ABAP TRIAL Caught ESAPinstException in module call CHECK_LOGON_SQLUSER

    Hello,
    I have a Windows 7 SP1 64 bit machine and satisfied the requirements for installation of ABAP Trial version of 7.02 64 bit
    Now when i reach the step after the entering of master password, I get the following error.
    "Caught ESAPinstException in module call: Error during execution of command identifier 'CHECK_LOGON_SQLUSER': MaxDB Software must be installed before this class can be instantiated!"
    SAP has clearly said that Windows 7 is a requirement as well.
    Has anyone else come across this ?
    Thanks and Regards,
    Prem

    Problem solved !
    Maybe some time ago the Max Db installation used to happen automatically.
    But for some reason I had to do the MaxDB installation first

  • CVI Module Call in Relative mode

    HI,
    I defined an Action step with CVI dll.   While filling in the definitions in the Module Call Tabs, I get the choice of relative location vx absolute location in the CVI project and CVI 'c' file.  However, for the Module Pathname (dll) I don't get this option....
    As a result of this, every time I copy my project to a new location I get an error in this step.  TS is looking for my file in the old location....
    I checked my 'Search Directories' content and deleted anything related to the old location.  I even redefined the step from the beginning...but it always behaves the same...
    Is this normal behavior?
    How can make the dll pathname also be a relative location?
    Thanks
    Rafi

    Howdy Rafi,
    The Module Pathname, the Pathname of Source File Containing Function and the Pathname of CVI Project File to Open options can either be an absolute or relative pathname.  Relative pathnames are relative to the TestStand search directory paths.
    For example, if you open up the AccessingArrays example located in <TestStand>\Examples\AccessingArrays\UsingCVIStandardPrototype\, you notice that all the fields mentioned above are using relative names (i.e. Module Pathname = "AccessingArrays.dll" not C:\Program Files\.....). This is because all those files are in the current sequence file directory which is one of the default search directories. 
    Hope this clarifies things. If you are still having some problems, let me know.
    Best Regards,
    Jonathan N.
    National Instruments

  • Getting values from a function module called in a WDA method

    Friends,
    I am trying to execute a function module from WDA.
    I have created a service call for the function module. The function module takes values from the user, looks up the corresponding values of another field and returns the values in an internal table.
    I am using the "Method Call in Used Controller" of WD Code wizard to call the function module.
    When the event handler method containing the call to the function module is executed, nothing happens.
    I am not sure how to pass values to the function module and to get the return values from the function module.
    I am new to using function modules from WDA. Please help me out.
    Thanks and Regards.

    Rashmi,
    Is the function module intended to collect input data from the UI and process it? - Yes
    If yes, then the input (importing parameter) to the Function Module is a table of values (which should be ideally from the context mapped to the Table UI Element). - The importing parameter is a single value NOT a table and is mapped to the view context.
    Now this table UI Element is bound to the view controller context , which in turn is mapped to the component controller context. And you are indeed being able to read the value of this internal table in the component controller method where the function module is being called by means of get_static_attributes_table (Is this right? - Yes, I am able to read the table of values that is passed from the component controller view to form view context by using get_static_attributes_table.
    Or are you being able to read it in the event handler method of the view controller and not being able to read it in the component controller method) -
    The function module takes a single value as import parameter and returns a table of values as return value.
    It works fine when no importing parameter is being used and returns the table of values that is getting passed from component controller context to form view context when i am able to read it using get_static_attributes_table.
    Now the question is: how to pass the import parameter value to the function module. I assumed since the importing parameter is a context node (like the return values are), i should set the value ( captured when the user enters the value in the form) to the importing parameter context attribute using set_attribute method. Since it is mapped to the component controller context, i assumed it will get passed and the method will take it as input parameter.
    Let me know if my assumptions are correct regarding passing the import parameters and what is missing here.
    Thanks and Regards.

  • ABAP Dump due to RFC Function module call in another thread

    Hi,
    I am facing some problem since yesterday. In one of my executable program I am calling a RFC fm as below mentioned    
    REPORT ZREPORT.
    CALL FUNCTION 'Z_XXXXXXXXX'
          STARTING NEW TASK L_NAME
          DESTINATION IN GROUP 'TASK'
          PERFORMING RETURN_INFO ON END OF TASK
          EXPORTING
            P_exp1       = l_emp
          TABLES
            R_VBELN      = r_it_vbeln
          EXCEPTIONS
            NO_DATA_TO_PROCESS = 1
            OTHERS             = 2.
    wait until v_task = 1.
    update ztable.
    Due to some data inconsistence one of the SAP function
    module which I am calling in my function module Z_XXXXXXXXX
    is generating dump with message type X. Since there is data inconsistence it is generating dump that's OK.
    But the problem i am getting is, report ZREPORT is generating dump at WAIT statement saying illegal statement even though I am calling that function module
    Z_XXXXXXXXX as a separate new task.
    Can somebody help me.
    Thanks,
    Amara.

    hi, Amara
    I agree with Rich said, and do a simulate test in my server, here is the analysis.
    Assume we have a RFC, like this:
    FUNCTION ZGZL_DUMPTEST.
    *"*"Local interface:
    *"  EXPORTING
    *"     VALUE(OUT) TYPE  I
    *"  EXCEPTIONS
    *"      CONVERT_FAIL
      data:a  type  i.
      a = 'A'.
    ENDFUNCTION.
    And call this RFC like you way:
    REPORT ZGZL_DUMPTEST .
    DATA:
      SEMAPHORE(1) VALUE SPACE,
      LC_OUT       TYPE  I.
    CALL FUNCTION 'ZGZL_DUMPTEST'
    STARTING NEW TASK 'DUMP'
    PERFORMING RETURN_INFO ON END OF TASK.
    WAIT UNTIL SEMAPHORE = 'X'.
    WRITE: 'OVER'.
    FORM RETURN_INFO USING TASKNAME.
      RECEIVE RESULTS FROM FUNCTION 'ZGZL_DUMPTEST'
              IMPORTING  OUT = LC_OUT.
      SEMAPHORE = 'X'.
    ENDFORM.                    " RETURN_INFO
    if we run the RFC in se37 directly, obviously it will occur a rumtime error CONVT_NO_NUMBER, and dump.
    But if we run the above application to call the RFC, we will get a different runtime error CALL_FUNCTION_REMOTE_ERROR.
    Error Analysis in ST22 like this:
    An error occurred when executing a REMOTE FUNCTION CALL.
    It was logged under the name "CONVT_NO_NUMBER"
    on the called page.
    I think that means the application receive the runtime error from RFC when call  <b>RECEIVE RESULTS</b>.
    In normal CALL FUNCTION, the external application will accept the rumetime error throw from FM, that's correct, because it let the caller can handle these runtime errors.
    In you case, you said RFC run in a new task, yes, that's true, so you can call the RFC like this:
    CALL FUNCTION 'ZGZL_DUMPTEST'
    STARTING NEW TASK 'DUMP'
    PERFORMING RETURN_INFO ON END OF TASK.
    WAIT UNTIL SEMAPHORE = 'X'.
    WRITE: 'OVER'.
    FORM RETURN_INFO USING TASKNAME.
      SEMAPHORE = 'X'.
    ENDFORM.                    " RETURN_INFO
    It will goes well, no dump. Why? because we don't use RECEIVE RESULT. RECEIVE RESULT will bring the result from FM, also bring the runtime error from FM.
    So if you want to call the FM and receive the result, handle the runtime error in FM inside at first.
    like this:
      CATCH SYSTEM-EXCEPTIONS CONVT_NO_NUMBER = 1.
        a = 'A'.
      ENDCATCH.
      IF SY-SUBRC = 1.
        RAISE CONVERT_FAIL.
      ENDIF.
    And then you call FM like this:
    CALL FUNCTION 'ZGZL_DUMPTEST'
    STARTING NEW TASK 'DUMP'
    PERFORMING RETURN_INFO ON END OF TASK.
    WAIT UNTIL SEMAPHORE = 'X'.
    WRITE: 'OVER'.
    FORM RETURN_INFO USING TASKNAME.
      RECEIVE RESULTS FROM FUNCTION 'ZGZL_DUMPTEST'
              IMPORTING  OUT = LC_OUT
              EXCEPTIONS CONVERT_FAIL = 1.
      SEMAPHORE = 'X'.
    ENDFORM.                    " RETURN_INFO
    That's will be ok for your scenario.
    Hope my reply is useful.
    thanks

Maybe you are looking for