Debugging using assertions

hello,
is there any java game developer here using assert function
i had read the article and still don't know how to use it properly
it said that assert is the best way for debugging
until now i only use the conventional System.out.println for debugging
(do not know how to use any debugger tool)
i'll be very grateful if someone can explain how to use it,
cos i have been through many difficulties using System.out.println to find bugs in my infinitive game loop
thanxx a million

Using assertions:
- you put expressions in your code like
assert(val > 0);
or
assert (val > 0):"variable val too low";
- you must use java 1.4 or later and compile with javac -source 1.4
- you must run with java -enableassertions
- if the assertion condition is not true an AssertionError is thrown
You should only use assertions to check conditions resulting from you code's execution, never conditions arising out of user input or parameters passed to public methods.
When your code is run without the -enableassertions the assert statements become no-ops.
Hope this helps.

Similar Messages

  • Enable Node Manager debug using WLST

    Hi,
    I would like to enable debug for node manager using WLST instead of using the Admin console - by selecting the check box for "Debug Enabled" property under Environment > Machine > Configuration > Node Manager in the Admin console.
    I could locate the MBean name to 'NodeManagerMBean' and the property to 'DebugEnabled', but I'm not sure how to script it.
    Can anybody please guide me?
    Thanks in advance
    Edited by: vikascv on Apr 29, 2009 9:23 AM

    Here you go
    Enable Node Manager debug using WLST
    <a class="jive-link-external" href="http://www.togotutor.com">http://www.togotutor.com</a> (Learn Programming and Administration for Free at Togotutor)
    def connection_to_Admin():
    try:
    connect(username, password, URL)
    except wlst.WLSTException, ex:
    print "Caught exception while connecting: %s" % ex
    else:
    print "------- Connected successfully! ---------"
    connection_to_Admin() #Calling the connect Function
    edit()
    startEdit()
    cd('/Machines/MS1/NodeManager/Machine_1')
    cmo.setDebugEnabled(true)
    activate()
    Thanks
    Togotutor
    <b><a class="jive-link-external" href="http://www.togotutor.com">http://www.togotutor.com</a> (Learn Programming and Administration for Free)</b><</td>

  • How to use assert with wireless toolkit?

    Hi,
    I am trying to find out how to use assert with wireless toolkit. I have found that I need to pass "-source 1.4" to the java compiler. But I can't find any documentation on how to do it.
    I'm using J2ME Wireless Toolkit 2.2.
    thanks
    Ludde

    Here's a quote from an article on Java World at http://www.javaworld.com/javaworld/jw-11-2001/jw-1109-assert.html
    "To support the new assertion facility in J2SE 1.4, the Java platform adds the keyword assert to the language, an AssertionError class, and a few additional methods to java.lang.ClassLoader."
    So I really think it's part of 1.4.

  • How to Use " ASSERT ID " , in the programm and what is the use of it?

    Hi,
    friends,
    I wanted to write a program (TEST CASE) by using ASSERT ID . But i got the description (Hint) like what iam mentioning below:
    *" Detects uses of ASSERT ID and flags cases where there is code to be executed after the command. In production environments ASSERTS are disabled, as a rule, therefore this code gets to be executed. "
    So, let me know the Use of this key word with some example .
    Thanks & Regards,
    P.N.Kumar

    Hi,
         Please look for F1 on this keyword. Also look at "Checkpoints".
         Check this link.
         http://help.sap.com/erp2005_ehp_02/helpdata/EN/9b/b1b64104e52f31e10000000a155106/frameset.htm
    Regards,
    Srini.

  • Debugging using Eclipse and non-standalone 10g

    Hey - is it possible to perform remote debugging using Eclipse against the non-standalone version of the 10g App Server? I've tried some of the hints listed in this forum (the most promising seemed to be starting oc4j using this command-line command:
    java -classic -Xdebug -Xnoagent -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=2727 -jar oc4j.jar, then connecting with the Eclipse debugger, which I managed to do - though I had to change one of the parameters because the designated file [a timezone file] could not be found - after the change things seemed to start up correctly. However, when I tried to hit http://localhost:2727 I got a "server not found or DNS error"). I don't know if the debugging works with the non-standalone version of 10g or not... or if I should be using some other startup command so hopefully y'all can help :)
    Thanks,
    Scott

    Scott, apparently you have fallen pray of one of the most common misunderstandings of oc4j. Oc4j, namely, Oracle Application Server Container for j2ee, is a COMPLETE j2ee server. It supports http and https by itself. It is also an ejb container and a lot more. It can be used as a standalone or, with a different configuration, integrated into Oracle Application Server as its core component.
    When you use the command "java -jar oc4j.jar ...", you are starting an instance of "standalone oc4j" or "oc4j standalone" as mentioned above, albeit from an OAS installation. In contrast, you can start one instance of Oracle Application Server by "<ORACLE_HOME>/opmn/bin/opmn startall", which will starts, besides several other components, one or several oc4j processes as its oc4j component. This OAS is an HTTP server that takes initial requests and routs the requests that are for OC4J to OC4J server. It may handle some of the requests by itself, or routs other http requests to other components, like mod_plsql. Finally, what we usually called "farm" is a collection of OAS clusters and instances that share the same OAS Infrastructure.
    What I have written is just a tiny mini introduction of the OAS. For starters, oc4j is for use by development and small-medium scale production deployments. Plese take a look at the book "Oracle Application Server Containers for J2EE Standalone User's Guide" and then, "Oracle Application Server Concepts". You can find them by
    1. go to http://otn.oracle.com
    2. select "documentation" pull-down menu and then "application server"
    3. go to the first "view library" or the one suits you.
    4. view the "Oracle Application Server Concepts"
    5. or go to "List of All Books" and you will see all of them!
    Well, the best place to self-teach oc4j is, besides googling with site:oracle.com, the oc4j homepage,
    http://www.oracle.com/technology/tech/java/oc4j/index.html
    The above is written in case you need more information. Now let me come to your specific questions.
    1. how to hit the OC4J instance directly, bypassing an HTTP server entry?Since what you started is an oc4j standalone, it does not make any sense to say "bypassing an HTTP server entry". Oc4j instance itself IS an http server. To access its http service, try
    http://<yourHostNameOrIP>:<httpPort>/<yourAppWebContextRoot>
    where the httpPort and yourAppWebContextRoot can be found in default-web-site.xml or http-web-site.xml. Which one or other web-site.xmls are effective is determined in <OC4J_HOME>/config/server.xml. Here the OC4J_HOME refers to your "C:/OraHome1/j2ee/home".
    2. how to get the HTTP server started via the command-line startup?As said above, you already got an HTTP server running.
    What I suggest for you is to play with oc4j standalone. You can come to OAS later:
    1. download oc4j standalone distribution, "Oracle Containers for J2EE 10g (10.1.3) Developer Preview 3", from here "http://www.oracle.com/technology/software/products/ias/preview.html"
    2. unzip the downloaded file. What you get is basically the same to a part of your existing "C:/OraHome". Go to j2ee/home. Run
    java -Xdebug -Xnoagent -Djava.compiler=none -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=3301 -jar oc4j.jar
    Make sure you are using java 1.4.2 sdk.
    3. "new" your remote debugger from Eclicpse and specify the hostname and port 3301.
    4. http://<yourHost>:8888/
    A further note: to debug jsp's, you can use Jdeveloper that allows you to set debug points directly in a jsp that is running in its embeded oc4j server.

  • Using assert or exception?

    I have been struggling with the methodology of using assertions for some time
    now and would like to have an objective viewpoint. It primarily has to
    do with the use of assertions for pre-conditions.
    Let's say we have some class, for demonstration purpose only, as this one:
    public class MyClass {
        private final String str;
        public MyClass(String str)
            this.str = str;
        private int getLength(String x, String y)
            return x.length() + y.length();
        public int getTotalLength(String x)
            return  getLength(str, x);
    }Let's say I want to make sure that the classes methods and constructor is not
    called with any null parameter. Of course I will get a NullPointerException
    eventually automatically anyway, but let's say I want to know as soon
    as possible to something is wrong. Or maybe I am dealing with a complicated
    class in which it is not so clear yet.
    Anyway the Sun Java documentation says the following:
    http://java.sun.com/j2se/1.4.2/docs/guide/lang/assert.html#preconditions
    "Do not use assertions to check the parameters of a public method."
    Instead it should throw some particular exception. In this case a
    NullPointerException in the MyClass constructor if the str parameter is
    null. Conventation say that assertion can be used for private methods
    however, such as the getLength method.
    I always try to keep my classes relatively small. So often I feel no desire
    to include assertions in private methods to check parameters if I can
    already see that the parameters are checked in the public methods.
    So in this case why add assertions in getLength if I can already clearly
    see that the parameters have been checked in the MyClass constructor and
    the getTotalLength method?
    Maybe I am wrong, but I am afraid that using such rigurous parameter testing
    in every public method might influence performance too much, because in
    contrary of assertions these normal checks are done always. I cannot
    remove these normal checks, because that would mean it could trigger
    an assertion in one of the private methods, and I could as well move
    the assertions from the private to the public methods.
    What I don't feel comfortable about is this big distinction between
    assertions and run-time exceptions. Why not use assertions in
    public methods for parameter testing? They are just exceptions
    too anyway. And they have the benefit of not impacting performance
    for production environments.
    There is an article about challenging the Sun Assert convention here.
    http://www.javaworld.com/javaworld/jw-12-2001/jw-1214-assert-p2.html
    I would like you to read it and give your objective opinion. Weighing
    the positive and negative implications of it and tell me what you
    think and why.

    I don't have the time to read that article. IMO
    assertions are to be used to validate the state of
    your instance and its internal works.So you do not think that assertions should be used for any pre-conditions of parameters?
    They are not
    exceptions, by the way. Failure will result in an
    AssertionError.Yes, I should have said errors or throwables.
    It's quite overkill IMO to use those for the
    validation of parameters provided by someone else.Why? Isn't it overkill to impact the performance by
    using run-time exceptions instead of assertions?
    If
    your API declares the legit value range of an
    argument, a NullPointerException for null and an
    IllegalArgumentException for values outside bounds,
    that gives me more flexibility to react and handle
    error states (it could be user input - null would
    mean there's a bug, out of bounds would mean I have
    to ask the user again) than merely firing of a "big"
    assertion error.But the whole idea of pre-conditions is that the method never must be called with invalid values. Your example might make sense for some class close to the front-end, but most classes are deep inside everything and have no idea what to do with a NullPointerException or IllegalArgumentException at that point. I would let a facade near the front-end deal with invalid user input and explicitly prevent the invalid input progress deeper inside my code.
    The article I linked goed deeper in about why it is a good idea to give a "big" assertion error at that point.
    There's probably no hard or objective rule when you
    should use what anyway, otherwise, there wouldn't be
    different opinions in this matter. If you're looking
    for one, you'll most likely not find it.I have certain ideas about assertions and I would like to know if these ideas are reasonable. Especially because they go against the Sun convention and I usually am a follower of standards.

  • Using assert()

    hello
    Where m i wrong in using assert()
    In both outputs it print out: True Number,True Number
    class assertion
    void take(int a)
          assert(a>5);
          System.out.println("True Number");
      public static void main(String[] args)
         assertion obj=new assertion();
          obj.take(1);
          obj.take(20);
    }

    Java-Manoj wrote:
    kajbj wrote:
    (Use the -ea vm argument)Ok, I got it, but the argument vm is not required.
    Sorry. That I caused confusion. -ea is the vm argument, there's a difference between vm arguments and application arguments.

  • WHERE AND HOW  IS DEBUGGING USED ?

    WHERE AND HOW  IS DEBUGGING USED ? PLEASE GUIDE ME WITH EXAMPLES.
    REWARD POITS GUARENTEED !!

    Hi,
    check these...
    ABAP DEBUGGING
    http://help.sap.com/saphelp_webas620/helpdata/en/c6/617ca9e68c11d2b2ab080009b43351/content.htm
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/9cbb7716-0a01-0010-58b1-a2ddd8361ac0
    Debug Program scheduled Background
    Re: Debugging Report which is scheduled in background
    3 types update,normal and system debugging
    check this for update debugging
    If you set "Update Debbugging" you can debug the codes which works in update tusk.
    SAP std often runs the routine (function or form) to update the database in update tusk mode, these routine start as soon as a commit work is done.
    The commit is called at the end of the program, so you can't debug them by "normal debbugging" because it ends as soon as the program ends
    or----
    All the database updates are performed by the update work processes by calling the functions/subroutines in update tasks.
    These tasks are executed after a commit work is reached in the application. By default you cannot debug these functions.
    TO debug these u need to explicitly activate update debugging.
    for system debugging check the below link
    http://help.sap.com/saphelp_nw2004s/helpdata/en/ef/5f0640555ae369e10000000a155106/content.htm
    http://help.sap.com/saphelp_47x200/helpdata/en/c6/617ca9e68c11d2b2ab080009b43351/frameset.htm
    For debugging tutorial:
    http://help.sap.com/saphelp_erp2005vp/helpdata/en/5a/4ed93f130f9215e10000000a155106/frameset.htm
    http://www.sapdevelopment.co.uk/tips/debug/debughome.htm
    http://www.sap-basis-abap.com/sapab002.htm
    System Debugging
    If you set this option, the Debugger is also activated for system programs (programs with status S in their program attributes). When you save breakpoints, the System Debugging setting is also saved.
    Update Debugging
    Update function modules do not run in the same user session as the program that is currently running in the ABAP Debugger. These function modules are therefore not included in debugging. Only if you select the Update Debugging option can you display and debug them after the COMMIT WORK.
    Normal Debugging
    Normal debugging is the one we do it by the normal dynamic break points or by /H or by using stattic break points.
    You can switch to diffferent debuggin modes while processing.
    BREAKPOINT
    In the source code we set the Break-point there by clicking the stop button, the system will stop there when you execute the program.
    Watchpoint
    For watchpoints, we need to give some condition and when this condition is satisfied, program will stop
    example : if you want to debug only
    for matnr value 100 than set watch point
    matnr = 100. when value reaches 100 than
    program stops at that point.
    more at
    http://help.sap.com/saphelp_nw04/helpdata/en/c6/617cdce68c11d2b2ab080009b43351/content.htm
    check these documents as well
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/abap/abap-runtime-tools/the%20new%20abap%20debugger%20-%20an%20introduction.pdf
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/media/uuid/f720ea47-0801-0010-f7a3-bd37d44fee8d
    here r some links for debugging...
    Go through these threads for more information on debugging,
    1) debugging
    2) debugging
    3) Debugging
    4) Debugging
    some more links .....
    Introduction: http://www.saplinks.net/index.php?option=com_content&task=view&id=24&Itemid=34
    A PDF file to know knowledge about Debugging
    Some more links:
    http://www.sap-basis-abap.com/sapab002.htm
    Debug Background Programs: http://www.sapdevelopment.co.uk/tips/debug/debug_backjob.htm
    Debugger: http://help.sap.com/saphelp_nw2004s/helpdata/en/c6/617ca9e68c11d2b2ab080009b43351/content.htm
    Cheers
    VJ

  • (PC and Surface 8.1)bad pool header error: remote debugging using ARM device

    Tools used:
    Microsoft Visual Studio Professional 2013
    Remote Debugger Monitor (Surface RT 8.1)
    I have successfully activated the developer license as administrator.
    I have attempted to run the test app on remote device but my pc crashes before or when reaching certification.
    So far, I have attempted to run an app software for the ARM device; however, ever since I have upgraded the surface to 8.1, I constantly get the bad pool header crash, even after successfully connecting the pc to rt device.
    is there any way I can resolve the issue so I can successfully to remote debugging?
    any help is appreciated.

    Hi,
    Considering that the issue should be related to Windows RT 8.1, and  Since we have limited testing environment, I suggest you submit a new case on Windows RT forum as they will be more professional on your issue:
    This is the Windows RT 8.1 forum link.
    http://answers.microsoft.com/en-us/windows/forum/windowsrt8_1?sort=lastreplydate&dir=desc&tab=Threads&status=&mod=&modAge=&advFil=&postedAfter=&postedBefore=&threadType=All&tm=1392101458999
    The reason why we recommend posting appropriately is you will get the most qualified pool of respondents, and other partners who read the forums regularly can either share their knowledge or learn from your interaction with us.  Thank you for your understanding.
    Regards,
    Kelvin hsu
    TechNet Community Support

  • Java PI7.1 mapping and standalone NWDS debugging using local XML files

    >>which can be debugged in standalone NWDS using local files.
    yes its possible...u just have to add static void main (as sugested in the blog) ..
    Note: i dont have a system as of now..so i guess there can be some sysntax errors. Please check.
    create input xml file with name "input.xml" and place it under "D" drive (it can be any location)
    package prasad.NewAPI;
    import java.io.IOException;
    import java.io.InputStream;
    import javax.xml.parsers.DocumentBuilder;
    import javax.xml.parsers.DocumentBuilderFactory;
    import org.w3c.dom.Document;
    import org.w3c.dom.Node;
    import org.w3c.dom.NodeList;
    import com.sap.aii.mapping.api.AbstractTransformation;
    import com.sap.aii.mapping.api.StreamTransformationException;
    import com.sap.aii.mapping.api.TransformationInput;
    import com.sap.aii.mapping.api.TransformationOutput;
    * @author Prasad Nemalikanti
    public class NewAPIJavaMapping extends AbstractTransformation {
    public static void main(String[] args) {
              try{
                   NewAPIJavaMapping javaMapping =new NewAPIJavaMapping();
                   FileInputStream in=new FileInputStream("D:\\input.xml");
                   FileOutputStream out=new FileOutputStream("D:\\output.xml");
                   javaMapping.execute(in,out);
                   catch(Exception e)
                   e.printStackTrace();
       String result="";
      /* The transform method which must be implemented */
      public void transform(TransformationInput in,TransformationOutput out) throws StreamTransformationException
        InputStream instream = in.getInputPayload().getInputStream();
      // String for constructing target message structure
        String fresult="<?xml version=\"1.0\" encoding=\"UTF-8\"?>";
        fresult = fresult.concat("<ns0:MT_Customer xmlns:ns0=\"urn:newapi-javamapping\">");
        try{
            DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
            DocumentBuilder builder = factory.newDocumentBuilder();
            Document doc = builder.parse(instream);
            traversingXML(doc);
         catch(Exception e){}
    fresult = fresult.concat(result);
    fresult = fresult.concat("</ns0:MT_Customer>");
    try{
      out.getOutputPayload().getOutputStream().write(fresult.getBytes());
      /* assigning the created target message to "TransformationOutput"*/
       catch(IOException e1){}
    /*DOM Parser */
    public void traversingXML(Node node)
       NodeList children = node.getChildNodes();
       for(int i=0;i<children.getLength();i++)
         Node child = children.item(i);
         short childType = child.getNodeType();
         if(childType==Node.ELEMENT_NODE)
                  String nodeName=child.getNodeName();
                  String targetNodeName=null;
                  if(nodeName.equals("Users"))
                   targetNodeName="Customers";
                  else if(nodeName.equals("ID"))
                   targetNodeName="CustomerID";
                  else if(nodeName.equals("UserName"))
                   targetNodeName="Name";
                  else if(nodeName.equals("City"))
                    targetNodeName="City";
                  else if(nodeName.equals("State"))
                    targetNodeName="State";
                  else if(nodeName.equals("Country"))
                    targetNodeName="Country";
                 if(targetNodeName!=null)
                  result=result.concat("<"+targetNodeName+">");
       traversingXML(child);
       if(targetNodeName!=null)
       result=result.concat("</"+targetNodeName+">");
         else if(childType==Node.TEXT_NODE)
           String nodeValue = child.getNodeValue();
           result = result.concat(nodeValue);

    I have tested this and it is working..please chk the same
    package com.test;
    import java.io.IOException;
    import java.io.*;
    import javax.xml.parsers.DocumentBuilder;
    import javax.xml.parsers.DocumentBuilderFactory;
    import org.w3c.dom.Document;
    import org.w3c.dom.Node;
    import org.w3c.dom.NodeList;
    import com.sap.aii.mapping.api.AbstractTransformation;
    import com.sap.aii.mapping.api.StreamTransformationException;
    import com.sap.aii.mapping.api.TransformationInput;
    import com.sap.aii.mapping.api.TransformationOutput;
    public class JavaMapping extends AbstractTransformation {
           /* The transform method which must be implemented */
           public void transform(TransformationInput in,TransformationOutput out) throws StreamTransformationException
                this.execute(in.getInputPayload().getInputStream(),
                          out.getOutputPayload().getOutputStream());
           String result="";
           public void execute(InputStream in1, OutputStream out1)
          throws StreamTransformationException {
           // String for constructing target message structure
             String fresult="<?xml version=\"1.0\" encoding=\"UTF-8\"?>";
             fresult = fresult.concat("<ns0:MT_Customer xmlns:ns0=\"urn:newapi-javamapping\">");
             try{
                 DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
                 DocumentBuilder builder = factory.newDocumentBuilder();
                 Document doc = builder.parse(in1);
                 traversingXML(doc);
              catch(Exception e){}
          fresult = fresult.concat(result);
          fresult = fresult.concat("</ns0:MT_Customer>");
          try{
           out1.write(fresult.getBytes());
           /* assigning the created target message to "TransformationOutput"*/
            catch(IOException e1){}
          /*DOM Parser */
          public void traversingXML(Node node)
            NodeList children = node.getChildNodes();
            for(int i=0;i<children.getLength();i++)
              Node child = children.item(i);
              short childType = child.getNodeType();
              if(childType==Node.ELEMENT_NODE)
                       String nodeName=child.getNodeName();
                       String targetNodeName=null;
                       if(nodeName.equals("Users"))
                        targetNodeName="Customers";
                       else if(nodeName.equals("ID"))
                        targetNodeName="CustomerID";
                       else if(nodeName.equals("UserName"))
                        targetNodeName="Name";
                       else if(nodeName.equals("City"))
                         targetNodeName="City";
                       else if(nodeName.equals("State"))
                         targetNodeName="State";
                       else if(nodeName.equals("Country"))
                         targetNodeName="Country";
                       if(targetNodeName!=null)
                           result=result.concat("<"+targetNodeName+">");
            traversingXML(child);
            if(targetNodeName!=null)
                 result=result.concat("</"+targetNodeName+">");
              else if(childType==Node.TEXT_NODE)
                String nodeValue = child.getNodeValue();
                result = result.concat(nodeValue);
          public static void main(String[] args) {
                   try{
                        JavaMapping javaMapping =new JavaMapping();
                        FileInputStream in=new FileInputStream("D:\\Input.xml");
                        FileOutputStream out=new FileOutputStream("D:\\output.xml");
                        javaMapping.execute(in,out);
                        catch(Exception e)
                        e.printStackTrace();
    AM

  • Kernel debugging using git bisection method in combination with abs.

    Is there any way to use git bisection method for kernel debugging in combination with ABS for building the kernel via makepkg?

    Yes, but ABS for kernel uses some patches in order for the kernel to be successfully build.
    ftp://ftp.archlinux.org/other/kernel26/
    I wanted to know is if there is any way to distinguish what particular patch to use in every bisection point.

  • How to start SAPGUI at entry point to RFC for debugging (using JCO)?

    Hi,
    I am calling an RFC using JCO and trying to have the SAPGUI pop up at the entry point to the RFC for debugging.  But it is not working on Mac OS X.
    I activate the debug via
       JCO.Client client = JCO.createClient(..);
       client.setAbapDebug(true);
       client.setSapGui(1);
       client.connect();
    it gives error:
    sh: line 1: /usr/sap/DV2/SYS/exe/run/sapgui: No such file or directory
    com.sap.mw.jco.JCO$Exception: (103) RFC_ERROR_LOGON_FAILURE: Start 'sapgui' failed.
         at com.sap.mw.jco.rfc.MiddlewareRFC$Client.nativeConnect(Native Method)
         at com.sap.mw.jco.rfc.MiddlewareRFC$Client.connect(MiddlewareRFC.java:1098)
    I then tried to set environment variable SAPGUI=/Applications/SAPGUI\ for\ Java\ 6.3r5.2/SAPGUI\ 6.30rev5.2.app/Contents/MacOS/SAPGUI
    and it then starts up the SAPGUI for Java Logon Pad.
    But, I want the SAPGUI to start up at the entry point to the RFC.
    Is this possible in Mac OS X?  It has worked before on Windows using the RFC SDK utilities or middleware tools such as IBM Crossworlds.
    Thanks

    Hi Robert,
    Thanks for the reply, it was very helpful as I had given up hope on getting a solution.  Unfortunately I am still getting an error.
    1) I created a script as per your directions containing
    "/Applications/SAPGUI for Java 6.3r5.2/SAPGUI 6.30rev5.2.app/Contents/MacOS/SAPGUI" -n -o $*
    2) Now the SAPGUI application starts, but does not open a window and I get the error:
    ERROR #############################
    18.05. 11:58:42.943 ERROR: AgiWindowAdaptor::update: no menu
    ERROR #############################
    3) I switched on the tracekeys with -t CON,SES,EVT,C_AGI to get more detail:
    18.05. 11:58:41.420 TRC: Active trace keys: CON,SES,EVT,C_AGI
    18.05. 11:58:42.709 CON: new GuiConnection
    18.05. 11:58:42.727 CON: GuiConnection.open(/H/<appserver>/S/3235&rfcid=02D5428B909E32190000,tmp)
    18.05. 11:58:42.846 CON: new GuiNiNetConnection
    18.05. 11:58:42.872 CON: GuiNiNetConnection.open(conn=/H/<appserver>/S/3235&cpg=1127&jenc=MacRoman&jloc=en&rfcid=02D5428B909E32190000)
    18.05. 11:58:42.872 CON: GuiNiNetConnection.open: resolved hostSpec = /H/<appserver>/S/3235
    18.05. 11:58:42.915 CON: -
    18.05. 11:58:42.916 CON: GuiNiNetConnection: sending DIAG data to connection for modus 0
    18.05. 11:58:42.918 CON: -
    18.05. 11:58:42.919 CON: GuiNiNetConnection: sending DIAG data to connection for modus 0
    18.05. 11:58:42.927 C_AGI: calling AgiSessionPool->ParseIt() for modus 0
    18.05. 11:58:42.929 C_AGI: AgiLibAdaptor::onNewPrimary
    18.05. 11:58:42.941 C_AGI: returned from AgiSessionPool->ParseIt() for modus 0
    ERROR #############################
    18.05. 11:58:42.943 ERROR: AgiWindowAdaptor::update: no menu
    ERROR #############################
    18.05. 11:58:42.950 SES: GuiAutomationProcessor: processing automation call list for modus id 0
    18.05. 11:58:43.043 SES: new GuiSession
    18.05. 11:58:50.557 CON: GuiNiNetConnection: sending CLOSE data to writer thread
    18.05. 11:58:50.791 CON: -
    18.05. 11:58:50.791 CON: GuiNiNetConnection: sending DIAG data to connection for modus -1
    18.05. 11:58:50.793 C_AGI: AgiLibAdaptor::onDelContainer
    18.05. 11:58:50.794 C_AGI: AgiLibAdaptor::onDelContainer
    18.05. 11:58:50.794 C_AGI: AgiLibAdaptor::onDelPrimary
    18.05. 11:58:50.795 CON: GuiConnection.destroyNetConnectionAndParser
    com.sap.mw.jco.JCO$Exception: (103) RFC_ERROR_LOGON_FAILURE: Start 'sapgui' failed.
         at com.sap.mw.jco.rfc.MiddlewareRFC$Client.nativeConnect(Native Method)
         at com.sap.mw.jco.rfc.MiddlewareRFC$Client.connect(MiddlewareRFC.java:1098)
         at com.sap.mw.jco.JCO$Client.connect(JCO.java:2983)
    Any further ideas on what is wrong?   There is a post on another forum http://listserv.sap.com/pipermail/linux.general/2002-June/002538.html with the same error, but no response..
    Thanks,
    Richard

  • How to debug using RSNAST00 and jdbg for multiple invoice number

    Hi everyone,
    I want to debug multiple invoice's print preview.
    could anybody tell me the step by step process how to do this using RSNAST00 and JDBG.
    Thanks
    Lisa

    Hi Ali,
        I faced the same problem. Thing is the break point is not getting triggered when i ran tha IDOC through WE19.
    What i have done is i created a project for my exit in CMOD and kept some junk code in the exit and executed it through BD21. Then the Break point got triggered. See if it works.
    Regards,
    Uday S.

  • Debugging using browser.

    HI,
    We need to debug the code using the browser.and we are using the external ITS .
    For this we have added the parameter rdisp/tpda_for_ext = 1
    to the application servers profile.and also Set an external breakpoint.
    Go to SE80 Utilities->Settings->ABAP Editor->Debugging.
    Checked the following check boxes:
    Deactivate IP matching.
    Activate external debugger.
    But we are facing the  error message "This transaction is currently being debugged .You can continue as soon as your debugging is finished."
    what we need is the code should be displayed on the browser to debug when it reaches the break point which we set in the backend system.
    Please look into this and do the needful.
    Regards,
    Krishnam

    Chrome is my favorite browser and I use it almost exclusively, but when I made it my default browser for Flex 3, I ran into problems. Chrome does not like the debug version of Flash Player.
    So I am back to IE for Flex debugging, but intend to try Chrome again in the near future, as they keep updating it.
    Carlos

  • How to debug using External Breakpoint

    Hello,
    I am using external breakpoint in system B.
    I am running a program in systemA which updates table in systemB through programB.
    I am using RFCuser to login to system B.
    Currently it is not going in debugging mode in program B.
    KIndly suggest what needs to be done?

    You need to do the following.
    1. Identify the userid you are using for the RFC session.
    2. While in the ABAP editor, go to Utilities->Settings
    3. Ensure that you are in the tab 'Abap Editor'
    4. Under the tab 'Abap Editor' go to the tab 'Debugging'
    5. Ensure that the user name entered there is the one identified in step 1.
    6. Set the external breakpoint
    7. Logon to the target system.
    At this stage, when you start the external transaction, it should stop where you set the breakpoint.

Maybe you are looking for

  • How to create a Form for cash flow analysis??

    Hi experts, Can anybody guide me to create a form for cashflow ananlysis? 1) What is difference between direct and indirect cash flow statement? 2) Is it possible to create a form in FSI4 without copying from a standard report? I have already configu

  • Dreamweaver MX 2004 and Dreamweaver 8

    Are Dreamweaver MX 2004 and Dreamweaver 8 one of the same, or are they 2 different products?

  • IPhone images won't restore after phone reset

    Hi, I am hoping someone can help me as my wife's iPhone completely froze up after synching with the latest version of iTunes. In the end, the only thing she could do was re-set the iPhone, thereby of course losing everything. Reconnecting to her lapt

  • Many stills as motion in iMovie

    I'm trying to import 103 photos into iMovie (shot with a very fast motor drive) and run as a short movie clip. Is there a way to import frames with a different default length? They all seem display for 5 seconds. I can manually change each, but that

  • Cfdirectory thinks directory is a file

    I have a utility that allows the user to select a top-level directory, then displays a list of files in the directory as hyperlinks.  Any subdirectories are displayed separately and the hyperlink changes the default directory to that subdirectory whe