<?xml version="1.0"?>
<!-- RSS generated by Radio UserLand v8.0.8 on Fri, 24 Jun 2005 19:16:30 GMT -->
<rss version="2.0">
	<channel>
		<title>Srini Raman&apos;s Radio Weblog</title>
		<link>http://radio.weblogs.com/0133576/</link>
		<description></description>
		<copyright>Copyright 2005 Srinivasan T. Raman</copyright>
		<lastBuildDate>Fri, 24 Jun 2005 19:16:30 GMT</lastBuildDate>
		<docs>http://backend.userland.com/rss</docs>
		<generator>Radio UserLand v8.0.8</generator>
		<managingEditor>Srinivasan.Raman@oracle.com</managingEditor>
		<webMaster>Srinivasan.Raman@oracle.com</webMaster>
		<category domain="http://www.weblogs.com/rssUpdates/changes.xml">rssUpdates</category> 
		<cloud domain="radio.xmlstoragesystem.com" port="80" path="/RPC2" registerProcedure="xmlStorageSystem.rssPleaseNotify" protocol="xml-rpc"/>
		<ttl>60</ttl>
		<item>
			<description>&lt;H4&gt;Faces Component Binding Support in JDeveloper 10.1.3 Visual Editor&lt;/H4&gt;
&lt;P&gt;Since JavaOne is around the corner, I thought I would blog about the Faces Component Binding and Backing Bean support in the upcoming JDeveloper 10.1.3 production release. &lt;/P&gt;
&lt;H3&gt;What is Backing Bean&lt;/H3&gt;
&lt;P&gt;Backing bean is a Java Beans file/class, which could contain the properties and methods which are associated with the Faces UI Components on a page (ex: a JSP Page) &lt;/P&gt;&lt;PRE&gt; &amp;lt;h:inputText value=&quot;#{Person.firstName}&quot; validator=&quot;#{Person.validatename}&quot; /&amp;gt; &amp;lt;/h:inputText&amp;gt;&lt;A name=wp119641&gt;&lt;/A&gt; &lt;/PRE&gt;
&lt;P&gt;&lt;BR&gt;In the above example, the inputText Faces UI Component has two attributes defined in the page. The attribute &apos;value&apos; refers to the &apos;firstName&apos; property defined in the java file Person.java. This is called value binding, whereby you bind the UI Component&apos;s attribute to a backing bean&apos;s property. The attribute &apos;validator&apos; refers to the &apos;validatename&apos; method defined in the java file &apos;Person&apos;. This is called method binding, whereby you bind the UI Component&apos;s attribute to a backing bean&apos;s method. &lt;/P&gt;
&lt;P&gt;So, the backing bean can have both properties and methods referenced from Faces components in the JSP page. The backing bean is created and stored with the application using the managed bean creation facility. Once you create a backing bean, you need to add the backing bean to the application configuration file.&lt;/P&gt;
&lt;P&gt;Now, let&apos;s see what support JDeveloper provides in creating and&amp;nbsp;managing the backing bean. &lt;/P&gt;
&lt;H3&gt;Associating Backing Bean with a JSP Page&lt;/H3&gt;
&lt;P&gt;Let&apos;s see how you can associate a backing bean with a JSP page. To create a JSF-JSP Page, select File-&amp;gt;New and bring up the New Gallery wizard. From Client Tier categories section, select JSF. On the right side, you should see all the items that can be created for JSF category. Select JSF-JSP and click &apos;ok&apos;.&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;Note:&lt;/EM&gt; JSF-JSP is a predefined JSP page with some faces tags like view and form in it. JDeveloper adds the f:view and h:form tags, so user does not have to manually add them.&lt;/P&gt;
&lt;P&gt;When you click &apos;ok&apos;, the JSF-JSP wizard comes up. If you go through the wizard, one of the pages you should encounter is the Component Binding page. The picture below shows the Component Binding page &lt;/P&gt;
&lt;P&gt;&lt;IMG height=400 src=&quot;http://radio.weblogs.com/0133576/MyImages/wizardpage.gif&quot; width=600&gt;&lt;/P&gt;
&lt;P&gt;JDeveloper uses the terminology &lt;STRONG&gt;Auto Bind &lt;/STRONG&gt;to define the features related to component binding and creation &amp;amp; navigation to the backing bean. The user could specify the name of the java file that should be used as backing bean. JDeveloper will create this file and add it as a managed bean in the application configuration file. If you don&apos;t specify a backing bean class name, JDeveloper will create one for you and will automatically add the backing bean as a managed bean in the application configuration file. &lt;/P&gt;
&lt;P&gt;When you finish the JSf-JSP wizard, JDeveloper creates the jsp file and the backing file specified in the component binding page of the wizard.&lt;/P&gt;
&lt;P&gt;Take a look at the faces-config.xml file and you will see the following entry in it&lt;/P&gt;
&lt;P&gt;&amp;lt;managed-bean&amp;gt;&lt;BR&gt;&amp;lt;managed-bean-name&amp;gt;backing_untitled2&amp;lt;/managed-bean-name&amp;gt;&lt;BR&gt;&amp;lt;managed-bean-class&amp;gt;mypackage.backing.Untitled2&amp;lt;/managed-bean-class&amp;gt;&lt;BR&gt;&amp;lt;managed-bean-scope&amp;gt;request&amp;lt;/managed-bean-scope&amp;gt;&lt;BR&gt;&amp;lt;/managed-bean&amp;gt; &lt;/P&gt;
&lt;P&gt;What if you don&apos;t want to specify the backing bean when you create a JSP page, but want to specify it after the page is created. JDeveloper provides a way to associate backing bean to a JSP page after the page has been created. To do this, select Design-&amp;gt;Page Properties ... menu option. This will bring up the Page Properties dialog. One of the tabs is for &apos;Component Binding&apos;. You can specify or change the backing bean file through this dialog.&lt;/P&gt;
&lt;P&gt;&lt;IMG height=349 src=&quot;http://radio.weblogs.com/0133576/MyImages/pageproperties.gif&quot; width=459&gt;&lt;/P&gt;
&lt;H3&gt;How is it used&lt;/H3&gt;
&lt;P&gt;Once the backing bean is associated with a JSP page, JDevleoper maintains the relationship between the JSP page and the backing bean file. JDeveloper also provides an easy way to navigate to the backing bean from the visual editor. &lt;/P&gt;
&lt;P&gt;Let&apos;s see the auto binding in action through a simple example.&lt;/P&gt;
&lt;P&gt;In the visual editor, drag and drop a commandButton from the component palette (commandButton is under JSF-HTML palette page). This is how the page looks like after dropping the commandButton&lt;/P&gt;
&lt;P&gt;&lt;IMG height=246 src=&quot;http://radio.weblogs.com/0133576/MyImages/vepage1.gif&quot; width=520&gt;&lt;/P&gt;
&lt;P&gt;Let&apos;s double click on the command button and see what happens! JDeveloper takes you to the backing bean and puts the cursor in the method commandButton_action().&lt;/P&gt;
&lt;P&gt;&lt;IMG height=586 src=&quot;http://radio.weblogs.com/0133576/MyImages/bean1.gif&quot; width=537&gt; &lt;/P&gt;
&lt;P&gt;Here is what happened when you double clicked on the command button in the the Visual Editor.&lt;/P&gt;
&lt;P&gt;- a variable and accessor methods (get/set) for the command button component got added to the backing bean.&lt;BR&gt;- commandButon_action() method is added &lt;BR&gt;- this method is automatically bound to the command button component in the JSP page. If you look at the source of the JSP page, you will see the following &lt;BR&gt;&lt;BR&gt;&amp;lt;h:commandButton value=&quot;commandButton1&quot;&lt;STRONG&gt; action=&quot;#{backing_untitled2.commandButton_action}&lt;/STRONG&gt;&quot;&amp;gt; &lt;PRE&gt;&lt;/PRE&gt;The action attribute is now bound (method binding) to the backing bean&apos;s method. 
&lt;P&gt;Now you can add logic to the commandButton_action() method that will be executed when the user clicks on the command button. 
&lt;P&gt;Now, let&apos;s go back to the visual editor and add an inputText component to the page. 
&lt;P&gt;&lt;IMG height=215 src=&quot;http://radio.weblogs.com/0133576/MyImages/vepage2.gif&quot; width=440&gt; 
&lt;P&gt;Let&apos;s double click on the input text component and see what happens! 
&lt;P&gt;&lt;IMG height=410 src=&quot;http://radio.weblogs.com/0133576/MyImages/bean2.gif&quot; width=858&gt; &lt;PRE&gt;&amp;lt;h:inputText &lt;STRONG&gt;validator=&quot;#{backing_untitled2.inputText_validator}&lt;/STRONG&gt;&quot;&amp;gt;&lt;/PRE&gt;
&lt;P&gt;Here, JDeveloper added a validator method for the inputText and bound the validator attribute to the method in the backing bean. 
&lt;P&gt;As you have noticed, in the case of commandButton the &lt;EM&gt;&lt;STRONG&gt;action&lt;/STRONG&gt;&lt;/EM&gt; attribute got bound to the backing bean method and in the case of inputText, the &lt;EM&gt;&lt;STRONG&gt;validator&lt;/STRONG&gt;&lt;/EM&gt; attribute got bound to the backing bean method. JDeveloper will bind the action attribute if it is supported on the Faces component, if not it will bind the validator attribute if it is supported on the component. 
&lt;P&gt;&lt;EM&gt;Note&lt;/EM&gt;: what happens if neither the action nor the validator attribute is supported by the Faces component. Go ahead and try double click on a graphicImage component and see what happens!. 
&lt;H3&gt;Component Binding Toolbar&lt;/H3&gt;
&lt;P&gt;I am not sure what the official name for this toolbar. I am going to go with the component binding toolbar. If you take a close look at the top of the source editor, you will see a toolbar like this 
&lt;P&gt;&lt;IMG height=64 src=&quot;http://radio.weblogs.com/0133576/MyImages/bean3.gif&quot; width=538&gt; 
&lt;P&gt;There are two items in the toolbar, one for Components and one for Events. Go ahead and select the components drop down list. 
&lt;P&gt;&lt;IMG height=107 src=&quot;http://radio.weblogs.com/0133576/MyImages/bean4.gif&quot; width=335&gt; 
&lt;P&gt;It shows all the Faces UI components that are available in the JSP page. Select the commandButton1 entry and the Events entry gets enabled. 
&lt;P&gt;&lt;IMG height=115 src=&quot;http://radio.weblogs.com/0133576/MyImages/bean5.gif&quot; width=381&gt; 
&lt;P&gt;Select the &lt;STRONG&gt;action&lt;/STRONG&gt; entry in the Events drop down list and JDeveloper will put the focus on the commandButton_action() method. If you have lots of faces components, this toolbar provides an easy way to navigate to the appropriate method. First select the component from the Components drop down list and then select an entry from the Events drop down list, JDeveloper will move the focus to the appropriate method. 
&lt;P&gt;In the above case, you also see an entry named actionListener. Selecting that will create an action listener method for the commandButton1 component and associate the method to the actionListener attribute of the commandButton1 component. 
&lt;P&gt;&lt;IMG height=105 src=&quot;http://radio.weblogs.com/0133576/MyImages/bean6.gif&quot; width=515&gt; &lt;PRE&gt;&amp;lt;h:commandButton value=&quot;commandButton1&quot; action=&quot;#{backing_untitled2.commandButton_action}&quot; &lt;STRONG&gt;actionListener=&quot;#{backing_untitled2.commandButton_actionListener}&lt;/STRONG&gt;&quot;/&amp;gt;&lt;/PRE&gt;
&lt;P&gt;The component binding toolbar can be used to navigate to the method and can also be used to create action or event or validator methods. This toolbar provides a powerful feature to quickly create methods which can serve as the entry point to the business logic for the faces components. 
&lt;P&gt;Hope you will find the component binding feature useful for your web application development. This feature will be available in the production release of JDeveloper 10.1.3. &lt;/P&gt;</description>
			<guid>http://radio.weblogs.com/0133576/2005/06/24.html#a13</guid>
			<pubDate>Fri, 24 Jun 2005 18:07:42 GMT</pubDate>
			<comments>http://radiocomments2.userland.com/comments?u=133576&amp;amp;p=13&amp;amp;link=http%3A%2F%2Fradio.weblogs.com%2F0133576%2F2005%2F06%2F24.html%23a13</comments>
			</item>
		<item>
			<description>&lt;title&gt;JDeveloper 10.1.3: JSP Error Page Support&lt;/title&gt;&lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=iso-8859-1&quot;&gt;&lt;h2&gt;JSP Error Page Support in JDeveloper 10.1.3 &lt;/h2&gt;&lt;p&gt;This
article explains how JDeveloper 10.1.3 provides support for creating
JSP error page, specifying error page on any JSP page, and JSP error
page template.&lt;/p&gt;&lt;a name=&quot;more&quot;&gt;&lt;/a&gt;&lt;p&gt;In your web application file (JSP file/page), you can
specify an error page to take control of the exception handling for that page. If and when there is any uncaught exception from
the JSP file (when it&apos;s run), the Web Container catches that exception
and passes the exception to the error page specified in the JSP file
which threw that exception. The error page can display&amp;nbsp;
information related to the cause of the exception/error to the user. &lt;/p&gt;&lt;h4&gt;Creating an Error Page&lt;/h4&gt;&lt;p&gt;An
error page could be a JSP file with a marking which says that it&apos;s an error
page. The page directive has an attribute called &apos;isErrorPage&apos;. This
attribute is set to true on an error page.&lt;/p&gt;&lt;p&gt;ErrorPage.jsp&lt;/p&gt;&lt;p&gt;&lt;code&gt;&amp;lt;&lt;a href=&quot;mailto:%@page&quot;&gt;%@page&lt;/a&gt; isErrorPage=true %&amp;gt; &lt;/code&gt;&lt;/p&gt;&lt;p&gt;Now,
let&apos;s see how we can create an error page in JDeveloper. To create an
error page, do File-&amp;gt;New-&amp;gt;Web Tier-&amp;gt;JSP-&amp;gt;JSP&lt;/p&gt;&lt;p&gt;This brings up the JSP file creation wizard. &lt;/p&gt;&lt;p&gt;&lt;img src=&quot;http://radio.weblogs.com/0133576/MyImages/ErrorPage.gif&quot; height=&quot;400&quot; width=&quot;600&quot;&gt;&lt;/p&gt;&lt;p&gt;If
you take a look at the &apos;JSP File&apos; page, it has three options related to
error page. The default option is, not to associate any error page with
the JSP file that is being created. Since we are creating this JSP file
as an error page, select the third option &apos;Create This File as an Error
Page&apos;. Click &apos;Finish&apos; and take a look at the code that is generated. &lt;/p&gt;&lt;p&gt;What happens when &apos;Create this File as an Error Page&apos; option is selected&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;code&gt;isErrorPage=&quot;true&quot;&lt;/code&gt; attribute is set on the @page directive. This tells the web container that this file should be used as an error page.&lt;/li&gt; &lt;li&gt;A
template is created for the error message within the &amp;lt;body&amp;gt; tag. The
scriplet outputs the exception message and the exception stack trace to
the user&lt;br&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;code&gt;An error occured:&lt;br&gt;&amp;lt;br&amp;gt;&amp;lt;/br&amp;gt;&lt;br&gt;&amp;lt;pre&amp;gt;&lt;br&gt;&amp;lt;%&lt;br&gt;out.println(exception.getMessage());&lt;br&gt;CharArrayWriter charArrayWriter = new CharArrayWriter(); &lt;br&gt;PrintWriter printWriter = new PrintWriter(charArrayWriter, true); &lt;br&gt;exception.printStackTrace(printWriter); &lt;br&gt;out.println(charArrayWriter.toString()); &lt;br&gt;%&amp;gt;&lt;br&gt;&amp;lt;/pre&amp;gt;&lt;/code&gt; &lt;/li&gt;&lt;/ul&gt;&lt;p&gt;You can edit the error page just like any other JSP page.&lt;/p&gt;&lt;h4&gt;How to Use the Error Page&lt;/h4&gt;&lt;p&gt;Now,
let&apos;s see how we can use the error page we have created. Create another
JSP file through File-&amp;gt;New-&amp;gt;Web Tier-&amp;gt;JSP-&amp;gt;JSP. For this
file, select the &apos;Use an Error Page to Handle Uncaught Exception in
This File&apos; option in &apos;JSP File&apos; page of the wizard. Click &apos;Next&apos;. &lt;/p&gt;&lt;p&gt;&lt;img src=&quot;http://radio.weblogs.com/0133576/MyImages/ErrorPage1.gif&quot; height=&quot;400&quot; width=&quot;600&quot;&gt;&lt;/p&gt;&lt;p&gt;The
Wizard shows the &apos;Use Error Page&apos; page which lists all the error pages
that are available in your web application. This page will not be shown,
if the &apos;Use an Error Page to Handle Uncaught Exception in This File&apos;
option is not selected in &apos;JSP File&apos; page of the Wizard. JDeveloper look
at all the JSP files to check whether isErrorPage is set; if so, list
the file name. Select an error page from the list and
click &apos;Finish&apos;.&lt;/p&gt;&lt;p&gt;What happens when you select an error page&lt;/p&gt;&lt;ul&gt; &lt;li&gt;&lt;code&gt;errorPage=&quot;/ErrorPage.jsp&quot;&lt;/code&gt;
attribute is set on the page directive. This attribute tells the web
container that any uncaught exception in this page should be forwarded
to the error page with the name &apos;ErrorPage.jsp&apos;. &lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;em&gt;&lt;strong&gt;Note&lt;/strong&gt;: &lt;br&gt;&amp;nbsp;Q: Instead of specifying error page on each of the JSP pages in a web application, is there a way to specify it globally?&lt;br&gt;&amp;nbsp;A: Yes. You can specify error page in web deployment descriptor file (web.xml)&amp;nbsp; &lt;br&gt;&amp;nbsp;Q: Can a html file be used as an error page instead of a JSP page?&lt;br&gt;&amp;nbsp;A: Yes&lt;/em&gt;&lt;/p&gt;</description>
			<guid>http://radio.weblogs.com/0133576/2004/12/03.html#a12</guid>
			<pubDate>Fri, 03 Dec 2004 18:45:45 GMT</pubDate>
			<comments>http://radiocomments2.userland.com/comments?u=133576&amp;amp;p=12&amp;amp;link=http%3A%2F%2Fradio.weblogs.com%2F0133576%2F2004%2F12%2F03.html%23a12</comments>
			</item>
		<item>
			<description>&lt;title&gt;Creation Wizards&lt;/title&gt;&lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=iso-8859-1&quot;&gt;&lt;h2&gt;Visual Editor: Creation Wizards in JDeveloper 10.1.3&lt;/h2&gt;&lt;p&gt;When you create a HTML or JSP file in JDeveloper 10g, it brings up a dialog which looks like this&lt;/p&gt;&lt;p&gt;&lt;img src=&quot;http://radio.weblogs.com/0133576/MyImages/10gwiz.gif&quot; height=&quot;176&quot; width=&quot;453&quot;&gt; &lt;/p&gt;&lt;p&gt;Here, all you can enter was filename and the directory where the file needs to be created.&lt;/p&gt;&lt;p&gt;In JDeveloper 10.1.3, we have introduced creation wizards for HTML and JSP file creation.&lt;/p&gt;&lt;h4&gt;HTML Creation Wizard&lt;/h4&gt;&lt;p&gt;To create a html file, do File-&amp;gt;New-&amp;gt;Web Tier-&amp;gt;HTML-&amp;gt;HTML Page&lt;/p&gt;&lt;p&gt;The
first page is the welcome page, which you can skip the next time when
you create a HTML page. To skip the welcome page, select the &apos;Skip this
page Next Time&apos; checkbox.&lt;/p&gt;&lt;p&gt;&lt;img src=&quot;http://radio.weblogs.com/0133576/MyImages/html2.gif&quot; height=&quot;400&quot; width=&quot;600&quot;&gt; &lt;/p&gt;&lt;p&gt;In the &apos;HTML File&apos; page, you enter the name of the file and the directory.&lt;/p&gt;&lt;p&gt;The next page is something new to 10.1.3.&lt;/p&gt;&lt;p&gt;&lt;img src=&quot;http://radio.weblogs.com/0133576/MyImages/html3.gif&quot; height=&quot;400&quot; width=&quot;600&quot;&gt; &lt;/p&gt;&lt;p&gt;In &apos;HTML Options&apos; page you can specify&lt;/p&gt;&lt;ul&gt;&amp;nbsp; &lt;li&gt;the doctype that should be used in the page&lt;/li&gt; &lt;li&gt;title of the page&amp;nbsp;&lt;br&gt;
 &lt;/li&gt;&lt;li&gt;background image of the page&lt;/li&gt; &lt;li&gt;background color of the page&amp;nbsp;&lt;br&gt;
 &lt;/li&gt;&lt;li&gt;link color of the page (color used for all the links in the page)&lt;/li&gt; &lt;li&gt;style sheets that should be used in the page (you can specify as many style sheets as you want)&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;The
values you specify in this page are saved/cached. So, when you create
another HTML Page, the values that you entered last time are
automatically updated in this page. Say, you select &apos;yellow&apos; for the
background color;&amp;nbsp; next time when you go through this wizard,
yellow color is selected for background color option.&lt;/p&gt;&lt;p&gt;&lt;em&gt;&lt;strong&gt;Note&lt;/strong&gt;:
Go ahead and specify background color, background image, link color and
see how we do code generation for these in the html file. Instead of
setting html properties on &amp;lt;body&amp;gt; tag, document CSS style is
created, like the folllowing example. The best way to use CSS styles is
through external style sheets.&lt;/em&gt;&lt;/p&gt;&lt;p&gt; &lt;code&gt;&amp;lt;style type=&quot;text/css&quot;&amp;gt;&lt;br&gt;body { background-color: #ffb563; }&lt;br&gt;a:link { color: #ff0000; }&lt;br&gt;&amp;lt;/style&amp;gt;&lt;/code&gt;&lt;/p&gt;&lt;h4&gt;JSP Creation Wizard&lt;/h4&gt;&lt;p&gt;To
create a JSP file/page, do File-&amp;gt;New-&amp;gt;Web Tier-&amp;gt;JSP-&amp;gt;JSP.
This will bring up the wizard for JSP file creation. JSP wizard uses
some of the pages that we saw in HTML wizard. In addition to that, JSP
wizard adds JSP specific items/pages also.&lt;/p&gt;&lt;p&gt;&lt;img src=&quot;http://radio.weblogs.com/0133576/MyImages/jsp1.gif&quot; height=&quot;400&quot; width=&quot;600&quot;&gt;&lt;/p&gt;&lt;p&gt;In
the &apos;Web Application&apos; page, you can select the web application version
(J2EE 1.4 or J2EE 1.3) that you want to use in your project. If your
project is not setup for web application (ie., no web.xml file), this
page will show up. If there is a web.xml file already in your project,
then this page will not be shown.&lt;/p&gt;&lt;p&gt;What&apos;s the implication of selecting the web application version?&amp;nbsp;&lt;br&gt;
 &lt;/p&gt;&lt;ul&gt;&lt;li&gt;web.xml file is created in WEB-INF directory &lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;img src=&quot;http://radio.weblogs.com/0133576/MyImages/jsp2.gif&quot; height=&quot;400&quot; width=&quot;600&quot;&gt; &lt;/p&gt;&lt;p&gt;The
&apos;JSP File&apos;&amp;nbsp; page is similar to the &apos;HTML File&apos; page in HTML
wizard. But, in addition to the filename and directory name, you can
see few other options. Here, you can select whether the page to be
created is a JSP Page or a JSP Document. The main difference between
these two is that the Document follows the xml syntax (ie.,
well-formed). If you are not familiar with this, just stick with the
default selected option (which is JSP Page). This page also provides
error page options, which I will blog as a separate article.&lt;/p&gt;&lt;p&gt;&lt;img src=&quot;http://radio.weblogs.com/0133576/MyImages/jsp3.gif&quot; height=&quot;400&quot; width=&quot;600&quot;&gt; &lt;/p&gt;&lt;p&gt;The
&apos;Tag Libraries&apos; page allows you to select the tag libraries that should
be used in the page. On the left side, you can see all the tag
libraries known (or registered) with JDeveloper. Using the shuttle UI,
you can move tag libraries from the left side to the right side. &lt;/p&gt;&lt;p&gt;So, what&apos;s the implication of selecting a tag library?&lt;/p&gt;&lt;ul&gt; &lt;li&gt;a taglib directive is added to the page (Ex: &lt;code&gt;&amp;lt;%@ taglib uri=&quot;http://java.sun.com/jsp/jstl/core&quot; prefix=&quot;c&quot;%&amp;gt;&lt;/code&gt;) for each of the tag libraries selected in this page.&amp;nbsp;&lt;br&gt;
 &lt;/li&gt;&lt;li&gt;the jar file corresponding to the tag library gets copied to the WEB-INFlib directory.&lt;/li&gt; &lt;li&gt;if the tag library is associated with a technology scope, the technology scope is added to the project, if neccessary. &lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;em&gt;&lt;strong&gt;Note&lt;/strong&gt;&lt;br&gt;&amp;nbsp; - In addition to HTML and JSP file creation, we have wizard for creating JSP Tag File and JSP Tag Library&lt;br&gt;&amp;nbsp; - For JSF-JSP (Faces) wizard, JSF related tag libraries are pre-selected in the &apos;Tag Libraries&apos; page.&lt;/em&gt; &lt;br&gt;&amp;nbsp; &lt;em&gt;- For a JSF-JSP page, Faces Configuration file (faces-config.xml) is created, if it does not exists&lt;/em&gt; &lt;/p&gt;</description>
			<guid>http://radio.weblogs.com/0133576/2004/11/29.html#a11</guid>
			<pubDate>Mon, 29 Nov 2004 21:26:19 GMT</pubDate>
			<comments>http://radiocomments2.userland.com/comments?u=133576&amp;amp;p=11&amp;amp;link=http%3A%2F%2Fradio.weblogs.com%2F0133576%2F2004%2F11%2F29.html%23a11</comments>
			</item>
		<item>
			<description>&lt;title&gt;Untitled Document&lt;/title&gt;&lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=iso-8859-1&quot;&gt;&lt;h3&gt;JDeveloper 10.1.3 Preview and JSP/HTML Visual Editor&lt;/h3&gt;&lt;p&gt;We
are working on 10.1.3 JDeveloper preview which will be released soon.
In the coming weeks, I will blog about some of the features that we
worked on, in JSP/HTML Visual Editor for 10.1.3. &lt;/p&gt;&lt;p&gt;Here is the summary of some of the features we have in 10.1.3 (related to the Visual Editor)&lt;br&gt;
&lt;/p&gt;&lt;ul&gt;&lt;li&gt;JSP 2.0 support&lt;br&gt;
 &lt;ul&gt;&lt;li&gt;tag file creation. tag file editing and rendering     &lt;br&gt;
 &lt;/li&gt;&lt;li&gt; expression language support&lt;/li&gt; &lt;li&gt;JSP 2.0 items in palette, custom dialogs for these items&lt;/li&gt; &lt;li&gt;code insight and favorite attribute support for JSP 2.0 items &lt;/li&gt; &lt;li&gt;prelude and coda rendering and editing&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt; &lt;li&gt;Project based tag library support&lt;br&gt;
 &lt;ul&gt;&lt;li&gt;creation wizard for tag library&lt;br&gt;
 &lt;/li&gt;&lt;li&gt;wizard for adding tag to a tag library&lt;/li&gt; &lt;li&gt;dynamic update of palette page for the tag library &lt;/li&gt;  &lt;/ul&gt;&lt;/li&gt;&lt;li&gt;Faces (JSF) support&lt;br&gt;
 &lt;ul&gt;&lt;li&gt;jsf component rendering and editing &lt;br&gt;
 &lt;/li&gt;&lt;li&gt;faces config overview console&lt;/li&gt; &lt;li&gt;jsf jsp creation wizard&lt;/li&gt;  &lt;/ul&gt;&lt;/li&gt;&lt;li&gt;Improved visual experience&lt;br&gt;
 &lt;ul&gt;&lt;li&gt;creation wizards for html, jsp and jsf pages&lt;br&gt;
 &lt;/li&gt;&lt;li&gt;revamped html palette pages&lt;/li&gt; &lt;li&gt;inline attribute editing&lt;/li&gt; &lt;li&gt; Expression Language builder&lt;/li&gt;  &lt;/ul&gt; &lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Stay tuned... &lt;/p&gt;</description>
			<guid>http://radio.weblogs.com/0133576/2004/11/22.html#a10</guid>
			<pubDate>Mon, 22 Nov 2004 18:59:52 GMT</pubDate>
			<comments>http://radiocomments2.userland.com/comments?u=133576&amp;amp;p=10&amp;amp;link=http%3A%2F%2Fradio.weblogs.com%2F0133576%2F2004%2F11%2F22.html%23a10</comments>
			</item>
		<item>
			<description>&lt;h3&gt;Web Development Survey and Amazon Gift Certificate!&lt;br&gt;
&lt;/h3&gt;
We are conducting a survey on &lt;span class=&quot;bodycopy&quot;&gt;web development features of JDeveloper 10&lt;em&gt;g. &lt;/em&gt; Please visit &lt;a href=&quot;http://www.oracle.com/technology/products/jdev/temp/survey.html&quot;&gt;OTN&lt;/a&gt;  to find out more about how you can win $50 Amazon  gift certificate! &lt;/span&gt;</description>
			<guid>http://radio.weblogs.com/0133576/2004/09/22.html#a9</guid>
			<pubDate>Wed, 22 Sep 2004 20:30:05 GMT</pubDate>
			<comments>http://radiocomments2.userland.com/comments?u=133576&amp;amp;p=9&amp;amp;link=http%3A%2F%2Fradio.weblogs.com%2F0133576%2F2004%2F09%2F22.html%23a9</comments>
			</item>
		<item>
			<description>&lt;title&gt;Untitled Document&lt;/title&gt;&lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=iso-8859-1&quot;&gt;&lt;h3&gt;JavaOne 2004: What we are doing...&lt;/h3&gt;&lt;p&gt;JSP
Visual Editor team is very busy preparing for the JavaOne demo. We plan
to demo JSP 2.0 and Faces features that we are working on for the next
version of JDeveloper. &lt;/p&gt;&lt;p&gt;Some of the features (in visual editor) that we will be showing in demo grounds&lt;/p&gt;&lt;ul&gt;&lt;li&gt;JSP Expression Language (EL) support: A cool EL picker dialog. Pervasive EL support.&lt;/li&gt;&lt;li&gt;Tag file support: Wizard for creating tag file, component palette support for using tag files, rendering of tag files, etc., &lt;/li&gt; &lt;li&gt;Faces
support. This includes a cool demo to show how we render faces tags, do
event and value binding  and add managed bean using faces config
editor.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;For more information about what Oracle is doing at JavaOne, please visit &lt;a href=&quot;http://otn.oracle.com/tech/java/events/javaone04/index.html&quot;&gt;OTN&lt;/a&gt;. &lt;/p&gt;&lt;p&gt; &lt;/p&gt;</description>
			<guid>http://radio.weblogs.com/0133576/2004/06/21.html#a8</guid>
			<pubDate>Mon, 21 Jun 2004 19:25:48 GMT</pubDate>
			<comments>http://radiocomments2.userland.com/comments?u=133576&amp;amp;p=8&amp;amp;link=http%3A%2F%2Fradio.weblogs.com%2F0133576%2F2004%2F06%2F21.html%23a8</comments>
			</item>
		<item>
			<description>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.01 Transitional//EN&quot;
&quot;http://www.w3.org/TR/html4/loose.dtd&quot;&gt;
&lt;html&gt;
&lt;head&gt;
&lt;title&gt;Working With Tables in JSP-HTML Visual Editor&lt;/title&gt;
&lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=iso-8859-1&quot;&gt;
&lt;/head&gt;
&lt;body&gt;
 &lt;h3&gt;Working With Tables in JSP-HTML Visual Editor&lt;/h3&gt;
 &lt;p&gt;In this article, I will try to explain the various features we offer related to HTML table. First section covers the basic table editing and the second section explains how HTML table can be used with custom tags.&lt;/p&gt;
 &lt;h3&gt;Working with Table&lt;/h3&gt;
 &lt;h4&gt;&lt;strong&gt;Creating a table&lt;/strong&gt;&lt;/h4&gt;
 &lt;p&gt;To create a table, drag Table element from the HTML page of the component palette and drop it on the Visual Editor. This will bring up the Table Dialog where you can specify number of columns/rows, cellspacing, cellpadding, border, width, etc., When you hit OK, the table is created.&lt;/p&gt;
 &lt;p&gt;&lt;em&gt;&lt;strong&gt;Tip&lt;/strong&gt;&lt;/em&gt;: Instead of dropping the table on the VE, you can also drop the table onto the Structure Window. &lt;/p&gt;
 &lt;h4&gt;Selecting table elements &lt;/h4&gt;
 &lt;p&gt;Selecting a table or row or column is little bit tricky. You have to be really good at handling the mouse!&lt;/p&gt;
 &lt;ol&gt;
   &lt;li&gt;To select a table&lt;br&gt;
     move the mouse to the right or bottom edge of the table; when the mouse is near the right or bottom edge of the table, the cursor will change to table select icon &lt;!--&lt;img src=&quot;http://radio.weblogs.com/0133576/MyImages/selTable.gif&quot; width=&quot;28&quot; height=&quot;27&quot;&gt; --&gt;&lt;/li&gt;
   &lt;li&gt;when the table select icon shows up, click to select the table&lt;br&gt;
     &lt;strong&gt;&lt;em&gt;Tip&lt;/em&gt;&lt;/strong&gt;: You can select the table from the Structure Window by clicking on the table node. You can also select the table from the Table Context Menu (see below) &lt;/li&gt;
 &lt;/ol&gt;
 &lt;p&gt;To select a Row&lt;/p&gt;
 &lt;ol&gt;
   &lt;li&gt; move the mouse to the left edge of the table and the cursor will change to row select icon &lt;!--&lt;img src=&quot;http://radio.weblogs.com/0133576/MyImages/selRow.gif&quot;&gt;--&gt;&lt;/li&gt;
   &lt;li&gt; when the row select icon appears, click to select the row&lt;/li&gt;
 &lt;/ol&gt;
 &lt;p&gt;To select a Column&lt;/p&gt;
 &lt;ol&gt;
   &lt;li&gt; move the mouse to the top edge of the table and the cursor will change to column select icon &lt;!--&lt;img src=&quot;http://radio.weblogs.com/0133576/MyImages/selCol.gif&quot;&gt;--&gt;&lt;/li&gt;
   &lt;li&gt; when the column select icon appears, click to select the column &lt;/li&gt;
 &lt;/ol&gt;
 &lt;p&gt;To select a cell&lt;/p&gt;
 &lt;ol&gt;
   &lt;li&gt; Press Ctrl &amp;amp; click inside the cell will select the cell. &lt;/li&gt;
 &lt;/ol&gt;
 &lt;p&gt;&lt;strong&gt;&lt;em&gt;Tip&lt;/em&gt;&lt;/strong&gt;: While Ctrl key is pressed, you can select multiple cells by simply clicking inside those cells. &lt;br&gt;
   &lt;strong&gt;Note&lt;/strong&gt;: When you select a cell, take a look at the bottom of the Property Inspector. You will see two links (Split Cell... and Insert Rows or Columns...). Go ahead and click on them and see what happens!&lt;/p&gt;
 &lt;p&gt;Click and drag select&lt;/p&gt;
 &lt;ol&gt;
   &lt;li&gt; You can mouse press anywhere in a cell and drag the mouse across other cells to make selection.&lt;/li&gt;
 &lt;/ol&gt;
 &lt;h4&gt;Resizing table elements&lt;/h4&gt;
 &lt;p&gt;You can resize the table or table row or table column from the visual editor. &lt;/p&gt;
 &lt;p&gt;To resize table&lt;/p&gt;
 &lt;ol&gt;
   &lt;li&gt; move the mouse to the right-bottom corner of the table&lt;/li&gt;
   &lt;li&gt; the cursor will change to resize icon (we call it resize handle) &lt;/li&gt;
   &lt;li&gt; mouse press and drag to resize the table&lt;br&gt;
     &lt;strong&gt;TIP&lt;/strong&gt;: If you want to cancel the resize, simply hit Esc while resizing, but if you have done the resizing, hit Ctrl+Z to undo the resize.&lt;/li&gt;
 &lt;/ol&gt;
 &lt;p&gt;To resize row or column&lt;/p&gt;
 &lt;ol&gt;
   &lt;li&gt; move the mouse to the border of any row or column&lt;/li&gt;
   &lt;li&gt; the cursor will change to row/column resize icon &lt;!--(column resize icon: &lt;img src=&quot;http://radio.weblogs.com/0133576/MyImages/colResize.gif&quot;&gt; and row resize icon: &lt;img src=&quot;http://radio.weblogs.com/0133576/MyImages/rowResize.gif&quot; width=&quot;16&quot; height=&quot;16&quot;&gt;)--&gt;&lt;/li&gt;
   &lt;li&gt; mouse press and drag to resize column/row&lt;br&gt;
     &lt;strong&gt;&lt;em&gt;Tip&lt;/em&gt;&lt;/strong&gt;: If you want to cancel the resize, simply hit Esc while resizing. You can also use undo (Ctrl+Z) to undo the resize. &lt;/li&gt;
 &lt;/ol&gt;
 &lt;h4&gt;Reordering table row or column&lt;/h4&gt;
 &lt;p&gt;Visual editor allows you to reorder a row or column. &lt;/p&gt;
 &lt;p&gt;To reorder &lt;/p&gt;
 &lt;ol&gt;
   &lt;li&gt; first select the row or column you want to reorder &lt;/li&gt;
   &lt;li&gt; drag the selected row/column.&lt;/li&gt;
   &lt;li&gt; while dragging the mouse, there will be a visual indication (a thick black line with an arrow in the middle) to show where the selected row/column will be moved to.&lt;/li&gt;
   &lt;li&gt; release the mouse to move the selected row/column to the desired new location. &lt;/li&gt;
 &lt;/ol&gt;
 &lt;p&gt;&lt;strong&gt;&lt;em&gt;Tip&lt;/em&gt;&lt;/strong&gt;: If you want to copy an entire row/column, do the same as above, but with one difference. Hold the Ctrl key first and then drag the mouse. When you release the mouse, the selected row/column is copied to the new location.&lt;br&gt;
 &lt;strong&gt;Note&lt;/strong&gt;: In the above steps, try dragging the selected row/column outside the table and see what happens!&lt;/p&gt;
 &lt;h4&gt;Setting background color&lt;/h4&gt;
 &lt;p&gt;The background color button in the Toolbar can  be used to set background color on table or row or column or cell.&lt;/p&gt;
 &lt;p&gt;To apply background color&lt;/p&gt;
 &lt;ol&gt;
   &lt;li&gt; make the selection (select the table or row or column or cell)&lt;/li&gt;
   &lt;li&gt; select the background color from the Toolbar background color button. The selected color is applied to the selection &lt;/li&gt;
   &lt;/ol&gt;
 &lt;p&gt;&lt;strong&gt;Note&lt;/strong&gt;: bgcolor property of the table/tr/td is set with the selected color value. &lt;/p&gt;
 &lt;h4&gt;Table Context Menu &lt;/h4&gt;
 &lt;p&gt;Visual Editor provides various context menu options for the table. Simply right click inside the table and look at the various options provided under Table-&amp;gt; sub menu. Through the context menu, you can insert new row/column, delete a row/column, merge cells, split a cell and increase/decrease col/row span of a cell.&lt;/p&gt;
 &lt;h4&gt;Others...&lt;/h4&gt;
 &lt;ul&gt;
   &lt;li&gt;Put the cursor at the last cell of the last row of a table and hit Tab. A new row is created. &lt;/li&gt;
   &lt;li&gt;You can use Tab to forward navigate between cells in a table&lt;/li&gt;
   &lt;li&gt;You can use Shift+Tab to backward navigate between cells in a table  &lt;/li&gt;
   &lt;li&gt;Be careful with align property of the table. Setting it to left or right will float the table (Please see HTML and CSS specification about float)&lt;/li&gt;
   &lt;li&gt;Ctrl-click inside a cell. The cell is selected. Now, drag the cell onto some other cell. The contents of the selected cell is moved to the cell where it&apos;s droppped. Instead of simply dragging, hold the Ctrl key and drag and see what happens. Now, the contents of the selected cell is copied.&lt;/li&gt;
 &lt;/ul&gt;
 &lt;h3&gt;Working with Table and Custom Tags&lt;/h3&gt;
 &lt;p&gt;In this section, I will show how you can combine  table and custom tag, especially struts&apos;s iterator tag and JSTL&apos;s foreach tag. &lt;/p&gt;
 &lt;p&gt;One of the common use case in a web application is to use the iterator tag or foreach tag along with table. &lt;/p&gt;
 &lt;p&gt;Take a look at this code snippet &lt;/p&gt;
 &lt;pre&gt;&amp;lt;table&amp;gt; 
 &amp;lt;logic:iterate id=&quot;order&quot; name=&quot;searchResults&quot; type=&quot;com.foo.bar.Order&quot;&amp;gt; 
  &amp;lt;tr&amp;gt;
    &amp;lt;td&amp;gt;&amp;lt;bean:write name=&quot;order&quot; property=&quot;orderNumber&quot;/&amp;gt;&amp;lt;td&amp;gt;
    &amp;lt;td&amp;gt;..other properties...&amp;lt;/td&amp;gt;
  &amp;lt;/tr&amp;gt;
 &amp;lt;/logic:iterate&amp;gt;
&amp;lt;/table&amp;gt;&lt;/pre&gt;
&lt;p&gt;How would I create the above from the visual editor? It&apos;s pretty easy to create the table with one row and two columns. But, inserting the iterate/foreach tag around tr might be impossible (ie., without going to code editor) with other tools. In visual editor, you can do this very easily. &lt;/p&gt;
 &lt;ol&gt;
   &lt;li&gt;Drag and drop the table element from the HTML page of the palette (specify 1 row and 2 columns in the Table dialog).&lt;/li&gt;
   &lt;li&gt;Switch to Struts Logic or JSTL Core Page in the component palette&lt;/li&gt;
   &lt;li&gt;Now, drag the iterator/foreach element from the palette, using the &lt;strong&gt;*right&lt;/strong&gt;* mouse and onto the left edge of the table&lt;/li&gt;
   &lt;li&gt;When the mouse is dragged near the left edge of the table, the table row is highlighted to indicate that the table row is the drop location&lt;/li&gt;
   &lt;li&gt;Release the mouse and a popup menu shows up with two options, &amp;quot;Wrap&amp;quot; and &amp;quot;Cancel&amp;quot;.&lt;/li&gt;
   &lt;li&gt;Select Wrap to wrap the iterator/foreach tag around the table row&lt;/li&gt;
   &lt;li&gt;Enter appropriate values in the iterator/foreach dialog and press OK&lt;/li&gt;
   &lt;li&gt; You are done!. Wasn&apos;t that easy!&lt;/li&gt;
 &lt;/ol&gt;
 &lt;p&gt;&lt;strong&gt;&lt;em&gt;Tip&lt;/em&gt;&lt;/strong&gt;: If you find it difficult to do step 3 and 4, you can use Structure Pane to drop the tag. Simply drop the tag onto the tr in Structure Pane. &lt;/p&gt;
 &lt;p&gt;&lt;strong&gt;Note&lt;/strong&gt;: Using right mouse, you can wrap any element from the component palette around the drop location in Visual Editor.&lt;/p&gt;
 &lt;p&gt;Hope you find this article useful.&lt;/p&gt;
&lt;/body&gt;
&lt;/html&gt;</description>
			<guid>http://radio.weblogs.com/0133576/2004/04/20.html#a7</guid>
			<pubDate>Tue, 20 Apr 2004 21:01:19 GMT</pubDate>
			<comments>http://radiocomments2.userland.com/comments?u=133576&amp;amp;p=7&amp;amp;link=http%3A%2F%2Fradio.weblogs.com%2F0133576%2F2004%2F04%2F20.html%23a7</comments>
			</item>
		<item>
			<description>&lt;H3&gt;Oracle JDeveloper 10g Production Released&lt;/H3&gt;
&lt;P&gt;Oracle has released 10g production of JDevelolper. You can download it from &lt;A href=&quot;http://otn.oracle.com/products/jdev/index.html&quot;&gt;OTN&lt;/A&gt;.&lt;/P&gt;</description>
			<guid>http://radio.weblogs.com/0133576/2004/04/14.html#a6</guid>
			<pubDate>Wed, 14 Apr 2004 16:58:03 GMT</pubDate>
			<comments>http://radiocomments2.userland.com/comments?u=133576&amp;amp;p=6&amp;amp;link=http%3A%2F%2Fradio.weblogs.com%2F0133576%2F2004%2F04%2F14.html%23a6</comments>
			</item>
		</channel>
	</rss>

