blob: d9b5355d5d99cd5cca4a1f41e31d6c801ebd9ea7 [file] [log] [blame]
<html>
<head>
<meta
http-equiv="Content-Type"
content="text/html; charset=UTF-8">
<meta
http-equiv="Content-Type"
content="text/html; charset=iso-8859-1">
<link
rel="stylesheet"
href="../../../../..//default_style.css"
type="text/css">
<link
rel="stylesheet"
href="../../../../..//webtools/wtp.css"
type="text/css">
<title>Reintroducing the Structured Source Editing family of editors</title>
</head>
<body>
<table
width="100%"
cellspacing="5"
cellpadding="2"
border="0">
<tbody>
<tr>
<td
width="60%"
align="left"><font class="indextop"> Reintroducing the Structured Source Editing family of
editors </font> <br>
<font class="indexsub"> Reintroducing the Structured Source Editing family of editors </font></td>
<td width="40%"><img
width="207"
hspace="50"
height="129"
align="middle"
src="../../../../..//webtools/images/wtplogosmall.jpg"
alt=""></td>
</tr>
</tbody>
</table>
<table
width="100%"
cellspacing="5"
cellpadding="2"
border="0">
<col width="16">
<col width="*">
<tbody>
<tr>
<td
valign="top"
bgcolor="#0080c0"
align="left"
colspan="2"><b><font
face="Arial,Helvetica"
color="#ffffff">Structured Source Editing in Milestone 2</font></b></td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p>The Structured Source Editing (SSE) family of editors are now available as part of WTP 1.0M2. They
support editing XML, DTD, HTML, CSS, JavaScript, and JSP files. The SSE editors make significant usage of
Eclipse frameworks as well as each other. For end users it means that they behave consistently with each
other as well as with other Eclipse editors. Users of the JDT's Java editor will recognize many of the
features they're used to seeing there available in many of the SSE editors:</p>
<ul>
<li>Configurable syntax highlighting</li>
<li>Editing of external files</li>
<li>Quick Diff</li>
<li>Delimiter matching</li>
<li>Content Assist Templates</li>
<li>Outline view with functional context menu</li>
<li>Properties view</li>
<li>Comment toggling and block commenting and uncommenting</li>
<li>Line shifting</li>
<li>Next/Previous Annotation navigation</li>
<li>Finding All Occurrences in the file</li>
<li>Highlighting for remote files (ex.: files opened from the CVS Explorer)</li>
<li><i>Source</i> menu actions in the Navigator</li>
<li><i>Navigate|Show In</i> menu in the editors</li>
</ul>
Settings for one language are reflected when editing other languages. For example, the CSS highlighting
preferences are obeyed in the HTML editor while the CSS, HTML, and Java highlighting preferences are obeyed
in the JSP editor. Refactoring changes made to Java files affect references in JSP files (and vice versa)
and JSP files are included in Java search results. <br>
<br>
And there's <b>much</b> more. See the <a
href="../../../wst/components/sse/featureTables/featureSummary.html">feature summary</a> for an overview
of what editing feature is supported by which editor. Also see the <a
href="../XMLCatalog/XMLCatalogTutorial.html"> XML Catalog Tutorial </a> and the <a
href="../XMLWizards/XMLWizards.html"> New XML File Tutorial </a> for related information.
<p></p>
</td>
</tr>
<tr>
<td
valign="top"
bgcolor="#0080c0"
align="left"
colspan="2"><b><font
face="Arial,Helvetica"
color="#ffffff"> Content Assist <a name="contentassist"></a> </font></b></td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p>Content Assist provides a list of proposals, basically "text available to insert into the document",
at the current cursor location. You can invoke Content Assist from the menu, or by pressing <b>Ctrl+Space</b>
. Content Assist will always try to leave the document in a well-formed state after a proposal is inserted.
</p>
</td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p>Content Assist is very sensitive to context. You will get different proposals depending where the
caret is in the document.</p>
</td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p>In a JSP file you have many different content types. In the HTML regions, you will get appropriate
HTML tag proposals when you invoke content assist. In server-side scripting regions,( <code>&lt;%...%&gt;</code>
), you will get proposals for the scripting language of the JSP file. If the language is Java, you will get
appropriate Java proposals for that cursor position.</p>
</td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p>In a XML file, proposals may come from a referenced <i>content model</i> if a DTD or Schema is
specified for the file, and then possibly through the <a href="#xml_catalog">XML Catalog</a> . This will
give you "smarter" proposals, such as specific child element proposals within a given element, or required
attribute proposals.</p>
</td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p>In a HTML file, if you invoke Content Assist within a <b>style</b> tag or attribute you will get CSS
Content Assist proposals: <br>
<code> <b>&lt;p style="|"&gt; text &lt;/p&gt;</b> </code> <br>
<br>
here you will get JavaScript proposals: <br>
<code> <b>&lt;button onclick="|"&gt; text &lt;/button&gt;</b> </code> <br>
</p>
</td>
</tr>
<tr>
<td
valign="top"
bgcolor="#0080c0"
align="left"
colspan="2"><b><font
face="Arial,Helvetica"
color="#ffffff"> XML Catalog <a name="xml_catalog"></a> </font></b></td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p>Web Tools allows you to store DTDs or Schemas locally in the XML Catalog and have the documents map
to PUBLIC ids. These ids are usually specified in XML documents via the <br>
<code>&lt;!DOCTYPE&gt;</code> declaration. Users have the option of specifying a DTD/Schema via a SYSTEM id
(local file system) or PUBLIC id (for pure catalog-based lookup).</p>
</td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p>Examples of instructions placed at the top of an XML file defining grammar constraints :</p>
</td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p><code> &lt;!DOCTYPE JobPosting SYSTEM "JobPosting.dtd"&gt; </code> <br>
(looked up locally in the same folder as the XML file)</p>
</td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p><code> &lt;!DOCTYPE JobPosting PUBLIC "www.blah.com/blah.dtd"&gt; </code> <br>
(looked up in the catalog with "www.blah.com/blah.dtd" as a key)</p>
</td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p><code> &lt;po:purchaseOrder xmlns:po="http://www.ibm.com"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.ibm.com
PurchaseOrder.xsd "&gt; </code> <br>
(looked up in catalog with "http://www.ibm.com PurchaseOrder.xsd " as a key)</p>
</td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p><b>What are catalog entries used for?</b> <br>
The DTD/Schema entries are used for a number of things. They can give you context sensitive <a
href="#contentassist">Content Assist</a> proposals in a XML document. They give rules for what to mark
as errors in as-you-type validation.</p>
</td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p>The Structured source editors support editing XHTML files. When users use any of the XHTML <code>DOCTYPE</code>
(XHTML 1.0 Strict, XHTML 1.0 Transitional, XHTML 1.0 Frameset) the content model for that particular <code>DOCTYPE</code>
is followed. When users perform Content Assist within the document, they get the correct list of tags and
attributes. Other editor functions will also respect the new well-formedness and validity constraints.</p>
</td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p><b>When should you use catalog entries?</b> <b></b> Typically, DTDs and Schemas in a document are
specified so they are availble via URL download as well as identified by ID. So if you are connected to the
internet there would be no reason you would be required to use a catalog entry. However, if you ever work
disconnected, you can download your own copy of the DTD to your local file system, and create a catalog
entry for it, so it can be found whether connected or not. And, since the priority order of "lookup" is that
it looks for catalog entries first, and then the network URL's, there is sometimes some performance
advantage to having a local copy.</p>
</td>
</tr>
<tr>
<td
valign="top"
bgcolor="#0080c0"
align="left"
colspan="2"><b><font
face="Arial,Helvetica"
color="#ffffff">Editor-relevant preferences</font></b></td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p>All Structured source editors have a "Preferences.." action in the editor context menu. When this
action is performed, the preferences relative to this editor are displayed in a dialog to the user.</p>
</td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top"><img
border="0"
src="images/pref_menu.jpg"
alt="In editor preferences menu"></td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p>This allows users to change editor preferences easily and immediately without having to navigate the
entire preference page tree.</p>
</td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p><img
border="0"
src="images/pref_dialog.jpg"
alt="In editor preferences"></p>
</td>
</tr>
<tr>
<td
valign="top"
bgcolor="#0080c0"
align="left"
colspan="2"><b><font
face="Arial,Helvetica"
color="#ffffff">Hover Help</font></b></td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p>Hover help is displayed when users mouse over text in Structured source editors.</p>
</td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top"><img
border="1"
src="images/hover.jpg"
alt="Hover help"></td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p>There are several different types of hover help that can appear for the user.</p>
</td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<table border="BORDER">
<tbody>
<tr>
<th width="50%">Text Hover Name</th>
<th width="50%">Description</th>
</tr>
<tr>
<td>Annotation Description</td>
<td>Displays description of the current annotation shown in text. For example, if a task is
highlighted in the editor and the user mouses over the task text, hover help displays the name
of the task.</td>
</tr>
<tr>
<td>Documentation Description</td>
<td>Displays documentation of the text. For XML elements and attributes, the content model
of the current element/attribute is displayed. If additional documentation information is
included in the associated schema, that information is also displayed. For HTML elements, a
description of the current tag is displayed. For HTML attributes and JSP tags/attributes, the
content model of the currently selected tag/element is displayed. For JSP Java content, the
JavaDoc for the currently selected object/method is displayed.</td>
</tr>
<tr>
<td>Problem Description</td>
<td>Displays description of the current problem shown in text. For example, if the user has
an error in a XML file and the user mouse overs the text with the error indication, hover help
displays the error description.</td>
</tr>
<tr>
<td>Combined Hover</td>
<td>Displays the description from the previously mentioned hover help types that best fits
the currently selected text.</td>
</tr>
</tbody>
</table>
</td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p>The hover help displayed depends on the modifier keys users press when hovering over text. Users can
control the type of hover help displayed in the Structured Text Editors Hovers preference page.</p>
</td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p><img
border="0"
src="images/hoverspref.jpg"
alt="Hover help preferences"></p>
</td>
</tr>
<tr>
<td
valign="top"
bgcolor="#0080c0"
align="left"
colspan="2"><b><font
face="Arial,Helvetica"
color="#ffffff">Open Selection [with hyper-link support]</font></b></td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p>Users are able to open on/navigate to the source/declaration/referred to file of certain tag
attributes by using the Open Selection menu item (shortcut key F3 by default). They are also able to perform
the same action by using a combination of pressing a modifier key (the Ctrl key by default) and their mouse
to hover over the tag users want to open selection on. A hyperlink will then appear for users to click on to
Open Selection.</p>
</td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p><img
border="1"
src="images/openonlink.jpg"
alt="Open on hyperlink"></p>
</td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p>The file opened depends on the type of tag the user Open Selections on.</p>
</td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<table border="BORDER">
<tbody>
<tr>
<th width="50%">Tag</th>
<th width="50%">File opened</th>
</tr>
<tr>
<td>any HTML tag that contains a URI attribute (as defined by the HTML 4.01 DTD) such as
the Anchor tag</td>
<td>the file located in the URI attribute value</td>
</tr>
<tr>
<td>any JSP tag that contains a URI attribute (as defined by the JSP 1.2 Specification)
such as the jsp:forward tag</td>
<td>the file located in the URI attribute value</td>
</tr>
<tr>
<td>jsp:useBean</td>
<td>the class referenced by the useBean action</td>
</tr>
<tr>
<td>JSP scriptlets</td>
<td>selected Java element's declaration</td>
</tr>
<tr>
<td>DOCTYPE Declaration</td>
<td>the file referenced by the public/system ID</td>
</tr>
<tr>
<td>Schema location attribute</td>
<td>the file referenced by the schema location attribute</td>
</tr>
</tbody>
</table>
</td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top"><br>
</td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p>Users can control behaviour of the hyperlink navigation in the Structured Text Editors Navigation
preference page.</p>
</td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p><img
border="0"
src="images/openonprefs.jpg"
alt="Open on navigation preferences"></p>
</td>
</tr>
<tr>
<td
valign="top"
bgcolor="#0080c0"
align="left"
colspan="2"><b><font
face="Arial,Helvetica"
color="#ffffff">As-you-type validation</font></b></td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p>Errors are found and displayed in the editor while editing the document.</p>
</td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p><b>General XML syntax:</b> <br>
General syntax for XML will be marked as you type. This includes errors such as missing quotes, missing
brackets, missing end tags... <a
href="#quickfix">Quick fix</a> will be provided for many of these syntax errors.</p>
</td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p><b>DTD/Schema backed validation:</b> <br>
If a DTD/Schema is specified in the XML file, as-you-type validation will enforce these constraints (eg.
number of elements, children, names...), and mark errors in the file accordingly.</p>
</td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p><b>JSP-Java validation:</b> <br>
Server-side script regions (for the Java language) in JSP files will be marked with Java as-you-type errors
(eg. missing imports, bad Java symbol references).</p>
</td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p><b>XML Catalog:</b> <br>
The DTD/Schema specified in the XML can be available locally in the XML Catalog. An Internet connection need
not be available.</p>
</td>
</tr>
<tr>
<td
valign="top"
bgcolor="#0080c0"
align="left"
colspan="2"><b><font
face="Arial,Helvetica"
color="#ffffff">Expand Selection To menu</font></b></td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p>You can quickly select XML elements using the Structured Selection feature. Highlight a XML element
and press Alt+Shift+Arrow Up or select <b>Edit &gt; Expand Selection To &gt; Enclosing Element</b> from the
menu bar - the selection will be expanded to the smallest XML element that contains the selection. You can
then further expand the selection to the enclosing element, the next element, the previous element, or
restore the last selection by selecting Enclosing Element, Next Element, Previous Element, or Restore Last
Selection from the Edit &gt; Expands Selection To menu bar respectively.</p>
</td>
</tr>
<tr>
<td
valign="top"
bgcolor="#0080c0"
align="left"
colspan="2"><b><font
face="Arial,Helvetica"
color="#ffffff">Smart Insert</font></b></td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p>The XML Editor has a Smart Insert mode which can be toggled via <b>Edit &gt; Smart Insert Mode</b> or
Ctrl+Shift+Insert (by default). In Smart Insert mode, the editor provides language-specific extras. For
example, when you start typing an end tag, "&lt;/", in a XML file after a start tag with its end tag
missing, Smart Insert completes the end tag automatically. When you start typing the opening of a XML
comment, "&lt;!&mdash;", Smart Insert ends the comment for you by inserting the closing "--&gt;", leaving
the caret in the middle of the comment tag so you can continue typing the comment text.</p>
</td>
</tr>
<tr>
<td
valign="top"
bgcolor="#0080c0"
align="left"
colspan="2"><b><font
face="Arial,Helvetica"
color="#ffffff">Linked Editing</font></b></td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p>In Linked Edit mode, you may change multiple occurrences of a string in the file simultaneously. This
is most easily seen through <a
href="#quickfix"> Quick Fix and Quick Assist </a> , such as the Quick Assist shown below for renaming an
element:</p>
</td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p><img
src="images/linkedit.jpg"
alt="XML tag name linked editing"></p>
</td>
</tr>
<tr>
<td
valign="top"
bgcolor="#0080c0"
align="left"
colspan="2"><b><font
face="Arial,Helvetica"
color="#ffffff">Formatting and Cleanup</font></b></td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p>XML Formatting lets you reformat the indentations and line delimiters, and reflow long lines of the
selected XML element or the whole XML document. XML Formatting makes the document easier to read and better
for printing. The XML formatting options are configured on the XML Source preference page ( <b> Window
&gt; Preferences &gt; Web and XML &gt; XML Files &gt; XML Source </b> ).</p>
</td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p><img
src="images/format_block.jpg"
alt="preference page block for XML formatting"></p>
</td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p>Highlight a XML element and press Ctrl+I or select <b>Source &gt; Format &gt; Active Elements</b>
from the menu bar to format the selected XML element. Press Ctrl+Shift+F or select <b>Source &gt; Format
&gt; Document</b> from the menu bar to format the whole XML document.</p>
</td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p>XML Cleanup lets you correct simple errors in the XML document such as adding required attributes
that are missing, inserting missing begin or end tags, and quoting unquoted attribute values. Some
convenient options, such as compressing empty element tags, formating the source, and converting line
delimiters, are provided to make documents more consistent.</p>
</td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p><img
src="images/cleanup_dialog.jpg"
alt="popup Cleanup dialog"></p>
</td>
</tr>
<tr>
<td
valign="top"
bgcolor="#0080c0"
align="left"
colspan="2"><b><font
face="Arial,Helvetica"
color="#ffffff">JavaScript Editor with Preview</font></b></td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p>With the help of the Outline view, the JavaScript Editor gives you a clear hierarchy view of the
JavaScript variables and functions you have in the JavaScript file. JavaScript keywords are highlighted in
different colors and Content Assist provides you with a list of suggested completions for partially entered
strings along with visual indicators for the web browsers that support the method.</p>
</td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p><img
src="images/js_multipageeditor.jpg"
alt="JavaScript Editor"></p>
</td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p>SSE provides two JavaScript editors differing only by the presence of a Preview page. The Preview
Page in the JavaScript Editor lets you test your code by wrapping the file in a simple HTML file using a <b>script</b>
tag. You may also preview the JavaScript file with any HTML file in the project that includes the JavaScript
file.</p>
</td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p><img
src="images/js_default_preview.jpg"
alt="JavaScript Editor's Preview page"></p>
</td>
</tr>
<tr>
<td
valign="top"
bgcolor="#0080c0"
align="left"
colspan="2"><b><font
face="Arial,Helvetica"
color="#ffffff">Quick Fix and Quick Assist</font></b></td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p><a name="quickfix"></a> In the XML editor, if you see an error underlined with a squiggly line,
position the caret inside the underlined range and press Ctrl+1 or select <b>Edit &gt; Quick Fix</b> to see
a list of suggested corrections.</p>
</td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p><img
src="images/quickfix.jpg"
alt="XML Quick Fix example"></p>
</td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p>Quick Assist proposals are available even if there is no problem or warning.</p>
</td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p><img
src="images/quickassist1.jpg"
alt="XML Quick Assist example"></p>
</td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p>Depending on the Quick Assist proposal, you may enter the Linked Edit mode where you may change
multiple occurrences of a string in the file simultaneously.</p>
</td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p><img
src="images/quickassist2.jpg"
alt="XML Quick Assist example with Rename Element chosen"></p>
</td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p>Quick Fix and Quick Assist proposals for Java code embedded in JSP files are also available.</p>
</td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p><img
src="images/quickfix_java.jpg"
alt="Quick Fix example of Java in the JSP editor"></p>
</td>
</tr>
<tr>
<td
valign="top"
bgcolor="#0080c0"
align="left"
colspan="2"><b><font
face="Arial,Helvetica"
color="#ffffff">JSP semantic highlighting</font></b></td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p>The JSP editor allows you to highlight JSP and custom action tags differently from HTML and XML to
help distinguish the JSP content from the its template content.</p>
</td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p><img
src="images/jsp_styles.jpg"
alt="JSP Style preference page; the Java source is not itself highlighted in this preference page">
<br>
<i> Did you know that clicking in the sample text area automatically shows the style settings for that
text's content type? </i></p>
</td>
</tr>
<tr>
<td
valign="top"
bgcolor="#0080c0"
align="left"
colspan="2"><b><font
face="Arial,Helvetica"
color="#ffffff">JSP Debugging</font></b></td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p>The JSP editor can set breakpoints compatible with JSR-045 compliant servers such as Apache Tomcat
5.0 and newer. As in the JDT Java editor, breakpoints are set using the ruler's context menu.</p>
</td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p><img
src="images/jsp_togglebreakpoint.jpg"
alt="the JSP editor ruler context menu"></p>
</td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p>When stepping, local variables are visible as well as the JSP source itself.</p>
</td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p><img
src="images/jsp_debug1.jpg"
alt="a JSP being debugged"></p>
</td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p>The Debug perspective's Run menu and its accelerators are also made available.</p>
</td>
</tr>
<tr>
<td
valign="top"
align="right">&nbsp;</td>
<td valign="top">
<p><img
src="images/jsp_debugmenu.jpg"
alt="The Debug perspective's Run menu"></p>
</td>
</tr>
</tbody>
</table>
</body>
</html>