Component Report
Page edited by Igor Drobiazko
Changes (2)
...
configuration rootPackageorg.example.myapp/rootPackage
/configuration
/plugin{code}
Be sure the update the _version_ element with the current version of the Maven plugin, and update the _rootPackage_ element with the value for your application (this will match the value you configure inside your [web.xml|Configuration]).
{since:since=5.3} In version 5.3 the configuration of the Maven plugin changed in a backward incompatible way. The configuration expects the _rootPackages_ element, which may have several _rootPackage_ elements. You should change the plugin configuration as shown below or you can still use the 5.2.4 version of the plugin without to change anything. {code:xml} plugin groupIdorg.apache.tapestry/groupId artifactIdtapestry-component-report/artifactId version5.3.x/version configuration rootPackagesrootPackageorg.example.myapp/rootPackagerootPackagecom.acme.lib/rootPackage /rootPackages /configuration /plugin{code}
h2. Limitations
...
Full Content
The Component Report module lets you generate comprehensive documentation for all the components in your module (either a component library or a Tapestry application).
For each component, the inheritance, description and complete set of parameters (including inherited parameters) are displayed.
The documentation is generated from a mix of JavaDoc and annotations on the classes themselves, and from external documentation you may provide.
External Documentation
The external documentation is optional, and takes the form of a file, stored in the same package as the component class, with the extension ".xdoc".
External documentation is in the Maven XDoc Format, which can be thought of as a somewhat rigid, stripped down version of XHTML.
The component report will extract the content of the body element and add it to the documentation it automatically generates. It will also copy any images (the src attribute of any img element) to the corresponding output folder.
The documentation is generated into a directory structure that mimics the package structure; thus a link to component documentation for components in the same package is just a link to another file (with a .html extension) in the same folder.
Example:
document
body
section name="Related Components"
ul
lia href="" class="code-quote">"Foo.html"Foo/a/ul
lia href="" class="code-quote">"Bar.html"Bar/a/ul
/ul
/section
section name="Examples"
pThe Baz component can be used to generate a gloop style of interface:/p
pimg src="" class="code-quote">"baz_ref.png"//p
. . .
External documentation files (the .xdoc files and any related image files) can be either on the Java main path (i.e., src/main/java) or on the resources path (src/main/resources). At this time, you should place them under src/main/java such that the files are not packaged in your library JAR or application WAR.
Generating the Report
Just add the following to the reporting/plugins section of your POM:
plugin
groupIdorg.apache.tapestry/groupId
artifactIdtapestry-component-report/artifactId
version5.0.x/version
configuration
rootPackageorg.example.myapp/rootPackage
/configuration
/plugin
Be sure the update the version element with the current version of the Maven plugin, and update the rootPackage element with the value for your application (this will match the value you configure inside your web.xml).
Added in 5.3
In version 5.3 the configuration of the Maven plugin changed in a backward incompatible way. The configuration expects the rootPackages element, which may have several rootPackage elements. You should change the plugin configuration as shown below or you can still use the 5.2.4 version of the plugin without to change anything.
plugin
groupIdorg.apache.tapestry/groupId
artifactIdtapestry-component-report/artifactId
version5.3.x/version
configuration
rootPackages
rootPackageorg.example.myapp/rootPackage
rootPackagecom.acme.lib/rootPackage
/rootPackages
/configuration
/plugin
Limitations
There is no ability to generate parameters for base classes from another library; the tools assume that the components are entirely self-contained within the current model.
Change Notification Preferences
View Online
|
View Changes