How to Debug a BAPI from a Web Dynpro application

I have a Web Dynpro application calling a BAPI, and I would very much like to see what data the Web Dynpro application is passing into the BAPI, and then debug the BAPI.
Is there a way to do this? I'm wondering if it is possible to somehow set up the ABAP stack so that on receipt of the BAPI call, it appears on the tRFC queue waiting for execution.
However it is done, I need a way to step through the BAPI on the ABAP stack.
BR,
Tony.

Hi Anthony,
The ABAP runtime environment contains various tools that you can use for analysis purposes, such as for debugging source code. All source code written for Web Dynpro applications in ABAP can normally be tested using the debugger.
To allow it to test other Web Dynpro-specific program entities too, the debugger has been equipped with a special enhancement. In the phase model in the active application, you can typically see the following information at various points in time:
-The structure of the content of the current controller,
-The properties of the UI elements in the layout of the current view
-The currently instantiated component usages
Starting the Debugger
The functions for debugging Web Dynpro entities are embedded in the new debugger. You therefore need to have selected the new debugger in your Workbench settings.
Selecting the New Debugger
1. In the menu, choose Utilities -> Settings.
2. A dialog box now appears that contains two nested tab page areas. Choose the “parent” tab page ABAP Editor.
3. The settings for ABAP Editor always open with the content of the child tab page Editor. Here, select Front End Editor (New).
4. Now switch to the Debugging tab page in the ABAP Editor settings and select New Debugger.
5. Save your changes and close the dialog.
Starting the Debugging Process
To run an application in debugging mode, you first need to set an external breakpoint in display mode in one of the methods in the component.
Now start a test run of the application from ABAP Workbench as usual.
The method in which you set the breakpoint depends on the purpose of the test run. To debug a view, for example, it is best to set the breakpoint in method WDDOMODIFYVIEW. Provided that the context of the view controller is not filled using a supply method, the view is fully instantiated in the phase model at this point in time.
Selecting the Web Dynpro Tool in the New Debugger
When you start the application, another session opens automatically for the debugger. If you have not yet saved any personal settings with regard to the layout of the debugger, the Editor tool will now appear on the left, with the Display Variables tool on the right.
1. Select one of the three desktops in order to reconfigure it for debugging the Web Dynpro application (see Designing Work Areas).
2. The right-hand edge of the debugger window has a bar of function icons. Choose the Replace Tools icon:
3. In the next dialog box (New Tool) open the lowest node (Special Tools) and choose Web Dynpro.
4. Confirm the dialog box.
On the right of the debugger desktop, you will see that the previous tool has now been replaced by the Web Dynpro debugger. You can save this setting for future debugging activities. To do this, choose Save Layout In the debugger’s general toolbar.
Thankyou,
Ramganesh.

Similar Messages

  • How to execute a BI query/view from a web dynpro application?

    Hi all,
    I am trying to connect to a BI system from a Web Dynpro application. I have to execute a view/query and process the output in my application. Please guide me about how to establish the connection to the BI system from my web dynpro application and then execute the query/view.
    I have tried executing/modelling the BI query/view using Visual Composer but I get an error saying 'QueryView Instantiation failed' when I try to drag the view/query on to the design board.
    Please guide me and help me achieve this.
    Thanks & Regards,
    Kishan

    Hi Kishan,
    Define system for BI in portal and define JCo destination, then from WDJ application use can query BI.
    Create the Technical System and connect with JCO Destinations
    or
    Connecting through the BI Connecters (ex: XMLA Connecter)
    Refer below link:-
    http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/60f35908-ecd4-2910-6c89-e75e1054d9d1?quicklink=index&overridelayout=true
    http://www.sdn.sap.com/irj/scn/index?rid=/library/uuid/60f35908-ecd4-2910-6c89-e75e1054d9d1
    In this document you will get details related to connector and other admin activity.
    Hope this may help you.
    Deepak!!!

  • Parameter transfer from one Web Dynpro Application to another

    hi,
    Is it true that  only parameters with string type can be transfered from one Web dynpro application to another ?

    hi, Justin ,
    You are right , I can use inplug for the dest component , and can transfer referenced type , but now I met a problem , how I can transfer the parameter to the dest comp ? 
    I can use the following code to transfer a value from origin to dest , but how to transfer an object , can you give me some sample code ?
    CONCATENATE l_url '?'
                   '&guid=' lv_guid
                   into l_url.
    CALL METHOD window_manager->create_external_window
          EXPORTING
            url    = l_url
          RECEIVING
            window = lo_window.

  • How to start a Web GUI program from a Web Dynpro application

    I know the program name , and it is a Web GUI program ,is anybody know how to start it from a Web Dynpro application

    hi,
    I use the following program to call a SAP GUI program :
    DATA: l_componentcontroller TYPE REF TO ig_componentcontroller.
      DATA: l_api_componentcontroller type ref to if_wd_component.
      DATA: l_sapgui_manager type ref to cl_wdr_sapgui_integration.
      DATA: lt_parameters    TYPE wdr_name_value_list.
      l_componentcontroller = wd_this->get_componentcontroller_ctr( ).
      l_api_componentcontroller = l_componentcontroller->wd_get_api( ).
      l_sapgui_manager = l_api_componentcontroller->get_sapgui_manager( ).
      IF l_sapgui_manager IS NOT INITIAL.
        l_sapgui_manager->fire( EXPORTING name = 'PROGRAM_NAME 'parameters = lt_parameters ).
    But the l_sapgui_manager is always initial , what can I do ?
    ENDIF.

  • How to pass the values from the Wb Dynpro Application to the SAP Backend ?

    Hi All,
    Good morning..,
    I have scenario like:
    I want to pass the values from the web dynpro appication to the SAP Back end R/3 Table. IN backend the RFC is writtn to accept the structure input from the Webdynpro.
    Upto know I imported the corresponding RFC and maaped to the View.
    How to proceed with the coding to save the data...
    PLease suggest...
    Regards and Thanks in Advance,
    CSP

    Hi  Pradeep
    Steps:
    1. First create an instance for bapi and bind the instance to the bapi node.
      Z<bapi name> zb=new Z<bapi name>();
      wdContext.nodeZ<bapi name>. bind(zb);
    2. Then if u have the import parameter u have to set them by using
        The instance of the above bapi.
        Zb.set<import parameters>;
    3. If the bapi has a table parameters then the structure for the table parameters will also be imported
       In the model class.
    4. Set the table parameters by creating the instance for that structure and using this instance set it.
       Z<Struct>itm tab=new Z<Struct>();
       Tab.set<table parameters>
    5. Then add the structure instance to the bapi instance.
        Zb.add(Tab);
    6. Then Execute the bapi after setting the import parameters.
    7.  If there is any export parameters, then get the values after execution.
    Look at this thread for codes
    Re: RFC call on click of button
    Regards,
    Arun

  • How do i pass parameters to a web dynpro application ?

    Hi all,
    how do i best possible pass (serverspecific) parameters to a web dynpro application ?
    i wrote a web dynpro application that, among other things, sends an email and stores files on a server directory. Therefor i need parameters like e.g. "mailhost" or "directory".
    The way i chose is to make a *.properties file. But from my point of view there are some disadvantages.
    1) When i deploy the WD App to a new server, i have to edit the properties file before. I don't know how to do that. Do i have to edit the *.properties file again, before i make a new ear-Archive with NWDS ?
    2) When the properties a wrong or change for a deployed app, i have to restart the J2EE Engine. Thats not convenient for a production server.
    Is there a better way ?
    Thanks
    Andreas
    (And I promise to return and reward the answers)

    Hi Andreas,
    You can't use something like portalapp.xml because this is not supported by webdynpro, but ... you can add this parameters at the end off the webdynpro address line. like http://<host>:<port>/webdynpro/dispatcher/local/<Webdynproproject>/<webdynproApplication>?host=yourhost
    In your application you can get these variables:
    String host = WDWebContextAdapter.getWebContextAdapter().getRequestParameter("host");
    when you create a webdynpro iview you can specify the default value for the variables in the URL in the properties of the iview and i think you can personalize them later.
    kind regards,
    Joachim

  • Exiting from ABAP Web Dynpro application

    Hi,
    In ESS portal we have one tab Personal info, there I have created one link and integrated my ABAP web dynpro application.
    I want to exit from the application and go back to the Personal info sub area. created one exit button in my application on press of that i need take this action.
    Please guide me with this
    Thanks!
    Piyush

    Piyush,
    I am not sure whether it works or not just get the navigation url of personalinfo subarea and using portal APIs navigate to that url when you click on exit button
    Thanks
    Bala Duvvuri

  • How to customize error mess, when an Web Dynpro application Deployed

    Hi Frndz...
    When we r deploying any web dynpro application , if there was any error in that WDP application its showing an error page the list of errors with HOST name  n patch level n OS details n so many n with the line number of that error in the code.. Normally.
    But as my requirement i need to restrict the HOST,OS ,PATCH details in this list to avoid the security issues.
    If anybody have any idea plz share with  me...
    Regards
    Rajesh

    Hi..
    Thank u boss, ur reply was very helpfull to sort out our requirment.
    Regrads
    Rajesh

  • How to debug Adobe form attached to Web Dynpro for ABAP

    Hi,
    My developer has created an adobe form and rendered inside a Web Dynpro page in the SAP Portal. It communicates with the Web Dynpro framework in the backend SAP system (Web Dynpro for ABAP).
    My question is, how would I know what infotype access this form requires, in the form of backend authorization role? Is there any way (not trace, ST01) to debug Abobe form on Portal or in backend SAP system?
    Thanks,
    Karan.

    Julius Bussche wrote:
    > I am not sure whether this will work in this case, but principally if your trace is recording a * value for a field in an authorization check, then it must be defined somewhere, and there is an option in the trace file to jump from the check to the source code location where it occurred.
    Yes, that's possible since the trace also records the information on the ABAP source code location where the AUTHORITY-CHECK statement (or other ABAP statements which internally trigger authorization checks) is executed. If I'm not wrong then there is a button (in ST05) which allows a direct source code navigation. Alternatively you might just click on the ABAP source code information displayed in the ST05 trace results (for recorded authorization checks).
    Cheers, Wolfgang

  • How can I create a web Service from my Web Dynpro Application ?

    Hi,
    Kindly let me know How I could create a "Web Service" with my Web Dynpro DC project.
    Awaiting your responses.
    Regards,
    Mahesh

    Hi Mahesh,
          You can use the web services by creating the Model in web Dynpro
    And if you want to publish your own web service then you have to create a EJB module and publish as a web service.
    Thanks
    Ninad

  • Access KM predefined property values from a Web Dynpro application

    Hi,
    I am trying to build a custom search interface in Web Dynpro which leverages the KMC Indexing and Search services.
    In this interface I would like to display value lists of predefined properties in KM (created using the Property Metadata Service) and bind each predefined property's value list to a checkbox group UI element.
    Which KM API should I use to retrieve the values of a specific predefined property ?
    When using the standard flexible user interface in the portal this can easily be achieved through configuration, but now I would like to know how to achieve this in Java code.
    Thanks in advance for your input.
    I have some idea on how to get the propertymap from a resource, but how can I access the metadata of a predefined property in KM directly ?

    Hi Theo, i'm working on something like this, i have a WD application that is accessing Km through a Webservice, on the webservice ejb i have this problem:
    IResourceFactory resFactory = ResourceFactory.getInstance();
    IRepositoryServiceFactory serFactory = resFactory.getServiceFactory();
    IPropertyConfigurationService propConfigService = (IPropertyConfigurationService) serFactory.getService("PropertyConfigurationService");
    IMetaNameListIterator i = propConfigService.getMetaModel().nameIterator();
         while (i.hasNext()) {
         IMetaName metaname = i.next();
         if ( metaname.getDocumentPatterns()!= null){
         propertyData.setId(metaname.getName());
         propertyData.setName(metaname.getLabel(locale));
         propertyData.setNamespace(metaname.getNamespace());
         propertyData.setDescription(metaname.getDescription(locale));
                    propertyList.add(propertyData);
    On this line serFactory.getService("PropertyConfigurationService") i get the following error on the trace:
    #System.err#sap.com/KmmsListEAR#System.err#Guest#2####30a27fa0cbfa11dbace30018de0545f1#SAPEngine_Application_Thread[impl:3]#Error##Plain###Configuration Framework error: unable to create an IConfigClientContext instance from an EP5 userInitialConfigException: The configuration service locator could not be initialized for any of the environments. The configuration framework is not available.#
    #System.err#sap.com/KmmsListEAR#System.err#Guest#2####30a27fa0cbfa11dbace30018de0545f1#SAPEngine_Application_Thread[impl:3]#Error##Plain###InitialConfigException: The configuration service locator could not be initialized for any of the environments. The configuration framework is not available.
    Do you have any idea of how to solve this? or if you accomplished in a different way, can you guide me a little bit.
    Thanks in advance Theo

  • How to get Portal User Context  in Web Dynpro application

    I have successfully integrate a web dynpro app into SAP Netweaver Portal.
    Within my web dynpro app, how can I get portal user context information such as first name, last name, job title or some newly created ume attibutes.
    Is there any programmatical approach to get portal user context in my web dynpro. I not sure whether I can use the following codes in web dynpro?
    IUserContext userContext = request.getUser();
    String firstName = userContext.getFirstName();
    String lastName = userContext.getLastName();
    If yes, can someone point me the name of the jar file I have to import.
    Note : The SAP Netweaver installation that runs my web dynpro app is same with the SAP Portal.

    Hi ,
    you can use the below code to get User details and  add com.sap.security_2.0.0 > lib > com.sap.security.api.jar
    try
              IWDClientUser clientUser = WDClientUser.getCurrentUser();
    String firstName = clientUser.getFirstName();
    String lastname = clientUser.getLastName();
    catch (WDUMException e) {
                wdComponentAPI.getMessageManager().reportException("Error Retrieving User"+e.toString(),true);
    Regards,
    Sunitha Hari

  • Calling a Standard SAP transaction VA03 from another web dynpro application

    Hi All,
    I have a requirement wherein I need to call the standard SAP transaction VA03 whenever a sales order is selected in some other we dynpro application so that the sales order gets displayed.
    No regarding usage of OBN for the above functionality I have certain queries:
    1. In order to call VA03 do I need to create a transactional iview for it or is there any direct method.Also how to pass this sales order number as parameter to the T.Code.
    2. Can we use standard business object BUS2032 for OBN or a new Business object is created.What exactly is the purpose of these standard business objects in portal and when should they be used.
    Thanks in advance
    Aman Gupta

    Hi Aman - Do you have a portal team in your project or you have to create the IVIEWS yourself?
    I do have a portal team and I dont know how they create the IVIEWs but for example, I will go to my portal team and I will ask them to create an IVIEW for TCODE VA03, they will created and they will tell me the input parameters they entered for the IVIEW so I can call OBN and display in webdynpro.
    SAP in SRM has webdynpro e.g. for BUS2121 and they have an IVIEW already implemented in the portal context pointing to the webdynpro of BUS2121 so we can used the IVIEW by calling OBN and passing the parameters; in my case the object_type will be 'shc' and the operation will be 'display' and the paremeters itab will be the GUID of my shopping cart, that way the OBN can understand which Shopping cart open and in which operation mode.
    I also did something like your requirement, I need it to display a specific case in Records Management but SAP has a standard IVIEW for records management 'RMREGEDIT' that didn't work for my requirement so I went to SE38 created a program that displayed the case based on GUID and I created a TCODE of my custom program. Portal team created a custom IVIEW of my custom TCODE and they told me the input parameters to call the TCODE in OBN and I pass in the itab parameter the GUID of the case using the FM that I post before.
    The action to call the OBN is in the event handler ON_CLICK of my ALV and the action is getting trigger when the user actually clicks a HYPERLINK in the ALV.
    Hope this helps you!
    Please feel free to ask me more details if you need.
    Jason PV

  • Error in tutotial "How to ...  Build a Web Dynpro Application"

    Hi,
    I deployed this tutorial in my WAS 6.40 and had the configuration in the SLD and in the Jco connection.
    When I tried to execute it I received the messages below:
    Error stacktrace:
    com.sap.tc.webdynpro.services.exceptions.WDTypeNotFoundException: type com.sap.demo.flightlist.model.types.Bapimaxrow could not be loaded: com.sap.dictionary.runtime.DdException: The logical dictionary com.sap.demo.flightlist.model.types.FlightListModel does not exist
         at com.sap.tc.webdynpro.services.datatypes.core.DataTypeBroker.getSimpleType(DataTypeBroker.java:242)
         at com.sap.tc.webdynpro.services.datatypes.core.DataTypeBroker.getDataType(DataTypeBroker.java:205)
         at com.sap.tc.webdynpro.progmodel.context.AttributeInfo.init(AttributeInfo.java:471)
         at com.sap.tc.webdynpro.progmodel.context.NodeInfo.initAttributes(NodeInfo.java:771)
         at com.sap.tc.webdynpro.progmodel.context.NodeInfo.init(NodeInfo.java:756)
         at com.sap.tc.webdynpro.progmodel.context.NodeInfo.init(NodeInfo.java:761)
         at com.sap.tc.webdynpro.progmodel.context.Context.init(Context.java:40)
         at com.sap.tc.webdynpro.progmodel.controller.Controller.init(Controller.java:199)
         at com.sap.tc.webdynpro.clientserver.cal.ClientComponent.init(ClientComponent.java:346)
         at com.sap.tc.webdynpro.clientserver.cal.ClientApplication.init(ClientApplication.java:352)
         at com.sap.tc.webdynpro.clientserver.task.Task.createApplication(Task.java:217)
         at com.sap.tc.webdynpro.clientserver.task.WebDynproMainTask.execute(WebDynproMainTask.java:581)
         at com.sap.tc.webdynpro.clientserver.cal.AbstractClient.executeTasks(AbstractClient.java:58)
         at com.sap.tc.webdynpro.clientserver.cal.ClientManager.doProcessing(ClientManager.java:248)
         at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doWebDynproProcessing(DispatcherServlet.java:154)
         at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doContent(DispatcherServlet.java:116)
         at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doGet(DispatcherServlet.java:48)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:385)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:263)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:339)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:317)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:810)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:238)
         at com.sap.engine.services.httpserver.server.Client.handle(Client.java:92)
         at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:147)
         at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:37)
         at com.sap.engine.core.cluster.impl6.session.UnorderedChannel$MessageRunner.run(UnorderedChannel.java:71)
         at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
         at java.security.AccessController.doPrivileged(Native Method)
         at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:94)
         at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:162)
    Caused by: com.sap.dictionary.runtime.DdException: The logical dictionary com.sap.demo.flightlist.model.types.FlightListModel does not exist
         at com.sap.dictionary.runtime.DdDictionaryPool.getLogicalSystemName(DdDictionaryPool.java:109)
         at com.sap.dictionary.runtime.DdDictionaryPool.getDictionary(DdDictionaryPool.java:62)
         at com.sap.dictionary.runtime.DdDictionaryPool.getDictionary(DdDictionaryPool.java:39)
         at com.sap.dictionary.runtime.DdBroker.getDataType(DdBroker.java:149)
         at com.sap.dictionary.runtime.DdBroker.getSimpleType(DdBroker.java:170)
         at com.sap.tc.webdynpro.services.datatypes.core.DataTypeBroker.getSimpleType(DataTypeBroker.java:234)
         ... 32 more
    Important: I execute the tutorial "FlightBooking" and it is working well, and I'm using the same Jco specifications.

    Hi Flavio,
         It looks like your back end box does not have the type FlightListModel in it.  This can happen for any of a couple of reasons, the Metadata JCO connection could be wrong (but you indicate it is just fine), the back end function module and associated types may not exist on your back end system, or the metadata cache on the J2EE engine is filled with the wrong data (or is simply missing data).  If the first two are double checked and there is no problem, you might try restarting your J2EE engine which would re-load the metadata cache.
         Hope this helps,
            --Greg

  • How to change the Portal Password using a link from Web dynpro application

    Hello Everybody,
    I have a requirement to change the user password from a web dynpro application which is available on a mobile device. Firstly User will log into the portal through a mobile device and after getting authenticated user will be redirected to the mobile application. Within this mobile application there will be a link to change the login password(Portal login). Can somebody tell me how can i change the portal login password from a link available within the mobile application. Looking forward for a suitable reply.
    Thanks to all,
    Regards,
    Saby.

    Hi Maksim,
    Thanks for your reply..but i would also like to know can we directly use the Change Password Iview "persoUserPassword" from the portal. Can i directly Pass the URL of this iview from the portal to a "Change Password" link in the web dynpro application, so that when the user click this link he should be able to see this Iview on his/her mobile device and should be able to change the password from there. But i dont know whether this iview will appear properly on the mobile device or we have to have a custom web dynpro application for this purpose...Please reply with a suitable answer.
    Thanks in advance.
    Regards,
    Sarabjeet Singh.

Maybe you are looking for

  • CDs I burn won't play on car player

    I have no problems burning audio CDs with itunes. The CDs play great on every CD player EXCEPT the on in my car, which is where I really want to use them. I've burnt MP3 files to audio CDs using other software and they play just fine in my car, just

  • How does it work the reading (list) function on a mac?

    Hello there, Well, I was wondering how does it work, I mean, What's necessary to get this funtion work.. When you're reading something you see that there's is an options it lets you to get in a reading mode but sometimes some web pages won't let you

  • Principal Propagation Issue - J2EE_GUEST being used in some messages

    Hi guys !         I have the following situation, my customer have a SAP PI 7.1 Ehp 1 and, some interfaces are configured to run under Principal Propagation.         What is occurring is, for an interface that uses principal propagation and works cor

  • Forms6i - Import Java Classes

    Hi,i need import java classes to Forms.When I choose in menu Program/Import Java classes, program shows error: PDE-UJI001 Failed to create the JVM. I tried set classpath,paths but nothing. Thank you for any tip:-)

  • SD memory is always checked at startup

    I recently bought a Treo 700wx.  If I leave the phone powered off for a few hours then go back to it, once i turn it on, I get a message that tells me a "storage card was inserted.  Do you want to search it for audio and video files?" How can I stop