Poor documentation on JavaDoc

I've been messing with JavaDoc for hours, and I'm not getting far with it. When I look at the J2SDK API, there is lots documented in the JavaDoc. However, when I make my javadoc comments and generate my javadocs, there are things missing. Some stuff works, but not others. For example, I can comment a method, and that shows up in the javadoc. However, I cannot comment the class and get that to show up, like the version info, copyright statement, etc.
I know you just have to have the right tags, and in the right order I guess, but the JavaDoc Tool Homepage stinks. If anyone can give me an example of a java source file that uses ALL of the important JavaDoc tags, the duke dollars are yours.
The JavaDoc tool homepage shows some stuff, and explains, but there are no examples, please help.

The @author, @version and @see tags all require arguments.
That's why you're not seeing anything in the output.
The example you are looking for is in this document:
http://java.sun.com/j2se/javadoc/writingdoccomments/index.html#examples
       * Graphics is the abstract base class for all graphics contexts
       * which allow an application to draw onto components realized on
       * various devices or onto off-screen images.
       * A Graphics object encapsulates the state information needed
       * for the various rendering operations that Java supports.  This
       * state information includes:
       * <ul>
       * <li>The Component to draw on
       * <li>A translation origin for rendering and clipping coordinates
       * <li>The current clip
       * <li>The current color
       * <li>The current font
       * <li>The current logical pixel operation function (XOR or Paint)
       * <li>The current XOR alternation color
       *     (see <a href="#setXORMode">setXORMode</a>)
       * </ul>
       * <p>
       * Coordinates are infinitely thin and lie between the pixels of the
       * output device.
       * Operations which draw the outline of a figure operate by traversing
       * along the infinitely thin path with a pixel-sized pen that hangs
       * down and to the right of the anchor point on the path.
       * Operations which fill a figure operate by filling the interior
       * of the infinitely thin path.
       * Operations which render horizontal text render the ascending
       * portion of the characters entirely above the baseline coordinate.
       * <p>
       * Some important points to consider are that drawing a figure that
       * covers a given rectangle will occupy one extra row of pixels on
       * the right and bottom edges compared to filling a figure that is
       * bounded by that same rectangle.
       * Also, drawing a horizontal line along the same y coordinate as
       * the baseline of a line of text will draw the line entirely below
       * the text except for any descenders.
       * Both of these properties are due to the pen hanging down and to
       * the right from the path that it traverses.
       * <p>
       * All coordinates which appear as arguments to the methods of this
       * Graphics object are considered relative to the translation origin
       * of this Graphics object prior to the invocation of the method.
       * All rendering operations modify only pixels which lie within the
       * area bounded by both the current clip of the graphics context
       * and the extents of the Component used to create the Graphics object.
       * @author      Sami Shaio
       * @author      Arthur van Hoff
       * @version     %I%, %G%
       * @since       JDK1.0
      public abstract class Graphics {
           * Draws as much of the specified image as is currently available
           * with its northwest corner at the specified coordinate (x, y).
           * This method will return immediately in all cases, even if the
           * entire image has not yet been scaled, dithered and converted
           * for the current output device.
           * <p>
           * If the current output representation is not yet complete then
           * the method will return false and the indicated {@link ImageObserver}
           * object will be notified as the conversion process progresses.
           * @param img       the image to be drawn
           * @param x         the x-coordinate of the northwest corner of the
           *                  destination rectangle in pixels
           * @param y         the y-coordinate of the northwest corner of the
           *                  destination rectangle in pixels
           * @param observer  the image observer to be notified as more of the
           *                  image is converted.  May be <code>null</code>
           * @return          <code>true</code> if the image is completely
           *                  loaded and was painted successfully;
           *                  <code>false</code> otherwise.
           * @see             Image
           * @see             ImageObserver
           * @since           JDK1.0
          public abstract boolean drawImage(Image img, int x, int y,
                                            ImageObserver observer);
           * Dispose of the system resources used by this graphics context.
           * The Graphics context cannot be used after being disposed of.
           * While the finalization process of the garbage collector will
           * also dispose of the same system resources, due to the number
           * of Graphics objects that can be created in short time frames
           * it is preferable to manually free the associated resources
           * using this method rather than to rely on a finalization
           * process which may not happen for a long period of time.
           * <p>
           * Graphics objects which are provided as arguments to the paint
           * and update methods of Components are automatically disposed
           * by the system when those methods return.  Programmers should,
           * for efficiency, call the dispose method when finished using
           * a Graphics object only if it was created directly from a
           * Component or another Graphics object.
           * @see       #create
           * @see       #finalize
           * @see       Component#getGraphics
           * @see       Component#paint
           * @see       Component#update
           * @since     JDK1.0
          public abstract void dispose();
           * Disposes of this graphics context once it is no longer referenced.
           * @see       #dispose
           * @since     JDK1.0
          public void finalize() {
              dispose();
      }You're right, it would be good to include this example
in the Javadoc Reference page.
-Doug Kramer
Javadoc team

Similar Messages

  • ABAP Documentation Generation, Javadoc-like

    Hello everyone,
    I've got one topic to discuss that I do not find very much information about on SCN. It's about documentation. and I don't mean SAP documentation like help.sap.com, but the documentation about the software we (=developers) are producing by writing ABAP-code. That thing that we tend to neglect.
    So is there any tool that is similar to [Javadoc|http://en.wikipedia.org/wiki/Javadoc], something like a ABAP Documentation Generator? A tool that generates a code-based documentation out of the source-code comments? As far as I know, there is no such functionality in the ABAP workbench. The only community project I found was ABAP Docs, but that seems to be inactive and is not even accessibly online.
    How do you document your software? Do you use external tools, anything that is integrated into the SAP system? Or is it a completely segregated solution like we use in my company (Word)? What strategies do you use to create Architecture Documentation, Technical Documentation and End User Documentation?
    It seems to me that there are lots of software solutions that can create modern documentation including different formats, layout templates, guidelines etc. But I haven't found anything related to ABAP development. Maybe the best example is Wikipedias [Comparison of documentation generators|http://en.wikipedia.org/wiki/Comparison_of_documentation_generators]. Just search for ABAP.
    I am looking forward to read about your experiences in documenting ABAP software!

    Surprisingly (more or less) the list has no entry for a tool that supports ABAP, that was my point.
    In the [Language support|http://en.wikipedia.org/wiki/Comparison_of_documentation_generators#Language_support] table there is an Any With Comments column. Looking at the examples for [Natural Docs|http://en.wikipedia.org/wiki/Natural_Docs] and [ROBODoc|http://en.wikipedia.org/wiki/ROBODoc], they might work for ABAP too. YMMV
    Hope this helps,
    Rossen

  • Poor documentation for new LC4 SP1 feature

    The SP1 for ES4 adds a new feature to Designer.
    You're now able to add the document title to the title bar of your PDF viewer.
    But the updated documentation is very poor.
    http://help.adobe.com/en_US/livecycle/11.0/DesignerHelp/WS107c29ade9134a2c-4ae8b9c912a8713 b33d-8000.2.html#WS2d2a17056e2191984a0add03140aa5a6c99-8000
    1. Only the english documentation describes the feature. No word about in the german help.
    2. It states to add the tag <?originalXFAVersion http://www.xfa.org/schema/xfa-template/3.3/ DisplayDocTitle:1?>to the XML source manually but not where!
    3. There is no word about that the feature only affects static XFA forms! If it should work in dynamic forms, than there is currently a bug, because it doesn't work.
    @the LC doc team: Please provide a more detailed description in all languages you support in Designer!

    Hi radzmar. Thanks for the feedback. We shall surely update the documentation and republish it. The updates to English content are quicker than in the localized content.
    The updates to the German language guide are in progress. The localization team is working to get the ES4 SP1 content localized.

  • Poor memory or poor documentation?

    This might be no more than a failure of my memory, but I can't figure out what the up statement in the following does:
         IF :System.Record_Status = 'NEW' THEN
              vRecNum := :System.Cursor_Record;
                   up;
         END IF;
    I can't seem to find any documentation of this as a valid PL/SQL statement, but it obviously is-this compiles without error (although the form as a whole generates an error, possibly caused by whatever this statement does).
    thanks.

    :System.Record_Status and :System.Cursor_RecordThese are Oracle Forms internal system variables. A search of the Forms Help system would have given you all the information you need about these variables. For example; Start the Forms Help system, Click on the Index tab and type "System" in the search field...
    SYSTEM.RECORD_STATUS System Variable
    Syntax
    SYSTEM.RECORD_STATUS
    Description
    SYSTEM.RECORD_STATUS represents the status of the record where the cursor is located. The value can be one of four character strings:
    CHANGED - Indicates that a queried record's validation status is Changed.
    INSERT - Indicates that the record's validation status is Changed and that the record does not exist in the database.
    NEW - Indicates that the record's validation status is New.
    QUERY - Indicates that the record's validation status is Valid and that it was retrieved from the database.
    Usage Notes
    Both SYSTEM.RECORD_STATUS and the GET_RECORD_PROPERTY built-in return the status of a record in a given block, and in most cases, they return the same status. However, there are specific cases in which the results may differ.
    SYSTEM.RECORD_STATUS can in certain cases return a value of NULL, because SYSTEM.RECORD_STATUS is undefined when there is no current record in the system. For example, in a When-Clear-Block trigger, Oracle Forms is at the block level in its processing sequence, so there is no current record to report on, and the value of SYSTEM.RECORD_STATUS is NULL.
    GET_RECORD_PROPERTY, on the other hand, always has a value of NEW, CHANGED, QUERY, or INSERT, because it returns the status of a specific record without regard to the processing sequence or whether the record is the current record.
    SYSTEM.RECORD_STATUS Examples
    Assume that you want to create a trigger that performs a commit before clearing a Changed record. The following Key-CLRREC trigger performs this function.
    IF :System.Record_Status IN ('CHANGED', 'INSERT') THEN
       Commi t_Form;
    END IF;
    Clear_Record;Related topics
    GET_RECORD_PROPERTY built-in
    SET_RECORD_PROPERTY built-in
    SYSTEM.BLOCK_STATUS examples
    Craig B-)
    If someone's response is helpful or correct, please mark it accordingly.
    Edited by: CraigB on Jan 7, 2011 2:24 PM

  • C6-00 First impressions -- poor documentation

    After reading on here some of the problems experienced by C6-00 users, I was a little apprehensive when mine turned up yesterday. However so far I'm suitably impressed with the device apart from the documentation which in my view (as a technical writer) is somewhat lacking.
    The User Guide makes reference to an Extended User Guide available from the Nokia website.... So does anyone have any ideas exactly where to find it?
    BB

    Hi Laitos,
    I've downloaded this one, and "yes" it does contain a little more information than the shipped version. But it still refers to an "Extended User Manual" (e.g.   page 54 -- Connectivity).
    So is this (the downloaded manual) the "Extended" manual and all such references within it are in error, or does another (Extended) manual really exist that is not shown on the website?
    Mike
    (for some reason had to change the Bamberboy user name)

  • Poor OPM documentation

    Hi,
    This post is regarding the OPM help. To me it seems that the OPM help is very poorly documented. It doesn't contains in-depth explanation on several important topics..I have raised the concerns previously on the developer help too.. even that was poorly documented..
    To be able to use the features of a product..the product guide should be extensively documented so that the developers can directly refer those.
    I request Oracle to extensively document the powerful features of OPA.
    Thanks

    Rajan, thank you very much for your feedback with regards to the documentation, it really is appreciated.
    In order for us to look into your concerns, can we please ask that you do the following in relation to both the Oracle Policy Modeling User Help and the Oracle Policy Automation Developer Help:
    - provide us with a list of specific topics that you consider to be lacking in content or are falling short of what you might expect.
    - provide us with some detail relating to the kinds of information that you are searchng for and having no success in locating, but believe should be available in the documentation.
    We look forward to hearing from you soon.

  • Event handler documentation

    Is there any better documentation/samples on what event handlers do. I can't see anything that says what variables are passed to an event handler following an event. For example, if a doc close event occurs does the handler get passed username, password, document ID, IP address etc? Or does it just get passed an event ID that you then go and lookup in the APS database.
    This aspect of the SDK seems very poorly documented.
    Thanks in advance for any pointers.

    OK, found some info in the developer guide.

  • Internal and external documentation

    Hi,
    is there a feature to create different levels of documentation with javadoc?
    I'm working on an application which will expose an
    API to the user. The user should get a javadoc api
    documentation much like that standard java api,
    while our internal developers can also see additional
    comments.
    Spieler

    There are various ways to achieve this. If you want internal
    engineers to see private implementation, then use the -private
    option.
    If you using 1.4, you can include the source code in the
    output (called -src in Beta2, and -linksource in Beta 3, soon
    to be released)
    In 1.4, we have introduced the -tag option, which enables
    you to add comments for internal only. You could
    create a new tag @my.internal that holds internal comments.
    Then output them with -tag my.internal:a:"Internal:"
    This is not as easily done in 1.3.
    Anything else you want to do?
    -Doug Kramer
    Javadoc team

  • [solved] Documentation on systemd-targets

    Hi,
    systemd is called 'well documented', but I am missing one type of documentation: something that lists precisely, under which circumstances a target is triggered, for example that the sleep.target is triggered on hibernate and suspend and if it is triggered on bootup. And maybe even when, because there are several targets whose name implies a certain timing, as local-fs-pre.target or network-online.target vs. network.target, which might be importaint for a service.
    Though some of the target's names seem to bee quite intuitive, this is not true for all of them, thus I'm missing a list or something like that mentioned above. Are my skills concerning using search engines to find a solution that poor or is systemd poorly documented in that manner?
    Last edited by Ovion (2013-09-15 16:32:30)

    I'm not sure how much info you need.
    $ locate local-fs-pre.target
    /usr/lib/systemd/system/local-fs-pre.target
    $ cat /usr/lib/systemd/system/local-fs-pre.target
    # This file is part of systemd.
    # systemd is free software; you can redistribute it and/or modify it
    # under the terms of the GNU Lesser General Public License as published by
    # the Free Software Foundation; either version 2.1 of the License, or
    # (at your option) any later version.
    [Unit]
    Description=Local File Systems (Pre)
    Documentation=man:systemd.special(7)
    RefuseManualStart=yes
    man systemd.special wrote:local-fs-pre.target
        This target unit is automatically ordered before all local mount points marked with auto (see above). It can be used to execute certain units before all local mounts.

  • Generate a documentation of Custom PIP

    Hi together,
    we had a little integration case with for applications and about 20 AIA Componentes (ABCSs, EBSs and EBF). We use different MEPs and two EBOs. It is possible to generate a documentation based on AIA Annotionas in composite.xml? Our is there any other alternative to generate a documentation (like JavaDoc for Java)?
    Bye
    Marcel

    I have one example at the bottom of this page.....
    http://www.iwebformusicians.com/WebMusic/Navigation.html
    The code from the generator is pasted into an HTML Snippet.
    The menu will drop across photos and text etc.
    Once you have created several of these you can line them up, side by side, across the top of your web page.
    "I may receive some form of compensation, financial or otherwise, from my recommendation or link."

  • Javadoc for RowSet

    Where can I find any documentation (like JavaDoc) for
    the package oracle.jdbc.rowset? I know where to find
    documentation for the interfaces in javax.sql,
    I am interested in the particular implementation
    by Oracle.
    Thanks.

    Thanks for pointing out the examples.
    I'm still looking for some more complete information,
    ideally on the level of Java Doc or specification
    (of the features that are not already specified
    for the Java RowSet).

  • JAVADOC for SUBDIRs

    Hallo,
    I tried to create a documentation with javadoc. But the Sourcecodes are saved in differend Subdirs.
    So I take the DOS command DIR /A:D /B /S > files
    This should write all subdirs into the file named files.
    The entries in Files lookes like this:
    C:\hallo\com\portal\subdir1
    C:\hallo\com\portal\subdir2
    C:\hallo\com\portal\subdir3
    C:\hallo\com\tools\subdir1
    now I call JAVADOC with @files
    c:\Jdk140\bin\javadoc -d DOCU-TARGET-PATH @files
    if I understood the help of JAVADOC right, this should work!
    But it doesn't.
    WHY?
    HOW should the entries of the file FILES look like?
    DO files really don't need a specifier *.txt (or something else!)?
    HOW cna I make this run??
    Ps.: Sorry I know that my enlish is terrible, but I hope you can understand me!

    I can't tell from your example whether all the source files have the same root directory or not. Please show me the directory structure
    of the source files before you move them.
    First, you should never move source files that belong to packages into
    a directory structure that does not correspond to the packages.
    Javadoc won't work with those moved files.
    In other words, if you have package com.portal.subdir1,
    you must leave the source files in a directory named com\portal\subdir1.
    Second, the proper way to document multiple source trees is to
    simply add all the source file root directories to -sourcepath.
    So your command might look something like this:
    javadoc -sourcepath rootpath1;rootpath2;rootpath3 com.portal.subdir1 com.portal.subdir2 com.portal.subdir3
    Please give us more details.
    -Doug

  • Javadoc not showing my methods

    I don't see what I'm doing wrong here as I've read threads on here as well as on the NetBeans site, but when I generate a javadoc for my project, the only method that seems to be in my documentation is main. In that particular class I have 3 other methods.
    For example:     /**
         * @param ext file extention allowed to be selected
         * @param desc description of the file type
         * @param fc which type of JFileChooser
        private void useFileFilter(String ext, String desc, JFileChooser fc)
            filter.setAcceptedFiles(ext, desc);
            fc.setAcceptAllFileFilterUsed(false);
            fc.setFileFilter(filter);
        }Is there additional script configuration I need to do before this works properly or am I safe to assume that without additional arguments javadoc will not include private methods? I'm using NetBeans 6.0.1.

    By default, only public and protected methods are documented by Javadoc. Javadoc does however provide options to broaden (and lessen) the visibility criteria for documentation (Javadoc options -public, -protected, -package, -private). You will have to find out how to do that from within Netbeans yourself, though.

  • Demystify ODI Security -- Documentation is very weak on this topic.

    I see 3,000 hits to one thread on ODI Security but I haven't gotten that "Ah-ha!" moment where I now understand ODI security. The SNPS_USERS.PDF (ODI User's Guide) is very light on the security section.
    I'm trying to do something I hope is very simple: Create a new user that can execute the scenarios I choose and only for certain contexts. I've been able to create a new user. I've also been able to apply a profile to the new user. But when I try to grant specific SCENARIOS I get this error:
    *"This user already have generic privilege on this object type. You do not need to set instance privileges."*
    Does anyone have any good examples on how to setup ODI security?
    -Chris Rothermel
    Edited by: Chris Rothermel on Apr 12, 2010 2:40 PM

    Chris,
    I agree that ODI security is poorly documented and seems more like witchcraft.
    Having said that, see this Re: Security
    This may give you insight into how Generic and Non Generic privileges work
    Create a brand new user.
    For your case, do the following:
    1. Create a duplicate of CONNECT profile and name it CONNECT_WITHOUT_CONTEXT.
    2. Expand it and goto Context-> Dbl-click View.
    3. Uncheck the "Generic Privilege" checkbox.
    4. Grant CONNECT_WITHOUT_CONTEXT to the user.
    5. Drag-drop the Contexts that you want the user to access from Topology Manager onto the user.
    Now user will only be able to see the contexts that you explicitly grant him.
    6. Also, for your case use NG Designer instead of regular Designer profile.
    7. The Execute Method in the Scenario object underneath this profile has been unchecked for "Generic Privilege"
    8. Login to Operator and drag-drop the scenarios on the user.
    HTH

  • Scrollpane scrolling manually to component

    Sorry that I am spamming another post that is not a question, but again I was fighting with Swing over something quite poorly documented and I must share my victory for future people that may struggle with the same (and use the forum search).
    Situation: a scrolling panel which manually handles scrollwheel scrolling. This will select one of the many JLabels holding icons in the panel, giving them a colored border when the active one.
    Requirement: when a label is selected that is out of view, the scrollpane should scroll to make that label visible.
    Now after examining the javadocs I realized that scrollRectToVisible() is the solution. This method requires a Rectangle of the position to scroll to, which you can easily get by calling getBounds() on the component (label in my example) that must be visible. So what I did was:
    - call scrollToVisibleRect() on the JScrollPane. This does not work, to my surprise
    - call scrollToVisibleRect() on the viewport. This works partially, the scrollpane scrolls down, but it will never scroll up
    - I also tried validate() here and there just to know for certain I am not crazy
    And finally after some more hair pulling and a google quest I stumbled upon the answer; you need to call scrollRectToVisible() on the component that you wrap the scrollpane around, not the scrollpane itself! So if you have something like:
    JPanel mypanel = new JPanel();
    JScrollPane sp = new JScrollPane(mypanel);You need to call mypanel.scrollRectToVisible() to make the scroll work!
    Source of the solution:
    http://www.esus.com/docs/GetQuestionPage.jsp?uid=989

    Its kind of dumb how they have when that broadcasts when
    scrolling is going on but not one directly when its stops.
    Thanks for your help.
    Heres what i used:
    _root.onMouseUp = function () {
    if (_xmouse>=0 && _xmouse<=555 &&
    _ymouse>537 && _ymouse<558) {
    trace('stop that');
    }

Maybe you are looking for

  • Format for URL on letterhead

    I'm redesigning letterhead. Previous URL format on letterhead: http://personsname.organizationname.org May I correctly leave off the http://? I've tested the URL and the browsers I've tried sen me to the right place. Thanks.

  • How to make a copy of an application with its schema-tables,data and all

    Good day, I am looking for the best way to make a copy of an application from one computer to another, including the schema (tables, data and all) in Apex3.2. I can only manage to make a copy of the application without the data using the export utili

  • Tables and webservices

    I have created a webdynpro application based on a webservice. This webservice creates a quotation in a legacy system. The quotation/webservices has one header line and several item lines. I imported the WS in the NW Dev Studio 2.0.9 and have the stru

  • LabVIEW Openings

    Hi,    I'm a labVIEW engineer with 6+ years of expertise in LabVIEW , LAb windows and Test Stand. I've completed the CLAD certification in LabVIEW. Currently im looking for a suitable job opening for me in Chennai / Bangalore. Please let me know if t

  • Configuring HTTP Probe

    Hi All, I want to configure a new HTTP Probe. The application server was installed with the following URL: http://lta43:8011/HealthApp/health.txt The goal is ACE can monitor this URL. What would be the way to configure the Probe in the ACE? Regards,