<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-10323328</id><updated>2012-02-07T16:44:21.353Z</updated><category term='metalink'/><category term='linux'/><category term='xml'/><category term='bpel'/><category term='ubuntu security'/><category term='podcast'/><category term='support'/><category term='jsf'/><category term='java'/><category term='otn'/><category term='oracleas'/><category term='free'/><category term='FOSS'/><category term='libre'/><category term='licence'/><category term='gratis'/><category term='SOA'/><category term='oracle'/><category term='adf'/><category term='keytool'/><category term='jdeveloper'/><category term='OUG'/><category term='javaee'/><category term='ssl'/><category term='weblogic'/><category term='forms'/><category term='bea'/><category term='JMS'/><category term='middleware'/><category term='ubuntu'/><category term='faces'/><category term='fusion'/><category term='AQ'/><category term='xe'/><category term='toplink'/><title type='text'>Plastic Scotsman's Blog</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://plasticscotsman.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://plasticscotsman.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Angus Myles</name><uri>http://www.blogger.com/profile/09550935689203299338</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://bp0.blogger.com/_e7NllMmH-OY/R3vlnyPMFZI/AAAAAAAABYA/5F222KvmL8c/S220/_MG_7122.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>45</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-10323328.post-4891260864142997648</id><published>2012-02-07T16:31:00.002Z</published><updated>2012-02-07T16:44:21.367Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='OUG'/><category scheme='http://www.blogger.com/atom/ns#' term='forms'/><title type='text'>Thinking about upgrading Oracle Forms?</title><content type='html'>Then this OUG event is just for you: &lt;a href="http://www.ukoug.org/events/ukoug-development-sig-meeting1/"&gt;UKOUG Development SIG Meeting - Forms in the 21st Century&lt;/a&gt;!&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;There's input from Grant Ronald Oracle's authority on Forms and ADF and also from partners providing solutions for updating your Forms install base. Should be a great day for those who want to see as many of the options for modernisation in one hit.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10323328-4891260864142997648?l=plasticscotsman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plasticscotsman.blogspot.com/feeds/4891260864142997648/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=10323328&amp;postID=4891260864142997648' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/4891260864142997648'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/4891260864142997648'/><link rel='alternate' type='text/html' href='http://plasticscotsman.blogspot.com/2012/02/thinking-about-upgrading-oracle-forms.html' title='Thinking about upgrading Oracle Forms?'/><author><name>Angus Myles</name><uri>http://www.blogger.com/profile/09550935689203299338</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://bp0.blogger.com/_e7NllMmH-OY/R3vlnyPMFZI/AAAAAAAABYA/5F222KvmL8c/S220/_MG_7122.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-10323328.post-503153193679028386</id><published>2011-07-28T20:43:00.003Z</published><updated>2011-07-28T20:47:48.935Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><title type='text'>Java7 is here! (and free t-shirt give away)</title><content type='html'>After a long wait Java7 is finally &lt;a href="http://www.oracle.com/technetwork/java/javase/downloads/index.html"&gt;here&lt;/a&gt;. Congratulations to all the team involved. I'm downloading it as I write. Thanks to &lt;a href="http://blogs.oracle.com/olaf/"&gt;Olaf&lt;/a&gt; and Oracle I have some lovely Java7 t-shirts to give away. If you fancy one just send me a message, first come first served of course.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10323328-503153193679028386?l=plasticscotsman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plasticscotsman.blogspot.com/feeds/503153193679028386/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=10323328&amp;postID=503153193679028386' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/503153193679028386'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/503153193679028386'/><link rel='alternate' type='text/html' href='http://plasticscotsman.blogspot.com/2011/07/java7-is-here-and-free-t-shirt-give.html' title='Java7 is here! (and free t-shirt give away)'/><author><name>Angus Myles</name><uri>http://www.blogger.com/profile/09550935689203299338</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://bp0.blogger.com/_e7NllMmH-OY/R3vlnyPMFZI/AAAAAAAABYA/5F222KvmL8c/S220/_MG_7122.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-10323328.post-3877433252770500396</id><published>2011-03-16T16:39:00.002Z</published><updated>2011-03-16T16:41:52.283Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><title type='text'></title><content type='html'>&lt;div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal Arial; "&gt;&lt;span &gt;Just been asked to spread the word that the JDK7 Developer Preview is available. The details are below:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin: 0px; font: 12px Arial; color: rgb(74, 10, 5);"&gt;&lt;span style="color: rgb(38, 80, 170);"&gt;&lt;b&gt;&lt;a href="http://jdk7.java.net/preview/"&gt;&lt;/a&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;blockquote&gt;&lt;div style="margin: 0px; font: 12px Arial; color: rgb(74, 10, 5);"&gt;&lt;span class="Apple-style-span" &gt;&lt;span style="color: rgb(38, 80, 170); "&gt;&lt;b&gt;&lt;a href="http://jdk7.java.net/preview/"&gt;Java SE 7 Developer Preview Release - Download Now!&lt;/a&gt;&lt;/b&gt;&lt;/span&gt;&lt;b&gt; - &lt;/b&gt;The JDK7 Developer Preview Release is now available &lt;span style="color: rgb(0, 0, 0); "&gt;for rigorous community testing&lt;/span&gt;. &lt;a href="http://openjdk.java.net/projects/jdk7/"&gt;&lt;span style="text-decoration: underline; color: rgb(38, 80, 170);"&gt;But time is running out!&lt;/span&gt;&lt;/a&gt;&lt;span style="color: rgb(0, 0, 0); "&gt; &lt;/span&gt;The latest build is feature complete, stable and ready to roll - so download, test and &lt;a href="http://bugreport.sun.com/bugreport/"&gt;&lt;span style="color: rgb(38, 80, 170);"&gt;report bugs &lt;b&gt;now&lt;/b&gt;&lt;/span&gt;&lt;/a&gt;&lt;b&gt;. &lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin: 0px; font: 12px Arial; color: rgb(74, 10, 5); min-height: 14px;"&gt;&lt;span class="Apple-style-span" &gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin: 0px; font: 12px Arial; color: rgb(74, 10, 5);"&gt;&lt;span class="Apple-style-span" &gt;&lt;b&gt;Let us know what you think. &lt;/b&gt; If you report a bug in the JDK 7 developer preview &lt;a href="http://openjdk.java.net/projects/jdk7/"&gt;&lt;span style="font: 12px Helvetica; color: rgb(38, 80, 170);"&gt;&lt;b&gt;before April 4th&lt;/b&gt;&lt;/span&gt;&lt;/a&gt;,  the Java product team will sing your praises on the Java SE 7 Honor  Role. PLUS... we will send you some Java swag. We’ll read, evaluate, and  act on all feedback received via the usual &lt;a href="http://bugreport.sun.com/bugreport/"&gt;&lt;span style="color: rgb(38, 80, 170);"&gt;bug-reporting channel&lt;/span&gt;&lt;/a&gt;.   Bugs reported later on might not get ﬁxed in time for the initial  release, so if you want to be a contributor to Java SE 7 do it before  the April deadline.&lt;/span&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;div style="margin: 0px; font: 12px Arial; color: rgb(74, 10, 5);"&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10323328-3877433252770500396?l=plasticscotsman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plasticscotsman.blogspot.com/feeds/3877433252770500396/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=10323328&amp;postID=3877433252770500396' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/3877433252770500396'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/3877433252770500396'/><link rel='alternate' type='text/html' href='http://plasticscotsman.blogspot.com/2011/03/just-been-asked-to-spread-word-that.html' title=''/><author><name>Angus Myles</name><uri>http://www.blogger.com/profile/09550935689203299338</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://bp0.blogger.com/_e7NllMmH-OY/R3vlnyPMFZI/AAAAAAAABYA/5F222KvmL8c/S220/_MG_7122.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-10323328.post-3064807091630796264</id><published>2011-03-10T09:13:00.006Z</published><updated>2011-03-10T09:24:03.194Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='adf'/><category scheme='http://www.blogger.com/atom/ns#' term='OUG'/><category scheme='http://www.blogger.com/atom/ns#' term='free'/><category scheme='http://www.blogger.com/atom/ns#' term='jdeveloper'/><title type='text'>Free ADF Training</title><content type='html'>There are two upcoming ADF training events in the pipeline, one for Oracle Partners and another for UKOUG members. Both are being given by &lt;a href="http://blogs.oracle.com/grantronald/2011/02/free_adf_training_event_in_the_uk.html"&gt;Grant Ronald&lt;/a&gt; of Oracle.&lt;div&gt;Details for the partner one are &lt;a href="http://www.opn-events.co.uk/events/ADF%20Workshop%2022%20March%202011.html"&gt;here&lt;/a&gt; and details for the UKOUG event are &lt;a href="http://www.ukoug.org/events/quick-start-masterclass-for-fusion-development-with-jdeveloper-and-oracle-adf/"&gt;here&lt;/a&gt;.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10323328-3064807091630796264?l=plasticscotsman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plasticscotsman.blogspot.com/feeds/3064807091630796264/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=10323328&amp;postID=3064807091630796264' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/3064807091630796264'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/3064807091630796264'/><link rel='alternate' type='text/html' href='http://plasticscotsman.blogspot.com/2011/03/free-adf-training.html' title='Free ADF Training'/><author><name>Angus Myles</name><uri>http://www.blogger.com/profile/09550935689203299338</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://bp0.blogger.com/_e7NllMmH-OY/R3vlnyPMFZI/AAAAAAAABYA/5F222KvmL8c/S220/_MG_7122.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-10323328.post-8501206082857038915</id><published>2011-03-04T14:00:00.003Z</published><updated>2011-03-04T14:09:34.057Z</updated><title type='text'>ADF 10gR3 on WebLogic 11gR1ps3!!</title><content type='html'>The list of certified application servers supported by JDeveloper has just been updated on OTN, you can get it &lt;a href="http://www.oracle.com/technetwork/developer-tools/jdev/as-supportmatrix-093429.html#1013"&gt;here&lt;/a&gt; with a related footnote (H) &lt;a href="http://www.oracle.com/technetwork/developer-tools/jdev/as-supportmatrix-093429.html#notesABC"&gt;here&lt;/a&gt;. Not normally ground shaking news but the implication of the combination of JDev 10gR3 being certified with WebLogic 11gR1ps3 (10.3.4) is that ADF applications written for OracleAS 10g can now be run on WebLogic. This is a great plus for customers wanting to standardise on Oracle's strategic application server without migrating in production ADF applications. Nice one ADF team!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10323328-8501206082857038915?l=plasticscotsman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plasticscotsman.blogspot.com/feeds/8501206082857038915/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=10323328&amp;postID=8501206082857038915' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/8501206082857038915'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/8501206082857038915'/><link rel='alternate' type='text/html' href='http://plasticscotsman.blogspot.com/2011/03/adf-10gr3-on-weblogic-11gr1ps3.html' title='ADF 10gR3 on WebLogic 11gR1ps3!!'/><author><name>Angus Myles</name><uri>http://www.blogger.com/profile/09550935689203299338</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://bp0.blogger.com/_e7NllMmH-OY/R3vlnyPMFZI/AAAAAAAABYA/5F222KvmL8c/S220/_MG_7122.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-10323328.post-7995338942841144813</id><published>2011-01-31T09:53:00.002Z</published><updated>2011-01-31T09:57:46.357Z</updated><title type='text'>Free Oracle Virtual Developer Days and WebLogic training</title><content type='html'>Hi, if you're interested in the latest JEE6 and WebLogic technology then the upcoming Virtual Developer Day on 10th Feb and the following WebLogic weekly webcasts are a great chance to get up to speed. They're also free! The registration page is &lt;a href="http://www.oracle.com/us/dm/h2fy11/63625-emeafm10055765mpp139c004-oem-207718.html"&gt;here&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10323328-7995338942841144813?l=plasticscotsman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plasticscotsman.blogspot.com/feeds/7995338942841144813/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=10323328&amp;postID=7995338942841144813' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/7995338942841144813'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/7995338942841144813'/><link rel='alternate' type='text/html' href='http://plasticscotsman.blogspot.com/2011/01/free-oracle-virtual-developer-days-and.html' title='Free Oracle Virtual Developer Days and WebLogic training'/><author><name>Angus Myles</name><uri>http://www.blogger.com/profile/09550935689203299338</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://bp0.blogger.com/_e7NllMmH-OY/R3vlnyPMFZI/AAAAAAAABYA/5F222KvmL8c/S220/_MG_7122.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-10323328.post-1020305892480341974</id><published>2011-01-17T11:54:00.001Z</published><updated>2011-01-17T11:56:05.110Z</updated><title type='text'>PS3 is here!</title><content type='html'>&lt;div&gt;Sorry to disappoint gaming fans but I'm referring to Fusion Middleware 11.1.1.4 (AKA patch-set 3) is now available. Download it from &lt;a href="http://www.oracle.com/technetwork/middleware/weblogic/downloads/index.html"&gt;here&lt;/a&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10323328-1020305892480341974?l=plasticscotsman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plasticscotsman.blogspot.com/feeds/1020305892480341974/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=10323328&amp;postID=1020305892480341974' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/1020305892480341974'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/1020305892480341974'/><link rel='alternate' type='text/html' href='http://plasticscotsman.blogspot.com/2011/01/ps3-is-here.html' title='PS3 is here!'/><author><name>Angus Myles</name><uri>http://www.blogger.com/profile/09550935689203299338</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://bp0.blogger.com/_e7NllMmH-OY/R3vlnyPMFZI/AAAAAAAABYA/5F222KvmL8c/S220/_MG_7122.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-10323328.post-6760284629787631017</id><published>2011-01-10T20:16:00.001Z</published><updated>2011-01-11T09:14:24.499Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='jdeveloper'/><title type='text'>People's Choice - Database Development</title><content type='html'>The JDeveloper team need your vote for their JDev + Database tooling, exercise your democratic right here by voting for "Making the Most of Logical and Physical Modeling in JDeveloper" at &lt;a href="http://kscope11.com/peoples-choice-database-development"&gt;People's Choice - Database Development&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10323328-6760284629787631017?l=plasticscotsman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plasticscotsman.blogspot.com/feeds/6760284629787631017/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=10323328&amp;postID=6760284629787631017' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/6760284629787631017'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/6760284629787631017'/><link rel='alternate' type='text/html' href='http://plasticscotsman.blogspot.com/2011/01/peoples-choice-database-development.html' title='People&apos;s Choice - Database Development'/><author><name>Angus Myles</name><uri>http://www.blogger.com/profile/09550935689203299338</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://bp0.blogger.com/_e7NllMmH-OY/R3vlnyPMFZI/AAAAAAAABYA/5F222KvmL8c/S220/_MG_7122.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-10323328.post-3622060445934288368</id><published>2010-09-06T16:17:00.004Z</published><updated>2010-09-06T16:26:06.066Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='adf'/><category scheme='http://www.blogger.com/atom/ns#' term='otn'/><title type='text'>All change</title><content type='html'>There's been a bit of a reorganisation on &lt;a href="http://www.oracle.com/technetwork/index.html"&gt;OTN&lt;/a&gt; lately and some of the links have changed in the site's move to Oracle Universal Content Management. One of the great ADF resources, ADF Code Corner, has a new URL; you can now find it &lt;a href="http://www.oracle.com/technetwork/developer-tools/adf/learnmore/index-101235.html"&gt;here&lt;/a&gt;. &lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;There's also a great new ADF resource on  &lt;a href="http://www.oracle.com/technetwork/index.html"&gt;OTN&lt;/a&gt; called ADF Insider, it's content related to more advanced ADF techniques; you'll find it &lt;a href="http://www.oracle.com/technetwork/developer-tools/adf/learnmore/adfinsider-093342.html"&gt;here&lt;/a&gt;. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Enjoy!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10323328-3622060445934288368?l=plasticscotsman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plasticscotsman.blogspot.com/feeds/3622060445934288368/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=10323328&amp;postID=3622060445934288368' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/3622060445934288368'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/3622060445934288368'/><link rel='alternate' type='text/html' href='http://plasticscotsman.blogspot.com/2010/09/all-change.html' title='All change'/><author><name>Angus Myles</name><uri>http://www.blogger.com/profile/09550935689203299338</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://bp0.blogger.com/_e7NllMmH-OY/R3vlnyPMFZI/AAAAAAAABYA/5F222KvmL8c/S220/_MG_7122.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-10323328.post-6564273385714394985</id><published>2010-05-07T10:10:00.002Z</published><updated>2010-05-07T10:35:19.500Z</updated><title type='text'>Going Mobile</title><content type='html'>Last week was quite a week for releases. Not only was there &lt;a href="http://www.ubuntu.com"&gt;Ubuntu 10.04&lt;/a&gt; but Oracle released patchset 2 of &lt;a href="http://www.oracle.com/technology/software/products/middleware/index.html"&gt;Fusion Middleware 11gR1&lt;/a&gt;. "Fusion Middleware" is an umbrella term for a family of products so overall there's a myriad of updates in there including a new version of WebLogic server 10.3.3, BPM 11g and Tuxedo, etc, etc. There's an &lt;a href="http://www.oracle.com/technology/products/jdev/collateral/papers/11/newfeatures/index.html"&gt;update&lt;/a&gt; to JDeveloper and the Application Development Framework (ADF) which while being an incremental step includes a significant new feature that my colleagues and customers have been interested in for some time: &lt;a href="http://www.oracle.com/technology/tech/wireless/adf_mobile.html"&gt;ADF Mobile Client&lt;/a&gt;.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;ADF Mobile Client provides a full on client Java client that can be developed using the same tools and techniques as a "standard" ADF web application. It leverages Oracle Lite to ensure the application works irrespective of connectivity e.g. on the Tube. The supported mobile platforms are currently Blackberry and Windows Mobile. What no iPhone I hear you say? Well this omission may have something to do with Apple's recent &lt;a href="http://news.cnet.com/8301-13579_3-20003966-37.html"&gt;changes&lt;/a&gt; to their iPhone developer agreement which mean that any iPhone app &lt;b&gt;must&lt;/b&gt; be written in &lt;a href="http://seeker.dice.com/jobsearch/servlet/JobSearch?registerRemSw=0&amp;amp;SAVESEARCH=&amp;amp;op=300&amp;amp;caller=2&amp;amp;LOCATION_OPTION=2&amp;amp;AREA_CODES=&amp;amp;ZIPCODE=&amp;amp;RADIUS=64.37376&amp;amp;COUNTRY=&amp;amp;METRO_AREA=33.78715899,-84.39164034&amp;amp;TRAVEL=0&amp;amp;SORTSPEC=0&amp;amp;FRMT=0&amp;amp;DAYSBACK=30&amp;amp;NUM_PER_PAGE=30&amp;amp;N=0&amp;amp;EXPANDED_NE=&amp;amp;FREE_TEXT=%22objective+c%22&amp;amp;Ntx=mode+matchall"&gt;Objective C&lt;/a&gt; on Apple hardware. Hopefully we'll see some changes to that that mean the legion of ADF and/or &lt;a href="http://seeker.dice.com/jobsearch/servlet/JobSearch?registerRemSw=0&amp;amp;SAVESEARCH=&amp;amp;op=300&amp;amp;caller=2&amp;amp;LOCATION_OPTION=2&amp;amp;AREA_CODES=&amp;amp;ZIPCODE=&amp;amp;RADIUS=64.37376&amp;amp;COUNTRY=&amp;amp;METRO_AREA=33.78715899,-84.39164034&amp;amp;TRAVEL=0&amp;amp;SORTSPEC=0&amp;amp;FRMT=0&amp;amp;DAYSBACK=30&amp;amp;NUM_PER_PAGE=30&amp;amp;N=0&amp;amp;EXPANDED_NE=&amp;amp;FREE_TEXT=java&amp;amp;Ntx=mode+matchall"&gt;Java&lt;/a&gt; developers can unleash their creativity on the iPhone. Until then there's always &lt;a href="http://www.oracle.com/technology/tech/wireless/ADFMobileBrowserClientOverview_v2.pdf"&gt;ADF Mobile Browser&lt;/a&gt; to fill the gap!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10323328-6564273385714394985?l=plasticscotsman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plasticscotsman.blogspot.com/feeds/6564273385714394985/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=10323328&amp;postID=6564273385714394985' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/6564273385714394985'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/6564273385714394985'/><link rel='alternate' type='text/html' href='http://plasticscotsman.blogspot.com/2010/05/going-mobile.html' title='Going Mobile'/><author><name>Angus Myles</name><uri>http://www.blogger.com/profile/09550935689203299338</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://bp0.blogger.com/_e7NllMmH-OY/R3vlnyPMFZI/AAAAAAAABYA/5F222KvmL8c/S220/_MG_7122.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-10323328.post-3688966620660145405</id><published>2010-05-05T20:32:00.005Z</published><updated>2010-05-06T15:27:46.539Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu security'/><title type='text'>Behind the curve</title><content type='html'>You may have seen that &lt;a href="http://www.ubuntu.com/products/whatisubuntu/1004features"&gt;Ubuntu 10.04&lt;/a&gt; (Lucid Lynx) was released last week to positive reviews. Despite being an ardent ubuntunista I've resisted upgrading my main PC until the first updates are out. &lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;It &lt;b&gt;is&lt;/b&gt; on my "other" laptop and despite some minor niggles the general impression is great apart from the fact that I still keep reaching for the windows buttons in the top right hand corner. Moving them to the top left is probably the most visible sign of Canonical's desire to make Ubuntu as &lt;a href="http://www.theregister.co.uk/2008/07/23/shuttleworth_apple_challenge/"&gt;visually appealing as Apple's OS X&lt;/a&gt;. This is probably essential to get Ubuntu on more desktops of ordinary (I mean that in a good way) users but I think there's another slant that, given recent events, should be able to convert a few more PCs to the penguin.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The fact is that nowadays we conduct our much of our personal and business tasks on the Internet and the Internet is a dangerous place. Both &lt;a href="http://news.bbc.co.uk/1/hi/technology/8465038.stm"&gt;France&lt;/a&gt; and &lt;a href="http://news.bbc.co.uk/1/hi/technology/8463516.stm"&gt;Germany&lt;/a&gt; have warned their citizens not to use Internet Explorer. &lt;a href="http://news.bbc.co.uk/1/hi/world/americas/7970471.stm"&gt;Ghostnet&lt;/a&gt; may (or may not) be spying on governments and businesses and even Google has fallen victim to a hacking attack. So surely it's a good idea to equip computer with an OS that will be able to protect you in this hostile environment? Ubuntu remained unhacked in 2008's &lt;a href="http://www.linux.com/archive/feature/131059"&gt;pwn2own&lt;/a&gt; contest (browsers and smartphones are now the targets) so could quite rightly claim to be the most secure desktop OS. Pairing up with what &lt;a href="http://lifehacker.com/5177709/chrome-the-only-browser-standing-in-pwn2own-contest"&gt;pwn2own has proved to be&lt;/a&gt; the most &lt;a href="http://www.google.com/chrome/eula.html"&gt;secure browser&lt;/a&gt; might be a smart move. Stay safe!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10323328-3688966620660145405?l=plasticscotsman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plasticscotsman.blogspot.com/feeds/3688966620660145405/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=10323328&amp;postID=3688966620660145405' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/3688966620660145405'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/3688966620660145405'/><link rel='alternate' type='text/html' href='http://plasticscotsman.blogspot.com/2010/05/behind-curve.html' title='Behind the curve'/><author><name>Angus Myles</name><uri>http://www.blogger.com/profile/09550935689203299338</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://bp0.blogger.com/_e7NllMmH-OY/R3vlnyPMFZI/AAAAAAAABYA/5F222KvmL8c/S220/_MG_7122.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-10323328.post-5815268761749773839</id><published>2010-04-13T20:51:00.004Z</published><updated>2010-04-13T21:03:42.392Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='jdeveloper'/><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><title type='text'>JDeveloper 11gR1PS1 + Ubuntu 9.10 + Ubuntu Bug #87947</title><content type='html'>I've been doing some ADF 11g recently and found that JDev 11g running on Ubuntu 9.10 with the default JDK 1.6u14 would occasionally crash, updating to JDK 1.6u16 was no better. It seems that the issue is recorded here as &lt;a href="https://bugs.launchpad.net/ubuntu/hardy/+source/sun-java6/+bug/87947"&gt;Ubuntu bug #87947&lt;/a&gt; (or one of it's duplicates) with the root cause being the JDK.&lt;br /&gt;&lt;br /&gt;The fix is in JDK7 which can be had from the Sun (or is it Oracle now :-)) site &lt;a href="http://download.java.net/jdk7/m5/"&gt;here&lt;/a&gt;. After installing on my system I updated the $JDEV_HOME/jdev/bin/jdev.conf file to alter the line beginning "SetJavaHome" to point to the new JDK install like this:&lt;br /&gt;&lt;blockquote&gt;SetJavaHome /usr/lib/jvm/jdk1.7.0&lt;/blockquote&gt;On starting JDeveloper there's a warning to say that JDK7 is not supported but so far no more crashes...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10323328-5815268761749773839?l=plasticscotsman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plasticscotsman.blogspot.com/feeds/5815268761749773839/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=10323328&amp;postID=5815268761749773839' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/5815268761749773839'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/5815268761749773839'/><link rel='alternate' type='text/html' href='http://plasticscotsman.blogspot.com/2010/04/jdeveloper-11gr1ps1-ubuntu-910-ubuntu.html' title='JDeveloper 11gR1PS1 + Ubuntu 9.10 + Ubuntu Bug #87947'/><author><name>Angus Myles</name><uri>http://www.blogger.com/profile/09550935689203299338</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://bp0.blogger.com/_e7NllMmH-OY/R3vlnyPMFZI/AAAAAAAABYA/5F222KvmL8c/S220/_MG_7122.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-10323328.post-3445841713353315825</id><published>2009-11-04T18:00:00.003Z</published><updated>2009-11-27T12:43:19.331Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='metalink'/><category scheme='http://www.blogger.com/atom/ns#' term='support'/><category scheme='http://www.blogger.com/atom/ns#' term='middleware'/><category scheme='http://www.blogger.com/atom/ns#' term='fusion'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><title type='text'>Proactive Health Checks Released on My Oracle Support</title><content type='html'>Oracle Support have just created a Health Recommendations Catalog/Catalogue on My Oracle Support. Initially it contains 25 recommendations across all the product lines, fortunately the middleware products are fairly well represented so this is already a useful resource and one that will only increase in value. Check out document id 868955.1 on http://support.oracle.com&lt;span style="font-family:helvetica;"&gt;&lt;strong&gt;!!&lt;br /&gt;&lt;/strong&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10323328-3445841713353315825?l=plasticscotsman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plasticscotsman.blogspot.com/feeds/3445841713353315825/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=10323328&amp;postID=3445841713353315825' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/3445841713353315825'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/3445841713353315825'/><link rel='alternate' type='text/html' href='http://plasticscotsman.blogspot.com/2009/11/proactive-health-checks-released-on-my.html' title='Proactive Health Checks Released on My Oracle Support'/><author><name>Angus Myles</name><uri>http://www.blogger.com/profile/09550935689203299338</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://bp0.blogger.com/_e7NllMmH-OY/R3vlnyPMFZI/AAAAAAAABYA/5F222KvmL8c/S220/_MG_7122.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-10323328.post-1167241673026807552</id><published>2009-10-29T18:35:00.006Z</published><updated>2009-11-27T12:39:15.349Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='SOA'/><category scheme='http://www.blogger.com/atom/ns#' term='OUG'/><category scheme='http://www.blogger.com/atom/ns#' term='middleware'/><category scheme='http://www.blogger.com/atom/ns#' term='fusion'/><category scheme='http://www.blogger.com/atom/ns#' term='oracleas'/><title type='text'>UK OUG Application Server SIG</title><content type='html'>I recently had the pleasure of pleasure of presenting to the &lt;a href="http://www.ukoug.org/calendar/show_event.jsp?id=3987"&gt;Application Server SIG&lt;/a&gt; of the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;UK's&lt;/span&gt; &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;OUG&lt;/span&gt;. The talk was an introduction to tuning and scaling Oracle AS. Although Oracle AS is no longer Oracle's strategic application server it's still the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;runtime&lt;/span&gt; for many of the layered products such as E-Business Suite. The target audience is the "&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;DBA&lt;/span&gt;" who finds themselves looking after an Oracle AS instance. The presentation is &lt;a href="http://docs.google.com/present/view?id=dhgdzxrc_37d7223snj"&gt;here&lt;/a&gt; for those interested...&lt;br /&gt;&lt;br /&gt;&lt;iframe src="http://docs.google.com/present/embed?id=dhgdzxrc_37d7223snj" width="410" frameborder="0" height="342"&gt;&lt;/iframe&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10323328-1167241673026807552?l=plasticscotsman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plasticscotsman.blogspot.com/feeds/1167241673026807552/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=10323328&amp;postID=1167241673026807552' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/1167241673026807552'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/1167241673026807552'/><link rel='alternate' type='text/html' href='http://plasticscotsman.blogspot.com/2009/10/uk-oug-application-server-sig.html' title='UK OUG Application Server SIG'/><author><name>Angus Myles</name><uri>http://www.blogger.com/profile/09550935689203299338</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://bp0.blogger.com/_e7NllMmH-OY/R3vlnyPMFZI/AAAAAAAABYA/5F222KvmL8c/S220/_MG_7122.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-10323328.post-2933609393279253593</id><published>2009-04-29T18:39:00.008Z</published><updated>2009-10-29T15:01:43.812Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='SOA'/><category scheme='http://www.blogger.com/atom/ns#' term='middleware'/><category scheme='http://www.blogger.com/atom/ns#' term='bpel'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><title type='text'>BPEL Easter Egg: Reloading Fault Policy Files</title><content type='html'>A little late for Easter but this is a neat trick discovered today by Sid, one of my colleagues.&lt;br /&gt;&lt;br /&gt;We're using the BPEL fault policy framework and while we're developing them it's a bit of a pain to restart the app server every time a change is made. The 10.1.3.3.1 BPEL console now has a button to reload them linked to this URL: &lt;blockquote&gt;&lt;/blockquote&gt;&lt;a href="http://server/BPELConsole/domain/doReloadFaultPolicy.jsp"&gt;http://server:port/BPELConsole/domain/doReloadFaultPolicy.jsp&lt;/a&gt; &lt;blockquote&gt;&lt;a href="http://server/BPELConsole/domain/doReloadFaultPolicy.jsp"&gt;&lt;/a&gt;&lt;/blockquote&gt;For example to reload all of the fault policies in the default domain on a local install of SOA Suite use this URL: &lt;blockquote&gt;&lt;p&gt;&lt;a href="http://localhost:8888/BPELConsole/default/doReloadFaultPolicy.jsp"&gt;http://localhost:8888/BPELConsole/default/doReloadFaultPolicy.jsp&lt;/a&gt;&lt;a href="http://localhost:8888/BPELConsole/default/doReloadFaultPolicy.jsp"&gt;&lt;br /&gt;&lt;/a&gt;&lt;/p&gt;&lt;/blockquote&gt;Unfortunately the BPELConsole  button seems to have disappeared in 10.1.3.4 so to reload the fault policies you can paste the URL diectly into your browser (you will be prompted to log in).&lt;br /&gt;&lt;blockquote&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&lt;p&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;&lt;a href="http://localhost:8888/BPELConsole/default/doReloadFaultPolicy.jsp"&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10323328-2933609393279253593?l=plasticscotsman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plasticscotsman.blogspot.com/feeds/2933609393279253593/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=10323328&amp;postID=2933609393279253593' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/2933609393279253593'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/2933609393279253593'/><link rel='alternate' type='text/html' href='http://plasticscotsman.blogspot.com/2009/04/bpel-easter-egg-reloading-fault-policy.html' title='BPEL Easter Egg: Reloading Fault Policy Files'/><author><name>Angus Myles</name><uri>http://www.blogger.com/profile/09550935689203299338</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://bp0.blogger.com/_e7NllMmH-OY/R3vlnyPMFZI/AAAAAAAABYA/5F222KvmL8c/S220/_MG_7122.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-10323328.post-212861279030535158</id><published>2009-04-06T20:22:00.003Z</published><updated>2009-04-06T20:33:38.394Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='middleware'/><category scheme='http://www.blogger.com/atom/ns#' term='podcast'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><title type='text'>Video killed the podcast star</title><content type='html'>I got a nice surprise recently when I downloaded the latest &lt;a href="http://feeds2.feedburner.com/OTN_TechCasts"&gt;OTN Techcasts&lt;/a&gt;: They've gone all video. The new format opened with an overview of the new release of &lt;a href="http://streaming.oracle.com/ebn/podcasts/otn/media/7524995.m4v"&gt;Enterprise Manager Grid Control&lt;/a&gt;. There's also a really nice white board session on &lt;a href="http://feedproxy.google.com/%7Er/OracleOfmRadio/%7E3/bnys6xEGPR8/7514479_piech_app_grid.m4v"&gt;Application Grid&lt;/a&gt;. The final surprise was how watch-able the video podcasts are on my iPod nano.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10323328-212861279030535158?l=plasticscotsman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plasticscotsman.blogspot.com/feeds/212861279030535158/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=10323328&amp;postID=212861279030535158' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/212861279030535158'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/212861279030535158'/><link rel='alternate' type='text/html' href='http://plasticscotsman.blogspot.com/2009/04/video-killed-podcast-star.html' title='Video killed the podcast star'/><author><name>Angus Myles</name><uri>http://www.blogger.com/profile/09550935689203299338</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://bp0.blogger.com/_e7NllMmH-OY/R3vlnyPMFZI/AAAAAAAABYA/5F222KvmL8c/S220/_MG_7122.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-10323328.post-7979157731485907157</id><published>2009-03-09T17:42:00.009Z</published><updated>2009-03-11T08:07:45.220Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='jdeveloper'/><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><title type='text'>Compiz plus JDeveloper on Ubuntu 8.10 Intrepid</title><content type='html'>Imagine my joy when on upgrading to Ubuntu 8.10 I found that Compiz was finally working on my Thinkpad!!! Transparency, wobbly windows and Win-E for a cool window switcher all looked great providing hours of endless fun.&lt;br /&gt;&lt;br /&gt;Imagine my despair when after starting JDeveloper 10.1.3.4 for the first time after the upgrade I was faced with a blank window. It wobbled fine but had no content. The thought of returning to the boring non-wobbly windows world of plain old Gnome was too much to bear so some rapid research turned up a solution that seems worth sharing for the "JDeveloper on Linux plus Compiz" clique.&lt;br /&gt;&lt;br /&gt;This is a bug in Sun's JDK that has been fixed in 1.6u10. If like me you are too lazy to update your JDK or can't (JDeveloper 10.1.3.4 is only certified against Java5) then the fix is to simply open the &lt;span style="font-style: italic;"&gt;$JDEV_HOME/jdev/bin/jdev&lt;/span&gt; script and add the following as the first line:&lt;br /&gt;&lt;blockquote&gt;&lt;span style="font-weight: bold;"&gt;export AWT_TOOLKIT=MToolkit&lt;/span&gt;&lt;/blockquote&gt;Save the file, run JDeveloper again and the UI goodies should be all yours....&lt;br /&gt;&lt;br /&gt;Of course a simpler fix if you use many different versions of JDeveloper is to add the same line to your &lt;span style="font-style: italic;"&gt;~/.bashrc&lt;/span&gt; file.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10323328-7979157731485907157?l=plasticscotsman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plasticscotsman.blogspot.com/feeds/7979157731485907157/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=10323328&amp;postID=7979157731485907157' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/7979157731485907157'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/7979157731485907157'/><link rel='alternate' type='text/html' href='http://plasticscotsman.blogspot.com/2009/03/compiz-plus-jdeveloper-on-ubuntu-810.html' title='Compiz plus JDeveloper on Ubuntu 8.10 Intrepid'/><author><name>Angus Myles</name><uri>http://www.blogger.com/profile/09550935689203299338</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://bp0.blogger.com/_e7NllMmH-OY/R3vlnyPMFZI/AAAAAAAABYA/5F222KvmL8c/S220/_MG_7122.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-10323328.post-7777824171107287384</id><published>2009-01-14T16:24:00.006Z</published><updated>2009-01-14T17:40:27.472Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='libre'/><category scheme='http://www.blogger.com/atom/ns#' term='faces'/><category scheme='http://www.blogger.com/atom/ns#' term='adf'/><category scheme='http://www.blogger.com/atom/ns#' term='toplink'/><category scheme='http://www.blogger.com/atom/ns#' term='free'/><category scheme='http://www.blogger.com/atom/ns#' term='licence'/><category scheme='http://www.blogger.com/atom/ns#' term='xe'/><category scheme='http://www.blogger.com/atom/ns#' term='gratis'/><category scheme='http://www.blogger.com/atom/ns#' term='FOSS'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><title type='text'>Oracle or Open Source? Oracle and Open Source!</title><content type='html'>The recent release of JDeveloper 11g reminded me that Oracle products are available under a variety of licensing models as well as the traditional "paid for"  software model that most people are probably familiar with. So what are these alternative models?&lt;br /&gt;&lt;br /&gt;Well let's start with &lt;a href="http://www.oracle.com/technology/products/jdev/index.html"&gt;JDeveloper&lt;/a&gt; itself. Back in June 2005 Oracle offered the JDeveloper licence for zero cost, there's an FAQ &lt;a href="http://www.oracle.com/technology/products/jdev/htdocs/jdevpricefaq.html"&gt;here&lt;/a&gt;. So JDeveloper is a "free" Oracle product that users can use in a production scenario, the licence is still an Oracle one and JDev is not an open source. Users can also purchase a suppport contract for JDeveloper for those critical projects.&lt;br /&gt;&lt;br /&gt;Another example of this type of product is &lt;a href="http://www.oracle.com/technology/products/database/xe/index.html"&gt;Oracle Database 10g Express Edition&lt;/a&gt; (aka XE). This has a &lt;a href="http://www.oracle.com/technology/software/popup-license/xe-license.html"&gt;licence&lt;/a&gt; that means it's free&lt;span class="legalese"&gt; to develop, deploy, and distribute. The distribute part means that customers can bundle it as an embedded databse in their products. There are some restrictions about number of processors, size of user data and memory used but as it includes the awesome &lt;a href="http://www.oracle.com/technology/apex/"&gt;Application Express&lt;/a&gt; it really is a great fit for a lot of scenarios.&lt;br /&gt;&lt;br /&gt;Moving on to the second model and we are going from &lt;span style="font-style: italic;"&gt;gratis&lt;/span&gt; to &lt;span style="font-style: italic;"&gt;libre&lt;/span&gt; software (to use the common terms). Oracle is very active in the open source space, active in several projects but also donating several products to kick start open source projects. A great example of this is Oracle Toplink OR framework. This formed the basis of Toplink Essentials which was the Java Persistence API (JPA) reference implementation. Toplink Essentials uses the &lt;a href="http://www.sun.com/cddl/"&gt;CDDL&lt;/a&gt; licence.&lt;br /&gt;&lt;br /&gt;Toplink was also donated as the basis for the &lt;a href="http://wiki.eclipse.org/EclipseLink"&gt;EclipseLink&lt;/a&gt; project which will become the permanent home for the development of the JPA 2.0 reference implementation and uses the &lt;a href="http://www.eclipse.org/org/documents/edl-v10.php"&gt;Eclipse Distribution Licence&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Another middleware example was the donation of the &lt;a href="http://www.oracle.com/technology/products/jdev/htdocs/faq_adffaces_apache.html"&gt;ADF Faces JSF&lt;/a&gt; components to the Apache Software Foundation. More details about Oracle's open source activities can be found &lt;a href="http://oss.oracle.com/"&gt;here&lt;/a&gt;. Outside the middleware arena there's the &lt;a href="http://xqilla.sourceforge.net/HomePage"&gt;XQilla&lt;/a&gt; XQuery engine and a ton of &lt;a href="http://oss.oracle.com/projects/data-integrity/"&gt;enhancements&lt;/a&gt; for the Linux kernel.&lt;br /&gt;&lt;br /&gt;On a final note it's also worth pointing out that most Oracle products are downloadable from &lt;a href="http://www.oracle.com/technology/software/index.html"&gt;OTN&lt;/a&gt; under a &lt;a href="http://www.oracle.com/technology/software/popup-license/standard-license.html"&gt;licence&lt;/a&gt; that allows development and prototyping as well as personal education. So if you're looking to do some self training on the latest Oracle products then fill your boots!&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10323328-7777824171107287384?l=plasticscotsman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plasticscotsman.blogspot.com/feeds/7777824171107287384/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=10323328&amp;postID=7777824171107287384' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/7777824171107287384'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/7777824171107287384'/><link rel='alternate' type='text/html' href='http://plasticscotsman.blogspot.com/2009/01/oracle-or-open-source-oracle-and-open.html' title='Oracle or Open Source? Oracle and Open Source!'/><author><name>Angus Myles</name><uri>http://www.blogger.com/profile/09550935689203299338</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://bp0.blogger.com/_e7NllMmH-OY/R3vlnyPMFZI/AAAAAAAABYA/5F222KvmL8c/S220/_MG_7122.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-10323328.post-2328178053417834591</id><published>2009-01-13T21:11:00.002Z</published><updated>2009-01-13T21:20:48.925Z</updated><title type='text'>Post Christmas Sobering Reading</title><content type='html'>Just in time to add to the January blues SANS institute has published &lt;a href="http://www.sans.org/top25errors/"&gt;this list&lt;/a&gt; of the "top" (or bottom depending on your point of view) 25 coding errors.&lt;br /&gt;&lt;br /&gt;This old &lt;a href="http://cwe.mitre.org/top25/#CWE-89"&gt;gem&lt;/a&gt; recently brought down my favourite internet &lt;a href="http://www.singletrackworld.com/2009/01/were-back/"&gt;forum&lt;/a&gt;, a reminder that the internet &lt;span style="font-weight: bold;"&gt;is&lt;/span&gt; a dangerous place.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10323328-2328178053417834591?l=plasticscotsman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plasticscotsman.blogspot.com/feeds/2328178053417834591/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=10323328&amp;postID=2328178053417834591' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/2328178053417834591'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/2328178053417834591'/><link rel='alternate' type='text/html' href='http://plasticscotsman.blogspot.com/2009/01/post-christmas-sobering-reading.html' title='Post Christmas Sobering Reading'/><author><name>Angus Myles</name><uri>http://www.blogger.com/profile/09550935689203299338</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://bp0.blogger.com/_e7NllMmH-OY/R3vlnyPMFZI/AAAAAAAABYA/5F222KvmL8c/S220/_MG_7122.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-10323328.post-182765517456104548</id><published>2008-10-07T20:48:00.004Z</published><updated>2009-01-14T17:45:47.937Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='jdeveloper'/><category scheme='http://www.blogger.com/atom/ns#' term='weblogic'/><category scheme='http://www.blogger.com/atom/ns#' term='bea'/><title type='text'>JDeveloper 11g - now with added WebLogic!</title><content type='html'>Jdeveloper 11g is in production! It's been a long time coming but it's arrived with an extra bonus - an &lt;span style="font-style: italic;"&gt;integrated&lt;/span&gt; WebLogic server. It's available for download on &lt;a href="http://www.oracle.com/technology/software/products/jdev/index.html"&gt;OTN&lt;/a&gt;. Remember JDeveloper is a free product so fill your boots...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10323328-182765517456104548?l=plasticscotsman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plasticscotsman.blogspot.com/feeds/182765517456104548/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=10323328&amp;postID=182765517456104548' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/182765517456104548'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/182765517456104548'/><link rel='alternate' type='text/html' href='http://plasticscotsman.blogspot.com/2008/10/jdeveloper-11g-now-with-added-weblogic.html' title='JDeveloper 11g - now with added WebLogic!'/><author><name>Angus Myles</name><uri>http://www.blogger.com/profile/09550935689203299338</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://bp0.blogger.com/_e7NllMmH-OY/R3vlnyPMFZI/AAAAAAAABYA/5F222KvmL8c/S220/_MG_7122.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-10323328.post-8054221296224796244</id><published>2008-09-10T12:39:00.005Z</published><updated>2009-01-14T17:44:28.896Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><title type='text'>Labour Saving Device</title><content type='html'>Just found &lt;a href="http://www.findjar.com/"&gt;this&lt;/a&gt; great on-line utility that is saving me a huge amount of time in my current task of writing ant scripts for Hudson. Try &lt;a href="http://www.findjar.com/"&gt;www.findjar.com&lt;/a&gt;, it's a work of genius!&lt;span style="text-decoration: underline;"&gt;&lt;/span&gt;&lt;a href="http://www.findjar.com/"&gt;&lt;br /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10323328-8054221296224796244?l=plasticscotsman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plasticscotsman.blogspot.com/feeds/8054221296224796244/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=10323328&amp;postID=8054221296224796244' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/8054221296224796244'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/8054221296224796244'/><link rel='alternate' type='text/html' href='http://plasticscotsman.blogspot.com/2008/09/labour-saving-device.html' title='Labour Saving Device'/><author><name>Angus Myles</name><uri>http://www.blogger.com/profile/09550935689203299338</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://bp0.blogger.com/_e7NllMmH-OY/R3vlnyPMFZI/AAAAAAAABYA/5F222KvmL8c/S220/_MG_7122.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-10323328.post-4203911397823101925</id><published>2008-07-07T21:06:00.000Z</published><updated>2008-07-07T20:07:09.972Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='ssl'/><category scheme='http://www.blogger.com/atom/ns#' term='keytool'/><title type='text'>Configuring BPEL to invoke web services via SSL</title><content type='html'>This post details how to configure the BPEL runtime to allow SOAP and/or HTTP binding calls over SSL. In this scenario the BPEL runtime acts as the client making requests to an external web service that is secured with SSL. The service provider's SSL certificate is added to the keystore of SOA Suite server as a trusted certificate.  &lt;p&gt;Official Oracle documentation is located &lt;a href="http://download.oracle.com/docs/cd/B31017_01/integrate.1013/b28982/security.htm#CHDHIBEG"&gt;here &lt;/a&gt;. The process can be broken down into two steps:&lt;br /&gt;&lt;/p&gt; &lt;ol&gt;&lt;li&gt;Obtain the service provider's certificate.&lt;/li&gt;&lt;li&gt;Import the certificate to Oracle SOA Suite's default keystore.&lt;/li&gt;&lt;/ol&gt;   &lt;h3 style="font-weight: normal;"&gt;&lt;a name="ConfiguringBPELtoinvokewebservicesviaSSL-Obtaintheserver'scertificate"&gt;&lt;/a&gt;Step 1 - Obtain the server's certificate&lt;/h3&gt;  &lt;p&gt;This is best accomplished via the web browser on a developer's PC:&lt;/p&gt;&lt;ol&gt;&lt;li&gt;Open the web service's SSL endpoint in IE e.g. &lt;span class="nobr"&gt;&lt;a href="https://server/someservice/someport" rel="nofollow"&gt;https://server:443/someservice/someport&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;Double click the padlock icon in at the bottom of the IE window.&lt;/li&gt;&lt;li&gt;Select the Details tab in the Certificate dialog box.&lt;/li&gt;&lt;li&gt;Click the Save to File button and step through the wizard to save the certificate to your machine. Specify Base-64 encoded X.509 format and a name e.g. newcert.cer.&lt;/li&gt;&lt;/ol&gt;   &lt;h3 style="font-weight: normal;"&gt;&lt;a name="ConfiguringBPELtoinvokewebservicesviaSSL-ImportthecertificatetoOracleAS's defaultkeystore"&gt;&lt;/a&gt;Step 2 - Import the certificate to Oracle AS's  default keystore&lt;/h3&gt;  &lt;p&gt;This is done using the keytool utility of the JDK on the OracleAS server:&lt;/p&gt; &lt;ol&gt;&lt;li&gt;Copy the certificate fie (e.g. newcert.cer) to the server e.g. to the user's home directory.&lt;/li&gt;&lt;li&gt;Locate the default keystore. This is usually &lt;b&gt;$ORACLE_HOME/jdk/jre/lib/security/cacerts&lt;/b&gt;.&lt;/li&gt;&lt;li&gt;Change directory to the location of the keystore. In this example &lt;b&gt;$ORACLE_HOME/jdk/jre/lib/security/.&lt;/b&gt;&lt;/li&gt;&lt;li&gt;Import the certificate to the keystore using the command: &lt;b&gt;$ORACLE_HOME/jdk/jre/bin/keytool -import -v -file ~/newcert.cer -keystore ./cacerts&lt;/b&gt; &lt;b&gt;-alias someAlias &lt;analiasfornewcert&gt;&lt;/analiasfornewcert&gt;&lt;/b&gt;. You will be prompted to enter a keystore password, the default password is &lt;b&gt;changeit&lt;/b&gt;. The alias SomeAlias &lt;analiasfornewcert&gt;is a new alias for the certificate in the keystore, this is not mandatory but it's best to specify your own alias.&lt;/analiasfornewcert&gt;&lt;/li&gt;&lt;li&gt;Restart the SOA Suite server.&lt;/li&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10323328-4203911397823101925?l=plasticscotsman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plasticscotsman.blogspot.com/feeds/4203911397823101925/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=10323328&amp;postID=4203911397823101925' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/4203911397823101925'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/4203911397823101925'/><link rel='alternate' type='text/html' href='http://plasticscotsman.blogspot.com/2008/07/configuring-bpel-to-invoke-web-services.html' title='Configuring BPEL to invoke web services via SSL'/><author><name>Angus Myles</name><uri>http://www.blogger.com/profile/09550935689203299338</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://bp0.blogger.com/_e7NllMmH-OY/R3vlnyPMFZI/AAAAAAAABYA/5F222KvmL8c/S220/_MG_7122.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-10323328.post-1712172466074190980</id><published>2008-07-07T19:18:00.006Z</published><updated>2008-07-07T19:58:27.995Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='middleware'/><category scheme='http://www.blogger.com/atom/ns#' term='fusion'/><category scheme='http://www.blogger.com/atom/ns#' term='podcast'/><category scheme='http://www.blogger.com/atom/ns#' term='bea'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><title type='text'>Radio Ga Ga</title><content type='html'>Last week a podast &lt;a href="http://feeds.feedburner.com/OracleOfmRadio"&gt;feed &lt;/a&gt;that had been quiet for a while leapt back into life in Spectacular fashion. &lt;a href="http://www.oracle.com/products/middleware/bea.html"&gt;Oracle Fusion Middleware Radio&lt;/a&gt; dumped fourteen (yes 14) pearls of wisdom about the new strategic direction of Fusion Middleware now that BEA are part of the team. There's some great stuff there about how the BEA products are going to become part of the #1 middleware portfolio. The &lt;a href="http://feeds.feedburner.com/OracleOfmRadio"&gt;feed &lt;/a&gt;is here if you want to subscribe or download the mp3's from &lt;a href="http://www.oracle.com/products/middleware/bea.html"&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;In a strange coincidence another of my podcast feeds also came back from the dead in the same week. The ITV Tour de France &lt;a href="http://downloads.itv.com/podcast-tdf08.xml"&gt;feed &lt;/a&gt;dumped a retrospective of last year's tour on my PC, a nice reminder that the greatest race on earth is back for three weeks of sprints, crashes, alps and pharmacy. Maybe the FMW guys wanted to get their podcasts out of the way early so they could enjoy Le Tour?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10323328-1712172466074190980?l=plasticscotsman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plasticscotsman.blogspot.com/feeds/1712172466074190980/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=10323328&amp;postID=1712172466074190980' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/1712172466074190980'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/1712172466074190980'/><link rel='alternate' type='text/html' href='http://plasticscotsman.blogspot.com/2008/07/radio-ga-ga.html' title='Radio Ga Ga'/><author><name>Angus Myles</name><uri>http://www.blogger.com/profile/09550935689203299338</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://bp0.blogger.com/_e7NllMmH-OY/R3vlnyPMFZI/AAAAAAAABYA/5F222KvmL8c/S220/_MG_7122.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-10323328.post-7831488241588378743</id><published>2008-05-03T08:04:00.011Z</published><updated>2008-05-03T08:04:00.401Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='SOA'/><category scheme='http://www.blogger.com/atom/ns#' term='xml'/><category scheme='http://www.blogger.com/atom/ns#' term='jdeveloper'/><title type='text'>Schema based XML editing in JDeveloper</title><content type='html'>Recently I've been using Oracle SOA Suite a lot and one of its interesting features in 10.1.3.3 is the policy driven fault handling framework where business faults and errors in the BPEL process manager can be handled by declarative policies. Nice I hear you think but the point is that these policies are defined in XML files that are defined by an XML schema. Writing these files is a lot easier when you've got an editor that provides some insight into the syntax and JDeveloper can be configured to do just that.&lt;br /&gt;&lt;br /&gt;The XML schemas in question are shipped with SOA Suite and are made available over HTTP. You can copy the files to the developers machine or you can use the URL, in this example I'm using the latter. They could be any schema that you need to base XML files on.&lt;br /&gt;&lt;br /&gt;First off you need to register the schemas in JDev so go to &lt;span style="font-weight: bold;"&gt;Tools &lt;/span&gt;&gt; &lt;span style="font-weight: bold;"&gt;Preferences&lt;/span&gt;. In the Preferences window click on &lt;span style="font-weight: bold;"&gt;XML Schemas&lt;/span&gt; in the menu pane.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp0.blogger.com/_e7NllMmH-OY/SBsowSOa4GI/AAAAAAAACPU/bu68GwlS2NA/s1600-h/prefs.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp0.blogger.com/_e7NllMmH-OY/SBsowSOa4GI/AAAAAAAACPU/bu68GwlS2NA/s400/prefs.JPG" alt="" id="BLOGGER_PHOTO_ID_5195791405093150818" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;The schema I'm interested in is at &lt;img src="file:///C:/DOCUME%7E1/amyles/LOCALS%7E1/Temp/moz-screenshot.jpg" alt="" /&gt;http://localhost:8888/orabpel/xmllib/fault-policy.xsd on my SOA Suite install. Next click &lt;span style="font-weight: bold;"&gt;Add &lt;/span&gt;and paste the schema URL into the new window like this.&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp2.blogger.com/_e7NllMmH-OY/SBsqIyOa4HI/AAAAAAAACPc/2f7jOwJP8rk/s1600-h/add.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 244px;" src="http://bp2.blogger.com/_e7NllMmH-OY/SBsqIyOa4HI/AAAAAAAACPc/2f7jOwJP8rk/s400/add.JPG" alt="" id="BLOGGER_PHOTO_ID_5195792925511573618" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;If the XML instance files you're going to create have a special extension (*.wsdl or *.xhtml) enter the extension here. Click &lt;span style="font-weight: bold;"&gt;OK &lt;/span&gt;and &lt;span style="font-weight: bold;"&gt;OK &lt;/span&gt;again. So to actually create a new XML document based on this schema open the new gallery and pick &lt;span style="font-weight: bold;"&gt;XML document from XML Schema&lt;/span&gt; from the &lt;span style="font-weight: bold;"&gt;General &gt; XML&lt;/span&gt; category.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp3.blogger.com/_e7NllMmH-OY/SBsroCOa4II/AAAAAAAACPk/aOZzkya_RFg/s1600-h/new.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp3.blogger.com/_e7NllMmH-OY/SBsroCOa4II/AAAAAAAACPk/aOZzkya_RFg/s400/new.JPG" alt="" id="BLOGGER_PHOTO_ID_5195794561894113410" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;On clicking OK you'll be greeted with a wizard, on page 1 give your new file a name and click &lt;span style="font-weight: bold;"&gt;Use Registered Schema&lt;/span&gt;. On page 2 you'll see a drop down with the target namespaces declared in your registered schemas, in my case the one I want is http://schemas.oracle.com/bpel/faultpolicy. Select the desired root element (faultPolicy) the desired depth of elements to be created and the encoding.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp0.blogger.com/_e7NllMmH-OY/SBstOSOa4JI/AAAAAAAACPs/prsQQc4llo0/s1600-h/create.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp0.blogger.com/_e7NllMmH-OY/SBstOSOa4JI/AAAAAAAACPs/prsQQc4llo0/s400/create.JPG" alt="" id="BLOGGER_PHOTO_ID_5195796318535737490" border="0" /&gt;&lt;/a&gt;Click &lt;span style="font-weight: bold;"&gt;Next &lt;/span&gt;then &lt;span style="font-weight: bold;"&gt;OK &lt;/span&gt;and the new file will open in an editor window. Because the structure is driven off the schema any errors will be underlined in red and prssing Ctrl-Space will give yo code insight for elements, attributes and attribute values.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp2.blogger.com/_e7NllMmH-OY/SBsvQyOa4KI/AAAAAAAACP0/qVLQhOxfxq0/s1600-h/untitled.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp2.blogger.com/_e7NllMmH-OY/SBsvQyOa4KI/AAAAAAAACP0/qVLQhOxfxq0/s400/untitled.JPG" alt="" id="BLOGGER_PHOTO_ID_5195798560508666018" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;As well as the insight you can right click on the editor and use the &lt;span style="font-weight: bold;"&gt;Validate XML context&lt;/span&gt; menu to check whether it's valid.&lt;br /&gt;&lt;br /&gt;As I've mentioned before JDeveloper is a lot more than a Java IDE. Another related feature is a really nice graphical XML Schema editor. HTH!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10323328-7831488241588378743?l=plasticscotsman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plasticscotsman.blogspot.com/feeds/7831488241588378743/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=10323328&amp;postID=7831488241588378743' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/7831488241588378743'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/7831488241588378743'/><link rel='alternate' type='text/html' href='http://plasticscotsman.blogspot.com/2008/05/schema-based-xml-editing-in-jdeveloper.html' title='Schema based XML editing in JDeveloper'/><author><name>Angus Myles</name><uri>http://www.blogger.com/profile/09550935689203299338</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://bp0.blogger.com/_e7NllMmH-OY/R3vlnyPMFZI/AAAAAAAABYA/5F222KvmL8c/S220/_MG_7122.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp0.blogger.com/_e7NllMmH-OY/SBsowSOa4GI/AAAAAAAACPU/bu68GwlS2NA/s72-c/prefs.JPG' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-10323328.post-4545565664121914066</id><published>2008-04-21T09:32:00.007Z</published><updated>2008-06-04T08:30:58.442Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='JMS'/><category scheme='http://www.blogger.com/atom/ns#' term='SOA'/><category scheme='http://www.blogger.com/atom/ns#' term='AQ'/><title type='text'>ORABPEL-12101 ERRJMS_TRX_COMMIT using AQ + JMS Adapter!!??!!##&amp;&amp;**!!</title><content type='html'>On our current SOA Suite project one of the teams has just swapped out OracleAS JMS provider for the Oracle AQ JMS provider. They're using the SOA Suite JMS Adapter to talk to the JMS Queue but found that using AQ they get a &lt;span style="font-weight: bold;"&gt;ORABPEL-12101 ERRJMS_TRX_COMMIT&lt;/span&gt; error on enqueuing a message. This seems to be an error that others have &lt;a href="http://forums.oracle.com/forums/thread.jspa?threadID=383919"&gt;experienced &lt;/a&gt;but there are a couple of ways to fix this depending on your situation.&lt;br /&gt;&lt;br /&gt;This section of our project is in development so we're coding, deploying, coding, deploying, etc. We haven't set up a JCA connection factory in OracleAS for AQ yet so we don't have an entry in our oc4j-ra.xml to edit. So how do we fix the issue?&lt;br /&gt;&lt;br /&gt;Well if the JMS adapter can't find a connection factory at the specified JNDI location ("eis/Jms/SampleAq" in our example) it falls back to the development time values given in the WSDL. In the WSDL for our enqueue operation we changed the mcf.IsTransacted attribute of the  jca:address element from true to false. It now looks like:&lt;br /&gt;&lt;span style=";font-family:Times New Roman;font-size:100%;color:black;"   &gt;&lt;span style="font-size:12;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;blockquote&gt; &amp;lt;jca:address location="eis/Jms/SampleAq" UIConnectionName="SampleAq" ManagedConnectionFactory="oracle.tip.adapter.jms.JmsManagedConnectionFactory" mcf.ConnectionFactoryLocation="java:comp/resource/OEMSAQProvider/QueueConnectionFactories/QCF" mcf.IsTopic="false" &lt;span style="font-weight: bold;"&gt;mcf.IsTransacted="false"&lt;/span&gt; mcf.FactoryProperties="" mcf.Username="common" mcf.Password="46969068B219FCC282915821ED80F355D62D1A19DF561D1E" UIJmsProvider="OJMS"/&amp;gt;&lt;/blockquote&gt;On redeployment the error was gone and the JMS enqueue operation was working as expected.&lt;br /&gt;&lt;br /&gt;The mcf.* properties are intended for development time only and once you've set up a connection factory in OracleAS at the required JNDI location they can be deleted (see this &lt;a href="http://download.oracle.com/docs/cd/B31017_01/integrate.1013/b28994/adptr_db.htm#BABCFEAE"&gt;diagram &lt;/a&gt;in the docs for a clear explanation of where connection info is sourced). Don't forget to set the isTransacted property to false in the connection factory set up or you will be back to square one!&lt;br /&gt;&lt;br /&gt;Hope this helps someone out!&lt;br /&gt;&lt;a href="http://forums.oracle.com/forums/thread.jspa?threadID=383919"&gt; &lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10323328-4545565664121914066?l=plasticscotsman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plasticscotsman.blogspot.com/feeds/4545565664121914066/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=10323328&amp;postID=4545565664121914066' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/4545565664121914066'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/4545565664121914066'/><link rel='alternate' type='text/html' href='http://plasticscotsman.blogspot.com/2008/04/orabpel-12101-errjmstrxcommit-using-aq.html' title='ORABPEL-12101 ERRJMS_TRX_COMMIT using AQ + JMS Adapter!!??!!##&amp;&amp;**!!'/><author><name>Angus Myles</name><uri>http://www.blogger.com/profile/09550935689203299338</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://bp0.blogger.com/_e7NllMmH-OY/R3vlnyPMFZI/AAAAAAAABYA/5F222KvmL8c/S220/_MG_7122.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-10323328.post-1014423947248723627</id><published>2008-04-14T18:34:00.004Z</published><updated>2008-04-14T18:46:13.678Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><title type='text'>JDocs - Javadoc goes web 2.0</title><content type='html'>If you can't configure JDeveloper to view javadocs over the web then you're probably always searching for whatever javadoc you need in your browser.  &lt;a href="http://www.jdocs.com"&gt;JDocs&lt;/a&gt; &lt;span style="text-decoration: underline;"&gt;&lt;/span&gt;&lt;a href="http://www.jdocs.com/"&gt;&lt;/a&gt;acts as a one-stop shop for almost all the (open source) javadoc you need, all served up in a slick ajax style.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10323328-1014423947248723627?l=plasticscotsman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plasticscotsman.blogspot.com/feeds/1014423947248723627/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=10323328&amp;postID=1014423947248723627' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/1014423947248723627'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/1014423947248723627'/><link rel='alternate' type='text/html' href='http://plasticscotsman.blogspot.com/2008/04/jdocs-javadoc-goes-web-20.html' title='JDocs - Javadoc goes web 2.0'/><author><name>Angus Myles</name><uri>http://www.blogger.com/profile/09550935689203299338</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://bp0.blogger.com/_e7NllMmH-OY/R3vlnyPMFZI/AAAAAAAABYA/5F222KvmL8c/S220/_MG_7122.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-10323328.post-4673697047436322015</id><published>2008-03-10T13:55:00.010Z</published><updated>2008-03-26T22:19:32.592Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='faces'/><category scheme='http://www.blogger.com/atom/ns#' term='adf'/><category scheme='http://www.blogger.com/atom/ns#' term='jsf'/><title type='text'>Things you find down the back of the sofa #3</title><content type='html'>The focus of this post &lt;span style="font-weight: bold;"&gt;was &lt;/span&gt;going to be forms in ADF Faces applications and how to make them "user friendly". It's still sitting in my drafts waiting to be finished because one morning last week my &lt;a href="http://www.netvives.com/"&gt;netvibes &lt;/a&gt;feed aggregator  delivered a &lt;a href="http://groundside.com/blog/DuncanMills.php?title=setting_the_intial_cursor_position_and_d&amp;amp;more=1&amp;amp;c=1&amp;amp;tb=1&amp;amp;pb=1"&gt;blog post&lt;/a&gt; by Duncan Mills, Oracle ADF guru, on exactly the same subject. I'd like to say it's a case of great minds thinking alike but as Duncan is one of the brains behind the whole Application Development Framework he's always going to be a few miles ahead of me!&lt;br /&gt;&lt;br /&gt;Duncan's post covers two techniques to make your ADF forms a little "smarter", setting the initial cursor position in an input component ready for the user to start typing (a new feature in 11g) and also to enable form submission with the enter key removing the need to move the mouse to the submit button.&lt;br /&gt;&lt;br /&gt;So is there anything to add or should I just pack in now? Well fortunately for me there are a couple of extra tweaks you can add to your application's forms. It's worth the extra effort because in a typical web application the users may be filling in the same form several times an hour, think of a login or a query page, so they're going to thank you (maybe not literally) for making your forms a joy to use.&lt;br /&gt;&lt;br /&gt;One neat feature of the ADF command button and command link eliminates the possibility of double form submissions. You will have probably seen the dire javascript warnings on some websites that warn against clicking the mouse, touching the keyboard or breathing while a form is being submitted. Using a component based framework like ADF-Faces allows you to solve this issue in a simpler, more elegant fashion by altering the behaviour of the button, in this case by disabling the button after it has been clicked. To do this with a simple submit button you simply set the blocking attribute to true like this:&lt;br /&gt;&lt;blockquote&gt;&amp;lt;af:commandButton text="Submit" blocking="true"/&gt;&lt;/blockquote&gt;Another tip is to make your forms easier to navigate by adding keyboard shortcuts like Alt-R for a form reset. Again this is nice and easy to do with a component based framework. For the reset button example above you'd add this:&lt;br /&gt;&lt;blockquote&gt;&amp;lt;af:resetButton text="Reset Form" accessKey="R"/&gt;&lt;/blockquote&gt;Add an access key to every input and command component and your power users will soon forget they have a mouse!&lt;br /&gt;&lt;br /&gt;NB In writing this post I discovered that the default behaviour of the command button is to be blocking in Firefox and also that the accessKey doesn't work in Firefox. They're still features worth adding though as for some reason 80% of web users still use Internet Explorer?!?!?&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10323328-4673697047436322015?l=plasticscotsman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plasticscotsman.blogspot.com/feeds/4673697047436322015/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=10323328&amp;postID=4673697047436322015' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/4673697047436322015'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/4673697047436322015'/><link rel='alternate' type='text/html' href='http://plasticscotsman.blogspot.com/2008/03/things-you-find-down-back-of-sofa-3.html' title='Things you find down the back of the sofa #3'/><author><name>Angus Myles</name><uri>http://www.blogger.com/profile/09550935689203299338</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://bp0.blogger.com/_e7NllMmH-OY/R3vlnyPMFZI/AAAAAAAABYA/5F222KvmL8c/S220/_MG_7122.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-10323328.post-8979724317377816011</id><published>2008-01-15T20:28:00.001Z</published><updated>2009-01-14T17:45:21.045Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='javaee'/><title type='text'>Things you find down the back of the sofa #2</title><content type='html'>One item that often gets overlooked in a Java EE web application is the http session time out. If a value is not explicitly set in the web.xml deployment descriptor then the target application server's default is used. In OC4J, Oracle's Java EE server, that default is 20 minutes. Although it's a sensible default it's unlikely to suit all applications, for a webmail application a longer period would make sense, for an internet banking app a shorter one would be nice!&lt;br /&gt;&lt;br /&gt;Http sessions also come at a cost. Often the session ends up storing a lot of objects, some that should really be on shorter scopes, and this can cause memory starvation. All those sessions holding onto loads of objects preventing them from being garbage collected for 20 minutes after the user stops using your web app. It's for this reason that I usually setting the time out to something less than the default.&lt;br /&gt;&lt;br /&gt;So how do you set the time out? Well the documentation is &lt;a href="http://download.oracle.com/docs/cd/B31017_01/web.1013/b28959/sessions.htm#sthref112"&gt;here&lt;/a&gt; but JDeveloper has a few tricks to help you get the web.xml right:&lt;br /&gt;&lt;br /&gt;Select the web.xml in your application navigator and then move to the structure pane (usually in the bottom left corner). Right click on the web-app element and in the menu select Insert inside web-app &gt; Browse.&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp2.blogger.com/_e7NllMmH-OY/R40hiyPMGKI/AAAAAAAABeo/syRw6KFi9hQ/s1600-h/untitled.bmp"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp2.blogger.com/_e7NllMmH-OY/R40hiyPMGKI/AAAAAAAABeo/syRw6KFi9hQ/s320/untitled.bmp" alt="" id="BLOGGER_PHOTO_ID_5155814029893834914" border="0" /&gt;&lt;/a&gt;In the resulting dialog box select the session-config element.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp2.blogger.com/_e7NllMmH-OY/R40i7yPMGLI/AAAAAAAABew/KPLYhwZ2J60/s1600-h/untitled.bmp"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp2.blogger.com/_e7NllMmH-OY/R40i7yPMGLI/AAAAAAAABew/KPLYhwZ2J60/s320/untitled.bmp" alt="" id="BLOGGER_PHOTO_ID_5155815558902192306" border="0" /&gt;&lt;/a&gt;Back in the structure pane select the newly added session-config and double click it. You'll get the following dialog box:&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp2.blogger.com/_e7NllMmH-OY/R40lMyPMGMI/AAAAAAAABe4/9QQiGXM1h-0/s1600-h/untitled.bmp"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp2.blogger.com/_e7NllMmH-OY/R40lMyPMGMI/AAAAAAAABe4/9QQiGXM1h-0/s320/untitled.bmp" alt="" id="BLOGGER_PHOTO_ID_5155818049983224002" border="0" /&gt;&lt;/a&gt;Add your desired time out in &lt;span style="font-weight: bold;"&gt;minutes &lt;/span&gt;and press OK. This will add the following snippet to your web.xml:&lt;br /&gt;&lt;blockquote&gt;&amp;lt;session-config&gt;&lt;br /&gt;      &amp;lt;session-timeout&gt;5&amp;lt;/session-timeout&gt;&lt;br /&gt;&amp;lt;/session-config&gt;&lt;/blockquote&gt;That's it!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10323328-8979724317377816011?l=plasticscotsman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plasticscotsman.blogspot.com/feeds/8979724317377816011/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=10323328&amp;postID=8979724317377816011' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/8979724317377816011'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/8979724317377816011'/><link rel='alternate' type='text/html' href='http://plasticscotsman.blogspot.com/2008/01/things-you-find-down-back-of-sofa-2.html' title='Things you find down the back of the sofa #2'/><author><name>Angus Myles</name><uri>http://www.blogger.com/profile/09550935689203299338</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://bp0.blogger.com/_e7NllMmH-OY/R3vlnyPMFZI/AAAAAAAABYA/5F222KvmL8c/S220/_MG_7122.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp2.blogger.com/_e7NllMmH-OY/R40hiyPMGKI/AAAAAAAABeo/syRw6KFi9hQ/s72-c/untitled.bmp' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-10323328.post-5094725011234857134</id><published>2008-01-15T19:42:00.000Z</published><updated>2008-01-15T19:48:22.458Z</updated><title type='text'>Are you a good programmer or a terrible one?</title><content type='html'>I'm definitely not a &lt;a href="http://www.inter-sections.net/2007/11/13/how-to-recognise-a-good-programmer"&gt;good programmer&lt;/a&gt;, I'd like to be a &lt;a href="http://blog.kickin-the-darkness.com/2007/09/confessions-of-terrible-programmer.html"&gt;terrible programmer&lt;/a&gt; really. So what are you, good or terrible? I'll put a poll on the blog, have a look at the links and let me know what you are.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10323328-5094725011234857134?l=plasticscotsman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plasticscotsman.blogspot.com/feeds/5094725011234857134/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=10323328&amp;postID=5094725011234857134' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/5094725011234857134'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/5094725011234857134'/><link rel='alternate' type='text/html' href='http://plasticscotsman.blogspot.com/2008/01/are-you-good-programmer-or-terrible-one.html' title='Are you a good programmer or a terrible one?'/><author><name>Angus Myles</name><uri>http://www.blogger.com/profile/09550935689203299338</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://bp0.blogger.com/_e7NllMmH-OY/R3vlnyPMFZI/AAAAAAAABYA/5F222KvmL8c/S220/_MG_7122.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-10323328.post-5597833267144330920</id><published>2007-12-10T20:35:00.000Z</published><updated>2007-12-10T20:39:58.837Z</updated><title type='text'>Amazon and you're done....</title><content type='html'>... or not of you're rafting the Amazon (the big river in Brazil).&lt;br /&gt;&lt;br /&gt;My pal Bruce Low has decided to raft the Rio Amazon from source to sea to raise money for charity. It will be a tough trip so if you have any spare cash you can sponsor him &lt;a href="http://www.raftheamazon.blogspot.com/"&gt;here&lt;/a&gt; and read about his exploits &lt;a href="http://www.raftheamazon.blogspot.com/"&gt;here&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10323328-5597833267144330920?l=plasticscotsman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plasticscotsman.blogspot.com/feeds/5597833267144330920/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=10323328&amp;postID=5597833267144330920' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/5597833267144330920'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/5597833267144330920'/><link rel='alternate' type='text/html' href='http://plasticscotsman.blogspot.com/2007/12/amazon-and-youre-done.html' title='Amazon and you&apos;re done....'/><author><name>Angus Myles</name><uri>http://www.blogger.com/profile/09550935689203299338</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://bp0.blogger.com/_e7NllMmH-OY/R3vlnyPMFZI/AAAAAAAABYA/5F222KvmL8c/S220/_MG_7122.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-10323328.post-258668963808896581</id><published>2007-12-01T21:43:00.000Z</published><updated>2008-01-02T22:08:53.007Z</updated><title type='text'>Things you find down the back of the sofa #1</title><content type='html'>It's been a while since I've posted on this blog mainly due to the release of Mini Myles v3.0. We missed the drop date by 15 days but so far things seem to be going well. There are some minor issues related to vomiting and waking in the middle of the night but generally v3.0 is pretty bug free. I'm hoping the TCO of this version will be lower due to reuse from v2.0. Now back to business...&lt;br /&gt;&lt;br /&gt;In this post I wanted to talk about the things I &lt;span style="font-weight: bold;"&gt;don't&lt;/span&gt; see when I work on Java EE projects, some of the niceties that make an application easier to use, easier to maintain and easier to debug. Sure the application will work fine without them but in my opinion it will be better with them.&lt;br /&gt;&lt;br /&gt;Presuming the application requires a login one thing that's often omitted is a logout button. Encouraging users to logout makes sense on a couple of levels. There's the obvious security advantage of course but also the advantage of getting rid of all those session plus all the objects that have been stored on those sessions. Normally these will hang around consuming the resources of your app server until the session times out, encouraging the users to logout can save some valuable heap memory.&lt;br /&gt;&lt;br /&gt;A logout button is pretty simple to implement in Oracle ADF. First you need a command button, drop it wherever makes sense on your page layout, an ideal place being one of the new &lt;a href="http://www.oracle.com/technology/products/jdev/viewlets/11/index.html"&gt;page templates&lt;/a&gt; in 11g. In the JSP source it will look like this:&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;span style="font-size:100%;"&gt;&lt;blockquote&gt;&amp;lt;af:commandButton text="#{msgs[\'label.logout\']}" action="#{Login.logout}" immediate="true"/&amp;gt;&lt;/blockquote&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&lt;/span&gt;&lt;/span&gt;Note that the immediate attribute has been  set to true, this will bypass any validation on input components on the page and go straight to the navigation method logout in the Login managed bean.&lt;br /&gt;&lt;br /&gt;The logout method in the session scoped managed bean would look like this:&lt;br /&gt;&lt;blockquote style="font-family: courier new;"&gt;public String logout()&lt;br /&gt;{&lt;br /&gt;  // Logout/invalidate the existing session...&lt;br /&gt;  FacesContext fc = FacesContext.getCurrentInstance();&lt;br /&gt;  ExternalContext ec = fc.getExternalContext();&lt;br /&gt;  HttpSession session = (HttpSession)ec.getSession(false);&lt;br /&gt;  if(session != null) session.invalidate();&lt;br /&gt;&lt;br /&gt;  // Execute the global navigation rule "logout"&lt;br /&gt;  return "logout";&lt;br /&gt;}&lt;/blockquote&gt;Rather than repeat the logout navigation rule for each page the logout rule is a global one, defined in faces-config.xml like this:&lt;br /&gt;&lt;blockquote style="font-family: courier new;"&gt;&amp;lt;navigation-rule&gt;&lt;br /&gt; &amp;lt;navigation-case&gt;&lt;br /&gt;   &amp;lt;from-outcome&gt;logout&lt;br /&gt;     &amp;lt;to-view-id&gt;/login.jsp&lt;br /&gt;     &amp;lt;redirect/&gt;&lt;br /&gt;   &amp;lt;/navigation-case&gt;&lt;br /&gt;&amp;lt;/navigation-rule&gt;&lt;/blockquote&gt;Note that we have added the redirect element to the navigation case so that the browser is sent a HTTP 302 redirect. This helps to solve the issues caused if the user reloads the page or clicks the back button.&lt;br /&gt;&lt;br /&gt;More bits of fluff to follow.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10323328-258668963808896581?l=plasticscotsman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plasticscotsman.blogspot.com/feeds/258668963808896581/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=10323328&amp;postID=258668963808896581' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/258668963808896581'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/258668963808896581'/><link rel='alternate' type='text/html' href='http://plasticscotsman.blogspot.com/2007/12/things-you-find-down-back-of-sofa-1.html' title='Things you find down the back of the sofa #1'/><author><name>Angus Myles</name><uri>http://www.blogger.com/profile/09550935689203299338</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://bp0.blogger.com/_e7NllMmH-OY/R3vlnyPMFZI/AAAAAAAABYA/5F222KvmL8c/S220/_MG_7122.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-10323328.post-3558323100404639046</id><published>2007-10-18T12:15:00.001Z</published><updated>2009-01-14T17:46:13.787Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><title type='text'>Ubuntu 7.10 is ready</title><content type='html'>Just a quick not to say that Ubuntu 7.10 is out! Get it &lt;a href="http://www.ubuntu.com/getubuntu/download"&gt;here &lt;/a&gt;while it's fresh.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10323328-3558323100404639046?l=plasticscotsman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plasticscotsman.blogspot.com/feeds/3558323100404639046/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=10323328&amp;postID=3558323100404639046' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/3558323100404639046'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/3558323100404639046'/><link rel='alternate' type='text/html' href='http://plasticscotsman.blogspot.com/2007/10/ubuntu-710-is-ready.html' title='Ubuntu 7.10 is ready'/><author><name>Angus Myles</name><uri>http://www.blogger.com/profile/09550935689203299338</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://bp0.blogger.com/_e7NllMmH-OY/R3vlnyPMFZI/AAAAAAAABYA/5F222KvmL8c/S220/_MG_7122.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-10323328.post-8141867539852035924</id><published>2007-09-11T09:13:00.001Z</published><updated>2009-01-14T17:46:56.582Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='faces'/><category scheme='http://www.blogger.com/atom/ns#' term='adf'/><category scheme='http://www.blogger.com/atom/ns#' term='jsf'/><title type='text'>How to warn there are unsaved changes in an ADF web app</title><content type='html'>A customer recently asked me how, in an ADF web application, the user can be warned that there are unsaved changes, much like in a desktop application. A bit of research showed that John Stegeman had already blogged about a solution on his &lt;a href="http://stegemanoracle.blogspot.com/2006/03/re-usable-prompt-to-save-changes.html"&gt;blog&lt;/a&gt;. It's a nice solution but as my client was using a JSF menu component from the &lt;a href="http://myfaces.apache.org/tomahawk/"&gt;Tomahawk library&lt;/a&gt; would have been hard to implement in our case.&lt;br /&gt;&lt;br /&gt;So we took John's discovery that the expression "#{bindings.Commit.enabled}" evaluates to true when there are "unsaved" changes and set about creating an alternative solution. We also wanted to exploit as many use standard features of JSF wherever possible. The core of our solution was to use a custom JSF NavigationHandler. A default navigation handler is provided by the JSF implementation but it's easy to define a custom class that extends &lt;span style="font-style: italic;"&gt;javax.faces.application.NavigationHandler&lt;/span&gt; in the faces-config.xml. In our custom class we can intercept all navigation requests and if unsaved changes are found add a warning message to the user and redisplay the same view. If no changes are found the custom class delegates decisions about the navigation to the default handler i.e. navigation proceeds as expected.&lt;br /&gt;&lt;br /&gt;Our custom NavigationHandler is defined like this in the faces-config.xml:&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;&lt;/span&gt;&lt;blockquote&gt;&lt;span style="font-family:courier new;"&gt;....&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;&amp;lt;application&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;    ....&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;    &amp;lt;!-- Fully qualified class name --&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;    &amp;lt;navigation-handler&gt;CommitNavigationHandler&amp;lt;/navigation-handler&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;    ....&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  &amp;lt;/application&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;....&lt;/span&gt;&lt;/blockquote&gt;&lt;span style="font-family:courier new;"&gt;&lt;/span&gt;The new navigation handler uses the decorator pattern and looks like this:&lt;br /&gt;&lt;blockquote&gt;public class CommitNavigationHandler&lt;br /&gt;extends NavigationHandler&lt;br /&gt;{&lt;br /&gt;private NavigationHandler handler = null;&lt;br /&gt;&lt;br /&gt;public static final String COMMIT_ENABLED =&lt;br /&gt;"#{bindings.Commit.enabled}";&lt;br /&gt;&lt;br /&gt;public CommitNavigationHandler(NavigationHandler handler)&lt;br /&gt;{&lt;br /&gt;super();&lt;br /&gt;this.handler = handler;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;@Override&lt;br /&gt;public void handleNavigation(FacesContext facesContext,&lt;br /&gt;                          String fromAction, String outcome)&lt;br /&gt;{&lt;br /&gt;Boolean outstandingChangesWrapper =&lt;br /&gt;   resolveExpressionAsBoolean(CommitNavigationHandler.COMMIT_ENABLED, facesContext);&lt;br /&gt;if (outcome != null &amp;amp;&amp;amp; outstandingChangesWrapper != null &amp;amp;&amp;amp;&lt;br /&gt;    outstandingChangesWrapper.booleanValue())&lt;br /&gt;{&lt;br /&gt;   // The outcome is not null (so we are navigating away from the current page)&lt;br /&gt;   // and the page has some unsaved changes so display the same page with a&lt;br /&gt;   // message to tell user to either save the changes or reset the form.&lt;br /&gt;   FacesMessage message =&lt;br /&gt;      new FacesMessage("You have uncommitted changes! Please either save or reset.");&lt;br /&gt;   facesContext.addMessage(null, message);&lt;br /&gt;   this.handler.handleNavigation(facesContext, fromAction, null);&lt;br /&gt;}&lt;br /&gt;else&lt;br /&gt;{&lt;br /&gt;   // No changes or it's a postback, do navigation as intended&lt;br /&gt;   this.handler.handleNavigation(facesContext, fromAction, outcome);&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;private Boolean resolveExpressionAsBoolean(String el, FacesContext fc)&lt;br /&gt;{&lt;br /&gt;ValueBinding valueBinding =&lt;br /&gt;   fc.getApplication().createValueBinding(el);&lt;br /&gt;return (Boolean) valueBinding.getValue(fc);&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/blockquote&gt;Like the original solution there are a few caveats:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Pages where you want this to warning to work will need a button bound to the default Commit operation.&lt;/li&gt;&lt;li&gt;There should be a JSF messages component in the page to show the warning message.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Pages will also need a binding to the Rollback operation so the user can cancel all changes and then navigate off the page. A rollback button would look a bit like this:&lt;br /&gt;&lt;blockquote&gt;&amp;lt;af:commandButton actionListener="#{bindings.Rollback.execute}"&lt;br /&gt;                 text="Rollback" disabled="#{!bindings.Rollback.enabled}"&lt;br /&gt;                 immediate="true"&amp;gt;&lt;br /&gt; &amp;lt;af:resetActionListener/&amp;gt;&lt;br /&gt;&amp;lt;/af:commandButton&amp;gt;&lt;/blockquote&gt;&lt;/li&gt;&lt;/ol&gt;That's about it. Setting up the navigation listener is once per application and then just make sure every page where you want this feature follows the rules above.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10323328-8141867539852035924?l=plasticscotsman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plasticscotsman.blogspot.com/feeds/8141867539852035924/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=10323328&amp;postID=8141867539852035924' title='6 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/8141867539852035924'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/8141867539852035924'/><link rel='alternate' type='text/html' href='http://plasticscotsman.blogspot.com/2007/09/how-to-warn-there-are-unsaved-changes.html' title='How to warn there are unsaved changes in an ADF web app'/><author><name>Angus Myles</name><uri>http://www.blogger.com/profile/09550935689203299338</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://bp0.blogger.com/_e7NllMmH-OY/R3vlnyPMFZI/AAAAAAAABYA/5F222KvmL8c/S220/_MG_7122.jpg'/></author><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-10323328.post-7708392510190174660</id><published>2007-08-23T17:58:00.000Z</published><updated>2007-09-10T14:52:16.006Z</updated><title type='text'>Feed me. Feed me now.</title><content type='html'>It's a hard task to stay up to date with the latest advances in technology. A client recenly asked me how I keep up and this is what I said:&lt;br /&gt;RSS feeds are a godsend for staying current. At last something useful from web 2.0 rather than social networking! Pick a nice reader and you can review new articles quickly and easily from multiple sources. Some suggestions for readers:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;I use &lt;a href="http://www.netvibes.com/"&gt;NetVibes&lt;/a&gt;, a web based RSS reader. I'm really impressed with it.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Google has &lt;a href="http://www.google.com/reader"&gt;Google Reader&lt;/a&gt; which has just added off-line capabilities using Google Gears. Great for catching up when you're on a flight.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt; So on to the content for your shiny new reader:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;There's no doubt the main source for ADF material is the &lt;a href="http://www.oracle.com/technology/index.html"&gt;Oracle Technology Network&lt;/a&gt;. As this covers all Oracle technologies you'll need to dig a little deeper to get to the ADF stuff.&lt;br /&gt;&lt;/li&gt;&lt;ul&gt;&lt;li&gt;The Learn ADF centre is &lt;a href="http://www.oracle.com/technology/products/adf/learnadf.html"&gt;here&lt;/a&gt;. ADF teams should become &lt;span style="font-weight: bold;"&gt;very &lt;/span&gt;familiar with all the items in the 4GL developers track, that's the sample application, the developers guide and the tutorial.&lt;br /&gt;  &lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;The main technology page for ADF is &lt;a href="http://www.oracle.com/technology/products/adf/index.html"&gt;here&lt;/a&gt;. Two useful links for your team members are the &lt;a href="http://www.oracle.com/technology/products/jdev/howtos/index.html"&gt;To-Dos&lt;/a&gt; and the &lt;a href="http://www.oracle.com/technology/obe/obe1013jdev/index.htm#adf"&gt;Tutorials&lt;/a&gt;.&lt;br /&gt;  &lt;/li&gt;&lt;li&gt;It's also worth subscribing to the &lt;a href="http://www.oracle.comhttp//www.oracle.com/technology/products/jdev/java_newsletter.html"&gt;JDeveloper newsletter&lt;/a&gt; and also subscribing to the &lt;a href="http://www.oracle.com/technology/products/jdev/temp/whatisrss.html"&gt;JDev RSS feed&lt;/a&gt;.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;The &lt;a href="http://forums.oracle.com/forums/categoryHome.jspa?categoryID=84"&gt;OTN forums&lt;/a&gt; are very useful, each product/area has an RSS feed.&lt;br /&gt;  &lt;/li&gt;&lt;/ul&gt;&lt;li&gt;&lt;a href="http://metalink.oracle.com/"&gt;Oracle Metalink&lt;/a&gt; is also a great resource and the whole team should get themselves an account. It's probably the first place to look is you are getting a strange error or something is not working as expected. A lot of "issues" can be fixed by a visit to Metalink!!&lt;br /&gt;&lt;/li&gt;&lt;li&gt;The holy trinity of Oracle ADF product managers all have excellent blogs all with an RSS feed:&lt;span style="text-decoration: underline;"&gt;&lt;/span&gt;&lt;/li&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://groundside.com/blog/DuncanMills.php"&gt;Duncan Mills&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://radio.weblogs.com/0118231/"&gt;Steve Muench&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a class="moz-txt-link-freetext" href="http://thepeninsulasedge.com/frank_nimphius/feed/"&gt;Frank Nimphius&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;li&gt;Some other great Oracle staff blogs are:&lt;/li&gt;&lt;ul&gt;&lt;li&gt;JDev product manager &lt;a href="http://blogs.oracle.com/shay/xml/rss.xml"&gt;Shay Shmeltzer.&lt;/a&gt;&lt;br /&gt;  &lt;/li&gt;&lt;li&gt;&lt;a href="http://tugdualgrall.blogspot.com/feeds/posts/default"&gt;OC4J product manager Tugdual Grall.&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;OracleAS product manager &lt;a href="http://debupanda.blogspot.com/feeds/posts/default"&gt;Debu Panda&lt;/a&gt;.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;li&gt;Some non Oracle ADF blogs worth monitoring are:&lt;span style="text-decoration: underline;"&gt;&lt;/span&gt;&lt;/li&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.it-eye.nl/weblog/feed/atom/"&gt;IT Eye,&lt;/a&gt; a Dutch IT company with a lot of ADF posts.&lt;/li&gt;&lt;li&gt;&lt;a href="http://stegemanoracle.wordpress.com/"&gt;Real World ADF&lt;/a&gt; with John Stegeman.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;JSF news site &lt;a href="http://www.jsfcentral.com/news/?feed=rss"&gt;JSF Central&lt;/a&gt; is great.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;li&gt;Sun &lt;a href="http://java.sun.com/javaee/5/docs/tutorial/doc/"&gt;JavaEE 5 tutorial&lt;/a&gt; has a lot af material about JSF - see chapter 9 -14 .&lt;/li&gt;&lt;/ul&gt;Hope you enjoy! I'm also addicted to podcasts and will post a list of my favourites soon...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10323328-7708392510190174660?l=plasticscotsman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plasticscotsman.blogspot.com/feeds/7708392510190174660/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=10323328&amp;postID=7708392510190174660' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/7708392510190174660'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/7708392510190174660'/><link rel='alternate' type='text/html' href='http://plasticscotsman.blogspot.com/2007/08/feed-me-feed-me-now.html' title='Feed me. Feed me now.'/><author><name>Angus Myles</name><uri>http://www.blogger.com/profile/09550935689203299338</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://bp0.blogger.com/_e7NllMmH-OY/R3vlnyPMFZI/AAAAAAAABYA/5F222KvmL8c/S220/_MG_7122.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-10323328.post-7472294140080344996</id><published>2007-07-30T15:27:00.000Z</published><updated>2007-07-30T15:39:47.756Z</updated><title type='text'>Ctrl-Alt-F9-Shift-ShortcutNinja</title><content type='html'>Hi&lt;br /&gt;&lt;br /&gt;Following on from the posts below if you're a developer that hates the mouse and loves shortcuts then you will love &lt;a href="http://blogs.oracle.com/shay/2006/10/30"&gt;this&lt;/a&gt; treasure trove of shortcuts from JDeveloper product manager Shay Shmeltzer. Happy finger twister!&lt;br /&gt;&lt;br /&gt;Angus&lt;br /&gt;&lt;br /&gt;PS I'm writing this in Vilnius and Blogger has internationalized itself to Lithuanian. I could be consigning this post to junk rather than successfully posting it. On the plus side the free wifi in the hotel is very fast and reminds me that I must order faster broadband at home to feed my podcast addiction.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10323328-7472294140080344996?l=plasticscotsman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plasticscotsman.blogspot.com/feeds/7472294140080344996/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=10323328&amp;postID=7472294140080344996' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/7472294140080344996'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/7472294140080344996'/><link rel='alternate' type='text/html' href='http://plasticscotsman.blogspot.com/2007/07/ctrl-alt-f9-shift-shortcutninja.html' title='Ctrl-Alt-F9-Shift-ShortcutNinja'/><author><name>Angus Myles</name><uri>http://www.blogger.com/profile/09550935689203299338</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://bp0.blogger.com/_e7NllMmH-OY/R3vlnyPMFZI/AAAAAAAABYA/5F222KvmL8c/S220/_MG_7122.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-10323328.post-2693641140107658848</id><published>2007-07-27T12:57:00.000Z</published><updated>2007-07-27T13:01:43.771Z</updated><title type='text'>Cheap and cheerful shortcut</title><content type='html'>Quickly... here's another useful shortcut/feature in JDev that was added in 10.1.3 (I think). It's extended paste. If you use &lt;span style="font-weight: bold;"&gt;Ctrl-v&lt;/span&gt; a lot try &lt;span style="font-weight: bold;"&gt;Ctrl-Shift-v&lt;/span&gt; and you'll get a window showing you the last few contents of the clipboard. Click one to insert. Just like a popular office program but without the dancing paper clip!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10323328-2693641140107658848?l=plasticscotsman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plasticscotsman.blogspot.com/feeds/2693641140107658848/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=10323328&amp;postID=2693641140107658848' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/2693641140107658848'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/2693641140107658848'/><link rel='alternate' type='text/html' href='http://plasticscotsman.blogspot.com/2007/07/cheap-and-cheerful-shortcut.html' title='Cheap and cheerful shortcut'/><author><name>Angus Myles</name><uri>http://www.blogger.com/profile/09550935689203299338</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://bp0.blogger.com/_e7NllMmH-OY/R3vlnyPMFZI/AAAAAAAABYA/5F222KvmL8c/S220/_MG_7122.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-10323328.post-7044641349030116472</id><published>2007-07-11T14:26:00.000Z</published><updated>2007-07-27T13:03:30.279Z</updated><title type='text'>New JDeveloper version</title><content type='html'>A bit late this as I've just been on holiday but there's a new version of JDeveloper on OTN. 10.1.3.3 is the current production  version with many bug fixes. The downloads for JDev are &lt;a href="http://www.oracle.com/technology/software/products/jdev/index.html"&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;I also want to start highlighting some simple features of JDev that make life a little easier. Today it's "Copy Path" or Ctrl + Shift + C that copies the full path of the highlighted file to the clipboard. This is a boon for clumsy typists like me as it is certainly less error prone than doing it by hand! You can then paste the path into an open dialog, documentation or command prompt. Lovely! More to come....&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10323328-7044641349030116472?l=plasticscotsman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plasticscotsman.blogspot.com/feeds/7044641349030116472/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=10323328&amp;postID=7044641349030116472' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/7044641349030116472'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/7044641349030116472'/><link rel='alternate' type='text/html' href='http://plasticscotsman.blogspot.com/2007/07/two-new-jdevelopers.html' title='New JDeveloper version'/><author><name>Angus Myles</name><uri>http://www.blogger.com/profile/09550935689203299338</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://bp0.blogger.com/_e7NllMmH-OY/R3vlnyPMFZI/AAAAAAAABYA/5F222KvmL8c/S220/_MG_7122.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-10323328.post-6996231860997183318</id><published>2007-06-18T12:36:00.000Z</published><updated>2007-06-18T12:46:22.171Z</updated><title type='text'>Metaphor/Simile Competition</title><content type='html'>No, this isn't a search for new smilies. :-) Olaf (font of all knowledge) has recently had a Java quiz on his blog so I thought I'd follow suit.....except that this is a little less technical and little more abstract.&lt;br /&gt;&lt;br /&gt;You used to be able to describe a "general purpose" architecture for J2EE applications that could be described as a wedding cake with multiple tiers.....you get the idea. Now with SOA this simile doesn't work anymore but what to replace it with? Let's hear your ideas! To make things a little more interesting I'll exclude "star", "wheel &amp;amp; spoke" and "grid" as they're all pretty overused.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10323328-6996231860997183318?l=plasticscotsman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plasticscotsman.blogspot.com/feeds/6996231860997183318/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=10323328&amp;postID=6996231860997183318' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/6996231860997183318'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/6996231860997183318'/><link rel='alternate' type='text/html' href='http://plasticscotsman.blogspot.com/2007/06/metaohorsimile-competition.html' title='Metaphor/Simile Competition'/><author><name>Angus Myles</name><uri>http://www.blogger.com/profile/09550935689203299338</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://bp0.blogger.com/_e7NllMmH-OY/R3vlnyPMFZI/AAAAAAAABYA/5F222KvmL8c/S220/_MG_7122.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-10323328.post-2330434664743661381</id><published>2007-06-05T14:21:00.001Z</published><updated>2008-04-14T18:33:49.622Z</updated><title type='text'>Installing OracleAS on Oracle Enterprise Linux</title><content type='html'>Just in case you hadn't noticed Oracle has its own Linux now, &lt;span style="text-decoration: underline;"&gt;see the &lt;/span&gt;&lt;a href="http://www.oracle.com/technologies/linux/ubl-faq.pdf"&gt;FAQ here&lt;/a&gt;. Today I was installing OracleAS 10.1.3.1 on Oracle Enterprise Linux and had an issue with the prerequisite checks of the Oracle Universal Installer (OUI), it kept saying that my OS wasn't recognised??? A quick call to Olaf Heimburger got me back on track.&lt;br /&gt;&lt;br /&gt;Olaf suggested editing two files to keep OUI happy:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;/etc/issue&lt;/li&gt;&lt;li&gt;/etc/redhat-release&lt;/li&gt;&lt;/ul&gt;In both it's a case of replacing the first instance of "Enterprise Linux" with "Red Hat". I made the change, ran the installer again and was soon up and running. When it's all done don't forget to change the files back. Thanks Olaf!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10323328-2330434664743661381?l=plasticscotsman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plasticscotsman.blogspot.com/feeds/2330434664743661381/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=10323328&amp;postID=2330434664743661381' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/2330434664743661381'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/2330434664743661381'/><link rel='alternate' type='text/html' href='http://plasticscotsman.blogspot.com/2007/06/installing-oracleas-on-oracle.html' title='Installing OracleAS on Oracle Enterprise Linux'/><author><name>Angus Myles</name><uri>http://www.blogger.com/profile/09550935689203299338</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://bp0.blogger.com/_e7NllMmH-OY/R3vlnyPMFZI/AAAAAAAABYA/5F222KvmL8c/S220/_MG_7122.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-10323328.post-5269887224178672630</id><published>2007-05-25T08:56:00.001Z</published><updated>2007-06-05T14:19:49.187Z</updated><title type='text'>Free tech lectures!</title><content type='html'>The employees at Google enjoy a series of lunchtime lectures on a variety of science and engineering subjects. Google shares these with the world via Google Video. There's a very interesting lecture on their new open source dependency injection framework, Guice, at http://video.google.com/videoplay?docid=6068447410873108038&amp;amp;q=user%3A%22Google+engEDU%22+guice.&lt;br /&gt;&lt;br /&gt;The framework looks great, all Java with no need for XML configuration files. Guice and the Google Web Toolkit looks like the start of a series of really cool frameworks that they've donated to the OSS movement.&lt;br /&gt;&lt;br /&gt;There's a huge range of talks on Google Video. You can browse for something that interests you at &lt;a href="http://video.google.com/videosearch?q=user%3A%22Google+engEDU%22"&gt;http://video.google.com/videosearch?q=user%3A%22Google+engEDU%22&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10323328-5269887224178672630?l=plasticscotsman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plasticscotsman.blogspot.com/feeds/5269887224178672630/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=10323328&amp;postID=5269887224178672630' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/5269887224178672630'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/5269887224178672630'/><link rel='alternate' type='text/html' href='http://plasticscotsman.blogspot.com/2007/05/free-tech-lectures.html' title='Free tech lectures!'/><author><name>Angus Myles</name><uri>http://www.blogger.com/profile/09550935689203299338</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://bp0.blogger.com/_e7NllMmH-OY/R3vlnyPMFZI/AAAAAAAABYA/5F222KvmL8c/S220/_MG_7122.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-10323328.post-7856174802724740117</id><published>2007-05-08T15:26:00.000Z</published><updated>2007-06-05T14:20:42.331Z</updated><title type='text'>JDeveloper 11g is here!</title><content type='html'>Big news from the Oracle JDeveloper team today: A technology preview of JDeveloper 11g is available on OTN - &lt;a href="http://www.oracle.com/technology/products/jdev/11/index.html"&gt;http://www.oracle.com/technology/products/jdev/11/index.html&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;There's so many features that the J in JDeveloper is a bit misleading. Not only is it a really productive Java &amp;amp; Java EE coding platform but it's also great for database development, XML, BPEL, UML and ESB design time.&lt;br /&gt;&lt;br /&gt;I'm looking forward to test driving it over the next few days...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10323328-7856174802724740117?l=plasticscotsman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plasticscotsman.blogspot.com/feeds/7856174802724740117/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=10323328&amp;postID=7856174802724740117' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/7856174802724740117'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/7856174802724740117'/><link rel='alternate' type='text/html' href='http://plasticscotsman.blogspot.com/2007/05/jdevelope-11g-is-here.html' title='JDeveloper 11g is here!'/><author><name>Angus Myles</name><uri>http://www.blogger.com/profile/09550935689203299338</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://bp0.blogger.com/_e7NllMmH-OY/R3vlnyPMFZI/AAAAAAAABYA/5F222KvmL8c/S220/_MG_7122.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-10323328.post-2148407326323976078</id><published>2007-04-03T12:51:00.000Z</published><updated>2007-06-05T14:21:01.971Z</updated><title type='text'>Roll on Java 7 :-(</title><content type='html'>Java5 added annotations to the language and one of the nice applications of this language feature was the @Override and @Deprecated annotations.&lt;br /&gt;&lt;br /&gt;@Override allows a developer to make their code more robust by flagging that a certain method must override a method in the superclass. That means that if any "refactoring" goes a little wrong then this dependency will be flagged up at compile time.&lt;br /&gt;&lt;br /&gt;Great, perfect, happy days! Except if you follow Josh Bloch's recommendation that interfaces are the correct way to specify type in Java then this feature is next to useless. The clue is in the use of "&lt;span style="font-weight: bold;"&gt;superclass&lt;/span&gt;" above rather than "&lt;span style="font-weight: bold;"&gt;supertype&lt;/span&gt;". @Override in Java SE 5 only works with classes: &lt;a href="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Override.html"&gt;http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Override.html&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;This was due to be fixed in Java SE 6 but unfortunately a small issue means that we won't be able to exploit this feature with interfaces until Java SE 7. The details (and a great deal of discussion about the subtle differences between implements and overrides)  can be found at http://blogs.sun.com/ahe/entry/override_snafu.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10323328-2148407326323976078?l=plasticscotsman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plasticscotsman.blogspot.com/feeds/2148407326323976078/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=10323328&amp;postID=2148407326323976078' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/2148407326323976078'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/2148407326323976078'/><link rel='alternate' type='text/html' href='http://plasticscotsman.blogspot.com/2007/04/roll-on-java-7.html' title='Roll on Java 7 :-('/><author><name>Angus Myles</name><uri>http://www.blogger.com/profile/09550935689203299338</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://bp0.blogger.com/_e7NllMmH-OY/R3vlnyPMFZI/AAAAAAAABYA/5F222KvmL8c/S220/_MG_7122.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-10323328.post-5660139317508716331</id><published>2007-04-02T20:45:00.000Z</published><updated>2007-05-09T05:05:14.001Z</updated><title type='text'>A tongue twister?</title><content type='html'>Technical content is zero on this post but...........is it just me or is &lt;span style="FONT-WEIGHT: bold"&gt;"JEE"&lt;/span&gt; harder to pronounce than good old &lt;span style="FONT-WEIGHT: bold"&gt;"J2EE"&lt;/span&gt;?&lt;br /&gt;&lt;br /&gt;Update: My colleague Olaf has suggested that "Java EE" is the easiest to pronounce and I think he may be right.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10323328-5660139317508716331?l=plasticscotsman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plasticscotsman.blogspot.com/feeds/5660139317508716331/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=10323328&amp;postID=5660139317508716331' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/5660139317508716331'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/5660139317508716331'/><link rel='alternate' type='text/html' href='http://plasticscotsman.blogspot.com/2007/04/tongue-twister.html' title='A tongue twister?'/><author><name>Angus Myles</name><uri>http://www.blogger.com/profile/09550935689203299338</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://bp0.blogger.com/_e7NllMmH-OY/R3vlnyPMFZI/AAAAAAAABYA/5F222KvmL8c/S220/_MG_7122.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-10323328.post-7567603226864079065</id><published>2007-04-02T20:26:00.000Z</published><updated>2007-04-03T12:47:03.908Z</updated><title type='text'>A STANDARD way to package libraries in Java EE</title><content type='html'>JEE5 specified a new vendor independent way to package libraries in an EAR file, which is good news. It's also implemented in OracleAS 10.1.3.1.0 which is even better news! In brief you can bundle your JARs into a sub-directory in the EAR and add an entry pointing to it in the application.xml.&lt;br /&gt;&lt;br /&gt;The OracleAS documentation for this feature is here &lt;a href="http://download-uk.oracle.com/docs/cd/B31017_01/web.1013/b28952/classload.htm#BABGAABD"&gt;http://download-uk.oracle.com/docs/cd/B31017_01/web.1013/b28952/classload.htm#BABGAABD&lt;/a&gt;.&lt;br /&gt;Note that you need to set the &lt;span style="font-weight: bold;"&gt;version &lt;/span&gt;attribute of the &lt;span style="font-weight: bold;"&gt;&lt;application&gt;&lt;/application&gt;&lt;/span&gt; &lt;span style="font-weight: bold;"&gt;application &lt;/span&gt;element to "5" in application.xml for this to work. The deployment descriptor creation wizard in Oracle JDeveloper will guide you through this.&lt;br /&gt;&lt;br /&gt;OracleAS 10.1.3.x also has the concept of shared libraries. These two features should mean that library packaging has got a little simpler in JEE.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10323328-7567603226864079065?l=plasticscotsman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plasticscotsman.blogspot.com/feeds/7567603226864079065/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=10323328&amp;postID=7567603226864079065' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/7567603226864079065'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/7567603226864079065'/><link rel='alternate' type='text/html' href='http://plasticscotsman.blogspot.com/2007/04/standard-way-to-package-libraries-in.html' title='A STANDARD way to package libraries in Java EE'/><author><name>Angus Myles</name><uri>http://www.blogger.com/profile/09550935689203299338</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://bp0.blogger.com/_e7NllMmH-OY/R3vlnyPMFZI/AAAAAAAABYA/5F222KvmL8c/S220/_MG_7122.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-10323328.post-6372170497371801061</id><published>2007-04-02T20:18:00.000Z</published><updated>2007-04-02T20:52:11.229Z</updated><title type='text'>Welcome</title><content type='html'>Welcome to my Blog! I'm not sure if I'm a natural blogger but I'm going to try and use my blog to talk about &lt;span style="font-style: italic;"&gt;interesting &lt;/span&gt;stuff about Oracle and J2EE/JEE. I hope that that won't prove to be an oxymoron. ;-)&lt;br /&gt;&lt;br /&gt;Stay tuned...&lt;br /&gt;&lt;br /&gt;Angus&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10323328-6372170497371801061?l=plasticscotsman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plasticscotsman.blogspot.com/feeds/6372170497371801061/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=10323328&amp;postID=6372170497371801061' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/6372170497371801061'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/10323328/posts/default/6372170497371801061'/><link rel='alternate' type='text/html' href='http://plasticscotsman.blogspot.com/2007/04/welcome-to-my-blog-im-not-sure-if-im.html' title='Welcome'/><author><name>Angus Myles</name><uri>http://www.blogger.com/profile/09550935689203299338</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://bp0.blogger.com/_e7NllMmH-OY/R3vlnyPMFZI/AAAAAAAABYA/5F222KvmL8c/S220/_MG_7122.jpg'/></author><thr:total>0</thr:total></entry></feed>
