Using an Adaptive RFC Model from JSP

I'm trying to use an Adaptive RFC Model I created for use in our Web Dynpros from a Portal Application project. I've created 2 DCs:
1. A Web Dynpro DC, only containing the imported Adaptive RFC Model. The model has been added to the public parts.
2. A Portal Application DC, with the model DC added as a DC usage (along with the other required DCs)
Now, everything appears to work from inside NWDS. The dot operator works while editing my JSPDynPage class, and everything builds fine, but when I deploy and test in the portal, I get "package not found" errors on the actual JSP. I assume this is because the JSP is compiled at run-time. How do I expose these classes to the JSP compiler?
It's seems like using the same method to call BAPIs in Web Dynpros and Java iViews would be a good practice following SAP's "reusable code" policy, so there must be a way to do it...

Jonathan,
Adaptive RFC Model works correctly only when running inside WebDynpro container. JSP runs outside container (in regular J2EE WebApplication container).
The error you receive is due to missing run-time references to container classes.
Actually, what you are trying to do is dead end, sorry.
Use SAP Enterprise Connector instead of Adaptive RFC model. Generated connector classes works from any environment. Also they are sooo similar to Adaptive RFC that you'll even not mention a difference.
Valery Silaev
EPAM Systems
http://www.NetWeaverTeam.com

Similar Messages

  • Error while creating a Adaptive RFC Model

    Hi all,
    I am trying to create a Model using a Adaptive RFC Model, I assign a Model name and the logical system names, enter the details in SAP Logon Information for the Single server,here it gives me a Gateway error. What could be the issue here?
    NB: In the Host Name , I tried with both the Host name of the r/3 server and also with the SAProuter string ( as we have the server at other place) ,still it doesnt work. and I am able to login to the R/3 system from the SAPLogon GUI from my desktop normally.
    Is there any issue of the firewall related to this, if so whats the port number that should be opened so that i can connect to the r/3 system get the list of BAPIs present there into my Webdynpro application .
    Need help on this
    Regards,
    Vijay

    Hi Lohi n Gopi ,
    I have checked out with the your given suggestion of trying with the host name as well as  IP address and also typing all the details,without copy pasting the details . In both the cases it gave the " Connect to gateway failed " error mesg.
    But one intersting thing here that i observered when trying with hostname, IP address, or SAProuter string is as follows .
    <b>with IP address</b>
    <i>Connect to SAP gateway failed
    Connect_PM GWHOST="ipaddress",GWSERV=sapgw10,ASHOST="ipaddress",SYSNR=10
    LOCATION CPIC(TCP/IP) on local host
    ERROR      patner not reached(host "ipaddress",service=3310)</i>
    <b>with SAProuterString</b>
    <i>Connect to SAP gateway failed
    Connect_PM GWHOST="SAProuterString",GWSERV=sapgw10,ASHOST="SAProuterString",SYSNR=10
    LOCATION SAPRouter on " some HostName"
    ERROR      hostname unknown</i>
    <b>with HostName</b>
    <i>Connect to SAP gateway failed
    Connect_PM GWHOST="hostname",GWSERV=sapgw10,ASHOST="hostname",SYSNR=10
    LOCATION CPIC(TCP/IP) on local host
    ERROR      hostname "hostname " unknown</i>
    Is there any firewall port blocking issue here ?if so , whats the port that needs to be opened ?
    Appreciate your help.
    Thnks,
    NR

  • Error in Import Adaptive RFC Model

    Hi SDN,
    I am trying to develop an application using Import Adaptive RFC Model, while creating a model i could not able to connect to the backend system after giving the single server parameters. When i click on the next button a pop up is displayed with an error message *"User Name or Password wrong" *.
    But i could able to login to R/3 with the same userid and password from SAP logon pad.
    Really i am at Six and Seven's to trace out this error. Please suggest me how to overcome this error and create the model succesfully.
    Regards
    Basha

    Hi Praveen & Chaitanya
    Thanks for your quick response and informative threads.
    Actually in order to import an adaptive rfc model
    I have right clicked the model node to create a model and given the model name,package name,model data and metadata names and clicked next button. Then in the next screen
    Tab Strip -> Single Server:
    Host name :
    System Number :
    client details:
    Tab Strip -> Load balancing:
    System :
    Message Server:
    System Name:
    Group:
    (in Tcode: SLMG i have added the group public also)
    client details:
    After entering the required details either in Single Server or Load balancing and clicked the next button  I could not able estabilish a connection to the backend R/3 and get the list of Bapi's or RFc's. Instead i am getting a pop up message "User Name or Password Wrong". I could not able to proceed from here.
    But with the same above parameters i could able to logon to R/3 from SAP Logon Pad. I have tried by giving the user name in Cap's and small letters but no use.
    As i was strucked at the intial step while creating the model but not during the execution of the program, as far as my knowledge is concerned i think we no need to worry on SLD or JCO connections during the creation of the model. Please correct me if i am wrong and suggest me to rectify the error.
    Regards
    Basha

  • Use of Adaptive RFC and locking

    Hello,
    I am using an adaptive RFC model inside a Web Dynpro Application to maintain data residing on a SAP Enterprise system.
    This RFC also sets a lock in order to make sure nobody else tries to change the same data.
    I use pessimistic locking which means:
    1. Web Dynpro calls a RFC
    2. The RFC first locks the data then reads the data and returns the result back to Web Dynpro
    3. The user changes the data and presses a save button
    4. Web Dynpro calls the RFC to write and unlock the data
    The problem i have is the fact that after locking and reading of the data the RFC is ended and the data is received by the Web Dynpro App. But at the same moment the lock is automatically unlocked because the RFC has ended succesfully.
    How can i achieve that the lock is still there at the moment i want to change the data or is this procedure of pessimistic locking not possible?
    Bertil

    Hi,
    Whether possible or not : Don't know. Probably not with RFCs.
    More importantly, shall you do it? If it is transactional data you are updating , you may wish to consider concurrency issues (what if you locked and came to web dynpro, and user is thinking whether he shall take a coffee break first before pressing the 'Save'. Would you like to keep this record(s) locked and unavailable for the entire duration?)
    Normally, you would read the data in the first call, let the user update it on the second screen, and then, when the user presses save, execute in sequence :-
    - try locking the record,
    - if locking is successful, Verify whether the record you read has changed in the meanwhile or not (verify what you have in your workarea(before changes done by user) is the same as in DB, by reading again from the DB)
    - If above check is successful, go ahead with the update else throw an error message to the user to redo the txn
    - unlock, exit
    hope this helps,
    cheers,
    Ajay

  • One adaptive RFC Model and Multi Backend System.

    Hi All,
    I am trying to fetch data from multi backend system by using an adaptive RFC model.
    It is not tidy to create multi model for a RFC function to fetch data from multi SAP system, because we have dozens of SAP systems.(over 40)
    So, I would like to switch to multiple SAP systems with an adaptive RFC model at runtime.
      1 model(Same Function) -
    > System A
    > System B
    > System C
    Is there any sample or tutorial about this sort of senario?
    Thanks in advance.
    Message was edited by: JeongEog IM
    Message was edited by: JeongEog IM

    JeongEog,
    You may use SAP java Connector for doing that. Refer the following links for the step-by-step approach.
    <a href="http://help.sap.com/saphelp_nw2004s/helpdata/en/d2/561106b8b3bc449f890cddfdc8d3e2/content.htm">Example program 1</a>
    <a href="http://help.sap.com/saphelp_nw2004s/helpdata/en/f0/eedf3d0eb8af5ee10000000a114084/content.htm">Open Connection</a>
    <a href="http://help.sap.com/saphelp_nw2004s/helpdata/en/24/efdf3d0eb8af5ee10000000a114084/content.htm">Calling a Function and Closing a Connection</a>
    <a href="http://help.sap.com/saphelp_nw2004s/helpdata/en/6a/14e13d8ee4535ee10000000a114084/content.htm">Example program 2</a>
    <a href="http://help.sap.com/saphelp_nw2004s/helpdata/en/bc/eedf3d0eb8af5ee10000000a114084/content.htm">Connection Pool</a>
    Bala

  • Dynamic JCo Connection with Adaptive RFC Model 2

    Hi gurus,
    I'm trying to dinamically change a model data connector inside my web dynpro. I'm using an Adaptive RFC Model 2 to communicate with the R/3 backend. I've found that is possible to change the connector modifiyng the code inside the web dynpro. In detail I've found this example:
    IWDDynamicRFCModel model1 = (IWDDynamicRFCModel) WDModelFactory.getModelInstance(Model1.class);
    I put this code into wdDoInit method but I get the following error:
    "<comp_name>.wdDoInit failed to create or init instance of model 'model_name' in scope NO_SCOPE with instanceId 'null'"
    Furthermore I've used the deprecated Adaptive RFC Model and when I instantiate a model, ModelName m=new ModelName(), I see that the methods m.setJcoClient(client) and m.setSystemName(systemName) are visible, while when I try to do the same with Adaptive RFC Model 2, with my model m, the methods before there aren't.
    So this is my question: is it possible to change data connector dinamically with Adaptive RFC Model 2?
    Thanks a lot

    Dear Lukinho,
    You may try this ;
    try {
    IWDJCOClientConnection clientCon =  WDSystemLandscape.getJCOClientConnection("<name of the JCO connection>");
    String clientName      = clientCon.getClientName();
    String lang          = clientCon.getLanguage();
    String passowrd          = clientCon.getPassword();
    String sysID          = clientCon.getSystemIdentifier();
    String user          = clientCon.getUser();
    //etc...
    } catch (WDSystemLandscapeException e1) {
    // TODO Auto-generated catch block
    e1.printStackTrace();
    I got this code from the thread   [Multiple Client Logon in JCO   |Re: Multiple Client Logon in JCO;
    Also have a look at this thread
    [JCo Destination   |Re: JCo Destination;
    Hope it helps!!
    Warm Regards
    Upendra Agrawal

  • SAP R3 Conector System at the Adaptative RFC model

    Hi folks!
    We´ve generated a Web Dynpro project using the Adaptative RFC model. When running the application we get the exception:
    com.sap.dictionary.runtime.DdException: at com.sap.tc.webdynpro.services.datatypes.core.DataTypeBroker$1.fillSldConnection(DataTypeBroker.java:89)
    This surely happens because we haven´t defined the SAP R3 connector system:
    Could someone please show us how to do this?
    We are using SAP R3 Dedeicated connection, should we use the SAP R3 ConnectionString? At least, we need to know which is the Gateway Host, the SAP R3 machine or the J2EE WAS one? Is the other the Application Server Host? What would be the Gateway Service?
    In the other hand, at defining the RFC Destinations on the SAP R3 server, we´re using the "Registered Server Program" Activation Type. Is this correct? When testing the connection, it fails because the program is not registered at the server.
    Thanks in advance.

    Hi Bernanrdo,
    I have given answer to your another post.
    Just look at that. It will help you.
    Regards,
    Bhavik

  • Unable to Import RFC Models from CRM

    Hi Experts,
        I am unable to import adaptive RFC Models from CRM System,It is giving an error.Previously i imported Bapi from R/3 system and it is working fine. Is it that we can only import Bapi from R/3 system only i.e ABAP Backend.
    I am waiting for all your reply.

    hi
    check this
    https://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/3fe9e790-0201-0010-f787-e2e78c559f38
    what content u want to get from bapi
    Organizational Model Transfer from R/3 to CRM
    bvr

  • Problem in displaying a field in webdynpro using Adaptive RFC model

    HI,
    I created a webdynpro application using adaptive RFC model and i have a problem in displaying one of the output fields.
    When i execute the function module it is giving the exact value for my output field in this case telephone number (of type STEXT which is char with length 40).But when i am trying to display that telephone number in webdynpro application it is taking only first 4 digits.
    i deleted the model and recreated it still it doesnot work.
    please let me know how to resolve it.
    points will be awarded for sure
    Bala

    Hi Bala,
    Whenever you reimport the model server restart is necessary otherwise the changes will not get reflected. You will get an error when you deploy the application.There is no go around except restarting the server as the meta data gets cached in the server as long as the server is runnig.So, Once you restart the server the cache will be cleared.
    Check once again whether you are fetching data from correct BAPI field. Still problem persist try debugging.
    Regards, Suresh KB

  • How to set the tables parameter to a BAPI using adaptive RFC model

    Hi,
    I have a BAPI ZBAPI that has a tables parameter ZPernr of type ZTable with two elements pernr and name.
    I used adaptive RFC model and created model classes for the BAPI.
    My question how do i set list of pernr and name to the tables parameter in the webdynpro for java.
    I have the following methods available
    ZBAPI input = new ZBAPI();
    1.ZTable table = new ZTable();
    table.setPernr(pernr);
    table.setname(name);
    input.addZPernr(table);
    how do i set the table parameter for multiple pernr and name
    2.
    add all the pernr and name to list and set that list to input in the following way
    input.setZPernr(list) and list of typecom.sap.aii.proxy.framework.core. AbstractList
    out of two methods mentioned which one is correct.
    Please let me know the solution
    Thanks
    Bala Duvvuri

    Hi Bala,
                In your code:
    List pernrList = new ArrayList();
    pernrList  should be declared as the  type of class HROBJECT   ( The structure name in the model  e.g. the node PERFWARN type is Zhrecmfm_002_Perfrat_Warning_Input )
    Try this:
    HROBJECT  pernrList = new HROBJECT();
    pernrList.setPernr(pernr);
    input.setPernr_List(pernrList);
    // call BAPI execute method
    If you want to pass list of pernrs, you can pass in alternate way
    IPrivate<viewname>.I<nodeame>Node prNode = wdContext.node<node>();
    IPrivate<viewname>.I<nodeame>Element prEle;
    for (int i = 0; i < table.size(); i++) {
    HROBJECT  pernrList = new HROBJECT();
    pernrList.setPernr(pernr); // Set the pernr from current record
    prEle = prNode.create<nodeame>Element(pernrList);
    prNode.addElement(prEle);     
    // call BAPI execute method
    Once I execute the BAPI how do i iterate thru second table parameter PERNR_PERFRAT to get pernr and performance rating text
    Say your node name is  PERNR_PERFRAT
    for (int i = 0; i < wdContext.nodePERNR_PERFRAT().size(); i++) {
    wdContext.nodePERNR_PERFRAT().getPERNR_PERFRATElementAt(i).getPernr();
    wdContext.nodePERNR_PERFRAT().getPERNR_PERFRATElementAt(i).getPerfrat();
    Regards,
    Siva

  • Error while using Adaptive RFC model

    I am  using adaptive RFC model to consume a function module from BI system. The function module expects a Boolean input. While executing the function module we need to give u2018Xu2019 for that input. When I consumed the function module in the webynpro java project , used it and give the input as u2018trueu2019 on runnig the application it gives the following error: u201Ccom.sap.conn.jco.ConversionException: (122) JCO_ERROR_CONVERSION: Cannot convert a value from type java.lang.Object to CHAR at field I_READ_ATTRu201D
    There is corresponding dictionary type created called u2018BOOLE_Du2019 but I could not access the dictionary type in the controller java file.
    Is there a way to rectify the same or any workaround condition?
    With regards,
    Sougato.

    Hi saurabh,
    I need to give the value from webdynpro. Hers is the sample code.
    rssem_Cha_Values_Get_Input.setI_Read_Attr();
    // It expects a boolean value but if i pass a value to the method the obove error is show.
    Where as there is a simple type "Boole_d" generated when i consumed the RFC in the webdynpro.
    but i couldn't access this simple type in the code.
    With regards,
    Sougato.

  • Login failed error while importing an adaptive RFC model

    Hi there,
    I am trying to import a adaptive RFC model for a BAPI from a 46D system, to which I have connected using VPN from my WAS J2EE server. I have given the login details as Single server(Not load balancing), and given the user login details. However, I am not able to proceed further because it gives me the error 'Name or password is incorrect, please re-enter'. This is strange because I am giving the correct name and password, and I am able to login to this system through SAP GUI using same logon credentials.
    I am confused as to what it is expecting to move forward. I have tried changing case of the user name, restarting my WAS etc. The client is correct, and the login language is EN.
    Could anybody have any clues or have you faced a similar problem?
    thanks in advance,
    LM

    I have had the same problem.
    I think whoever programmed the logon routine at that point should be fired immediately and banned from programming for life! Logging on is a very basic and well-understood task, and programmed gozillions of times since 1940s. Common sense and unwritten rules of programming dictate simply if you make something case-sensitive, then you should accept an input in its original form (i.e. password in smalls, or whatever) but not change it to uppercase and then work case-sensitively. Either this, or you program everything case-insensitively.
    Fire that programmer or give him to us gollumvoice

  • How to find out the destination of an "Adaptive RFC Model - DEPRECATED"

    Hi All,
    How to find out the destination of an "Adaptive RFC Model - DEPRECATED" of an running application
    and Where is the destination created in the server .
    I have got the code of the running project from NWDI .
    Thanks in Advance
    Regards
    Piyas Kumar

    Hi,
    I am not sure I fully understand the question, but as per the guide
    http://www.sdn.sap.com/irj/scn/index?rid=/library/uuid/50f7192d-2808-2d10-189b-df3fa5f71abf
    Excerpt from Page 7
    Caveat Confector!1
    ARFC1 destinations were created using the Web Dynpro Content Administrator tool. This tool is
    still available for compatibility reasons, but the destinations it creates are not used by ARFC2
    models!
    Instead, you should use the u201CDestinationsu201D tool found on the Configuration Management screen of
    the NetWeaver Administrator.
    Therefore I think if you look up the application in the WD content Admin, there you can find out what kind of JCO/RFC connections are belonging to it. You can find it on http://<host>:<port>/webdynpro/dispatcher/sap.com/tcwdtools/Explorer
    Browse your application here, and then select the JCO Connections tab on the right hand side.
    I hope this helps.
    Best Regards,
    Ervin

  • Adaptive RFC model connectivity to SAP R/3 4.6 B

    We are developing a new webdynpro application which uses the backend R/3 version is 4.6B using Adaptive RFC model.
    We are able to connect to Web As systems without any issues but getting error messages while creating the Adaptive RFC model to R/3 4.6 B system as backend.
    Appreicate your help.
    Message was edited by: Udaya Chada

    Hi ,
    I think SLD,s/w Catalog and Creating Logical Systems were Configured,
    Go through the Following Steps Like,
    -- General Data, Enter the Client of the System and Client No. (JCo Connection is Pointing to)
    --J2EE Cluster, Select the J2EE Cluster you wish the JCo destination to be assigned
    -- Select the Destination Type, Either Application/Dictionary data
    -- Appl.Server, You may only select Servers/Logon Groups From the Drop down list that have first been defined as technical Systems in SLD.
    -- Message Server, Application Data JCo destination is connected must have atleast one logon group.( if this is not done ,use SMLG transaction code to create in SAP System)
    --Security, If you have selected connection Type as Application Data , then in the Security Screen you would appear Authentication Techniques and select a appropriate one .
    if you have selected connection type as a Dictionary meta data then provide User Name and Password
    If this is useful to you ,don't forget to award Points
    --Venkat

  • Need help changing an Adaptive RFC Model in WDJ

    Hello All,
    We have an existing application with few custom BAPIs are called. However we added few fields added to the custom BAPI.  We could not figure out how to bring the new fields show up in used Model and context.
    Any Help greatly appreciated.
    Thanks.
    PK

    Hi ,
    The following link help you.
    Importing Models Using the Search Console - Developing Java Web Dynpro Applications - SAP Library
    SAP Library - Development Manual
    Now to call the FM you have to follow the steps:
    1)In NWDS click on models->then right click it select import Adaptive RFC model
    2)Here gave the name of the Model , package etc and the names of the JCo Destinations tht will be needed to call from R/3.
    3)Give the Information abt the R/3 Host and username password of the R/3.Press Next
    4)Now search for the Bapi you want to Use. Select it Press Next
    5) press Finish. You have imported a Bapi from R/3.
    Now you can play around with it according to your requirement..
    You need to create the Context, Views to show the Data of the Bapi.
    Hope this helps you out.
    Thanks & Regards,
    Durga Rao

Maybe you are looking for

  • ISAKMP Phase 1 dying for Site to Site tunnel between ASA and Fortigate

          I am facing strange issue on my asa and client Fortigate fw. We have site to site tunnel with 3des and sha and DH-5 on asa 3des  sha1 and dh-5 on Fortigate. Tunnel came up when configured after some time it went down and it is throwing below er

  • Is it possible to get a refund if i bought an album with extremely bad sound quality?

    As asked in the title, is it possible to get a refund if i bought an album with extremely bad sound quality? I am very unsatisfied with my latest purchase of the album "Never take ffriendship personal" by "Anberlin" ... I can find all the songs in mu

  • Want 2 generate customer statement print directly from F.27

    Hi All, I want to attach the ZFORM we have created for customer statement to F.27. Currently we generate a spool from F.27 and release it from SP01. Please help. Thanks

  • ADF Faces ..PPRResponseWrite...

    just wondering what the below messages are and what causes them... they don't seem to be affecting my app... at the moment: 09:22:41,343 INFO [STDOUT] Oct 7, 2005 9:22:41 AM oracle.adfinternal.view.faces .ui.laf.base.xhtml.PPRResponseWriter$PPRTag fi

  • Update PSe or Windows OS

    I'm beginner user of PSe6.  I've just gotten started learning it but it seems that Vista is gumming up the works (simple stuff isn't so simple).  I'd like a few opions on what you'd do. Change to PSe8 or to Windows 7.  From the posts I've seen, Win 7