Trace classes used by Application

I have a java application that uses a third party API jar file. I call methods on classes in this API. I need a application/API that will enable me dyamically (or possibly statically) to determine every single method in every class used that my application uses. If for example, my application uses a method on a class Stock : Stock.lookup("abc") and in turn lookup() calls a method in Stock2 and that method calls a method in Stock3. I need a way to to know the whole list of all methods in classes used.
Please let me know if you know any such Application/API that does this.
Ahmed

Hi, either start your application using the java option -Xprof or Xrunhprof which will output some statistics, low -level though.
Better use a tool like OptimizeIt, you can get a trial version at http://www.optimizeit.com/optimizeit01.html.
;)

Similar Messages

  • Classes used in BSP application 'HAP_DOCUMENT'

    Hi,
    'CL_BSP_HAP_DOCUMENT_UI' - this is a class used in BSP Application 'HAP_DOCUMENT'.
    do anyone have a document explaining the Attributes and method of this particular class ? or any website where i can go and find the use of each and every attribute and methods used in that class (CL_BSP_HAP_DOCUMENT_UI)
    Regards
    Bharath Mohan B

    Hi,
    Maybe this web log will explain stuff:
    /people/sap.user72/blog/2007/02/20/objective-setting-appraisals-the-web-environment
    Eddy
    PS. Reward the useful answers and you will get <a href="http:///people/baris.buyuktanir2/blog/2007/04/04/point-for-points-reward-yourself">one point</a> yourself!

  • Obtaining list of classes used in an application

    I want to be able to obtain a list of all the classes and interfaces that an application uses
    I have been looking at the Class Object but with limited success
    I can get only limited things from the class
    eg the superclasses, interfaces, innerclasses, and public variables
    but I want to be able to get which private classes are used also
    the code below shows my test code to get info about a class
    Class testClass = (new java.awt.Panel()).getClass();
    Class classList[] = testClass.getClasses();
    for(int i = 0; i < classList.length; i++)
         System.out.println("class "+i+" = "+classList);
    Class innerClassList[] = testClass.getDeclaredClasses();
    for(int i = 0; i < innerClassList.length; i++)
         System.out.println("innerClass "+i+" = "+innerClassList[i]);
    java.lang.reflect.Field fieldList[] = testClass.getFields();
    for(int i = 0; i < fieldList.length; i++)
         System.out.println("field "+i+" = "+fieldList[i]);
    java.lang.reflect.Field innerFieldList[] = testClass.getDeclaredFields();
    for(int i = 0; i < innerFieldList.length; i++)
         System.out.println("innerField "+i+" = "+innerFieldList[i]);
    Object interfaceList[] = testClass.getInterfaces();
    for(int i = 0; i < interfaceList.length; i++)
         System.out.println("interface "+i+" = "+interfaceList[i]);
    Class nextSuper = testClass;
    while(nextSuper != null){
         System.out.println("Class "+nextSuper);
         nextSuper = nextSuper.getSuperclass();
    The reason that I want to do this is:
    When I use an application I want to be able to get the version of each of the classes I use.
    Ideally I would build up a set of classes used in the application (and the classes that those classes use, etc, etc)
    as I did this I would filter for things that start with my class hierarchy.
    and I would save the public String of each class that stores the version.
    Then heypresto I would have a list of all the classes of mine that are used and their version numbers.

    The idea is to write your own class which extends classloader, then use an instance of that to load the program you're trying to examine. When java wants to use a class it calls a classloader giving it the class name and package e.g. "java.lang.String". The classloader then checks to see if the class is already there, and if not attempts to load it, usually from a .class or .jar file.
    When classes loaded with a particular class loader go looking for other classes they call the classloader than loaded them.
    So if you load your main program class through your own classloader then any classes it demands (and those they demand), will also be looked for through your classloader. Since class loading is a dynamic process you actually need to run the application (having loaded your main class use getMethod to get the main method then Method.invoke(..).
    Mind you if java -verbose:class does the job (and it looks to me like it does) that's a lot simpler.
    Just run your program with that and analyse the resulting list of load events.

  • How to create the trace file using run_report_object at runtime

    Dear All
    using :
    Oracel Application Server 10g
    Oracle Database 11g
    Windows XP/sp3
    I'm using run_report_object to call a report inside the form. THis report is running OK from reports builder, however it's too slow when run from Application server.
    How Can I create a trace file (at runtime) that contains the time spent in sql and formating the layout of the report ??
    Here is My code :
    repid := find_report_object('report5');
    SET_REPORT_OBJECT_PROPERTY(repid,REPORT_FILENAME,'INVOICE.REP');
    v_url :='paramform=no';
    v_url := v_url||' FROM_NO=' || :PRINT_BLOCK.FROM_NO ;
    v_url := v_url ||' TO_NO=' || :PRINT_BLOCK.TO_NO ||' FROM_DATE=' || v_from_date ||' TO_DATE='|| v_to_date ||' NO_DATE=' ;
    v_url := v_url ||:PRINT_BLOCK.NO_DATE||' IDENT=' ||:PRINT_BLOCK.IDENT_NO||' REPORT_HEADING='''||V_REPORT_HEADING||'''' ;
    v_url := v_url||' COMPANY_NO='||:global.company_no;
    SET_REPORT_OBJECT_PROPERTY(repid,REPORT_OTHER,v_url);
    SET_REPORT_OBJECT_PROPERTY(repid,REPORT_SERVER,:GLOBAL.INV_REPORT_SERVER_NAME);
    SET_REPORT_OBJECT_PROPERTY(repid,REPORT_DESFORMAT,'pdf');
    v_rep := RUN_REPORT_OBJECT(repid);
    IF rep_status = 'FINISHED' THEN
    V1:='/reports/rwservlet/getjobid'||substr(v_rep,instr(v_rep,'_',-1)+1);
    WEB.SHOW_DOCUMENT('/reports/rwservlet/getjobid'||substr(v_rep,instr(v_rep,'_',-1)+1)||'?server='||REPORT_SERVER_NAME,'_blank');
    END IF;
    Thanks a lot

    Slow running reports often are not the result of a flawed report, but rather a flawed configuration. For example:
    1. If you call your reports (from Forms) via the default or inProcess Reports Server, often because startup time is slow, it will appear that it took too long for the report to be delievered. Using a stand-alone Rep Server is the preferred way to do this.
    2. If your Forms application makes numerous calls to RRO (RUN_REPORT_OBJECT), this can tend to result in what might appear as a memory leak (although it is not). The result is delayed processing because of the excessive memory use. This problem has been overcome in Forms/Reports 11 by the use of JVM pooling. However in v10 enabling "6i compatibility" mode is the way to overcome the issue. See Note 266073.1
    3. If the report runs fine from the Builder and it is connecting to the same db as when you run it from App Server, the issue is unlikely a db problem. However, if you want to look anyway, enable sqlnet tracing.
    4. To enable Reports tracing and investigate other tuning options, refer to the Reports 10 documentation:
    http://docs.oracle.com/cd/B14099_11/bi.1012/b14048/pbr_tune.htm
    Almost forgot to mentioned this one....
    If you are using a v11 db with App Server 10, you will probably want to consider reviewing Note 1099035.1 as it discusses an issue related to performance with such a configuration.
    Edited by: Michael Ferrante on Apr 10, 2012 8:49 AM

  • What are the classes used for bropdownListBox in BSP and purpose and how

    what are the classes used for bropdownListBox in BSP and purpose and how
    thank you,
    Regards.
    Jagrut BharatKumar Shukla

    Benje001,
    Right-click on the CWAI control on your form. Choose Properties. The first tab is the Channels tab. After you choose your device from the drop down box on the right, you can type in the Channels box which channel you want to use.
    If you want to see a CWAI control that is already configured, all of the shipping examples will have this already done.
    Also, if you have questions about any item on the CWAI (or any other NI ActiveX control) you can click the ? icon in the right corner of the properties page and then click on the item in the dialog that you need help with. This "What's this" help will describe that particular control on the dialog.
    Hope that helps!
    Regards,
    Shannon R.
    Applications Engineer
    National Instruments

  • Problem in compiling servlet class - using Tomcat

    Hi,
    I have a servlet pgm that I'm trying to compile.I using Tomcat application server.I have my servlet class in D:\servlet_wrk\project1\src
    and my deployment descriptor in D:\servlet_wrk\project1\etc
    my CLASSPATH var is set to C:\Sun\AppServer\jdk\bin
    and
    my PATH var is set to C:\Sun\AppServer\bin.
    When I compile my servlet class Ch1Servlet.java in the command line from the directory
    D:\servlet_wrk\project1 using the command
    javac -classpath D:\applications\tomcat-5.5.12\common\lib\servlet-api.jar -d classes src/Ch1Servlet.java,
    it says error:cannot read: src/Ch1Servlet.java
    Can somebody help me to solve this problem and help me to compile my servlet class.
    Thanks.

    Thanks...as u said I tried putting dir & found that
    my file was saved as Ch1Servlet.java.txt instead for
    Ch1Servlet.java......So that was a problem.Now I'm
    able to compile.Oh, yeah. Notepad will do that to you. I think when you save in Notepad if you put quotes around the name "Whatever.java" then it won't add the .txt.
    But on compiling I'm getting the following error
    package java.servlet.* does not exist
    package java.servlet.http.* does not exist
    package java.io.* does not exist
    Do u the reason for this??? The servlet stuff is java[b]x.servlet. For the io stuff, I don't know, I'd have to see your code. Either you have a typo or a corrupt installation.

  • How to call webservice using standalone application

    Hi,
    Actually i am trying to connect with one free webservice using client. but i am uanble to get the result and it is throwing the Exception.Exception is Execution failed. Exception: java.net.ConnectException: Connection timed out: connection reset
    i am using the following code.
    import org.apache.axis.client.Call;
    import org.apache.axis.client.Service;
    import org.apache.axis.encoding.XMLType;
    import org.apache.axis.utils.Options;
    import javax.xml.namespace.QName;
    import java.io.*;
    public class AddFunctionClient {
    public static void main(String [] args) {
    try {
         String endpoint = "http://www.startvbdotnet.com/web/sample2.asmx?wsdl";
         System.setProperty("http.proxyHost", proxyHost);
              System.setProperty("http.proxyPort", portNumber);
         Service service = new Service();
         Call call = (Call) service.createCall();
         call.setTargetEndpointAddress( new java.net.URL(endpoint) );
         call.setOperationName(new QName(endpoint, "add"));
              System.out.println("connected");
              System.out.println("value is"+call.invoke(new Object[]{new Integer(10),new Integer(20)}));
         } catch (Exception e) {
         System.err.println("Execution failed. Exception: " + e);
    can any one help on this

    Hi,
    If your  JAVA Application is Web based application, you can expose it as Webservice.
    JAVA People will pick the data from Dbase using their application and will send the data to XI by using our XI Details like Message Interface and Data type structure and all.
    So we can Use SOAP Adapter or HTTP in XI..
    If you use HTTP for sending the data to XI means there is no need of Adapter also. why because HTTP sits on ABAP Stack and can directly communicate with the XI Integration Server Directly
    If you are dealing with the Webservice and SAP Applications means check this
    Walkthrough - SOAP  XI  RFC/BAPI
    REgards
    Seshagiri

  • How to create a deployable ejb(.jar file) when we use Oracle application sever?

    Hi,
    In case if we use Weblogic we give following command on console to create a deployable ejb, while weblogic.jar is in classpath.
    java weblogic.ejbc temp.jar StudentBean.jar
    1)What are the classes or jar files we have to set in classpath,
    2)What console based command(like what I mentioned above for weblogic) can we use,
    so that we can create a deployable jar file in case if we are using Oracle application server.
    thanks,
    Milind

    You can discover the origins of a loaded class programatically. You want to print:
    TheClass.class.getProtectionDomain().getCodeSource().getLocation().toString();

  • Howto find entity-classes in my application?

    I need to get hold of all entity-classes in my application. For now, I only use annotations(@Entity) but I may change to write XML-mapping files. :)
    Does some have a clue how I should get hold of my entities?

    What do you mean by "get hold of"?
    Wouldn't it be sufficient to grep your source code for "@entity" ?

  • Calling a method from custom Class in WD Application

    Hi,
    I wrote a piece of code in method SEARCH for my WD Application.
    Instead of diectly callling the method I would like to create a class and then call the method.
    How do we proceed?
    Do we use SE24 first or can we start creating class from WD application itself?
    Rgds
    vara

    Hi Vara,
    Either way it is possible if you are creating from web dynpro then you can create  assistance class from component properties there you can write one method and to access that method always you have an instance wd_assist.
    From se24 create a class and declare a method. if you declare level of method is instance then you have to create object first in application and then access your method using created instance.

  • Dynamic Servlet reload activation in Weblogic 6.0 using web applications

    Dynamic Servlet reload activation in Weblogic 6.0 using web applications
              Add the next lines to your web.xml file
              <context-param>
              <param-name>weblogic.httpd.servlet.reloadCheckSecs</param-name>
              <param-value>0</param-value>
              </context-param>
              <context-param>
              <param-name>weblogic.httpd.servlet.classpath</param-name>
              <param-value>C:/bea/wlserver6.0/config/myServer/applications/MyApp/WEB-INF/serverclasses</param-value>
              </context-param>
              Register your servlet on web.xml file.
              <servlet>
              <servlet-name>Test</servlet-name>
              <servlet-class>Test</servlet-class>
              </servlet>
              <servlet-mapping>
              <servlet-name>Test</servlet-name>
              <url-pattern>/Test/*</url-pattern>
              </servlet-mapping>
              <servlet>
              Create a directory under WEB-INF called "serverclasses"
              copy your servlet(also directories under serverclasses if your class has a package).
              Don't forget to remove from \classes the same servlet class file.
              I hope it could be helpfull for the community.
              Regards
              

    Dynamic Servlet reload activation in Weblogic 6.0 using web applications
              Add the next lines to your web.xml file
              <context-param>
              <param-name>weblogic.httpd.servlet.reloadCheckSecs</param-name>
              <param-value>0</param-value>
              </context-param>
              <context-param>
              <param-name>weblogic.httpd.servlet.classpath</param-name>
              <param-value>C:/bea/wlserver6.0/config/myServer/applications/MyApp/WEB-INF/serverclasses</param-value>
              </context-param>
              Register your servlet on web.xml file.
              <servlet>
              <servlet-name>Test</servlet-name>
              <servlet-class>Test</servlet-class>
              </servlet>
              <servlet-mapping>
              <servlet-name>Test</servlet-name>
              <url-pattern>/Test/*</url-pattern>
              </servlet-mapping>
              <servlet>
              Create a directory under WEB-INF called "serverclasses"
              copy your servlet(also directories under serverclasses if your class has a package).
              Don't forget to remove from \classes the same servlet class file.
              I hope it could be helpfull for the community.
              Regards
              

  • Can not locate Java class using JNI within C++ DLL

    I am using trying to use JNI to call a Java class from C++. The Java class uses JMS to send messages to a JMS message queue. At first I coded the C++ in a console application that created the JavaVM and used JNI to access the Java class. All worked fine. Then I called the Java class using JNI from threads and ran into the problem of the Java class not able to locate the JMS related classes. This was solved by placing the following line in the constructor of the Java class.
    Thread.currentThread().setContextClassLoader(ClassLoader.getSystemClassLoader());
    Then I moved the JNI code from a console application to a DLL in specific an extension DLL that is called by SQL Server or Oracle server. The DLL will use JNI to call the Java class and send messages to a JMS message queue.
    The problem I am having now when the DLL code is called by SQL Server the call to
    JNI_CreateJavaVM
    appears to work correctly but the call to find the Java class using
    jvmEnv->FindClass(pName)
    fails. It appears the is a class loading problem which occurs due to the fact JNI is called from a DLL. When the VM is created I pass the class path information using the statement
    -Djava.class.path=
    And as I stated before it all works when running from a console application. I am new to JNI and really need help in the form of some sample code that will solve this problem. I believe I need to somehow load the classpath information from the DLL but I can not find examples on how to do this using JNI. I have tried several ways using URLClassLoader and getSystemClassLoader from JNI and either it does not work or it crashes very badly.
    I used the following code to determine what the existing class path is and the string returns empty.
    jcls = jvmEnv->FindClass("java/lang/System");
    jmid = jvmEnv->GetStaticMethodID(jcls, "getProperty", "(Ljava/lang/String;)Ljava/lang/String;");
    jstrClassPath = jvmEnv->NewStringUTF("java.class.path");
    jstr = (jstring)jvmEnv->CallStaticObjectMethod(jcls, jmid, jstrClassPath);
    m_jstr = (jstring)jvmEnv->NewGlobalRef(jstr);
    pstr = jvmEnv->GetStringUTFChars(m_jstr, 0);
    Can anyone please help with example code that will solve this problem. Thanks in advance for any help.
    Charles�

    I have determined the problem occurs when the application/component is compiled using VC 6.0. The test application was compiled using VC 7.1 and works correctly by locating the class path information. If the test application is compiled using VC 6.0 it has the same problem.
    The jvm.dll I am using is version 1.4.2.80. Currently this is not an option to compile all the applications that use JNI using VC 7.1 so can someone please tell me how to solve this problem.

  • Use SAP Application server name in a jsp in ISA

    Hello,
    We need to use SAP application server name in a jsp file. Any suggestions on how to do this?
    Thanks
    Archana
    Edited by: Archana Swaminathan on Jan 9, 2009 1:02 PM

    Archana,
    The web application server can be determined in the JSP by the isa tag.
    <isa:webappsURL
    But you can also get the actual value by using WebUtil class. This class has all features that isa tag provides. As such you can get the web application URL using
    import com.sap.isa.core.util.WebUtil;
    String webAppURL = WebUtil.getAppsURL(PageContext pageContext,
      boolean Secure,
      String name,
      String params,
      String anchor,
      boolean completeURL);
    But if you are asking for SAP application server that is different from what I have explained above, then I don't have a clue. If you are asking for MimeURL, where you have the images stored, you can use MimeURL class.
    Easwar Ram
    http://www.parxlns.com

  • How to import the image by using java application

    1.how to import the image by using java APPLICATION and display it on the textarea that you have been created.
    2.how to store the image into the file.
    3. what class should i used?
    4. how to create an object to keep track the image in java application.
    * important : not java applet.
    plzzzzzzz.
    regards fenny

    follow the link:
    http://java.sun.com/docs/books/tutorial/2d/images/index.html

  • Class Component in Application area for Invoices & Dunning

    Hi friends, can anyone help me to know the class components of Application area while creating new tabs,
    For example- In that CIC screen, I want's to create a tab like Invoices & Dunning in application area, but the thing is I can't find the class component for the both Invoices & Dunning, I was searched in full class component detail description, I cn't see & find this, plz help me to know this, I would be great full to me.............

    Prince,
    I used all possible components and profiles for the Customer overview in Application area.
    I am happy with the two options.
    Case 1:
    Component - NAV_VIEW
    Profile - ISU
    Result - I am getting the following information in the screen.
    - Premise
    - CA
    - Contract
    - Installation
    - Device
    I am happy with this but the problem is I am not getting BP details.
    Case 2
    Component - NAV_VIEW
    Profile - ISU_DRG
    Result - I am getting the following information in the screen.
    - BP
    - Premise
    - CA
    - Contract
    - Installation
    - POD
    - Switch Document
    The problem is I am not getting Device details and also POD is not required.
    Please suggest.

Maybe you are looking for

  • Create ADF Table at runtime

    Hi, I am trying to create ADF table at run time. Initially I tried to include all the tables at design time. Then I turned the setVisible property to false. Then , based on the condition, I turned it to true at runTime, so that to give the effect of

  • Error while settlement of IO to Asset

    Dear Experts, We are settling IO to multiple assets using KO88 and get the below error , any tips would assist System error: Master area for proof of origin not found Message no. AW 666 regards Diwakar

  • Adobe Reader not working right.

    Pdf forms in Adobe Reader are looking different than they used to. I also keep getting a message at the top which says "This pdf document might not be displayed correctly." But the biggest problem in documents that I was able to fill in information o

  • Connected apple tv comes up with no signal

    just brought a apple tv box and connected it to tv using hdmi cable but keeps coming up with no signal ive disconnected cable five and still happening iknow hdmi cable works as it runs my blueray player

  • Can I combine my iChat logs into one?

    I always disconnect or sign off and close buddy lists and that makes so many chat logs open, how do I combine it into one?