<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:blogger="http://schemas.google.com/blogger/2008" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" gd:etag="W/&quot;C08FRX48fyp7ImA9WhBVE0w.&quot;"><id>tag:blogger.com,1999:blog-589834708478184487</id><updated>2013-04-19T00:33:34.077+05:30</updated><category term="wls" /><category term="linux" /><category term="Adobe" /><category term="facebook" /><category term="ORACLE" /><category term="view object" /><category term="Jdeveloper" /><category term="transaction" /><category term="SQL" /><category term="java" /><category term="refactor" /><category term="Release" /><category term="bugs" /><category term="ADF Declarative components" /><category term="webservices" /><category term="jsp-servlet" /><category term="Fusion Apps Developer Relations" /><category term="Misc" /><category term="ADF UI" /><category term="XML" /><category term="entity object" /><category term="application module" /><category term="hudson" /><category term="Perl" /><category term="Page Template" /><category term="ADF BC" /><category term="CLOB" /><category term="Google App Engine" /><category term="Ajax" /><category term="ADF" /><category term="wlst" /><category term="ADFm" /><category term="iPhone" /><category term="Firefox" /><category term="Task Flow" /><category term="mds" /><category term="weblogic" /><category term="Flex" /><category term="JSF" /><category term="performance" /><category term="Spring" /><category term="Postgre" /><category term="BLOB" /><category term="svn" /><category term="LOV" /><title>Dare to Code...</title><subtitle type="html">This blog is run by an Oracle employee working on ADF and JSF technologies with the intention of spreading awareness and posting some tips and hints to work with the various components quickly. Further this blog is open for all the discussions, suggestions feedback about this blog and JAVA, J2EE technology based frameworks like ADF, JSF etc and other technological aspects like tools, languages etc</subtitle><link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://www.fusion-adf.com/feeds/posts/default" /><link rel="alternate" type="text/html" href="http://www.fusion-adf.com/" /><link rel="next" type="application/atom+xml" href="http://www.blogger.com/feeds/589834708478184487/posts/default?start-index=26&amp;max-results=25&amp;redirect=false&amp;v=2" /><author><name>Vivek Kumar</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-HDhivaZ92_k/AAAAAAAAAAI/AAAAAAAA3jE/lwCYaW9IPDo/s512-c/photo.jpg" /></author><generator version="7.00" uri="http://www.blogger.com">Blogger</generator><openSearch:totalResults>114</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="http://feeds.feedburner.com/DareToCode" /><feedburner:info uri="daretocode" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><entry gd:etag="W/&quot;CEEESH06cSp7ImA9WhBWGEw.&quot;"><id>tag:blogger.com,1999:blog-589834708478184487.post-8604859244034517373</id><published>2013-04-13T05:53:00.002+05:30</published><updated>2013-04-13T05:53:29.319+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2013-04-13T05:53:29.319+05:30</app:edited><title>Tip of the Week#2</title><content type="html">A new tip is posted on Fusion Applications Developer Relations blog at:&lt;br /&gt;
&lt;h3 class="entry-title" style="background-color: white; color: red; font-family: Arial, Verdana, sans-serif; font-size: 20px; font-weight: normal; line-height: 25px; margin: 0px 0px 3px;"&gt;
&lt;a href="https://blogs.oracle.com/fadevrel/entry/tip_of_the_week_2"&gt;https://blogs.oracle.com/fadevrel/entry/tip_of_the_week_2&lt;/a&gt;&lt;/h3&gt;
&lt;img src="http://feeds.feedburner.com/~r/DareToCode/~4/rN2qfH2Jp5Y" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.fusion-adf.com/feeds/8604859244034517373/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=589834708478184487&amp;postID=8604859244034517373" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/589834708478184487/posts/default/8604859244034517373?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/589834708478184487/posts/default/8604859244034517373?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DareToCode/~3/rN2qfH2Jp5Y/tip-of-week2.html" title="Tip of the Week#2" /><author><name>Vivek Kumar</name><uri>https://plus.google.com/113470899999229420779</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-HDhivaZ92_k/AAAAAAAAAAI/AAAAAAAA3jE/lwCYaW9IPDo/s512-c/photo.jpg" /></author><thr:total>0</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://www.fusion-adf.com/2013/04/tip-of-week2.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkYAQXw-fip7ImA9WhBQGUo.&quot;"><id>tag:blogger.com,1999:blog-589834708478184487.post-2059313574438998486</id><published>2013-03-23T00:19:00.000+05:30</published><updated>2013-03-23T00:19:00.256+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2013-03-23T00:19:00.256+05:30</app:edited><title>Fusion Applications: Tip of the Week #1</title><content type="html">A reference to the Fusion Apps Developer Relations blog's new post Tip of the week ...&lt;br /&gt;
&lt;br /&gt;
https://blogs.oracle.com/fadevrel/entry/tip_of_the_week_1&lt;img src="http://feeds.feedburner.com/~r/DareToCode/~4/XL4Re-5ySKs" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.fusion-adf.com/feeds/2059313574438998486/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=589834708478184487&amp;postID=2059313574438998486" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/589834708478184487/posts/default/2059313574438998486?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/589834708478184487/posts/default/2059313574438998486?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DareToCode/~3/XL4Re-5ySKs/fusion-applications-tip-of-week-1.html" title="Fusion Applications: Tip of the Week #1" /><author><name>Vivek Kumar</name><uri>https://plus.google.com/113470899999229420779</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-HDhivaZ92_k/AAAAAAAAAAI/AAAAAAAA3jE/lwCYaW9IPDo/s512-c/photo.jpg" /></author><thr:total>0</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://www.fusion-adf.com/2013/03/fusion-applications-tip-of-week-1.html</feedburner:origLink></entry><entry gd:etag="W/&quot;Ak4ESXs8fyp7ImA9WhBQGUw.&quot;"><id>tag:blogger.com,1999:blog-589834708478184487.post-2351455089126777103</id><published>2013-03-22T07:51:00.001+05:30</published><updated>2013-03-22T07:51:48.577+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2013-03-22T07:51:48.577+05:30</app:edited><title>How to find if weblogic server is running in production or development mode</title><content type="html">With only weblogic console access if you wish to find if the weblogic server is running in development or production mode then here is the way:&lt;br /&gt;
&lt;br /&gt;
1. Login to weblogic console at http://server:port/console&lt;br /&gt;
2. On the left side under domain structure click on the domain name&lt;br /&gt;
3 Click on Configuration --&amp;gt; General tab on the right side&lt;br /&gt;
4. There will be a check box Production Mode. If is unchecked then it means it is running in development mode.&lt;img src="http://feeds.feedburner.com/~r/DareToCode/~4/gRGoj4BVNos" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.fusion-adf.com/feeds/2351455089126777103/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=589834708478184487&amp;postID=2351455089126777103" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/589834708478184487/posts/default/2351455089126777103?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/589834708478184487/posts/default/2351455089126777103?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DareToCode/~3/gRGoj4BVNos/how-to-find-if-weblogic-server-is.html" title="How to find if weblogic server is running in production or development mode" /><author><name>Vivek Kumar</name><uri>https://plus.google.com/113470899999229420779</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-HDhivaZ92_k/AAAAAAAAAAI/AAAAAAAA3jE/lwCYaW9IPDo/s512-c/photo.jpg" /></author><thr:total>0</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://www.fusion-adf.com/2013/03/how-to-find-if-weblogic-server-is.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A0MGQn84fip7ImA9WhBQEE4.&quot;"><id>tag:blogger.com,1999:blog-589834708478184487.post-4844644138440285565</id><published>2013-03-12T03:33:00.003+05:30</published><updated>2013-03-12T03:33:43.136+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2013-03-12T03:33:43.136+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Fusion Apps Developer Relations" /><title>Tailor, Customize, Extend, Personalize, Localize, and Integrate – All Explained</title><content type="html">Oracle Fusion Developer Relations Team has posted a new entry on their blog at https://blogs.oracle.com/fadevrel/entry/tailor_customize_extend_personalize_localize talking about various terms used in Fusion Applications.&lt;br /&gt;
&lt;br /&gt;
Please do read and leave a comment there.&lt;img src="http://feeds.feedburner.com/~r/DareToCode/~4/BuPG5FjjEgM" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.fusion-adf.com/feeds/4844644138440285565/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=589834708478184487&amp;postID=4844644138440285565" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/589834708478184487/posts/default/4844644138440285565?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/589834708478184487/posts/default/4844644138440285565?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DareToCode/~3/BuPG5FjjEgM/tailor-customize-extend-personalize.html" title="Tailor, Customize, Extend, Personalize, Localize, and Integrate – All Explained" /><author><name>Vivek Kumar</name><uri>https://plus.google.com/113470899999229420779</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-HDhivaZ92_k/AAAAAAAAAAI/AAAAAAAA3jE/lwCYaW9IPDo/s512-c/photo.jpg" /></author><thr:total>0</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://www.fusion-adf.com/2013/03/tailor-customize-extend-personalize.html</feedburner:origLink></entry><entry gd:etag="W/&quot;Ck8ASHY-cCp7ImA9WhBRFkk.&quot;"><id>tag:blogger.com,1999:blog-589834708478184487.post-5875503904470019622</id><published>2013-03-07T12:50:00.004+05:30</published><updated>2013-03-07T12:50:49.858+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2013-03-07T12:50:49.858+05:30</app:edited><title>Secrets of Google IO 13 Home Page Codes #io13</title><content type="html">Though this is not the place where I post these things but there was no point to create a new blog for just one such post.&lt;br /&gt;
&lt;br /&gt;
Here are all the graphical mystery pages that gets generated from google i/o 2013 home page live at http://google.com/io&lt;br /&gt;
&lt;br /&gt;
A space animation&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://2.bp.blogspot.com/-PnHl4ASLKTg/UTg8O3A28xI/AAAAAAAA33U/gRUoMDUdBy8/s1600/00101010.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="345" src="http://2.bp.blogspot.com/-PnHl4ASLKTg/UTg8O3A28xI/AAAAAAAA33U/gRUoMDUdBy8/s640/00101010.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;br /&gt;&lt;/div&gt;
The hotdog and the burger&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://1.bp.blogspot.com/-ORbCZekOD-Q/UTg8kT6CLbI/AAAAAAAA33c/MLbFrvCR4Cs/s1600/00111001.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="354" src="http://1.bp.blogspot.com/-ORbCZekOD-Q/UTg8kT6CLbI/AAAAAAAA33c/MLbFrvCR4Cs/s640/00111001.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
The space&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://3.bp.blogspot.com/-HK6Em7NAqBg/UTg8wdugQAI/AAAAAAAA33k/dmRn3UTpyAQ/s1600/01000101.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="352" src="http://3.bp.blogspot.com/-HK6Em7NAqBg/UTg8wdugQAI/AAAAAAAA33k/dmRn3UTpyAQ/s640/01000101.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
Random graphics&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://2.bp.blogspot.com/-OvT4zeKNuig/UTg9A7lWORI/AAAAAAAA33s/veluLSrIyMg/s1600/01010011.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="336" src="http://2.bp.blogspot.com/-OvT4zeKNuig/UTg9A7lWORI/AAAAAAAA33s/veluLSrIyMg/s640/01010011.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
the bowling&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://4.bp.blogspot.com/-tmlqaMBY0gI/UTg9Le4unBI/AAAAAAAA330/YHeBUCmTNPk/s1600/01110101.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="352" src="http://4.bp.blogspot.com/-tmlqaMBY0gI/UTg9Le4unBI/AAAAAAAA330/YHeBUCmTNPk/s640/01110101.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
The console&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://4.bp.blogspot.com/-7BORVGJpENM/UTg9Vpwkp8I/AAAAAAAA338/LxLryWE-Vfg/s1600/01111111.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="356" src="http://4.bp.blogspot.com/-7BORVGJpENM/UTg9Vpwkp8I/AAAAAAAA338/LxLryWE-Vfg/s640/01111111.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
A simple game to control ball using the paddle&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://3.bp.blogspot.com/-o-S9hs8sQs0/UTg9yXwFeSI/AAAAAAAA34M/M29xhw9SPsQ/s1600/Screen+Shot+2013-03-06+at+11.11.30+PM.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="640" src="http://3.bp.blogspot.com/-o-S9hs8sQs0/UTg9yXwFeSI/AAAAAAAA34M/M29xhw9SPsQ/s640/Screen+Shot+2013-03-06+at+11.11.30+PM.png" width="594" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
The amazing frequency control&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://1.bp.blogspot.com/-vq0AmVgs7UU/UTg-PPwlb7I/AAAAAAAA34U/oQY7vzZ03f8/s1600/Screen+Shot+2013-03-06+at+11.13.26+PM.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="314" src="http://1.bp.blogspot.com/-vq0AmVgs7UU/UTg-PPwlb7I/AAAAAAAA34U/oQY7vzZ03f8/s640/Screen+Shot+2013-03-06+at+11.13.26+PM.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
The&amp;nbsp;Omelette&amp;nbsp;&amp;nbsp;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://1.bp.blogspot.com/-T8xnkHlTiJg/UTg9h3Ar2YI/AAAAAAAA34I/D5f5-RnsvUc/s1600/10010000.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="332" src="http://1.bp.blogspot.com/-T8xnkHlTiJg/UTg9h3Ar2YI/AAAAAAAA34I/D5f5-RnsvUc/s640/10010000.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
Nice follow me game to test your memory&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://1.bp.blogspot.com/-wyGoCQlnxIc/UTg-cntMq8I/AAAAAAAA34c/588uasRfkHc/s1600/11010011.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="388" src="http://1.bp.blogspot.com/-wyGoCQlnxIc/UTg-cntMq8I/AAAAAAAA34c/588uasRfkHc/s640/11010011.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
Funky music band&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://1.bp.blogspot.com/-qkyZ0Ds0KCw/UTg-jjl7FfI/AAAAAAAA34k/9q9rzwsVWBw/s1600/11011011.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="414" src="http://1.bp.blogspot.com/-qkyZ0Ds0KCw/UTg-jjl7FfI/AAAAAAAA34k/9q9rzwsVWBw/s640/11011011.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
Caturday :)&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://3.bp.blogspot.com/-xyNgZSd0q6w/UTg-sNNHxhI/AAAAAAAA34s/6SMKO9pLX_A/s1600/11100111.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="336" src="http://3.bp.blogspot.com/-xyNgZSd0q6w/UTg-sNNHxhI/AAAAAAAA34s/6SMKO9pLX_A/s640/11100111.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;&lt;img src="http://feeds.feedburner.com/~r/DareToCode/~4/zSqm7ggHQgo" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.fusion-adf.com/feeds/5875503904470019622/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=589834708478184487&amp;postID=5875503904470019622" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/589834708478184487/posts/default/5875503904470019622?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/589834708478184487/posts/default/5875503904470019622?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DareToCode/~3/zSqm7ggHQgo/secrets-of-google-io-13-home-page-codes.html" title="Secrets of Google IO 13 Home Page Codes #io13" /><author><name>Vivek Kumar</name><uri>https://plus.google.com/113470899999229420779</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-HDhivaZ92_k/AAAAAAAAAAI/AAAAAAAA3jE/lwCYaW9IPDo/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/-PnHl4ASLKTg/UTg8O3A28xI/AAAAAAAA33U/gRUoMDUdBy8/s72-c/00101010.png" height="72" width="72" /><thr:total>1</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://www.fusion-adf.com/2013/03/secrets-of-google-io-13-home-page-codes.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEMDQH4-eSp7ImA9WhBREE0.&quot;"><id>tag:blogger.com,1999:blog-589834708478184487.post-8861412461878329837</id><published>2013-02-28T04:37:00.002+05:30</published><updated>2013-02-28T04:37:51.051+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2013-02-28T04:37:51.051+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Fusion Apps Developer Relations" /><title>Tailoring Fusion Applications in the Cloud Explained</title><content type="html">Here is an another useful post from Fusion Apps Developer Relations Team about tailoring fusion applications in the cloud&lt;br /&gt;
&lt;br /&gt;
https://blogs.oracle.com/fadevrel/entry/tailoring_fusion_applications_in_the&lt;img src="http://feeds.feedburner.com/~r/DareToCode/~4/Fqc9Op0LiLs" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.fusion-adf.com/feeds/8861412461878329837/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=589834708478184487&amp;postID=8861412461878329837" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/589834708478184487/posts/default/8861412461878329837?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/589834708478184487/posts/default/8861412461878329837?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DareToCode/~3/Fqc9Op0LiLs/tailoring-fusion-applications-in-cloud.html" title="Tailoring Fusion Applications in the Cloud Explained" /><author><name>Vivek Kumar</name><uri>https://plus.google.com/113470899999229420779</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-HDhivaZ92_k/AAAAAAAAAAI/AAAAAAAA3jE/lwCYaW9IPDo/s512-c/photo.jpg" /></author><thr:total>0</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://www.fusion-adf.com/2013/02/tailoring-fusion-applications-in-cloud.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEQAQnY_eip7ImA9WhNXFUU.&quot;"><id>tag:blogger.com,1999:blog-589834708478184487.post-8713006430837932095</id><published>2012-12-04T07:28:00.001+05:30</published><updated>2012-12-04T07:29:03.842+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-12-04T07:29:03.842+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="view object" /><category scheme="http://www.blogger.com/atom/ns#" term="entity object" /><category scheme="http://www.blogger.com/atom/ns#" term="ADF BC" /><category scheme="http://www.blogger.com/atom/ns#" term="refactor" /><title>ADF 11g: Lessons Learned in View Object refactoring</title><content type="html">Though this is not a common usecase and a lot of you might think why someone will ever do that? But, while implementing solutions which are not tried earlier by developer there might be switches from creating a entity based view object to transient view object or other way round that is, starting with a transient view object and then later decide to make it entity based. Lets take the later case:&lt;br /&gt;
&lt;br /&gt;
Converting a Transient View Object to Entity base View Object: Overall not a very commonly done activity but for those who may need to do it in future to save some efforts. It is just to go to 'Entity Objects' section on your view definition and then to shuttle the required entity object on which you want to base your view object. After this you may add required attributes from your entity using the option 'Add from entity' and can delete the transient attributes no longer needed.&lt;br /&gt;
&lt;br /&gt;
So, what't the issue?&lt;br /&gt;
&lt;br /&gt;
Well, if you go ahead with that view object definition and create a table based on a view instance of this view object you will see if coming nice. Try CRUD operations like create, update etc. and should be working as expected. &amp;nbsp;However, when I tried deleting a row it didn't work at all! So, I decided to debug it and one of the obvious way is set a debug point at remove() method of View object's row impl class and entity object's impl class. On debugging, what I found was: it was hitting the remove method in View Object's row Impl but was not stopping at entity object's impl. This indicated me some sort of configuration issues and I decided to create another view object based on the same entity object but this time in the natural expected way. On doing so in less than 2 minutes and spending some 5 minutes in comparing both the VO definitions carefully I found that in my original view object a property is set in the EntityUsages as follows:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;entityusage p="p"&gt;&amp;nbsp; &amp;nbsp; Name="CreditReceiverEO"&lt;br /&gt;
&amp;nbsp; &amp;nbsp; Entity="myapps.model.entity.CreditReceiverEO"&lt;br /&gt;
&amp;nbsp; &amp;nbsp; DeleteParticipant="false"/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And this explained everything. So, this property was probably set during the transient view creation and didnt get removed when I switched the VO to base on an entity object.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Conclusions: &amp;nbsp;&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
1. Avoid shortcuts in creating ADF BC objects unless you really understand the in and out of xml files generated.&lt;br /&gt;
&lt;br /&gt;
2. Whenever you see and awkward behavior try to do the things in natural way by keeping a backup of your existing app so that you can revert back later if needed.&lt;br /&gt;
&lt;br /&gt;
3. If point 2 is not a valid option all the time then just to create a copy or sample project with the same setup but in the natural manner and compare the generated xmls to see if you can find a clue.&lt;br /&gt;
&lt;br /&gt;
&lt;/entityusage&gt;&lt;img src="http://feeds.feedburner.com/~r/DareToCode/~4/CUDyCRyvvNc" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.fusion-adf.com/feeds/8713006430837932095/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=589834708478184487&amp;postID=8713006430837932095" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/589834708478184487/posts/default/8713006430837932095?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/589834708478184487/posts/default/8713006430837932095?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DareToCode/~3/CUDyCRyvvNc/adf-11g-lessons-learned-in-view-object.html" title="ADF 11g: Lessons Learned in View Object refactoring" /><author><name>Vivek Kumar</name><uri>https://plus.google.com/113470899999229420779</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-HDhivaZ92_k/AAAAAAAAAAI/AAAAAAAA3jE/lwCYaW9IPDo/s512-c/photo.jpg" /></author><thr:total>0</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://www.fusion-adf.com/2012/12/adf-11g-lessons-learned-in-view-object.html</feedburner:origLink></entry><entry gd:etag="W/&quot;Ck4NRnc5fCp7ImA9WhNXEU4.&quot;"><id>tag:blogger.com,1999:blog-589834708478184487.post-4385060350669176068</id><published>2012-11-29T00:59:00.003+05:30</published><updated>2012-11-29T00:59:57.924+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-11-29T00:59:57.924+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="mds" /><category scheme="http://www.blogger.com/atom/ns#" term="wlst" /><category scheme="http://www.blogger.com/atom/ns#" term="weblogic" /><title>ADF 11g: Deleting customizations metadata from MDS</title><content type="html">ADF 11g offers powerful ways to change or override the pieces of fusion applications via customization and personalization. It can be done in many ways like by administrator at run time to show hide certain components at different levels or layers like at site level, global lever etc. For meeting more specific needs the consultants can do the design time customizations by opening jdeveloper and then bundle them to override the behavior or application flow. Another interesting possibility is to extend fusion applications. One of the example for extension is say the application offers a Task flow showing employee and department data in a tree table structure. &amp;nbsp;You may want to manipulate this data in a totally different way and hence this may not be satisfied by customizing. At this point, extension comes to the rescue. What you can do is simply create a new bounded task flow with a new view activity as per your requirements. Then you can &amp;nbsp;customize the existing task flow by dropping your created bounded task flow and making it a default activity. To be able to ship it you will need to package your task flow artifacts as a adf library jar and the customization done as a mar file. Then the packaged adf library jar will be required to place in the exploded ear of your application in the WEB-INF/lib folder (assuming you only created a UI artifacts and reused existing model).&lt;br /&gt;
&lt;br /&gt;
For the mar file deployment, you will need to login to Enterprise Manager of your application server which is usually at http://your server:port/em location. In the em, after choosing your deployed application you will need to select MDS from the menu and have to import the mar file. On bouncing the server the newly created task flow will be launched instead of the one that was earlier present.&lt;br /&gt;
&lt;br /&gt;
There are situations when you may have to revert back to the original task flow so to be able to do you will need to delete the imported metadata. Two of the ways to do that is by:&lt;br /&gt;
1. Customization Manager which can be accessed by anyone with administrator&amp;nbsp;privileges.&lt;br /&gt;
2. By using the wlst console&lt;br /&gt;
&lt;br /&gt;
The focus of this post is on point 2 and here is how you can do that:&lt;br /&gt;
&lt;br /&gt;
To start the wlst console use:&lt;br /&gt;
&lt;wlst location="location"&gt;/wlst.sh&amp;nbsp;&lt;/wlst&gt;&lt;br /&gt;
&lt;br /&gt;
There are many places where wlst.sh may exist depending upon the weblogic version. Fusion applications also provide its own version of wlst.sh through the shipped libraries during the installation. Some of the typical locations are in&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div&gt;
&lt;span style="background-color: white; font-family: tahoma, verdana, sans-serif; text-align: -webkit-auto;"&gt;atgpf/common/bin/wlst.sh&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div&gt;
&lt;span style="font-family: Tahoma; text-align: -webkit-auto;"&gt;DefaultDomain/config/fmwconfig/wlst.sh&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;span style="font-family: Tahoma; text-align: -webkit-auto;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style="font-family: Tahoma; text-align: -webkit-auto;"&gt;wlst commands need either online or offline mode for them to work. So, the one being discussed here to delete metadata it needs the online mode. Which means you need to connect to the server on wlst console before running the command. So to connect you need to use:&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style="font-family: Tahoma; text-align: -webkit-auto;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div&gt;
&lt;span style="font-family: Tahoma; text-align: -webkit-auto;"&gt;connect('weblogic userna,e','weblogic1 password,'t3://server name:port')&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;span style="font-family: Tahoma; text-align: -webkit-auto;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style="font-family: Tahoma; text-align: -webkit-auto;"&gt;Once connected you can first see the imported meta data and then delete it. To get the metadata imported into the app you can use:&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style="font-family: Tahoma; text-align: -webkit-auto;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style="font-family: Tahoma; text-align: -webkit-auto;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div&gt;
&lt;span style="font-family: Tahoma; text-align: -webkit-auto;"&gt;exportMetadata(application='You Deployed App name',&lt;/span&gt;&lt;span style="font-family: Tahoma; text-align: -webkit-auto;"&gt;server='wls server name',toLocation='/tmp/myrepos',docs='/**')&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style="font-family: Tahoma; text-align: -webkit-auto;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style="font-family: Tahoma; text-align: -webkit-auto;"&gt;This will export all the mds meta data . You can selectively export by changing the docs option.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style="font-family: Tahoma; text-align: -webkit-auto;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style="font-family: Tahoma; text-align: -webkit-auto;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style="font-family: Tahoma; text-align: -webkit-auto;"&gt;Finally, to delete the metadata like in this case we want to delete just for the customized task flow you can use:&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style="font-family: Tahoma; text-align: -webkit-auto;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;pre style="background-color: white; text-align: -webkit-auto;" xml:space="preserve"&gt;deleteMetadata(application='&lt;span style="font-family: Tahoma; white-space: normal;"&gt;You Deployed App name&lt;/span&gt;',server='&lt;span style="font-family: Tahoma; white-space: normal;"&gt;wls server name&lt;/span&gt;', docs='/WEB-INF/.../ExistingTaskFlow.xml.xml')&lt;/pre&gt;
&lt;pre style="background-color: white; text-align: -webkit-auto;" xml:space="preserve"&gt;
&lt;/pre&gt;
&lt;pre style="background-color: white; text-align: -webkit-auto;" xml:space="preserve"&gt;&lt;span style="font-family: Tahoma; white-space: normal;"&gt;This should do the job and as I mentioned earlier the docs option can be changed to delete more than one artifact or all by using /**&lt;/span&gt;&lt;/pre&gt;
&lt;pre style="background-color: white; text-align: -webkit-auto;" xml:space="preserve"&gt;&lt;span style="font-family: Tahoma; white-space: normal;"&gt;
&lt;/span&gt;&lt;/pre&gt;
&lt;pre style="background-color: white; text-align: -webkit-auto;" xml:space="preserve"&gt;&lt;span style="font-family: Tahoma; white-space: normal;"&gt;Reference:&amp;nbsp;&lt;/span&gt;&lt;span style="background-color: transparent; white-space: normal;"&gt;&lt;span style="font-family: Tahoma;"&gt;http://docs.oracle.com/cd/E14571_01/web.1111/e13813/custom_mds.htm&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;pre style="background-color: white; text-align: -webkit-auto;" xml:space="preserve"&gt;
&lt;/pre&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;span style="font-family: Tahoma; text-align: -webkit-auto;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;img src="http://feeds.feedburner.com/~r/DareToCode/~4/4mv8NHKmpqs" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.fusion-adf.com/feeds/4385060350669176068/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=589834708478184487&amp;postID=4385060350669176068" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/589834708478184487/posts/default/4385060350669176068?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/589834708478184487/posts/default/4385060350669176068?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DareToCode/~3/4mv8NHKmpqs/adf-11g-deleting-customizations.html" title="ADF 11g: Deleting customizations metadata from MDS" /><author><name>Vivek Kumar</name><uri>https://plus.google.com/113470899999229420779</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-HDhivaZ92_k/AAAAAAAAAAI/AAAAAAAA3jE/lwCYaW9IPDo/s512-c/photo.jpg" /></author><thr:total>0</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://www.fusion-adf.com/2012/11/adf-11g-deleting-customizations.html</feedburner:origLink></entry><entry gd:etag="W/&quot;Dk4AQXYzfip7ImA9WhNQFEU.&quot;"><id>tag:blogger.com,1999:blog-589834708478184487.post-2011752232533165974</id><published>2012-11-21T13:32:00.001+05:30</published><updated>2012-11-21T13:32:20.886+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-11-21T13:32:20.886+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="LOV" /><category scheme="http://www.blogger.com/atom/ns#" term="ADF UI" /><title>ADF 11g: Getting Selected values from a LOV</title><content type="html">I had a table in the UI where one of the column is a LOV. The requirement was to default another field say PayeeName in the &amp;nbsp;same row based on value selected from the LOV only when the PayeeName field does not have a value already.&lt;br /&gt;
&lt;br /&gt;
To accomplish that the simplest idea is to bind the ReturnPopupEvent to a managed bean method and some how get one of the returned value from LOV in this method. Then check if the PayeeName field is null. If yes then update it otherwise just ignore. This can be done quite easily as follows:&lt;br /&gt;
&lt;br /&gt;
1. Go to the ReturnPopupEvent&amp;nbsp;property of the LOV and bind it to a manged bean method.&lt;br /&gt;
2. In the bean method you can write the code as below:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
public void myLOVListener(ReturnPopupEvent returnPopupEvent) { &amp;nbsp; &amp;nbsp; &lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;List lst= (List)returnPopupEvent.getReturnValue();&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;String value = null;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;for(Object obj : lst{&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; value &amp;nbsp;= ((Map)obj).get("RoleName"));&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if(value != null)&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;break;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;br /&gt;
//get the iterator binding to get handle of the current row &amp;nbsp; &amp;nbsp; &lt;br /&gt;
&amp;nbsp; DCBindingContainer bc =&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; (DCBindingContainer)BindingUtils.getBindingContext().getCurrentBindingsEntry();&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; DCIteratorBinding profItr =&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; bc.findIteratorBinding("MyTableVOIterator");&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Row rw = profItr.getViewObject().getCurrentRow();&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if(rw != null &amp;amp;&amp;amp; &amp;nbsp;rw.getAttribute("PayeeName") == null){&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; rw.setAttribute("PayeeName", value);&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }&lt;br /&gt;
&amp;nbsp; &amp;nbsp; }&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Please note that I am not really checking for null etc. as my intention is just to show how to use returned values from the returnPopupEvent.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Another important point to note down is that the LOV must have RoleName as one of the return attributes in its configuration in the model.&lt;br /&gt;
&lt;img src="http://feeds.feedburner.com/~r/DareToCode/~4/2ZZsoLl20p4" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.fusion-adf.com/feeds/2011752232533165974/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=589834708478184487&amp;postID=2011752232533165974" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/589834708478184487/posts/default/2011752232533165974?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/589834708478184487/posts/default/2011752232533165974?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DareToCode/~3/2ZZsoLl20p4/adf-11g-getting-selected-values-from-lov.html" title="ADF 11g: Getting Selected values from a LOV" /><author><name>Vivek Kumar</name><uri>https://plus.google.com/113470899999229420779</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-HDhivaZ92_k/AAAAAAAAAAI/AAAAAAAA3jE/lwCYaW9IPDo/s512-c/photo.jpg" /></author><thr:total>0</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://www.fusion-adf.com/2012/11/adf-11g-getting-selected-values-from-lov.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkEMR3wzeyp7ImA9WhNRE08.&quot;"><id>tag:blogger.com,1999:blog-589834708478184487.post-3560904954897292017</id><published>2012-11-08T03:14:00.001+05:30</published><updated>2012-11-08T03:14:46.283+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-11-08T03:14:46.283+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Jdeveloper" /><category scheme="http://www.blogger.com/atom/ns#" term="ADF" /><title>Mass Refactoring ADF Application</title><content type="html">There are occasions when you may need to refactor the entire adf application including model and view projects to align to certain standards based on your organizational requirements or as a developmental decision.&lt;br /&gt;
&lt;br /&gt;
Dev guide already covers on how to refactor different BC4J and UI artifacts like entity objects, task flows etc. You may refer the &lt;b&gt;fusion applications developer guide&lt;/b&gt; for the individual refactoring requirements at&amp;nbsp;&lt;a href="http://docs.oracle.com/cd/E15051_01/web.1111/b31974/refactoring.htm"&gt;http://docs.oracle.com/cd/E15051_01/web.1111/b31974/refactoring.htm&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
However, doing this object based refactoring could be just too painful depending upon the size of your application and yes of course time consuming as well. So, to make a change everywhere like converting the package name com.mycompany.&lt;b&gt;app&lt;/b&gt;.blawblaw &amp;nbsp;to com.mycompany.&lt;b&gt;newapp&lt;/b&gt;.blawblaw it will be required to change all the references of app to newapp in all the application files and also to rename the physical directory structure of the directory app to newapp. Here, are the steps you may find useful:&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Assumptions&lt;/b&gt;&lt;br /&gt;
1. Used jdeveloper 11g version 11.1.1.6.2&lt;br /&gt;
2. Used on windows 7&lt;br /&gt;
3. Your JDeveloper is closed (not essentially harmful to keep it open but not recommended)&lt;br /&gt;
&lt;br /&gt;
1. Take a good backup of your application before you start. Source control is a good way. However, I will still recommend to take a physical backup by just copy paste the app folder to somewhere else. Sometimes, source control might get crazy to figure out mass changes from outside the jdeveloper.&lt;br /&gt;
2. Download a good search and replace tool like I used&amp;nbsp;http://www.divlocsoft.com/index.htm&lt;br /&gt;
3. Browse the tool to the root of your adf workspace and do a search with a filter mask&amp;nbsp;*.jpr; *.jpx; *.java; *.xcfg; *.xlf; *.xml; *.cpx; *.adfc_diagram; &amp;nbsp;*.dcx&lt;br /&gt;
4. Above will make sure to capture all the relevant files from workspace from model and view controller project. Then search and replace the following:&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;.app. to .newapp. &amp;nbsp; for fixing all the packages&lt;/li&gt;
&lt;li&gt;_app_ to _newapp_ to fix databindings.cpx with correct usageIds&amp;nbsp;&lt;/li&gt;
&lt;li&gt;/app/ to /newapp/ to fix taskflow path references etc&lt;/li&gt;
&lt;/ul&gt;
&lt;div&gt;
5. Once file content refactoring is done there comes a bit manual work. Now, you need to rename all the directories with name app to newapp&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Now, start your jdeveloper and you should be all set.&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
A point to not forget is to use jdeveloper based refactoring if there are very less number of artifacts and not really a need of moving jpx, jpr files etc.&lt;/div&gt;
&lt;img src="http://feeds.feedburner.com/~r/DareToCode/~4/K2lJbWBr5-k" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.fusion-adf.com/feeds/3560904954897292017/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=589834708478184487&amp;postID=3560904954897292017" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/589834708478184487/posts/default/3560904954897292017?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/589834708478184487/posts/default/3560904954897292017?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DareToCode/~3/K2lJbWBr5-k/mass-refactoring-adf-application.html" title="Mass Refactoring ADF Application" /><author><name>Vivek Kumar</name><uri>https://plus.google.com/113470899999229420779</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-HDhivaZ92_k/AAAAAAAAAAI/AAAAAAAA3jE/lwCYaW9IPDo/s512-c/photo.jpg" /></author><thr:total>0</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://www.fusion-adf.com/2012/11/mass-refactoring-adf-application.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A0IASH4_cSp7ImA9WhNSEkU.&quot;"><id>tag:blogger.com,1999:blog-589834708478184487.post-5087685732741101302</id><published>2012-10-27T03:42:00.000+05:30</published><updated>2012-10-27T03:42:29.049+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-10-27T03:42:29.049+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Jdeveloper" /><category scheme="http://www.blogger.com/atom/ns#" term="svn" /><title>Jdeveloper 11g: Enabling SVN </title><content type="html">If you are using RUP1 or RUP3(Rel4) versions of jdeveloper from edelivery.oracle.com for the development and wish to use svn (subversion) for the source control (which you must unless you are using another version control program). Then you will find that svn is disabled by default. You will see it in preferences as available but no way to use it.&lt;br /&gt;
&lt;br /&gt;
This is intentionally done to fix some bugs in the past about startup hanging issues for jdeveloper. Here, is the solution for the same.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Go to &lt;mw_home&gt;/jdeveloper/jdev/roles/oracle.apps.role.xml&lt;/mw_home&gt;&lt;/li&gt;
&lt;li&gt;Delete line 17 which disables subversion&lt;/li&gt;
&lt;li&gt;Restart jdeveloper&amp;nbsp;&lt;/li&gt;
&lt;/ul&gt;
&lt;div&gt;
Now, you should see the options to provide svn repository.&lt;/div&gt;
&lt;img src="http://feeds.feedburner.com/~r/DareToCode/~4/aI5Ft4iVHmI" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.fusion-adf.com/feeds/5087685732741101302/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=589834708478184487&amp;postID=5087685732741101302" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/589834708478184487/posts/default/5087685732741101302?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/589834708478184487/posts/default/5087685732741101302?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DareToCode/~3/aI5Ft4iVHmI/jdeveloper-11g-enabling-svn.html" title="Jdeveloper 11g: Enabling SVN " /><author><name>Vivek Kumar</name><uri>https://plus.google.com/113470899999229420779</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-HDhivaZ92_k/AAAAAAAAAAI/AAAAAAAA3jE/lwCYaW9IPDo/s512-c/photo.jpg" /></author><thr:total>0</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://www.fusion-adf.com/2012/10/jdeveloper-11g-enabling-svn.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DE4AQXw8fCp7ImA9WhNTFkw.&quot;"><id>tag:blogger.com,1999:blog-589834708478184487.post-4580219555382316048</id><published>2012-10-19T08:52:00.000+05:30</published><updated>2012-10-19T08:52:20.274+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-10-19T08:52:20.274+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Jdeveloper" /><title>Jdeveloper 11g:  Could not reserve enough space for object heap</title><content type="html">Today morning, all of sudden my application running on jdeveloper 11.1.1.5.3 on a windows 7 64 bit machine stopped running. To be more precise I was hitting the following exception during the application deployment:&lt;br /&gt;
&lt;br /&gt;
GC overhead exceeded&lt;br /&gt;
&lt;br /&gt;
So, the natural answer was to look for permgen space and related memory jvm parameters for the possible issues. On looking into setDomain.env at jdeveloper/&lt;system directoy="directoy"&gt;/DefaultDomain/bin I found the following:&lt;/system&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
MEM_MAX_PERM_SIZE_64BIT="-XX:MaxPermSize=256M"&lt;br /&gt;
export MEM_MAX_PERM_SIZE_64BIT&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
So, I bumped it to 1024M. &amp;nbsp;I started my server again and it did not help. So, next thing to look was to check the jvm parameters at wls startup in jdev console and I found as follows:&lt;br /&gt;
&lt;br /&gt;
C:\Oracle\Middleware11153\jdk160_24\bin\java -client &amp;nbsp; -Xms32M -Xmx512M -XX:CompileThreshold=8000 -XX:PermSize=64M &amp;nbsp;-XX:MaxPermSize=1024M -D&lt;br /&gt;
&lt;br /&gt;
Looking into it string gave me another hint on parameter -Xmx512M which is also not quite enough and could be the cause of issue. So, I decided to bump it to 1024M. To change this parameter I had options to update it in my jdev launch script which looks like as follows:&lt;br /&gt;
&lt;br /&gt;
myjdev.cmd&lt;br /&gt;
============================&lt;br /&gt;
&lt;br /&gt;
set MW_HOME=C:\Oracle\Middleware11153&lt;br /&gt;
set JAVA_HOME=%MW_HOME%\jdk1.6.0_34&lt;br /&gt;
set PATH =%JAVA_HOME%\bin;%PATH%&lt;br /&gt;
set JDEV_USER_HOME=C:\Users\vskumar\AppData\Roaming\JDeveloper&lt;br /&gt;
set FADEV_VERBOSE=true&lt;br /&gt;
set USER_MEM_ARGS=-Xms256m -Xmx256m -XX:MaxPermSize=1024m -XX:CompileThreshold=8000&lt;br /&gt;
%MW_HOME%\jdeveloper\jdeveloper.exe&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
So, I went ahead and modified the line starting with set USER_MEM_ARGS to look like as follows:&lt;br /&gt;
set USER_MEM_ARGS=-Xms256m &lt;b&gt;-Xmx1024m&lt;/b&gt; -XX:MaxPermSize=1024m -XX:CompileThreshold=8000&lt;br /&gt;
&lt;br /&gt;
and fired this command. After jdev launch I started the integrated wls and it failed with error as follows:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Error occurred during initialization of VM&lt;br /&gt;
Could not reserve enough space for object heap&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
as I had changed Xmx param as the last thing so kind of guessed it as the issue and reduced it to 768M. And the same problem. So, I reduced it further to 640M and this I did not see the error. Though 640M was not satisfactory but was higher than previous 512M so, I thought its ok to go ahead and hopefully the error will go away as well. And, after couple of minutes later against my expectations it failed again with a new error this time. It was as follows:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
**************************************************************************&lt;br /&gt;
The WebLogic Server encountered a critical failure&lt;br /&gt;
Reason: unable to create new native thread&lt;br /&gt;
***************************************************************************&lt;br /&gt;
&lt;oct 18="18" 1:05:14="1:05:14" 2012="2012" pdt="pdt" pm="pm"&gt; &lt;notice&gt; &lt;weblogicserver&gt; &lt;bea -000365="-000365"&gt; &lt;server changed="changed" force_shutting_down="force_shutting_down" state="state" to="to"&gt;&amp;nbsp;&lt;/server&gt;&lt;/bea&gt;&lt;/weblogicserver&gt;&lt;/notice&gt;&lt;/oct&gt;&lt;br /&gt;
Throwing I/O exception: "MapViewOfFile: handle=7212 hiOffset=0 loOffset=0 size=1114112, Not enough storage is available to process this command., errno=8" errno = 8&lt;br /&gt;
Throwing I/O exception: "MapViewOfFile: handle=7212 hiOffset=0 loOffset=0 size=1114112, Not enough storage is available to process this command., errno=8" errno = 8&lt;br /&gt;
Throwing I/O exception: "MapViewOfFile: handle=7212 hiOffset=0 loOffset=0 size=1048576, Not enough storage is available to process this command., errno=8" errno = 8&lt;br /&gt;
&lt;br /&gt;
This kind of indicated me a physical memory issue with RAM or harddisk. I have 8gb ram on my machine with no app running so was sure that certainly I do not have low memory. I had more than 10 gig free space on my c drive where all this was running. So, what to do next? I reviewed my setDomain.env, ide.conf and jdev.conf files and changed all the places mem related parameters to 1024M but all with no results. I then changed my cmd script Xmx parameter back to 1024M as I thought this error is just an effect of error above it and will go away if I can fix that one. Hence, I was back to error&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Error occurred during initialization of VM&lt;br /&gt;
Could not reserve enough space for object heap&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
I decided to google for it and bumped into a thread talking about the possible reason that windows tries to allocate a&amp;nbsp;contiguous memory to run vm and it fails to do so due to fragmentation etc and hence causes it. One of the solution in the same thread suggested to switch to a 64 bit jdk as a possible fix. Having no other options I downloaded&lt;a href="http://www.oracle.com/technetwork/java/javase/downloads/jdk-6u32-downloads-1594644.html" target="_blank"&gt; jdk6 64bit&lt;/a&gt;&amp;nbsp;at location c:\proram files\java\jdk1.6.0_34&amp;nbsp;and updated my launch script JAVA_HOME line as follows:&lt;br /&gt;
&lt;br /&gt;
set JAVA_HOME = C:\Program Files\Java\jdk1.6.0_34&lt;br /&gt;
&lt;br /&gt;
Hoping all goes well i started jdev and then integrated wls. During startup I observed it is still picking up the old 32 bit version which was strange. So, I started looking again what is the issue for not picking the 64 bit jdk. I looked into jdev.conf and found an entry like:&lt;br /&gt;
&lt;br /&gt;
SetJavaHome C:\Program Files\Java\jdk1.6.0&lt;br /&gt;
&lt;br /&gt;
So, thinking this could be the issue I closed my jdev and commented this line. I kicked my jdev again and on startup as expected it asked me to provide java.exe location. I provided the 64 bit version java.exe location and finally jdev started. However, on starting the integrated WLS I was seeing the same old 32 bit version picked. I&amp;nbsp;thought it might be picking it from setDomain.env and opened it but found its referring JAVA_HOME param rather a hard coded value. I thought to give it a try and added the value manually to it as follows:&lt;br /&gt;
&lt;br /&gt;
set JAVA_HOME = "C:\Program Files\Java\jdk1.6.0_34"&lt;br /&gt;
&lt;br /&gt;
I kicked my domain startup again but was still seeing the old jdk used and was&amp;nbsp;frustrated on whats going on. I had no guesses left here and all of a sudden a friend suggested could it be that it doesn't like spaces?&amp;nbsp;With no other options left we thought to give that too a try and i removed spaces to look it like:&lt;br /&gt;
&lt;br /&gt;
set JAVA_HOME="C:\Program Files\Java\jdk1.6.0_34"&lt;br /&gt;
&lt;br /&gt;
And, that was the culprit here! The spaces which my friend discovered as a possible issue was the least expected thing to be causing this particular issue. So, I then removed this hardcoded value and fixed my script launcher values as well accordingly.&lt;br /&gt;
&lt;br /&gt;
Needless to say, all my issues related memory got resolved and things worked fine after spending almost a day on this issue.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Key Takeaways&lt;/b&gt;&lt;br /&gt;
&lt;b&gt;===========================&lt;/b&gt;&lt;br /&gt;
1. Make sure not to have extra spaces in the set parameters in case of using windows.&lt;br /&gt;
2. It is strongly recommended to use a 64 bit jdk. I am not sure why oracle ships 32 bit jdk with jdeveloper when this is recommended in dev guide as well.&lt;br /&gt;
3. Have a launcherScript to set jvm params on startup rather launching jdev directly from program menu.&lt;br /&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;
&lt;img src="http://feeds.feedburner.com/~r/DareToCode/~4/60T321R1sQw" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.fusion-adf.com/feeds/4580219555382316048/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=589834708478184487&amp;postID=4580219555382316048" title="3 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/589834708478184487/posts/default/4580219555382316048?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/589834708478184487/posts/default/4580219555382316048?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DareToCode/~3/60T321R1sQw/jdeveloper-11g-could-not-reserve-enough.html" title="Jdeveloper 11g:  Could not reserve enough space for object heap" /><author><name>Vivek Kumar</name><uri>https://plus.google.com/113470899999229420779</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-HDhivaZ92_k/AAAAAAAAAAI/AAAAAAAA3jE/lwCYaW9IPDo/s512-c/photo.jpg" /></author><thr:total>3</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://www.fusion-adf.com/2012/10/jdeveloper-11g-could-not-reserve-enough.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C04FSHY4cSp7ImA9WhNTFkw.&quot;"><id>tag:blogger.com,1999:blog-589834708478184487.post-7978393771123919966</id><published>2012-10-16T22:48:00.002+05:30</published><updated>2012-10-19T07:28:39.839+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-10-19T07:28:39.839+05:30</app:edited><title>ADF 11g: Entity Object (EO) Insert cycle</title><content type="html">It is quite important to understand entity lifecycle which involved different types of validations firing at different stages. It typically starts when an entity is created in the middletier when you invoke a vo.createRow() via UI or programmatically. The entity lifecyle is over at the time it is properly committed to the database. This cycle gets quite complex if there are multiple&amp;nbsp;entities involved. If&amp;nbsp;entities&amp;nbsp;are associated like in a master-detail then validation cycles are extended to validate child entity as well during master entity validation. The best way to depict this is via a diagram as below:&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://4.bp.blogspot.com/-PkeDM4NMUfg/UH2Wh3H_dwI/AAAAAAAA274/pevGg9XtnLg/s1600/entity+inserts.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="480" src="http://4.bp.blogspot.com/-PkeDM4NMUfg/UH2Wh3H_dwI/AAAAAAAA274/pevGg9XtnLg/s640/entity+inserts.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;
I am not really spending time to explain each and every phase of this lifecycle as documentation does a good job for that. This post should be useful as a quick reference to the readers and quite important to understand to be able to handle some situations where it is required to decide where to place certain code.&lt;img src="http://feeds.feedburner.com/~r/DareToCode/~4/vlgGS-JEMKc" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.fusion-adf.com/feeds/7978393771123919966/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=589834708478184487&amp;postID=7978393771123919966" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/589834708478184487/posts/default/7978393771123919966?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/589834708478184487/posts/default/7978393771123919966?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DareToCode/~3/vlgGS-JEMKc/adf-11g-insert-cycle.html" title="ADF 11g: Entity Object (EO) Insert cycle" /><author><name>Vivek Kumar</name><uri>https://plus.google.com/113470899999229420779</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-HDhivaZ92_k/AAAAAAAAAAI/AAAAAAAA3jE/lwCYaW9IPDo/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/-PkeDM4NMUfg/UH2Wh3H_dwI/AAAAAAAA274/pevGg9XtnLg/s72-c/entity+inserts.png" height="72" width="72" /><thr:total>0</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://www.fusion-adf.com/2012/10/adf-11g-insert-cycle.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0IHQHc-fip7ImA9WhNTE0g.&quot;"><id>tag:blogger.com,1999:blog-589834708478184487.post-864192606745732377</id><published>2012-10-16T07:08:00.004+05:30</published><updated>2012-10-16T07:08:51.956+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-10-16T07:08:51.956+05:30</app:edited><title>ADF 11g: CreateAndInitRow</title><content type="html">&lt;br /&gt;
This one is rather a quite small post but might be useful for people quickly looking for a way to initialize a vo row at the time of creation. This method like createRow() only creates a new row but does not actually inserts into the vo. So, you will still need to call vo.insertRow(row). Here, is the syntax&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Row myRow = ruleAttrIter.createAndInitRow(new NameValuePairs(new String[] { "AttributeName" },&amp;nbsp;new Object[] { "AttributeValue" }));&lt;br /&gt;
&lt;br /&gt;
More than one attribute can be supplied comma separated.&lt;br /&gt;
&lt;img src="http://feeds.feedburner.com/~r/DareToCode/~4/dtH9kSee09U" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.fusion-adf.com/feeds/864192606745732377/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=589834708478184487&amp;postID=864192606745732377" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/589834708478184487/posts/default/864192606745732377?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/589834708478184487/posts/default/864192606745732377?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DareToCode/~3/dtH9kSee09U/adf-11g-createandinitrow.html" title="ADF 11g: CreateAndInitRow" /><author><name>Vivek Kumar</name><uri>https://plus.google.com/113470899999229420779</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-HDhivaZ92_k/AAAAAAAAAAI/AAAAAAAA3jE/lwCYaW9IPDo/s512-c/photo.jpg" /></author><thr:total>0</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://www.fusion-adf.com/2012/10/adf-11g-createandinitrow.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0IFQnczeip7ImA9WhNTEU0.&quot;"><id>tag:blogger.com,1999:blog-589834708478184487.post-26709772399432617</id><published>2012-10-13T10:48:00.000+05:30</published><updated>2012-10-13T10:48:33.982+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-10-13T10:48:33.982+05:30</app:edited><title>Refreshing Table Components for LOV bindings</title><content type="html">Though this post is applicable for other type of bindings as well but just mentioning the use case where I found the issue and solved it. So, here is the scenario:&lt;br /&gt;
&lt;br /&gt;
1. Create a VO having a at least one string attribute&lt;br /&gt;
2. Drop it on a page as a table from data control as a result a popup window will open up for selecting the type of component to use for table columns. In string type attribute choices will be like input text w/label, output text.&lt;br /&gt;
3. On clicking ok a table will be created on your page.&lt;br /&gt;
4. On trying to create a new row in the table you will see an input box for the string type column. So far so good.&lt;br /&gt;
5. Now, say you want this field to be a List of Values (LOV). So, you go ahead and enable LOV on the attribute in the VO, set UI hints accordingly.&lt;br /&gt;
6. On coming to page and clicking on the component the edit icon will be enabled. Clicking on this icon will bring the same popup which comes in step 2. However, in the list of components you will still see the old choices and no lov component.&lt;br /&gt;
&lt;br /&gt;
So, the worst case fix for this problem is to delete the table and recreate it. However, this is not a good choice when you have already built your page and have made some changes etc to the table as all will be gone on delete. How to fix then?&lt;br /&gt;
&lt;br /&gt;
There is a very useful option that comes to the rescue in this case. Right click on the table component on your page and select the "Rebind to another ADF control". This will open a popup window from where you can chose the same VO instance again and boom! &amp;nbsp;All will work fine. Only drawback is, if you had deleted some attributes previously then you have to redo that and things like order of display of the columns.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;img src="http://feeds.feedburner.com/~r/DareToCode/~4/bwjYUWvkom4" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.fusion-adf.com/feeds/26709772399432617/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=589834708478184487&amp;postID=26709772399432617" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/589834708478184487/posts/default/26709772399432617?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/589834708478184487/posts/default/26709772399432617?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DareToCode/~3/bwjYUWvkom4/refreshing-table-components-for-lov.html" title="Refreshing Table Components for LOV bindings" /><author><name>Vivek Kumar</name><uri>https://plus.google.com/113470899999229420779</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-HDhivaZ92_k/AAAAAAAAAAI/AAAAAAAA3jE/lwCYaW9IPDo/s512-c/photo.jpg" /></author><thr:total>0</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://www.fusion-adf.com/2012/10/refreshing-table-components-for-lov.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DE4FRXsycSp7ImA9WhJUFEs.&quot;"><id>tag:blogger.com,1999:blog-589834708478184487.post-4327733882400074365</id><published>2012-09-12T21:51:00.001+05:30</published><updated>2012-09-12T21:51:54.599+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-09-12T21:51:54.599+05:30</app:edited><title>Hooking up Pivotal Tracker to Google App Engine for java</title><content type="html">Though this post is no where related to ADF but I dont want to create a new blog for just one post. Sorry for that !&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.pivotaltracker.com/" target="_blank"&gt;Pivotal Tracker&lt;/a&gt; is an amazing agile development supporting bug/feature/story tracker system well suited for fast result oriented developments. We at &lt;a href="http://www.sakshum.org/" target="_blank"&gt;Sakshum&lt;/a&gt;&amp;nbsp;recently started using it for our development environment. Sakshum web application is hosted on Google's amazing cloud platform called &lt;a href="https://appengine.google.com/" target="_blank"&gt;Google App Engine&lt;/a&gt;&amp;nbsp;. A natural requirement came up to be able to create stories to pivtoalTracker from google app engine when exceptional situations occur time to time. PivotalTracker's api page list only curl commands to show how a HTTP request may work to do that. We struggled quite a bit to make it work and thought to put the code here for the people who might be facing the same problem.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;String pivotalUrl = "http://www.pivotaltracker.com/services/v3/projects/&lt;your id="id" project="project"&gt;/stories";&amp;nbsp;&lt;/your&gt;&lt;br /&gt;
&amp;nbsp; &lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;String body = "&lt;story&gt;&lt;story_type&gt;bug&lt;/story_type&gt;&lt;name&gt;" + storyTitle + "&lt;/name&gt;&lt;description&gt;" + storyDesc + "&lt;/description&gt;&lt;requested_by&gt;TEAM MEMBER NAME &lt;/requested_by&gt;&lt;/story&gt;";&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp; &lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;try{&lt;br /&gt;
&amp;nbsp; &lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;URLFetchService fetchService = URLFetchServiceFactory.getURLFetchService();&lt;br /&gt;
&amp;nbsp; &lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt; &amp;nbsp;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;HTTPRequest request = new HTTPRequest(new URL(pivotalUrl), HTTPMethod.POST, &amp;nbsp;FetchOptions.Builder.withDeadline(30));&lt;br /&gt;
&amp;nbsp; &lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt; &amp;nbsp;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;request.addHeader(new HTTPHeader("X-TrackerToken","YOUR TOKEN"));&lt;br /&gt;
&amp;nbsp; &lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt; &amp;nbsp;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;request.addHeader(new HTTPHeader("Content-type","application/xml"));&lt;br /&gt;
&amp;nbsp; &lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt; &amp;nbsp;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;request.setPayload(body.getBytes());&lt;br /&gt;
&amp;nbsp; &lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt; &amp;nbsp;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;HTTPResponse response = fetchService.fetch(request);&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp; &lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt; &amp;nbsp;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;if (response.getResponseCode() != 200) {&lt;br /&gt;
&amp;nbsp; &lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt; &amp;nbsp;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;log.info("Could not create story as response code is:" + response.getResponseCode());&lt;br /&gt;
&amp;nbsp; &lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt; &amp;nbsp;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;} &amp;nbsp;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt; &amp;nbsp;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;}catch(Exception e){&lt;br /&gt;
&amp;nbsp; &lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt; e.printStackTrace();&lt;br /&gt;
&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt; &amp;nbsp;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Make sure to have the TEAM MEMBER NAME a valid team member in the pivotal tracker else this wont work at all.&lt;br /&gt;
&lt;br /&gt;
PivotalTracker api page for reference is &lt;a href="https://www.pivotaltracker.com/help/api?version=v3#get_activity" target="_blank"&gt;here&lt;/a&gt;&lt;br /&gt;
&lt;img src="http://feeds.feedburner.com/~r/DareToCode/~4/n9tAZw41xmg" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.fusion-adf.com/feeds/4327733882400074365/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=589834708478184487&amp;postID=4327733882400074365" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/589834708478184487/posts/default/4327733882400074365?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/589834708478184487/posts/default/4327733882400074365?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DareToCode/~3/n9tAZw41xmg/hooking-up-pivotal-tracker-to-google.html" title="Hooking up Pivotal Tracker to Google App Engine for java" /><author><name>Vivek Kumar</name><uri>https://plus.google.com/113470899999229420779</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-HDhivaZ92_k/AAAAAAAAAAI/AAAAAAAA3jE/lwCYaW9IPDo/s512-c/photo.jpg" /></author><thr:total>0</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://www.fusion-adf.com/2012/09/hooking-up-pivotal-tracker-to-google.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DE4ARnk8fyp7ImA9WhJUEEk.&quot;"><id>tag:blogger.com,1999:blog-589834708478184487.post-5665785515044082566</id><published>2012-09-08T01:12:00.001+05:30</published><updated>2012-09-08T01:12:27.777+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-09-08T01:12:27.777+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="ADF UI" /><title>QBE behavior in ADF 11g</title><content type="html">QBE - Query By Example is an awesome feature for ADF 11g tables and a number of times can eliminate the need of a search panel completely if you are limited to search the data based on a particular column values.&lt;br /&gt;
&lt;br /&gt;
I am not saying anything new here but just highlighting this feature. So, also does not make sense to copy paste from dev guide etc. All the supported operators are well documented at&amp;nbsp;http://docs.oracle.com/cd/E23943_01/web.1111/e16272/databound_forms.htm#ADFJE389&lt;br /&gt;
&lt;br /&gt;
For those who want to change the QBE behavior for more advance requirements then there is a way to do that well. There is an excellent whitepaper on that and can be followed at&amp;nbsp;&lt;a href="https://docs.google.com/viewer?url=http%3A%2F%2Fwww.oracle.com%2Ftechnetwork%2Fdeveloper-tools%2Fadf%2Flearnmore%2F30-table-filter-queries-169172.pdf" style="font-family: Tahoma; text-align: -webkit-auto;"&gt;https://docs.google.com/viewer?url=http%3A%2F%2Fwww.oracle.com%2Ftechnetwork%2Fdeveloper-tools%2Fadf%2Flearnmore%2F30-table-filter-queries-169172.pdf&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;&lt;img src="http://feeds.feedburner.com/~r/DareToCode/~4/BzY16mt4jYs" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.fusion-adf.com/feeds/5665785515044082566/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=589834708478184487&amp;postID=5665785515044082566" title="5 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/589834708478184487/posts/default/5665785515044082566?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/589834708478184487/posts/default/5665785515044082566?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DareToCode/~3/BzY16mt4jYs/qbe-behavior-in-adf-11g.html" title="QBE behavior in ADF 11g" /><author><name>Vivek Kumar</name><uri>https://plus.google.com/113470899999229420779</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-HDhivaZ92_k/AAAAAAAAAAI/AAAAAAAA3jE/lwCYaW9IPDo/s512-c/photo.jpg" /></author><thr:total>5</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://www.fusion-adf.com/2012/09/qbe-behavior-in-adf-11g.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUECRno4fyp7ImA9WhJRFUs.&quot;"><id>tag:blogger.com,1999:blog-589834708478184487.post-4678158235435286711</id><published>2012-07-18T03:51:00.001+05:30</published><updated>2012-07-18T03:51:07.437+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-07-18T03:51:07.437+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="ADF Declarative components" /><title>Creating a Clickable Text Declarative Component in ADF 11g</title><content type="html">This post is on how to create a clickable text declarative component in ADF 11g. &amp;nbsp;Let me explain a bit on the exact requirements here.&lt;br /&gt;
&lt;br /&gt;
So, we need a text component which shows a small cross icon on the top right corner. This cross icon on click should hide the component from the page. The rich adf faces libraries does not provide any component with this capability. However, it is very easy to create such components using the concept of 'Declarative Components'. I don't want to copy paste the steps from the dev guide which I followed to build this one. Here is the &lt;a href="http://docs.oracle.com/cd/E26098_01/web.1112/e16181/af_reuse.htm#ADFUI678" target="_blank"&gt;link for dev guide&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Broader steps are:&lt;br /&gt;
1. Create a new project for your component. Choose option 'JSF Declarative Component'&lt;br /&gt;
2. Select or create a new tag library to contain the component.&lt;br /&gt;
3. Choose custom component class checkbox if you want to add some custom login in the component.&lt;br /&gt;
4. Add facets, attributes and methods to design the look and feel and behavior of your component.&lt;br /&gt;
&lt;br /&gt;
Once you are done with your declarative component then it behind scene creates a metadata definition of the component. Once the component is created it can be deployed by packaging it as a ADF library jar. The details are again mentioned in the same section on the above provided link.&lt;br /&gt;
&lt;br /&gt;
Let's talk about a bit on the design of the 'Clickable Text' component. Let call it Text comp for the simplicity.&lt;br /&gt;
1. Text Comp is designed by defining two attributes textValue (for holding the text value) and partialSubmit to expose the partialSubmit property of the close icon.&lt;br /&gt;
2. For design panelGroupLayout with default property is taken.&lt;br /&gt;
3. An outputText and a commandLink component is then dropped on it. CommandLink component further embeds the close icon.&lt;br /&gt;
4. To get the required alignment outputText is set with a top margin 50px in this case.&lt;br /&gt;
5. Another attribute of type method is created in the component definition with signature&amp;nbsp;void method(javax.faces.event.ActionEvent) and bound to the action of the commandLink.&lt;br /&gt;
&lt;br /&gt;
The resultant component looks like as follows:&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://1.bp.blogspot.com/-w6ON3gE4MWM/UAXj43vZAfI/AAAAAAAA0Oo/DHeY2MEEm_w/s1600/custComp.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-w6ON3gE4MWM/UAXj43vZAfI/AAAAAAAA0Oo/DHeY2MEEm_w/s1600/custComp.PNG" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
You can grab this workspace for using this component or for a detailed reference of implementation &lt;a href="https://docs.google.com/open?id=0BwMHadroX7nQUTk2ZXRDOVkybVU" target="_blank"&gt;here&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
The target application where you want to use this component will need you to provide some default text for this component and binding the actionListener.&lt;img src="http://feeds.feedburner.com/~r/DareToCode/~4/V5uVmIRyvwk" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.fusion-adf.com/feeds/4678158235435286711/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=589834708478184487&amp;postID=4678158235435286711" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/589834708478184487/posts/default/4678158235435286711?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/589834708478184487/posts/default/4678158235435286711?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DareToCode/~3/V5uVmIRyvwk/creating-clickable-text-declarative.html" title="Creating a Clickable Text Declarative Component in ADF 11g" /><author><name>Vivek Kumar</name><uri>https://plus.google.com/113470899999229420779</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-HDhivaZ92_k/AAAAAAAAAAI/AAAAAAAA3jE/lwCYaW9IPDo/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/-w6ON3gE4MWM/UAXj43vZAfI/AAAAAAAA0Oo/DHeY2MEEm_w/s72-c/custComp.PNG" height="72" width="72" /><thr:total>0</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://www.fusion-adf.com/2012/07/creating-clickable-text-declarative.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DUUFR3c-eyp7ImA9WhJRFEs.&quot;"><id>tag:blogger.com,1999:blog-589834708478184487.post-6744514792786470094</id><published>2012-07-17T01:03:00.003+05:30</published><updated>2012-07-17T01:03:36.953+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-07-17T01:03:36.953+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="ADF" /><title>ADF Anti Patterns</title><content type="html">I was looking into some of the anti patterns followed by developers while build applications for the enterprise World. I came across one of the useful doc in this direction by ADF-EMG group at&amp;nbsp;https://sites.google.com/site/oracleemg/adf/files&lt;br /&gt;
&lt;br /&gt;
I would still like to summarize the covered anti-patterns here for a quick review:&lt;br /&gt;
&lt;br /&gt;
1. Do not use Composite Primary Keys. Better to use sequences as single attribute primary keys.&lt;br /&gt;
2. Do not set Read Permissions on Entity Object. Better to prevent the view access to such pages.&lt;br /&gt;
3. Do not mark associations as Composite better to handle it by marking foreign key as not null.&lt;br /&gt;
4. Do no call Application Module from inside Entity Object code.&lt;br /&gt;
5. Do not call Application Module from inside View Object code that can be found using View Accessors.&lt;br /&gt;
6. Do not call setter method of an attribute from the getter method of another attribute.&lt;br /&gt;
7. Do not use FacesContext or any other View Layer code in the model layer.&lt;br /&gt;
&lt;br /&gt;
Some, of these might sound quite obvious but developers do ignore these quite often. Most of these anti-patterns usually hints for avoiding either due to performance reasons or due to breaking the standard Object Oriented design principles one of those guides as "Do not invoke anything from the outer layer in any of the inner layers". Another supporting theory is called as '&lt;a href="http://jeffreypalermo.com/blog/the-onion-architecture-part-1/" target="_blank"&gt;Onion Architecture&lt;/a&gt;'&lt;img src="http://feeds.feedburner.com/~r/DareToCode/~4/SRaOkLWtMao" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.fusion-adf.com/feeds/6744514792786470094/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=589834708478184487&amp;postID=6744514792786470094" title="3 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/589834708478184487/posts/default/6744514792786470094?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/589834708478184487/posts/default/6744514792786470094?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DareToCode/~3/SRaOkLWtMao/adf-anti-patterns.html" title="ADF Anti Patterns" /><author><name>Vivek Kumar</name><uri>https://plus.google.com/113470899999229420779</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-HDhivaZ92_k/AAAAAAAAAAI/AAAAAAAA3jE/lwCYaW9IPDo/s512-c/photo.jpg" /></author><thr:total>3</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://www.fusion-adf.com/2012/07/adf-anti-patterns.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkAAR306eip7ImA9WhVREkw.&quot;"><id>tag:blogger.com,1999:blog-589834708478184487.post-2889771134045535810</id><published>2012-03-20T10:15:00.002+05:30</published><updated>2012-03-20T10:15:46.312+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-03-20T10:15:46.312+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="ADFm" /><category scheme="http://www.blogger.com/atom/ns#" term="ADF UI" /><category scheme="http://www.blogger.com/atom/ns#" term="ADF BC" /><category scheme="http://www.blogger.com/atom/ns#" term="ADF" /><title>ADF Library to ViewController or to Model ?</title><content type="html">Very recently, I got into the conversation when a friend got an external ADF library which had BC4J components and he wanted to use it to create a UI page.&lt;br /&gt;
&lt;br /&gt;
As the library contained BC4J components or you can say an ApplicationModule so the first thought came was &amp;nbsp;to add the library to the model project and expecting the AM bundled in the library to show up in Data Controls. And when it was tried this way the AM did not show up in the Data controls. Refreshing, rebuilding the project or even restart did not help.&lt;br /&gt;
&lt;br /&gt;
So, trying to dig further when we opened the model project properties and went to the business components import we could see the EOs,VOs and AM from the ADF library.&lt;br /&gt;
&lt;br /&gt;
After a while, when the library was added to the ViewController project and the ApplicationModule immediately showed up in the data controls. So, what was actually happening here?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Well, that's actually how it should have been done. As a thumb rule, if you want to build UI based on the ADF library jar provided by third party then it should be a dependency of UI project not the model project. However, if you want to extend your BC4J components based on the provided components in the adf library then you should add it to the model project.&lt;img src="http://feeds.feedburner.com/~r/DareToCode/~4/KlSpyJ3oPuA" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.fusion-adf.com/feeds/2889771134045535810/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=589834708478184487&amp;postID=2889771134045535810" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/589834708478184487/posts/default/2889771134045535810?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/589834708478184487/posts/default/2889771134045535810?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DareToCode/~3/KlSpyJ3oPuA/adf-library-to-viewcontroller-or-to.html" title="ADF Library to ViewController or to Model ?" /><author><name>Vivek Kumar</name><uri>https://plus.google.com/113470899999229420779</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-HDhivaZ92_k/AAAAAAAAAAI/AAAAAAAA3jE/lwCYaW9IPDo/s512-c/photo.jpg" /></author><thr:total>1</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://www.fusion-adf.com/2012/03/adf-library-to-viewcontroller-or-to.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkAFQHgyfyp7ImA9WhRWEkk.&quot;"><id>tag:blogger.com,1999:blog-589834708478184487.post-5888578880784313399</id><published>2011-12-30T15:55:00.000+05:30</published><updated>2011-12-30T15:55:11.697+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-12-30T15:55:11.697+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="ADF UI" /><title>Redirecting to a URL from a action listener in ADF 11g</title><content type="html">Very recently I was working on implementing OaAuth flow a typical standard these days to authenticate against various social media sties like facebook, twitter etc. using my ADF app. Typically, the first step in OaAuth flow is to call to a url passing some sort of consumer or app id which then in turns after authentication invokes a callback url from your application to do the next step.&lt;br /&gt;
&lt;br /&gt;
As a result, I needed a way to invoke the url from adf command button actionListener after constructing the url containing user supplied consumerKey. So, here is how you can invoke the url after that:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp; &amp;nbsp; FacesContext fc = FacesContext.getCurrentInstance();&lt;br /&gt;
&amp;nbsp; &amp;nbsp; String callbackUrl = "https://www.facebook.com/dialog/oauth?client_id=" + fbClientId.getValue().toString() + "&amp;amp;redirect_uri=http://mycallbackURL&amp;amp;scope=publish_stream";&lt;br /&gt;
&amp;nbsp; &amp;nbsp; try&lt;br /&gt;
&amp;nbsp; &amp;nbsp; {&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; fc.getExternalContext().redirect(callbackUrl);&lt;br /&gt;
&amp;nbsp; &amp;nbsp; }&lt;br /&gt;
&amp;nbsp; &amp;nbsp; catch (IOException e)&lt;br /&gt;
&amp;nbsp; &amp;nbsp; {&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; e.printStackTrace();&lt;br /&gt;
&amp;nbsp; &amp;nbsp; }&lt;br /&gt;
&lt;br /&gt;
So this is written in the actionListener and fbClientId is bound to a inputText on UI.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;img src="http://feeds.feedburner.com/~r/DareToCode/~4/29wNgZenjvw" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.fusion-adf.com/feeds/5888578880784313399/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=589834708478184487&amp;postID=5888578880784313399" title="3 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/589834708478184487/posts/default/5888578880784313399?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/589834708478184487/posts/default/5888578880784313399?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DareToCode/~3/29wNgZenjvw/redirecting-to-url-from-action-listener.html" title="Redirecting to a URL from a action listener in ADF 11g" /><author><name>Vivek Kumar</name><uri>https://plus.google.com/113470899999229420779</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-HDhivaZ92_k/AAAAAAAAAAI/AAAAAAAA3jE/lwCYaW9IPDo/s512-c/photo.jpg" /></author><thr:total>3</thr:total><georss:featurename>Hyderabad, Andhra Pradesh, India</georss:featurename><georss:point>17.385044 78.486671</georss:point><georss:box>17.142593 78.17081400000001 17.627495 78.802528</georss:box><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://www.fusion-adf.com/2011/12/redirecting-to-url-from-action-listener.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D08DR3k7eCp7ImA9WhdRFEs.&quot;"><id>tag:blogger.com,1999:blog-589834708478184487.post-4671286174114270728</id><published>2011-08-04T18:32:00.002+05:30</published><updated>2011-08-04T19:21:16.700+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-08-04T19:21:16.700+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Task Flow" /><category scheme="http://www.blogger.com/atom/ns#" term="transaction" /><category scheme="http://www.blogger.com/atom/ns#" term="application module" /><title>Conclusion on Chris Muir's ADF Task Flow Behavior in 11g</title><content type="html">Chris Muir wrote an excellent series on the behavior of adf task flows in conjunction with the transaction control options and am connection. You can find all from the last post&amp;nbsp;available&amp;nbsp;&lt;a href="http://one-size-doesnt-fit-all.blogspot.com/2011/08/task-flows-sayonara-auto-am-nesting-in.html?utm_source=feedburner&amp;amp;utm_medium=feed&amp;amp;utm_campaign=Feed%3A+OneSizeDoesntFitAll+%28One+size+doesn%27t+fit+all%29"&gt;here&amp;nbsp;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
For little impatient people who may not have enough time to go through all the 4 blog posts may read the key points here:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; border-collapse: separate; color: black; font-family: Tahoma; font-size: small; font-style: normal; font-variant: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;1. A Bounded Task flow knows to which AM to connect and establish which db connection only via page definition file bindings. So, a transaction wont be initiated or a&amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; border-collapse: separate; color: black; font-family: Tahoma; font-size: small; font-style: normal; font-variant: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;db connection won't be created until some event is triggered on the page to access page definition bindings.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; border-collapse: separate; color: black; font-family: Tahoma; font-size: small; font-style: normal; font-variant: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; border-collapse: separate; color: black; font-family: Tahoma; font-size: small; font-style: normal; font-variant: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;2. If "No Controller Transaction" option is chosen then creation of transaction are totally relied on BC4J.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; border-collapse: separate; color: black; font-family: Tahoma; font-size: small; font-style: normal; font-variant: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; border-collapse: separate; color: black; font-family: Tahoma; font-size: small; font-style: normal; font-variant: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;3. Chained calls of bounded task flows with no controller transaction option and other transaction options should not be mixed to avoid unpredictable results.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; border-collapse: separate; color: black; font-family: Tahoma; font-size: small; font-style: normal; font-variant: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; border-collapse: separate; color: black; font-family: Tahoma; font-size: small; font-style: normal; font-variant: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;4. Calling a bounded task flow with option use existing transaction from another bounder task flow with option 'always create a new transaction' and both having different&amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; border-collapse: separate; color: black; font-family: Tahoma; font-size: small; font-style: normal; font-variant: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;db connections will cause the caller db connection to be used in the called BTF as well.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; border-collapse: separate; color: black; font-family: Tahoma; font-size: small; font-style: normal; font-variant: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; border-collapse: separate; color: black; font-family: Tahoma; font-size: small; font-style: normal; font-variant: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;5. 11.1.2 onwards there is no automatic nesting of AM of the called BTF under calling BTF's AM. So prior to 11.1.2 this would have resulted into just 1 AM Pool but now all AMs would be treated as root AM and having their own pool (unless they are explicitly nested at design time). Needless to say they will still share the same transaction/connection (if called BTF has option used exiting transaction (or, if possible))&lt;/span&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/DareToCode/~4/9YfFd503T28" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.fusion-adf.com/feeds/4671286174114270728/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=589834708478184487&amp;postID=4671286174114270728" title="4 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/589834708478184487/posts/default/4671286174114270728?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/589834708478184487/posts/default/4671286174114270728?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DareToCode/~3/9YfFd503T28/conclusion-on-chris-muirs-adf-task-flow.html" title="Conclusion on Chris Muir's ADF Task Flow Behavior in 11g" /><author><name>Vivek Kumar</name><uri>https://plus.google.com/113470899999229420779</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-HDhivaZ92_k/AAAAAAAAAAI/AAAAAAAA3jE/lwCYaW9IPDo/s512-c/photo.jpg" /></author><thr:total>4</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://www.fusion-adf.com/2011/08/conclusion-on-chris-muirs-adf-task-flow.html</feedburner:origLink></entry><entry gd:etag="W/&quot;Ck8DRXc7eyp7ImA9WhdRE00.&quot;"><id>tag:blogger.com,1999:blog-589834708478184487.post-5093624329865349617</id><published>2011-08-02T21:31:00.000+05:30</published><updated>2011-08-02T21:31:14.903+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-08-02T21:31:14.903+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Jdeveloper" /><category scheme="http://www.blogger.com/atom/ns#" term="weblogic" /><title>Forcing weblogic server to pick project defined libraries</title><content type="html">While building a web application using external jars you may frequently hit issues of having multiple jars containing different versions of same class in the class path and thus unable to run your app. In case of weblogic server you can always force the server to pick classes from your included libraries instead of from other places.&lt;br /&gt;
To do it just put the following lines in the weblogic.xml&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;container-descriptor&amp;gt;&lt;br /&gt;
&amp;lt;prefer-web-inf-classes&amp;gt;true&amp;lt;/prefer-web-inf-classes&amp;gt;&lt;br /&gt;
&amp;lt;/container-descriptor&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In case weblogic.xml does not exist in your app then right click web project and click new. Go to deployment descriptors and choose weblogic.xml. This should generate a weblogic.xml file for you in case of jdeveloper.&lt;img src="http://feeds.feedburner.com/~r/DareToCode/~4/7f8Mb6RQKc8" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.fusion-adf.com/feeds/5093624329865349617/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=589834708478184487&amp;postID=5093624329865349617" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/589834708478184487/posts/default/5093624329865349617?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/589834708478184487/posts/default/5093624329865349617?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DareToCode/~3/7f8Mb6RQKc8/forcing-weblogic-server-to-pick-project.html" title="Forcing weblogic server to pick project defined libraries" /><author><name>Vivek Kumar</name><uri>https://plus.google.com/113470899999229420779</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-HDhivaZ92_k/AAAAAAAAAAI/AAAAAAAA3jE/lwCYaW9IPDo/s512-c/photo.jpg" /></author><thr:total>0</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://www.fusion-adf.com/2011/08/forcing-weblogic-server-to-pick-project.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0QBSX0zcCp7ImA9WhdTF0Q.&quot;"><id>tag:blogger.com,1999:blog-589834708478184487.post-6238930549452775895</id><published>2011-06-19T18:42:00.001+05:30</published><updated>2011-07-16T11:19:18.388+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-07-16T11:19:18.388+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="view object" /><title>Changes to VO query edit in ADF 11g Jdeveloper 11.1.2</title><content type="html">New jdev 11.1.1.2 &amp;nbsp;VO query edit now shows test and explain instead of test. This is very nice and much more productive than earlier versions.&lt;img src="http://feeds.feedburner.com/~r/DareToCode/~4/kIOZF10pryo" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.fusion-adf.com/feeds/6238930549452775895/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=589834708478184487&amp;postID=6238930549452775895" title="3 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/589834708478184487/posts/default/6238930549452775895?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/589834708478184487/posts/default/6238930549452775895?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DareToCode/~3/kIOZF10pryo/changes-to-vo-query-edit-in-adf-11g.html" title="Changes to VO query edit in ADF 11g Jdeveloper 11.1.2" /><author><name>Vivek Kumar</name><uri>https://plus.google.com/113470899999229420779</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-HDhivaZ92_k/AAAAAAAAAAI/AAAAAAAA3jE/lwCYaW9IPDo/s512-c/photo.jpg" /></author><thr:total>3</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://www.fusion-adf.com/2011/06/changes-to-vo-query-edit-in-adf-11g.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CEYBSXs-fSp7ImA9WhZWGEo.&quot;"><id>tag:blogger.com,1999:blog-589834708478184487.post-8517298205784476498</id><published>2011-05-20T11:45:00.000+05:30</published><updated>2011-05-20T11:45:58.555+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-05-20T11:45:58.555+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="bugs" /><category scheme="http://www.blogger.com/atom/ns#" term="ADF BC" /><category scheme="http://www.blogger.com/atom/ns#" term="application module" /><title>Possible bug in ADF 11g when exposing AM methods</title><content type="html">Last week I was trying to expose a AM method to the client for calling from my View layer and I hit an issue. Every thing what I did to expose the AM method at design time worked fine but the code failed to compile saying&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;Error(17,8):  vik.tools.changeNotifier.model.applicationModule.client.ChangeManagerAMClient is not abstract and does not override abstract method store(java.util.List&amp;lt;map&amp;lt;string, string in vik.tools.changeNotifier.model.applicationModule.common.ChangeManagerAM&amp;nbsp;/li&amp;gt;&lt;br /&gt;
&lt;/li&gt;
&lt;/ul&gt;&lt;div&gt;I investigated all the involved files and found no clue why it is so. After some hit and trials finally I found that the one of the parameter pased in the method signature was causing the issue. &amp;nbsp;In the above case the method was:&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;public void store(List&amp;lt;map&amp;lt;string, string&amp;gt;&amp;gt;&amp;nbsp;myData){} &lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;And the issue was using the generic type here. To fix it I had to use the old style and had to change it to&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
public void store(List&amp;lt;map&amp;gt; myData){} &lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
to make it work. I have logged a bug for the same and will update the post if I get some resolution on this from Oracle.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;UPDATE: &lt;/b&gt;This was turned out to be a bug which is fixed and should be available in some future release of jdeveloper.&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/DareToCode/~4/yeOU4KVpn_U" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.fusion-adf.com/feeds/8517298205784476498/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=589834708478184487&amp;postID=8517298205784476498" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/589834708478184487/posts/default/8517298205784476498?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/589834708478184487/posts/default/8517298205784476498?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DareToCode/~3/yeOU4KVpn_U/possible-bug-in-adf-11g-when-exposing.html" title="Possible bug in ADF 11g when exposing AM methods" /><author><name>Vivek Kumar</name><uri>https://plus.google.com/113470899999229420779</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-HDhivaZ92_k/AAAAAAAAAAI/AAAAAAAA3jE/lwCYaW9IPDo/s512-c/photo.jpg" /></author><thr:total>2</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://www.fusion-adf.com/2011/05/possible-bug-in-adf-11g-when-exposing.html</feedburner:origLink></entry></feed>
