<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-8874378</id><updated>2012-01-31T12:19:44.873+02:00</updated><category term='Python Extension'/><category term='Beehive'/><category term='Oracle UCM'/><category term='Subversion'/><category term='Cygwin'/><category term='Adapter'/><category term='Weblogic Portal'/><category term='Web Services'/><category term='IMAP'/><category term='XML'/><category term='BPM Suite'/><category term='Security'/><category term='WebLogic'/><category term='Google'/><category term='OC4J'/><category term='ADF'/><category term='JDeveloper'/><category term='SOA Suite'/><category term='EBS'/><category term='BPM Studio'/><category term='Authentication'/><category term='ODI'/><category term='JMS'/><category term='OracleDB'/><category term='Android'/><category term='Powerpoint'/><category term='XMLDB'/><category term='OracleVM'/><category term='Utilities'/><title type='text'>Harri's Oracle Technology Blog</title><subtitle type='html'>Blog related to Oracle technology, mainly interest areas are Java, Integration, XML, etc.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>59</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-8874378.post-1626879221397672290</id><published>2011-11-20T16:24:00.001+02:00</published><updated>2011-11-20T16:24:56.048+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Python Extension'/><category scheme='http://www.blogger.com/atom/ns#' term='BPM Suite'/><category scheme='http://www.blogger.com/atom/ns#' term='JDeveloper'/><title type='text'>BPM Editor and Python Extension Not Playing in Nicely in the Same Sandbox</title><content type='html'>&lt;p&gt;I was playing with the latest FMW 11.1.1.5 BPM Feature Pack when I noticed immediate NPE when launching any BPM process editor in my JDeveloper.&lt;/p&gt;  &lt;p&gt;The stack trace was:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;font size="1"&gt;java.lang.NullPointerException&lt;/font&gt;&lt;/p&gt;    &lt;p&gt;&lt;font size="1"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; at oracle.bpm.ui.action.BaseAction$ActionFuegoAction.putValue(BaseAction&lt;/font&gt;&lt;font size="1"&gt;.java:496)&lt;/font&gt;&lt;/p&gt;    &lt;p&gt;&lt;font size="1"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; at oracle.bpm.ui.action.BaseAction.setMsg(BaseAction.java:312)&lt;/font&gt;&lt;/p&gt;    &lt;p&gt;&lt;font size="1"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; at oracle.bpm.ui.action.BaseAction$ActionFuegoAction.&amp;lt;init&amp;gt;(BaseAction.j&lt;/font&gt;&lt;font size="1"&gt;ava:476)&lt;/font&gt;&lt;/p&gt;    &lt;p&gt;&lt;font size="1"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; at oracle.bpm.ui.action.BaseAction.valueOf(BaseAction.java:100)&lt;/font&gt;&lt;/p&gt;    &lt;p&gt;&lt;font size="1"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; at oracle.bpm.designer.catalogdoc.DocumentationEditorPanel.createActions &lt;/font&gt;&lt;font size="1"&gt;(DocumentationEditorPanel.java:521)&lt;/font&gt;&lt;/p&gt;    &lt;p&gt;&lt;font size="1"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; at oracle.bpm.designer.catalogdoc.DocumentationEditorPanel.createEditorP&lt;/font&gt;&lt;font size="1"&gt;anel(DocumentationEditorPanel.java:504)&lt;/font&gt;&lt;/p&gt;    &lt;p&gt;&lt;font size="1"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; at oracle.bpm.designer.catalogdoc.DocumentationEditorPanel.init(Document&lt;/font&gt;&lt;font size="1"&gt;ationEditorPanel.java:472)&lt;/font&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;After debugging long enough I found out that this was a compatibility problem with JDeveloper Python Extension and BPM Editor.&lt;/p&gt;  &lt;p&gt;Python Extension is something I ported from JDev 10.1.2 to 10.1.3 and latest rewrote some portions to get it working on JDeveloper 11g. Aparently there is something causing side effects in BPM Editor so the recommendation from me is to disable this Python Extension to get BPM Editor working without these NPE issues.&lt;/p&gt;  &lt;p&gt;To disable any extension you can follow these menu options:&lt;/p&gt;  &lt;p&gt;Tools –&amp;gt; Preferences –&amp;gt; Extensions (from the left hand panel) –&amp;gt; Uncheck the Checkbox from Python Extension&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-1626879221397672290?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/1626879221397672290/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=1626879221397672290' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/1626879221397672290'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/1626879221397672290'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2011/11/i-was-playing-with-latest-fmw-11.html' title='BPM Editor and Python Extension Not Playing in Nicely in the Same Sandbox'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-3857463551390039458</id><published>2011-11-08T16:35:00.001+02:00</published><updated>2011-11-08T16:35:47.450+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OracleVM'/><title type='text'>Word of Warning for OracleVM 2.2 Upgraders</title><content type='html'>&lt;p&gt;Decided to start upgrading my OracleVM 2.2 servers to the new OracleVM 3.0.2.&lt;/p&gt;  &lt;p&gt;First obstacle was that the installation application didn’t recognize the CD drive it was originally started from. Weird. Got an error stating that I should have drivers to read the CD.&lt;/p&gt;  &lt;p&gt;Went to buy an external USB DVD drive. Started the installation from there. Got a bit further but at the time I was supposed to choose my hard disk for partitioining, OracleVM 3.0.2 did’n find the hard drives at all.&lt;/p&gt;  &lt;p&gt;Looks like OracleVM 3.0.2 is very picky on the supported hardware systems you can run it on.&lt;/p&gt;  &lt;p&gt;Finally managed to install OracleVM 3.0.2 on &lt;u&gt;&lt;strong&gt;USB Stick&lt;/strong&gt;&lt;/u&gt; acting as hard drive. Well, obviously this isn’t a perfect solution to run my virtualization servers, so I reverted back to OracleVM 2.2.&lt;/p&gt;  &lt;p&gt;So a word of warning to all those thinking of upgrading. You can either test the installation media just to see if it recognizes your hard drivers and then make decision whether to go forward or not.&lt;/p&gt;  &lt;p&gt;I’m waiting for a new version of OracleVM to be released and hoping it has the kernel modules for my AMD/VIA based motherboard.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-3857463551390039458?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/3857463551390039458/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=3857463551390039458' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/3857463551390039458'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/3857463551390039458'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2011/11/word-of-warning-for-oraclevm-22.html' title='Word of Warning for OracleVM 2.2 Upgraders'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-9046609881387547702</id><published>2011-08-25T23:48:00.001+03:00</published><updated>2011-08-25T23:48:38.218+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OracleVM'/><title type='text'>OracleVM 3.0 Finally Out</title><content type='html'>&lt;p&gt;The wait is over for those that have been waiting for OracleVM 3.0:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.oracle.com/us/corporate/press/459406"&gt;http://www.oracle.com/us/corporate/press/459406&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;When starting my own business (&lt;a href="http://www.ratioware.com"&gt;http://www.ratioware.com&lt;/a&gt;), I decided to set up all my servers as OracleVM 2.2 virtual servers. I’ve been more than happy running my stuff virtualized, so I’m very interested in getting hold on OracleVM 3.0.&lt;/p&gt;  &lt;p&gt;There are number of enhancements worth mentioning:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Policy based resource management&lt;/li&gt;    &lt;li&gt;Centralized network and storage configuration and management&lt;/li&gt;    &lt;li&gt;Performance, scalability and security enhancements&lt;/li&gt;    &lt;li&gt;New management console&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Not so happy surprise was that upgrading from OracleVM 2.2 was non-existent. All servers must be reinstalled with OracleVM 3.0.1 software, but you could utilize the 2.2 templates and virtual images.&lt;/p&gt;  &lt;p&gt;I’m currently downloading the OVM 3.0 Server and Management Console installation packages and start planning for 2.2 –&amp;gt; 3.0 upgrade on my own server pool.&lt;/p&gt;  &lt;p&gt;Maybe this would be a good time to get rid of my iSCSI SAN setup and replace it with NFS for easier management (backups, image copying etc).&lt;/p&gt;  &lt;p&gt;Stay tuned for experiences on OVM 3.0 once I get it up and running.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-9046609881387547702?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/9046609881387547702/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=9046609881387547702' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/9046609881387547702'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/9046609881387547702'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2011/08/oraclevm-30-finally-out.html' title='OracleVM 3.0 Finally Out'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-2207588359815349914</id><published>2010-12-15T16:07:00.001+02:00</published><updated>2010-12-15T16:07:49.298+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Powerpoint'/><title type='text'>Microsoft Powerpoint notes removal addin on Office 2007 and Windows 7</title><content type='html'>&lt;p&gt;Here’s an update on my &lt;a href="http://kaukovuo.blogspot.com/2005/06/powerpoint-notes-removal-add-in.html" target="_blank"&gt;previous&lt;/a&gt; (dated back in 2005) blog posting on Microsoft Powerpoint 2007 notes removal add-in.&lt;/p&gt;  &lt;p&gt;The actual add-in file is still valid and working on Office 2007. You can find it here:   &lt;br /&gt;&lt;a title="http://www.pcuf.fi/~hkaukovu/blog/HJK_Remove_Notes.ppa" href="http://www.pcuf.fi/~hkaukovu/blog/HJK_Remove_Notes.ppa"&gt;http://www.pcuf.fi/~hkaukovu/blog/HJK_Remove_Notes.ppa&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Update is related to where you should copy the *.ppa file on Windows 7 and how to add the add-in on Powerpoint 2007. First of all, download and copy the *.ppa file to your Windows user roaming directory:&lt;/p&gt;  &lt;p&gt;C:\Users\&amp;lt;windowsusername&amp;gt;\AppData\Roaming\Microsoft\AddIns&lt;/p&gt;  &lt;p&gt;e.g on my machine the path where to copy this is:&lt;/p&gt;  &lt;p&gt;C:\Users\hkaukovu\AppData\Roaming\Microsoft\AddIns&lt;/p&gt;  &lt;p&gt;Here are the steps to enable the add-in:&lt;/p&gt;  &lt;p&gt;1. Go to powerpoint options&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_G3ZVZsr8vwg/TQjLc55-K_I/AAAAAAAAAjU/lUzqg5IP1ro/s1600-h/image%5B2%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_G3ZVZsr8vwg/TQjLeSaXu-I/AAAAAAAAAjY/6LtjtZv1VnE/image_thumb.png?imgmax=800" width="221" height="244" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;2. Choose Add-Ins&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_G3ZVZsr8vwg/TQjLfR7W6RI/AAAAAAAAAjc/TvWvw4L7nb8/s1600-h/image%5B5%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_G3ZVZsr8vwg/TQjLgYH5eVI/AAAAAAAAAjg/gNlOXKFJ7AY/image_thumb%5B1%5D.png?imgmax=800" width="145" height="244" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;3. From lower part of window choose “Manage: Powerpoint Add-Ins” and press “Go…”&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_G3ZVZsr8vwg/TQjLhJmXojI/AAAAAAAAAjk/4Me1ydPNWro/s1600-h/image%5B8%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_G3ZVZsr8vwg/TQjLiHxlxiI/AAAAAAAAAjo/eGtXMLiaHRk/image_thumb%5B2%5D.png?imgmax=800" width="244" height="47" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;4. Press “Add New…”&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_G3ZVZsr8vwg/TQjLje5e91I/AAAAAAAAAjs/TykSraYaLTc/s1600-h/image%5B11%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_G3ZVZsr8vwg/TQjLkWPWI7I/AAAAAAAAAjw/z6o-7FxZ93I/image_thumb%5B3%5D.png?imgmax=800" width="244" height="216" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;5. Select the *.ppa file&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_G3ZVZsr8vwg/TQjLlaQRynI/AAAAAAAAAj0/HyE37YbzmPI/s1600-h/image%5B14%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_G3ZVZsr8vwg/TQjLmQPtvLI/AAAAAAAAAj4/7XLLCmvOXmY/image_thumb%5B4%5D.png?imgmax=800" width="244" height="164" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;6. Press Enable Macros&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_G3ZVZsr8vwg/TQjLnnIwJrI/AAAAAAAAAj8/MH3kbbF4c2w/s1600-h/image%5B17%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_G3ZVZsr8vwg/TQjLpigFFsI/AAAAAAAAAkA/U18DnGiePGw/image_thumb%5B5%5D.png?imgmax=800" width="244" height="148" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;7. You have now the notes removal add-in enabled.&lt;/p&gt;  &lt;p&gt;'&lt;a href="http://lh5.ggpht.com/_G3ZVZsr8vwg/TQjLqcL3egI/AAAAAAAAAkE/-5fByzRAfz0/s1600-h/image%5B20%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_G3ZVZsr8vwg/TQjLrPv8w-I/AAAAAAAAAkI/RbrNtMEEY-0/image_thumb%5B6%5D.png?imgmax=800" width="244" height="216" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;8. You can execute the notes removal add-in from “Add-Ins” tab.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_G3ZVZsr8vwg/TQjLsDrKlXI/AAAAAAAAAkM/yjzAPVPIycA/s1600-h/image%5B23%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_G3ZVZsr8vwg/TQjLs_vXkMI/AAAAAAAAAkQ/7EuXMM44kog/image_thumb%5B7%5D.png?imgmax=800" width="244" height="45" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;The add-in activation is permanent, so next time you startup Powerpoint, this notes removal add-in should be active.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-2207588359815349914?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/2207588359815349914/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=2207588359815349914' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/2207588359815349914'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/2207588359815349914'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2010/12/microsoft-powerpoint-notes-removal.html' title='Microsoft Powerpoint notes removal addin on Office 2007 and Windows 7'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_G3ZVZsr8vwg/TQjLeSaXu-I/AAAAAAAAAjY/6LtjtZv1VnE/s72-c/image_thumb.png?imgmax=800' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-7802853093554348008</id><published>2010-11-29T23:49:00.001+02:00</published><updated>2010-11-30T07:45:53.986+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='JDeveloper'/><title type='text'>New Extensions for JDeveloper 11g</title><content type='html'>&lt;p&gt;Some of you may know that I wrote 2-3 years ago some JDeveloper extensions for helping out with BAM data object creation (BAM Table Migration Extension), Oracle ESB diagram documentation (ESB Tools), JDeveloper Project Copying (Project Tools), Python Development (Python Addin).&lt;/p&gt;  &lt;p&gt;It’s been some time since I last touched those extensions and finally I decided to take the bull by the horns.&lt;/p&gt;  &lt;p&gt;What I ended up were four new extensions for JDeveloper 11g:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="https://sites.google.com/site/jdeveloperresourcecenter/Home/bamtableextension" target="_blank"&gt;BAM Table/View Copier&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="https://sites.google.com/site/jdeveloperresourcecenter/Home/sca-diagram-tools-extension" target="_blank"&gt;SCA Diagram Tools&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="https://sites.google.com/site/jdeveloperresourcecenter/Home/python-extension" target="_blank"&gt;Python Extension&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="https://sites.google.com/site/jdeveloperresourcecenter/Home/jar-search-extension" target="_blank"&gt;Jar Search Extension&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;These extensions are now included in the official JDeveloper extension exchange and can be installed using “Check for Updates…” functionality. Be sure to check the “Open Source and Partner Extensions” update center.&lt;/p&gt;  &lt;p&gt;To summarize what these extension do:&lt;/p&gt;  &lt;h3&gt;BAM Table/View Copier&lt;/h3&gt;  &lt;p&gt;BAM Table/View Copier is an extension to help creating BAM data objects using any relational database as “template”. An example: you have almost perfect table in your Oracle DB or Access DB and would like to use that table or view structure as BAM Data Object. Just BAM Connection on your application workspace, navigate to database navigator, choose table or view and press context menu. You will see “Copy to BAM…” which will ask you about the BAM connection to use and target BAM folder to store the data object.&lt;/p&gt;  &lt;p&gt;Extension will copy also all data from the table so don’t be surprised. If you don’t want to copy the data, make an copy of the table (create table mytable as select * from wantedtable where 1=2) and copy the empty table.&lt;/p&gt;  &lt;p&gt;BAM Table/View Copier also makes it possible to design BAM Data Objects using graphical JDeveloper Database designer. Just create the tables or views on relational database first and then use this extension to copy the structures as data objects. Of course you won’t be able to model all those fine grained data object lookups etc in JDeveloper but you would start your work this way.&lt;/p&gt;  &lt;h3&gt;SCA Diagram Tools&lt;/h3&gt;  &lt;p&gt;By default you cannot print or save SCA composite diagram graphics directly from JDeveloper. SCA Diagram Tools gives you possiblity to save composite diagram as PDF, JPG, BPM or PNG.&lt;/p&gt;  &lt;p&gt;SCA Diagram Tools also makes it possible to zoom in/out using wheel mouse and pressing CTRL button at the same time. This is not enabled by default but you can do so by choosing “Enable Wheel Mouse Zoom” from SCA Diagram Tools submenu. This might be also good addition to those that have eyesight problems.&lt;/p&gt;  &lt;p&gt;Printing the SCA composite diagram is also possible using this extension.&lt;/p&gt;  &lt;h3&gt;Python Extension&lt;/h3&gt;  &lt;p&gt;Created originally by Brian Duff for JDeveloper 9i. Migrating the plugin from 9i to 10g took a major rewrote. I did this 2008 and now migrated the python extension from 10g to 11g.&lt;/p&gt;  &lt;p&gt;Python extension lets you develop python/jython scripts and run them directly in JDeveloper. Also you can switch on Python Console that enables you to interactively execute any Jython commands from Python Console. You could e.g. call JDeveloper internal API’s interactively if so wanted. &lt;/p&gt;  &lt;h3&gt;Jar Search Extension&lt;/h3&gt;  &lt;p&gt;When migrating sources from 10g to 11g there are times where product development have refactored their jar classes so that the old libraries no longer exist. &lt;/p&gt;  &lt;p&gt;I created this extension to help searching for JAR files that contain the wanted java class. This was written from ground up to be used as JDeveloper extension so you can e.g. cancel the search if it takes too much time to look for JAR files recursively.&lt;/p&gt;  &lt;p&gt;Please note that this extension is not for searching the contents of JAR entry files, it is searching the JAR entries and their filenames, which makes it lot faster than normal search.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-7802853093554348008?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/7802853093554348008/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=7802853093554348008' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/7802853093554348008'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/7802853093554348008'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2010/11/new-extensions-for-jdeveloper-11g.html' title='New Extensions for JDeveloper 11g'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-1810311965885585067</id><published>2010-11-25T15:11:00.001+02:00</published><updated>2010-11-25T15:11:33.120+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='JDeveloper'/><title type='text'>JDeveloper 10g/11g extension download and installation problems</title><content type='html'>&lt;h4&gt;JDeveloper 11g&lt;/h4&gt;  &lt;p&gt;Some of you might have seen installation problems with JDeveloper 11g extensions. There has been some changes in OTN download server infrastructure that causes some issues on extension download and installation. The workaround for time being is to download the extension and install from local file system, as described in JDeveloper Product Management blog:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.oracle.com/jdeveloperpm/2010/11/installing_jdeveloper_extensions_locally.html"&gt;http://blogs.oracle.com/jdeveloperpm/2010/11/installing_jdeveloper_extensions_locally.html&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;In addition you might check your extension download temporary directory. There might be some unfinished zip files etc. You could just clean that directory up and try downloading again. Download directory is under your JDeveloper user home directory that is pointed by environment variable &amp;lt;JDEV_USER_HOME&amp;gt;\tmp\update. If you haven’t set this, it points to your &amp;lt;JDEV installationHOME&amp;gt;\jdev\tmp\update –directory.&lt;/p&gt;  &lt;h4&gt;JDeveloper 10g on Windows 7 (64-bit)&lt;/h4&gt;  &lt;p&gt;For those that have problems installing JDeveloper 10g extensions on Windows 7, there might be other issues. For me the symptom was that I was able to choose and download the wanted extension. Everything seemed working nicely but after JDeveloper restart no extension was installed.&lt;/p&gt;  &lt;p&gt;After digging into details of the problem I got to the root problem, not solving the problem all the way, but being able to continue my work.&lt;/p&gt;  &lt;p&gt;For me I have multiple JDeveloper versions running on my laptop. I usually edit the &amp;lt;JDEVHOME&amp;gt;/jdev/bin/jdev.conf file so that I change the SetUserHomeVariable to use a different environment variable for different JDev versions. In this case I used environment variable JDEV10134_USER_DIR, which I hadn’t yet assigned to anywhere (so no setting for that). It appears that in this case JDev 10g falls back reading JDEV_USER_HOME environment variable that was actually used by my JDeveloper 11g environment.&lt;/p&gt;  &lt;p&gt;So I edited jdev.conf:   &lt;br /&gt;SetUserHomeVariable JDEV10134_USER_DIR&lt;/p&gt;  &lt;p&gt;And really set my environment variable on system settings:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_G3ZVZsr8vwg/TO5ggnQsfSI/AAAAAAAAAjM/_y3bqj1JB9E/s1600-h/image%5B2%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_G3ZVZsr8vwg/TO5ghAGCYxI/AAAAAAAAAjQ/X851KkaScjs/image_thumb.png?imgmax=800" width="244" height="107" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;After this I got my extensions downloading the appropriate place, that was C:\SHARED\jdevhome10134\tmp\update.&lt;/p&gt;  &lt;p&gt;Issue being this time that the extensions got downloaded to the right place, but they still didn’t install automatically. When JDeveloper starts it is looking for &amp;lt;JDEV_USER_DIR&amp;gt;/lib/deferred-updates.xml which is supposed to be read and includes instructions how to install the extensions. In my case on Windows 7 (64-bit) the file was read and deleted but extensions were never unzip and placed into the correct directory.&lt;/p&gt;  &lt;p&gt;This sounds to be an issue with JDev 10g and Windows 7 not being 100% compatible with each other. JDeveloper 9i or 10g has not been certified with Windows 7.&lt;/p&gt;  &lt;p&gt;Anyways, you can get those extensions installed manually and you can continue working on Windows 7.&lt;/p&gt;  &lt;p&gt;To install extensions manually open the zip file from &amp;lt;JDEV_USER_DIR&amp;gt;\tmp\update and extract the *.jar file or collection of jar files to extensions directory. In my installation I’ve installed JDeveloper 10.1.3.4 on c:\product\jdevstudio10134, so my extension directory is: C:\product\jdevstudio10134\jdev\extensions.&lt;/p&gt;  &lt;p&gt;After unzipping/extracting, restart JDeveloper and you should have all those downloaded extensions working on your JDev 10g.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-1810311965885585067?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/1810311965885585067/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=1810311965885585067' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/1810311965885585067'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/1810311965885585067'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2010/11/jdeveloper-10g11g-extension-download.html' title='JDeveloper 10g/11g extension download and installation problems'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_G3ZVZsr8vwg/TO5ghAGCYxI/AAAAAAAAAjQ/X851KkaScjs/s72-c/image_thumb.png?imgmax=800' height='72' width='72'/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-4882926700819145024</id><published>2010-06-08T20:17:00.001+03:00</published><updated>2010-06-08T20:27:57.401+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OracleVM'/><title type='text'>OracleVM and Standalone VNC Client for Console Access</title><content type='html'>&lt;p&gt;OracleVM Manager has built-in browser based Java VNC console accessible from “Console” button:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_G3ZVZsr8vwg/TA57BNQfI4I/AAAAAAAAAhg/a7LZf8Ck9jg/s1600-h/image%5B2%5D.png"&gt;&lt;img title="image" style="border-right: 0px; border-top: 0px; display: inline; border-left: 0px; border-bottom: 0px" height="133" alt="image" src="http://lh6.ggpht.com/_G3ZVZsr8vwg/TA57B_MwkhI/AAAAAAAAAhk/T26y_OY-I58/image_thumb.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;In order this to work properly you need to have the right VNC rpm installed in the server side:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://oss.oracle.com/oraclevm/manager/RPMS/tightvnc-java-1.3.9-3.noarch.rpm"&gt;http://oss.oracle.com/oraclevm/manager/RPMS/tightvnc-java-1.3.9-3.noarch.rpm&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;For those that want to access the virtual server console directly using e.g. TightVNC viewer you can do so by first looking at the right VNC port from OracleVM manager.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_G3ZVZsr8vwg/TA59mb9FMdI/AAAAAAAAAiE/xRzHCsxl6ck/s1600-h/image%5B43%5D.png"&gt;&lt;img title="image" style="border-right: 0px; border-top: 0px; display: inline; border-left: 0px; border-bottom: 0px" height="126" alt="image" src="http://lh5.ggpht.com/_G3ZVZsr8vwg/TA59m1g_k7I/AAAAAAAAAiI/D68dF_A_Gt4/image_thumb%5B21%5D.png?imgmax=800" width="413" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Then connect to the actual bare metal server (not the virtual server) with the VNC Port. In this example the OracleVM server IP might have been 10.1.1.1.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_G3ZVZsr8vwg/TA57DzxIdcI/AAAAAAAAAhw/ZPfXb40n84g/s1600-h/image%5B22%5D.png"&gt;&lt;img title="image" style="border-right: 0px; border-top: 0px; display: inline; border-left: 0px; border-bottom: 0px" height="105" alt="image" src="http://lh5.ggpht.com/_G3ZVZsr8vwg/TA57EaUFClI/AAAAAAAAAh0/qDqTgAkOBlQ/image_thumb%5B12%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;You might as well leave the port 5900 since this points to the display 0 which in short can be defined:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_G3ZVZsr8vwg/TA57E-YwQYI/AAAAAAAAAh8/nIjOk8BFXhk/s1600-h/image%5B29%5D.png"&gt;&lt;img title="image" style="border-right: 0px; border-top: 0px; display: inline; border-left: 0px; border-bottom: 0px" height="105" alt="image" src="http://lh4.ggpht.com/_G3ZVZsr8vwg/TA57Fs5_cJI/AAAAAAAAAiA/Z63qFcMM49A/image_thumb%5B15%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;If you had Virtual server VNC console defined in 5901, you can connect to 10.1.1.1:1 etc.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-4882926700819145024?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/4882926700819145024/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=4882926700819145024' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/4882926700819145024'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/4882926700819145024'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2010/06/oraclevm-and-standalone-vnc-client-for.html' title='OracleVM and Standalone VNC Client for Console Access'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/_G3ZVZsr8vwg/TA57B_MwkhI/AAAAAAAAAhk/T26y_OY-I58/s72-c/image_thumb.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-2311719562568783954</id><published>2010-04-05T22:21:00.001+03:00</published><updated>2010-05-19T18:49:07.600+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Android'/><category scheme='http://www.blogger.com/atom/ns#' term='Beehive'/><title type='text'>Android Beem XMPP Client Against Oracle Beehive XMPP Server</title><content type='html'>&lt;p&gt;&lt;/p&gt;  &lt;p&gt;I’ve got my Android phone (Samsung Galaxy Spica) and was getting all the needed software from Android market.&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;One of the problem areas was to find a XMPP client that could connect to SSL protected custom XMPP server. In my case Oracle Beehive XMPP server.&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;One of the candidates was Beem XMPP client (tried version 0.1.2) which can connect nicely e.g. Google XMPP service. But trying to connect Beehive server with the “old port 5223” + SSL protection was something Beem was hanging forever.&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;I couldn’t find any other client that could do this (maybe there are), I decided to get the source code for Beem and debug the problem. Eventually found the issue and fixed the SSL connectivity problem in Beem source and voilà – Beem can now connect to Beehive XMPP server.&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;I’ve emailed the fix to Beem project group so maybe some day the fix will get into the new versions, until then you can get my fixed Beem application that can be downloaded here:&lt;/p&gt;  &lt;p&gt;&lt;/p&gt; &lt;a href="http://sites.google.com/site/droidprojects/file-cabinet/beem-0.1.3.1-sslfix.apk"&gt;http://sites.google.com/site/droidprojects/file-cabinet/beem-0.1.3.1-sslfix.apk&lt;/a&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;Please note that you cannot use this application to update your current official Beem client since I used my own digital signatures to sign this custom fix. If you have Beem 0.1.2 installed, deinstall it first then e.g. point your mobile browser to the URL above and install the application. You will get notified about non-standard installation (installing applications form non-Android Marketplace), if you accept this you will get this application installed.&lt;/p&gt;  &lt;p&gt;&lt;/p&gt; I’ve tested the modified Beem XMPP client both on Android 1.5 and Android 2.1. Seems to work well, at least in the cases where the server uses official (not self signed) server certificates for SSL.     &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-2311719562568783954?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/2311719562568783954/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=2311719562568783954' title='20 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/2311719562568783954'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/2311719562568783954'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2010/04/android-beem-xmpp-client-against-oracle.html' title='Android Beem XMPP Client Against Oracle Beehive XMPP Server'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><thr:total>20</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-1784399517002672319</id><published>2010-01-07T00:13:00.001+02:00</published><updated>2010-01-07T00:13:34.462+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Authentication'/><category scheme='http://www.blogger.com/atom/ns#' term='Oracle UCM'/><category scheme='http://www.blogger.com/atom/ns#' term='Web Services'/><category scheme='http://www.blogger.com/atom/ns#' term='ADF'/><title type='text'>Sample JSF 11g application that uses UCM search SOAP API and HTTP basic authentication</title><content type='html'>&lt;p&gt;Here are some steps to create an application that uses UCM search API (SOAP based) and shows the results in the web page. In addition I will explain how to setup HTTP basic authentication to enable calling UCM web services.&lt;/p&gt;  &lt;h3&gt;Create an application&lt;/h3&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;You start with creating an application&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_G3ZVZsr8vwg/S0UJgtwFLhI/AAAAAAAAAXs/3PKOVIcng7U/s1600-h/image%5B2%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="162" alt="image" src="http://lh5.ggpht.com/_G3ZVZsr8vwg/S0UJh-SU5wI/AAAAAAAAAXw/B92J1COFHlk/image_thumb.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_G3ZVZsr8vwg/S0UJivMcS1I/AAAAAAAAAX0/D8bFSqyaCRA/s1600-h/image%5B5%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="175" alt="image" src="http://lh4.ggpht.com/_G3ZVZsr8vwg/S0UJjiTAn0I/AAAAAAAAAX4/w-_JynBKyjQ/image_thumb%5B1%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_G3ZVZsr8vwg/S0UJkvWWBwI/AAAAAAAAAX8/G3m4SGGbTGY/s1600-h/image%5B8%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="184" alt="image" src="http://lh3.ggpht.com/_G3ZVZsr8vwg/S0UJlVDI4qI/AAAAAAAAAYA/xp7zIssNpJw/image_thumb%5B2%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Give descriptive name for the default web project&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_G3ZVZsr8vwg/S0UJlxV1_0I/AAAAAAAAAYE/PIzIoWzI8A8/s1600-h/image%5B11%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="184" alt="image" src="http://lh4.ggpht.com/_G3ZVZsr8vwg/S0UJm5sHQvI/AAAAAAAAAYI/i3h1Ur8WRyE/image_thumb%5B3%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_G3ZVZsr8vwg/S0UJnyiPt-I/AAAAAAAAAYM/D85c56B023o/s1600-h/image%5B14%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="184" alt="image" src="http://lh6.ggpht.com/_G3ZVZsr8vwg/S0UJo3ipzCI/AAAAAAAAAYQ/znkJo8FIDGA/image_thumb%5B4%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;h3&gt;Create JSF page&lt;/h3&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_G3ZVZsr8vwg/S0UJqKa_baI/AAAAAAAAAYU/DXGDNvcpVzM/s1600-h/image%5B17%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="162" alt="image" src="http://lh6.ggpht.com/_G3ZVZsr8vwg/S0UJq0M1VOI/AAAAAAAAAYY/8CYAir-A-t4/image_thumb%5B5%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_G3ZVZsr8vwg/S0UJrx9lx8I/AAAAAAAAAYc/66JHrnIPT6g/s1600-h/image%5B20%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="162" alt="image" src="http://lh5.ggpht.com/_G3ZVZsr8vwg/S0UJsn_F52I/AAAAAAAAAYg/HpvOD0iFUxY/image_thumb%5B6%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_G3ZVZsr8vwg/S0UJuCmqL7I/AAAAAAAAAYk/TV1ne0KUf0Y/s1600-h/image%5B23%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="175" alt="image" src="http://lh3.ggpht.com/_G3ZVZsr8vwg/S0UJurQbkGI/AAAAAAAAAYo/v_APpqCTafI/image_thumb%5B7%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;By default we start with the quick start layout:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_G3ZVZsr8vwg/S0UJvJlsPXI/AAAAAAAAAYs/9XKuxMFEPAY/s1600-h/image%5B26%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="193" alt="image" src="http://lh3.ggpht.com/_G3ZVZsr8vwg/S0UJwvRbb_I/AAAAAAAAAYw/ifISHy6d3lQ/image_thumb%5B8%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_G3ZVZsr8vwg/S0UJxrZGEbI/AAAAAAAAAY0/vvcAelxBk6U/s1600-h/image%5B29%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="162" alt="image" src="http://lh4.ggpht.com/_G3ZVZsr8vwg/S0UJyJ5Km8I/AAAAAAAAAY4/nYhbX5RvvxY/image_thumb%5B9%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;h3&gt;Create web service data control based on UCM search WSDL&lt;/h3&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;In this part I’ve already downloaded the UCM WSDL descriptions using another UCM instance. The SOAP API is still the same but WSDL points to another hostname as the endpoint. We will modify this later.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_G3ZVZsr8vwg/S0UJzbgMkBI/AAAAAAAAAY8/yJFjpi_adBE/s1600-h/image%5B32%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="162" alt="image" src="http://lh6.ggpht.com/_G3ZVZsr8vwg/S0UJ0xCJXiI/AAAAAAAAAZA/6XCNKY6SsYM/image_thumb%5B10%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Choose “All Technologies” tab in the left hand side + Web Service Data Control” in the right hand side:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_G3ZVZsr8vwg/S0UJ15jwYFI/AAAAAAAAAZE/afUTBkkQXac/s1600-h/image%5B35%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="168" alt="image" src="http://lh3.ggpht.com/_G3ZVZsr8vwg/S0UJ2zdCv-I/AAAAAAAAAZI/8vEAZlaM2-Q/image_thumb%5B11%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Browsing for the search API WSDL file:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_G3ZVZsr8vwg/S0UJ3ste2nI/AAAAAAAAAZM/u9_ZdYk5IFA/s1600-h/image%5B38%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="176" alt="image" src="http://lh4.ggpht.com/_G3ZVZsr8vwg/S0UJ4ew5SpI/AAAAAAAAAZQ/6_Xu862TmBM/image_thumb%5B12%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_G3ZVZsr8vwg/S0UJ43qV5rI/AAAAAAAAAZU/ZltWTyGS9qU/s1600-h/image%5B41%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="175" alt="image" src="http://lh3.ggpht.com/_G3ZVZsr8vwg/S0UJ56ZS9pI/AAAAAAAAAZY/ZRYLMPA9i9I/image_thumb%5B13%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_G3ZVZsr8vwg/S0UJ6ey3e5I/AAAAAAAAAZc/VuKRi3xCFoE/s1600-h/image%5B44%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="176" alt="image" src="http://lh5.ggpht.com/_G3ZVZsr8vwg/S0UJ7CkTUCI/AAAAAAAAAZg/83siQo-NzsE/image_thumb%5B14%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;I only choose one operation to be used:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_G3ZVZsr8vwg/S0UJ7nPtRyI/AAAAAAAAAZk/fLlViUIRjDU/s1600-h/image%5B47%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="176" alt="image" src="http://lh3.ggpht.com/_G3ZVZsr8vwg/S0UJ8c2YrzI/AAAAAAAAAZo/41sPmaMTHuc/image_thumb%5B15%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_G3ZVZsr8vwg/S0UJ88BZ7BI/AAAAAAAAAZs/y-Bu1d-Sf9Q/s1600-h/image%5B50%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="176" alt="image" src="http://lh6.ggpht.com/_G3ZVZsr8vwg/S0UJ9-rxzUI/AAAAAAAAAZw/dBvk6JBzkiQ/image_thumb%5B16%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Just click next(s):&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_G3ZVZsr8vwg/S0UJ_dvjnxI/AAAAAAAAAZ0/B6lrrYfrvGk/s1600-h/image%5B53%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="176" alt="image" src="http://lh3.ggpht.com/_G3ZVZsr8vwg/S0UJ_02CCUI/AAAAAAAAAZ4/GVtPog9gOro/image_thumb%5B17%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_G3ZVZsr8vwg/S0UKBGxhPAI/AAAAAAAAAZ8/Z_6hMh9pi-M/s1600-h/image%5B56%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="176" alt="image" src="http://lh4.ggpht.com/_G3ZVZsr8vwg/S0UKBnMArHI/AAAAAAAAAaA/iM8Q-qhmz0w/image_thumb%5B18%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_G3ZVZsr8vwg/S0UKCEidefI/AAAAAAAAAaE/xyfWDJMtf4A/s1600-h/image%5B59%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="176" alt="image" src="http://lh5.ggpht.com/_G3ZVZsr8vwg/S0UKCpu53jI/AAAAAAAAAaI/lbtZnUgfgW0/image_thumb%5B19%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Please note that at this point the end point that was derived from WSDL is still pointing to a wrong installation, and I will correct this error later in this guide.&lt;/p&gt;  &lt;h3&gt;Changing the end point URL for web service (optional)&lt;/h3&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Navigate to the DataControls.dcx file&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_G3ZVZsr8vwg/S0UKEeyATsI/AAAAAAAAAaM/59IxqWIiIdQ/s1600-h/image%5B62%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="157" alt="image" src="http://lh5.ggpht.com/_G3ZVZsr8vwg/S0UKFG0vX0I/AAAAAAAAAaQ/0SGBNF41nMc/image_thumb%5B20%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Look into the bottom left hand side Structure pane:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_G3ZVZsr8vwg/S0UKGbJ8QVI/AAAAAAAAAaU/MjZBwQXHlCQ/s1600-h/image%5B65%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="157" alt="image" src="http://lh3.ggpht.com/_G3ZVZsr8vwg/S0UKH3lOFMI/AAAAAAAAAaY/4YbuDhGc064/image_thumb%5B21%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Press mouse right click button to open context menu. Choose “Edit Web Service Connection…”&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_G3ZVZsr8vwg/S0UKI2j6FEI/AAAAAAAAAac/EFtf3dq6_2M/s1600-h/image%5B68%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="157" alt="image" src="http://lh6.ggpht.com/_G3ZVZsr8vwg/S0UKJhL2ddI/AAAAAAAAAag/phpuSJdb8ZY/image_thumb%5B22%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Let’s change the hostname. Leave username and password fields intact since they are not used as http basic authentication.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_G3ZVZsr8vwg/S0UKKO4LrKI/AAAAAAAAAak/D7Mf3IJxSgM/s1600-h/image%5B71%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="173" alt="image" src="http://lh4.ggpht.com/_G3ZVZsr8vwg/S0UKK8wfshI/AAAAAAAAAao/g3ACPIbg6i4/image_thumb%5B23%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_G3ZVZsr8vwg/S0UKLuxV87I/AAAAAAAAAas/QqtdPNNRiHk/s1600-h/image%5B74%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="173" alt="image" src="http://lh5.ggpht.com/_G3ZVZsr8vwg/S0UKMYxihxI/AAAAAAAAAaw/SzfMKN1bddU/image_thumb%5B24%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;h3&gt;Adding input parameter field for search text&lt;/h3&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Next I will build up a very simple search form for UCM documents:&lt;/p&gt;  &lt;p&gt;Select “Input Text” from component palette and drag’n’drop into the left hand pane:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_G3ZVZsr8vwg/S0UKOC_ddCI/AAAAAAAAAa0/8JHiUxHGyJc/s1600-h/image%5B77%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="157" alt="image" src="http://lh5.ggpht.com/_G3ZVZsr8vwg/S0UKOprFVmI/AAAAAAAAAa4/AVZ7ZISdtR8/image_thumb%5B25%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_G3ZVZsr8vwg/S0UKQPsK48I/AAAAAAAAAa8/s4EXOVfFgXA/s1600-h/image%5B80%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="157" alt="image" src="http://lh3.ggpht.com/_G3ZVZsr8vwg/S0UKQ_leKFI/AAAAAAAAAbA/hHw95Pkrfn4/image_thumb%5B26%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;You could change the field names and labels to something more descriptive:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_G3ZVZsr8vwg/S0UKSJRbJNI/AAAAAAAAAbE/mp9_mTrkLu4/s1600-h/image%5B83%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="157" alt="image" src="http://lh5.ggpht.com/_G3ZVZsr8vwg/S0UKTVPiXNI/AAAAAAAAAbI/pC345qT5qIE/image_thumb%5B27%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;h3&gt;Add search results table&lt;/h3&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Next I will drag’n’drop the search results control to the right hand side:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_G3ZVZsr8vwg/S0UKUffHHJI/AAAAAAAAAbM/fsq3-7f5v1k/s1600-h/image%5B86%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="157" alt="image" src="http://lh4.ggpht.com/_G3ZVZsr8vwg/S0UKVL92WZI/AAAAAAAAAbQ/JaTr4LZYbqw/image_thumb%5B28%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_G3ZVZsr8vwg/S0UKVzHVAiI/AAAAAAAAAbU/5GMQtYEse7c/s1600-h/image%5B89%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="157" alt="image" src="http://lh6.ggpht.com/_G3ZVZsr8vwg/S0UKXfufbuI/AAAAAAAAAbY/bzM918fgPzA/image_thumb%5B29%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_G3ZVZsr8vwg/S0UKX2zLH_I/AAAAAAAAAbc/xQOCXD5U3BQ/s1600-h/image%5B92%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="196" alt="image" src="http://lh3.ggpht.com/_G3ZVZsr8vwg/S0UKYvfvWTI/AAAAAAAAAbg/XnTNB_hVhxI/image_thumb%5B30%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;I will only choose some of the columns by deleting the unwanted columns.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_G3ZVZsr8vwg/S0UKZHDkEoI/AAAAAAAAAbk/JFThzjCBhi4/s1600-h/image%5B95%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="196" alt="image" src="http://lh4.ggpht.com/_G3ZVZsr8vwg/S0UKcMcuk6I/AAAAAAAAAbo/b3rpE5E2ubE/image_thumb%5B31%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Leave this dialog to be as-is, press OK.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_G3ZVZsr8vwg/S0UKcQcyn-I/AAAAAAAAAbs/ne5Fmk2Q8Ds/s1600-h/image%5B98%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="226" alt="image" src="http://lh5.ggpht.com/_G3ZVZsr8vwg/S0UKdPeHvuI/AAAAAAAAAbw/IGoG994CWbI/image_thumb%5B32%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;h3&gt;Add search command button&lt;/h3&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Next I will create a command button that will actually execute the query (calls the web service API eventually).&lt;/p&gt;  &lt;p&gt;Select the QuickSearch operation from data control and drag’n’drop it into the left pane:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_G3ZVZsr8vwg/S0UKeu4CbCI/AAAAAAAAAb0/Tsurkj5q0aI/s1600-h/image%5B101%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="157" alt="image" src="http://lh3.ggpht.com/_G3ZVZsr8vwg/S0UKfr6TwEI/AAAAAAAAAb4/U4EqsQ4L-kg/image_thumb%5B33%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_G3ZVZsr8vwg/S0UKhJrKncI/AAAAAAAAAb8/dBtPCnunIiU/s1600-h/image%5B104%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="157" alt="image" src="http://lh5.ggpht.com/_G3ZVZsr8vwg/S0UKh4U8yHI/AAAAAAAAAcA/dOx3xgwhZsk/image_thumb%5B34%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_G3ZVZsr8vwg/S0UKi8yAuyI/AAAAAAAAAcE/EqYLmaUP-lU/s1600-h/image%5B107%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="157" alt="image" src="http://lh6.ggpht.com/_G3ZVZsr8vwg/S0UKjsq2rpI/AAAAAAAAAcI/v-eRY3IUZVA/image_thumb%5B35%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;h3&gt;Bind the parameter to the input field&lt;/h3&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Many cases JDeveloper will automatically bind the input parameters from UI to the web service parameters, but here I’ll show you one way to do it when web full automation is not possible.&lt;/p&gt;  &lt;p&gt;Navigate to the web service “Parameters” folder and choose the “queryText” parameter. Drag’n’drop it to the input field in JSF page.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_G3ZVZsr8vwg/S0UKk-hqXaI/AAAAAAAAAcM/zIUm-v39klc/s1600-h/image%5B110%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="157" alt="image" src="http://lh5.ggpht.com/_G3ZVZsr8vwg/S0UKoObXPeI/AAAAAAAAAcQ/hPhBgKOqFeg/image_thumb%5B36%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Bind the input text field:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_G3ZVZsr8vwg/S0UKpk2Kz_I/AAAAAAAAAcU/Gc8ODdTfkRA/s1600-h/image%5B113%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="157" alt="image" src="http://lh3.ggpht.com/_G3ZVZsr8vwg/S0UKqf38xFI/AAAAAAAAAcY/N4AeN9QnNYg/image_thumb%5B37%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Let the defaults be there and press Ok:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_G3ZVZsr8vwg/S0UKrMOF4YI/AAAAAAAAAcc/uz5uIce0BMY/s1600-h/image%5B116%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="187" alt="image" src="http://lh6.ggpht.com/_G3ZVZsr8vwg/S0UKsUqPgZI/AAAAAAAAAcg/w8rx68uQ0XM/image_thumb%5B38%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_G3ZVZsr8vwg/S0UKtmZkP1I/AAAAAAAAAck/Ahoc8PAdcto/s1600-h/image%5B119%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="157" alt="image" src="http://lh5.ggpht.com/_G3ZVZsr8vwg/S0UKuYnehRI/AAAAAAAAAco/6LxMbTpJ5nM/image_thumb%5B39%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Binding from input field to the parameter is now done.&lt;/p&gt;  &lt;h3&gt;Add HTTP basic authentication policy&lt;/h3&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;To enable HTTP basic authentication you need to define web service security settings. I start choosing DataControls.dcx which reveals me data control structure, where I select the wanted data control.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_G3ZVZsr8vwg/S0UKvee2RyI/AAAAAAAAAcs/KTZX9N1LFfk/s1600-h/image%5B122%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="157" alt="image" src="http://lh3.ggpht.com/_G3ZVZsr8vwg/S0UKwL6BhrI/AAAAAAAAAcw/n0XOyxXqGaM/image_thumb%5B40%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Press context menu and choose “Define Web Service Security…”:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_G3ZVZsr8vwg/S0UKxY9FNjI/AAAAAAAAAc0/ZzLvI8vgLwY/s1600-h/image%5B125%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="157" alt="image" src="http://lh6.ggpht.com/_G3ZVZsr8vwg/S0UKyO-o67I/AAAAAAAAAc4/exSTmi7IZl0/image_thumb%5B41%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Press “+” to add new security policy:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_G3ZVZsr8vwg/S0UKyanS5LI/AAAAAAAAAc8/akzKCl_9rnc/s1600-h/image%5B128%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="196" alt="image" src="http://lh3.ggpht.com/_G3ZVZsr8vwg/S0UKzL2Ff2I/AAAAAAAAAdA/hydCSdNBVGI/image_thumb%5B42%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Choose “oracle/wss_http_token_client_policy”:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_G3ZVZsr8vwg/S0UKzmssGWI/AAAAAAAAAdE/UKhHseJZ-SI/s1600-h/image%5B131%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="101" alt="image" src="http://lh6.ggpht.com/_G3ZVZsr8vwg/S0UK0EfUayI/AAAAAAAAAdI/-Mx_kMcqmbU/image_thumb%5B43%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Press “Override Properties..:”&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_G3ZVZsr8vwg/S0UK0vhSXII/AAAAAAAAAdM/m_BuNm57lHk/s1600-h/image%5B134%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="196" alt="image" src="http://lh3.ggpht.com/_G3ZVZsr8vwg/S0UK1UvogeI/AAAAAAAAAdQ/XkskuHdCX2Y/image_thumb%5B44%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Press “New key…”&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_G3ZVZsr8vwg/S0UK1h5I3bI/AAAAAAAAAdU/75OsXdJFWQU/s1600-h/image%5B137%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="186" alt="image" src="http://lh4.ggpht.com/_G3ZVZsr8vwg/S0UK4HnyHVI/AAAAAAAAAdY/qowfYzd4NdY/image_thumb%5B45%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Enter username and password for the end point (actually these will be overriden in the later phase). Enter key name that will be used to find the username and password settings from at runtime.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_G3ZVZsr8vwg/S0UK4ptgDVI/AAAAAAAAAdc/Efi8d1_X3SM/s1600-h/image%5B140%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="171" alt="image" src="http://lh4.ggpht.com/_G3ZVZsr8vwg/S0UK5CtOXxI/AAAAAAAAAdg/fN4bKygBGGc/image_thumb%5B46%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_G3ZVZsr8vwg/S0UK5judL4I/AAAAAAAAAdk/BL28quc0nQw/s1600-h/image%5B143%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="171" alt="image" src="http://lh5.ggpht.com/_G3ZVZsr8vwg/S0UK6R-qkLI/AAAAAAAAAdo/sZIcrLmFV8w/image_thumb%5B47%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Csf-key is important to remember since this will be used to store the username and password for the endpoint in domain keystore.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_G3ZVZsr8vwg/S0UK74WPe1I/AAAAAAAAAds/ci3YySO4Snc/s1600-h/image%5B146%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="186" alt="image" src="http://lh3.ggpht.com/_G3ZVZsr8vwg/S0UK8VxQZMI/AAAAAAAAAdw/ZauvKAfw17k/image_thumb%5B48%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_G3ZVZsr8vwg/S0UK9HlgFkI/AAAAAAAAAd0/7i5ZbbcnPVM/s1600-h/image%5B149%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="196" alt="image" src="http://lh5.ggpht.com/_G3ZVZsr8vwg/S0UK9scheDI/AAAAAAAAAd4/YNr0lxX3zgQ/image_thumb%5B49%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;h3&gt;Create deployment profiles for project and application and deploy&lt;/h3&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;You need to first create WAR deployment profile for the project.&lt;/p&gt;  &lt;p&gt;Then you create EAR deployment profile for the application and define the dependency to the WAR deployment profile.&lt;/p&gt;  &lt;p&gt;You should deploy the application (not WAR).&lt;/p&gt;  &lt;h3&gt;Define credentials key under oracle.wsm.security&lt;/h3&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Login to the Fusion Middleware Enterprise manager console. The URL is something like &lt;a href="http://localhost:7001/em"&gt;http://localhost:7001/em&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_G3ZVZsr8vwg/S0UK-CgxGEI/AAAAAAAAAd8/1mi__dkdAq0/s1600-h/image%5B152%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="118" alt="image" src="http://lh5.ggpht.com/_G3ZVZsr8vwg/S0UK-g1tPAI/AAAAAAAAAeA/vTB2HfcU2m4/image_thumb%5B50%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Press “Create Key”. Key attribute here is the csf-key you defined earlier. In my example I used csf-key “demo-ucm-search”. These are the actual username and password that are used when initiating the connection to UCM.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_G3ZVZsr8vwg/S0UK_Mm8JNI/AAAAAAAAAeE/cy9HlHHp9nM/s1600-h/image%5B155%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="161" alt="image" src="http://lh5.ggpht.com/_G3ZVZsr8vwg/S0UK_XoWoYI/AAAAAAAAAeI/2HRjydF1mhY/image_thumb%5B51%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_G3ZVZsr8vwg/S0ULABmovLI/AAAAAAAAAeM/A9DId03j4b8/s1600-h/image%5B158%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="80" alt="image" src="http://lh5.ggpht.com/_G3ZVZsr8vwg/S0ULApdBeSI/AAAAAAAAAeQ/JcQr0nFL0_M/image_thumb%5B52%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;h3&gt;Test and run&lt;/h3&gt;  &lt;p&gt;Deploy the application to the domain and you should be fine with the application based on UCM SOAP APIs.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_G3ZVZsr8vwg/S0ULBE0qReI/AAAAAAAAAeU/FjcdODOqzHw/s1600-h/image%5B161%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="118" alt="image" src="http://lh3.ggpht.com/_G3ZVZsr8vwg/S0ULB6E6ycI/AAAAAAAAAeY/OYNhhTD0Z6M/image_thumb%5B53%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;UCM search API uses special search notation, so I wanted to search for UCM documents that had “visa” in the document title. I enter the query criteria dDocTitle &amp;lt;substring&amp;gt; `visa`.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_G3ZVZsr8vwg/S0ULCUViN3I/AAAAAAAAAec/E8A1BFJYwK4/s1600-h/image%5B164%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="118" alt="image" src="http://lh5.ggpht.com/_G3ZVZsr8vwg/S0ULDGEvSKI/AAAAAAAAAeg/M2KAiQOyTdg/image_thumb%5B54%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-1784399517002672319?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/1784399517002672319/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=1784399517002672319' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/1784399517002672319'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/1784399517002672319'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2010/01/sample-jsf-11g-application-that-uses.html' title='Sample JSF 11g application that uses UCM search SOAP API and HTTP basic authentication'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_G3ZVZsr8vwg/S0UJh-SU5wI/AAAAAAAAAXw/B92J1COFHlk/s72-c/image_thumb.png?imgmax=800' height='72' width='72'/><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-1335370867978775767</id><published>2009-11-19T01:06:00.001+02:00</published><updated>2009-11-19T01:09:56.478+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Oracle UCM'/><title type='text'>UCM WebService CheckinUniversal and Setting Target Folder</title><content type='html'>&lt;p&gt;Oracle Universal Content Management (UCM) 10g has built-in SOAP interfaces to integrate with surrounding applications and tools.&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;For check-in purposes there is “CheckInUniversal” SOAP operation where you can check-in new documents into UCM. By default you can set all the main metadata but not folder information.&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;There is a way to set the target folder, if you needed to show the document in “traditional” file folder structure. For some reason the information how to do this seems to be a bit hard to find, that is why I publish this for wider audience (search engines should find).&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;There are two extra CustomDocMetaData properties you could use:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;     &lt;p&gt;xCollectionName&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p&gt;xCollectionID&lt;/p&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;   &lt;p&gt;You specify one of the above properties. The end result is something like this:&lt;/p&gt; &lt;/p&gt;  &lt;pre class="prettyprint"&gt;&amp;lt;soapenv:Envelope xmlns:soapenv=&amp;quot;http://schemas.xmlsoap.org/soap/envelope/&amp;quot; xmlns:chec=&amp;quot;http://www.stellent.com/CheckIn/&amp;quot;&amp;gt;&lt;br /&gt;   &amp;lt;soapenv:Header/&amp;gt;&lt;br /&gt;   &amp;lt;soapenv:Body&amp;gt;&lt;br /&gt;      &amp;lt;chec:CheckInUniversal&amp;gt;&lt;br /&gt;         &amp;lt;chec:dDocName&amp;gt;OracleLogoSmall&amp;lt;/chec:dDocName&amp;gt;&lt;br /&gt;         &amp;lt;chec:dDocTitle&amp;gt;Oracle logo&amp;lt;/chec:dDocTitle&amp;gt;&lt;br /&gt;         &amp;lt;chec:dDocType&amp;gt;DOCUMENT&amp;lt;/chec:dDocType&amp;gt;&lt;br /&gt;         &amp;lt;chec:dDocAuthor&amp;gt;weblogic&amp;lt;/chec:dDocAuthor&amp;gt;&lt;br /&gt;         &amp;lt;chec:dSecurityGroup&amp;gt;WebCenter&amp;lt;/chec:dSecurityGroup&amp;gt;&lt;br /&gt;         &amp;lt;chec:dDocAccount&amp;gt;&amp;lt;/chec:dDocAccount&amp;gt;&lt;br /&gt;         &amp;lt;chec:CustomDocMetaData&amp;gt;&lt;br /&gt;            &amp;lt;chec:property&amp;gt;&lt;br /&gt;               &amp;lt;chec:name&amp;gt;xComments&amp;lt;/chec:name&amp;gt;&lt;br /&gt;               &amp;lt;chec:value&amp;gt;This is Oracle small logo&amp;lt;/chec:value&amp;gt;&lt;br /&gt;            &amp;lt;/chec:property&amp;gt;&lt;br /&gt;&amp;lt;!--&lt;br /&gt;            &amp;lt;chec:property&amp;gt;&lt;br /&gt;               &amp;lt;chec:name&amp;gt;xCollectionID&amp;lt;/chec:name&amp;gt;&lt;br /&gt;               &amp;lt;chec:value&amp;gt;31&amp;lt;/chec:value&amp;gt;&lt;br /&gt;            &amp;lt;/chec:property&amp;gt;&lt;br /&gt;--&amp;gt;&lt;br /&gt;            &amp;lt;chec:property&amp;gt;&lt;br /&gt;               &amp;lt;chec:name&amp;gt;xCollectionName&amp;lt;/chec:name&amp;gt;&lt;br /&gt;               &amp;lt;chec:value&amp;gt;/Contribution Folders/Logos/&amp;lt;/chec:value&amp;gt;&lt;br /&gt;            &amp;lt;/chec:property&amp;gt;&lt;br /&gt;         &amp;lt;/chec:CustomDocMetaData&amp;gt;&lt;br /&gt;         &amp;lt;chec:primaryFile&amp;gt;&lt;br /&gt;            &amp;lt;chec:fileName&amp;gt;oracle_logo_small.gif&amp;lt;/chec:fileName&amp;gt;&lt;br /&gt;         &amp;lt;chec:fileContent&amp;gt;R0lGODlhhQASAPcAAP////8AAP/o6P/29v/a2v8vL/+Tk/+Uk/8BAP/6+v/+/v8wL/8yMv8zM//3&lt;br /&gt;9//8/P8sLP+4uP9vb//X1//p6f8zMv/09P/9/f9eXv/7+/8CAv/f3/8BAf/19f8FBP+ysv/4+P/y&lt;br /&gt;8v81Nf+Qj/8wMP/Ly/+Pj/8EBP9ubv8XF//V1f+UlP8VFP+0tP8HB/8qKv+Bgf/n5/9iYv8WFf/P&lt;br /&gt;z/82Nv82Nf8iIv/i4v8fH/+np//W1v+5uf9fXv+xsf8WFv+mpv/b2/8TE/8aGv/v7/+urv9HR//Y&lt;br /&gt;2P/AwP84OP/Z2f+vr/9zcv/l5f9AQP8nJ/8lJP99ff9cXP8dHP87Ov+2tv+/vv+zs//Gxv9ZWP8m&lt;br /&gt;Jv+env+Vlf8SEv9JSf88PP9oaP/d3f9VVf/r6/9EQ//Jyf+6uv+oqP+trf80M//Nzf/c3P9dXf/u&lt;br /&gt;7v+qqv/T0/8pKf/s7P/x8f8REP+Xl//R0f8NDf/e3v/MzP+3t/93d/9xcf8/P//m5v9LS/8hIf94&lt;br /&gt;ef+IiP9NTP9OTv+Ghv+kpP8FBf+Liv88O//t7f9kZP80NP/Dw/+iov8gIP8ICP8KCv8VFf+cnP9M&lt;br /&gt;TP/k5P9lZf+wsP8xMf8uLv8DAv/z8/9rav/ExP8eHv/S0v/Kyv/q6v8PDv+rq/8oKP9TUv8REf+K&lt;br /&gt;if8MC/9hYf8eHf/w8P8gH/+npv+Skv+gn/8GBf/Dwv8OD/9eXf+0s/8QD/8tLP/9/v+Wlf+YmP/z&lt;br /&gt;9P9OTP+Eg//a2/91dP8YF/96ev/u7f/Z2v8yMf8IB/8SEf8rK//x8v/y8f/29f+mpf/19v9jY/+T&lt;br /&gt;kv96ef8UE//X1v8qKf+5uP8PEP/5+f84N/8tLf8QEP+MjP+Ojf8CAf+pqf/w8f+Yl/+ys/+Pjv8i&lt;br /&gt;If8DA/8cG/8fHv81NP+Ojv8xMP89Pf8KCf/f4P9CQf9CQv8nJv9paf/Ew//Mzf8GBv8HBv+goP9I&lt;br /&gt;Sf/r6v9NTf9JSP8ODv9oZ/9fX/8PD/95ev+Rkf9QUP9SUf+bnP/CwiH5BAAAAAAALAAAAACFABIA&lt;br /&gt;AAj/AAEIFLimygoDBw4YQIhQoQFRKgYO3LDQYUKFGA3c0oFEokeJahZi+UhSE5ItDBNWdLgCxJuF&lt;br /&gt;bh6QnDkQz5KGGDMeuEbgQpF9EWQKlCOBwakASJMqTfpCzxqJbpZKVfpDkTGaAILcQBquDNZpzLxE&lt;br /&gt;mrqUD4hASG8MwPoxgpQ/J8gmdVEHz7oAOWgININIrlw4Swb6CIDA71InwGZ2UES48CUBM5v0M5x0&lt;br /&gt;CgUA3pCKcMBWYqMflJGiAdDiXioqagDc6aK0AAMGDSo0eD07zahXSWPNEvgBqR1MaV5XYCC7wWzQ&lt;br /&gt;SAFlIHnG2lIYJJt4UVqKGuzisSuUKyTQBFIbnDsD/+BiJ+mJ4MaJy2YwSk8CAM+EFXiipkMSpBqk&lt;br /&gt;tLAwoL///x3IIYYGSCURBgC9BVAMDf81OMAOIiA1hQUfgfICUo4IgVQnn3h0gSlJ+YJGCA76h8xA&lt;br /&gt;3gVQQ3hsBTEHUo/s0UaJ/XVwgUAKTBBICQ8UgR8qFIoHABOEBRAFaUhBcARblhAYwAYfSVAkOZYc&lt;br /&gt;FUA/QQr0hjgSuiMkACN8xyJWm/jmypceTYKUFgd+CYITSOkSQhVJTsCWFfAgxYlHJSSlTh8AyJAU&lt;br /&gt;HRIVgpQLjKAZZgCbdbZBKEiB8UAClFZqaaUx3CgRLYTtoQCaAACB1DlrRINULTuwRWQAw2QJQAYX&lt;br /&gt;Bv8QSYcAUAJJYRDgIJADyxQYApopgtfZYIXxAQYGyGLQA7Js9NCDLD2IwcNyEqUQQDb+gAoAFk6q&lt;br /&gt;wEOSYXhyRQQ8kBtBBGb4IMM7hZExZhROViLRFklVAgIAidSDVBSaCrloo2zlEZpSOQDqkbUcEAoq&lt;br /&gt;EhwUpkIESW5AwyJdzMCCxRcTk1QmsHwqUDsvBgBFDBJd4AdShnwAABFqBgDGvV8GO+ZMAiNQWGja&lt;br /&gt;kGRtAHtoC2IAQ+AgcABKPnDHVmQZIopEyggyaiMAPCC11FiwFgAcFiigz5qXfbnoip1BjFQ6gEgg&lt;br /&gt;AQpnn422BOwQkghJgyAFRQlobrAKUk4QQSfRdgL/QMEXSNnsQg7f4KOER7gkNUgv41DxxReImEOF&lt;br /&gt;hkgxAUA3SXGjqGYzkxQC0lJoAoACpJdeer8f+YiUF1CKRwEbhHHABQBX1DmQHGzEFYAjQJBUhxZI&lt;br /&gt;OeNJMoZ5YAY64SCVAh5eI0WNkGghtUwH2grkNFIVaENDEAR07333QaigjRFFktIGgrYPpEAzSXFg&lt;br /&gt;AOoJ0JPUmYsF4IEHJ9zvgQtJFXDMChxASihg8I87fO+ASpjAAFqBlEu84YAQ7F4Z4JAUDLSAFxH0&lt;br /&gt;XgI/ggMyKOUPJChAARYwQhIWgATQCFwAhLAk9PHNIxk4RCaSgoJfCQQNRZKHLQQyBknoAAhA0IEO&lt;br /&gt;6FjhBikEEAHQKVNS5rCIBZhQhCJcQDWMIAA6IMUemCjhE58oQh+UwFqF4QAJuDjCEj5hBSQJBj8G&lt;br /&gt;phQyjIQ36fMIF3KQFC9cZgc1QMoPvMKWbZAAKSxgRC5+wUb3YIONQPuVFSIUmk607iNEiIcYdGcY&lt;br /&gt;I2wBFBJZAlKekCqSqGAGTKFEFpKyC4+x5QrgGFscHkADCeTDMFCgUASkwUa6CaQJJvijXzRgBbYM&lt;br /&gt;gAICCKYwhylMVwkEBMGMA7VIEodgxgAHGZhHDIL5HiEBUwAUoFYCxkDMbp4vatzspjgh4xFVjFOY&lt;br /&gt;XfNIQAAAOw==&lt;br /&gt;&amp;lt;/chec:fileContent&amp;gt;&lt;br /&gt;         &amp;lt;/chec:primaryFile&amp;gt;&lt;br /&gt;      &amp;lt;/chec:CheckInUniversal&amp;gt;&lt;br /&gt;   &amp;lt;/soapenv:Body&amp;gt;&lt;br /&gt;&amp;lt;/soapenv:Envelope&amp;gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;font size="4"&gt;Word of Warning&lt;/font&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;  &lt;p&gt;&lt;br /&gt;    &lt;p&gt;I recognized some in some situations inconsitent behaviour (somebody might call it bug ;). Once you create a new virtual folder and try to check in documents into this folder using SOAP interface and xCollectionName, for some reason the documents end up not having the folder name. I recognized that once I called the check-in service &lt;u&gt;first time&lt;/u&gt; with xCollectionID and then continued with xCollectionName, everything seemed to work ok.&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;    &lt;p&gt;&lt;/p&gt;&lt;br /&gt;This seems to have something to do with UCM interface folder data structures not being populated properly when a new folder is created. Bouncing the UCM server after creating the folder didn’t have any effect so the recommendation is to use xCollectionID at least once to enable using xCollectionName later.&lt;/p&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-1335370867978775767?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/1335370867978775767/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=1335370867978775767' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/1335370867978775767'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/1335370867978775767'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2009/11/ucm-webservice-checkinuniversal-and.html' title='UCM WebService CheckinUniversal and Setting Target Folder'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-2288810118893797833</id><published>2009-10-25T23:56:00.001+02:00</published><updated>2009-10-25T23:56:56.770+02:00</updated><title type='text'>ADF 11g on WebLogic (class not found errors)</title><content type='html'>&lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Simple use case is here:&lt;/p&gt;  &lt;p&gt;1. You want to create your first ADF portal or other ADF 11g based application.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;2. You wanted to deploy it on your custom WebLogic 11g (10.3.1) domain, which you extended with Oracle JRF libraries.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;3. On deployment time you would get something like this:&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;[09:31:02 PM] Deploying Application...    &lt;br /&gt;[09:31:06 PM] [Deployer:149193]Operation 'deploy' on application 'harriportalapp' has failed on 'AdminServer'     &lt;br /&gt;[09:31:06 PM] [Deployer:149034]An exception occurred for task [Deployer:149026]deploy application harriportalapp on AdminServer.: Failed to load webapp: 'HarriPortal-PortalViewController-context-root'.     &lt;br /&gt;[09:31:06 PM] Weblogic Server Exception: weblogic.application.ModuleException: Failed to load webapp: 'HarriPortal-PortalViewController-context-root'     &lt;br /&gt;[09:31:06 PM] Caused by: java.lang.ClassNotFoundException: javax.faces.webapp.FacesServlet     &lt;br /&gt;[09:31:06 PM]&amp;#160;&amp;#160; See server logs or server console for more details.     &lt;br /&gt;[09:31:06 PM] weblogic.application.ModuleException: Failed to load webapp: 'HarriPortal-PortalViewController-context-root'     &lt;br /&gt;[09:31:06 PM] ####&amp;#160; Deployment incomplete.&amp;#160; ####     &lt;br /&gt;[09:31:06 PM] Deployment Failed&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;The problem might be in weblogic.xml file where you need to replace the &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&amp;lt;library-ref&amp;gt;    &lt;br /&gt;&amp;#160; &amp;lt;library-name&amp;gt;adf.oracle.domain&amp;lt;/library-name&amp;gt;     &lt;br /&gt;&amp;lt;/library-ref&amp;gt;     &lt;br /&gt;&lt;/p&gt;  &lt;p&gt;with:&lt;/p&gt;  &lt;p&gt;&amp;lt;library-ref&amp;gt;    &lt;br /&gt;&amp;#160; &amp;lt;library-name&amp;gt;adf.oracle.domain.webapp&amp;lt;/library-name&amp;gt;     &lt;br /&gt;&amp;lt;/library-ref&amp;gt; &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Remember to deploy the ADF application from the application contect menu, not from project deployment menu.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-2288810118893797833?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/2288810118893797833/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=2288810118893797833' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/2288810118893797833'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/2288810118893797833'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2009/10/adf-11g-on-weblogic-class-not-found.html' title='ADF 11g on WebLogic (class not found errors)'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-1968753834439075513</id><published>2009-09-15T09:51:00.001+03:00</published><updated>2009-09-15T09:51:47.082+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='XMLDB'/><category scheme='http://www.blogger.com/atom/ns#' term='OracleDB'/><category scheme='http://www.blogger.com/atom/ns#' term='XML'/><title type='text'>XML DB: Forced XSD Schema deregistering</title><content type='html'>&lt;p&gt;   &lt;p&gt;     &lt;p&gt;I played with OracleDB 11.1.0.7 XML DB and ended up in the situation where I couldn’t get my registered schema to disappear from Enterprise manager console.&lt;/p&gt;      &lt;p&gt;&lt;/p&gt; Tried with all the options in the deletion mode, still the schema appears in the schema list and I get ORA-31000 errors while trying to delete the schema both from EM console and SQL*Plus:      &lt;p&gt;&lt;/p&gt;   &lt;/p&gt;    &lt;p&gt;SQL&amp;gt; exec DBMS_XMLSCHEMA.DELETESCHEMA('&lt;a href="http://www.oracle.com/emp.xsd'"&gt;http://www.oracle.com/emp.xsd'&lt;/a&gt;, DBMS_XMLS       &lt;br /&gt;CHEMA.DELETE_CASCADE_FORCE);       &lt;br /&gt;BEGIN DBMS_XMLSCHEMA.DELETESCHEMA('&lt;a href="http://www.oracle.com/emp.xsd'"&gt;http://www.oracle.com/emp.xsd'&lt;/a&gt;, DBMS_XMLSCHEM       &lt;br /&gt;A.DELETE_CASCADE_FORCE); END; &lt;/p&gt; &lt;/p&gt;  &lt;p&gt;   &lt;p&gt;*      &lt;br /&gt;ERROR at line 1:       &lt;br /&gt;ORA-31000: Resource '&lt;a href="http://www.oracle.com/emp.xsd'"&gt;http://www.oracle.com/emp.xsd'&lt;/a&gt; is not an XDB schema       &lt;br /&gt;document       &lt;br /&gt;ORA-06512: at &amp;quot;XDB.DBMS_XMLSCHEMA_INT&amp;quot;, line 106       &lt;br /&gt;ORA-06512: at &amp;quot;XDB.DBMS_XMLSCHEMA&amp;quot;, line 102       &lt;br /&gt;ORA-06512: at line 1&lt;/p&gt;    &lt;p&gt;&lt;/p&gt; &lt;/p&gt;  &lt;h4&gt;Purging Schema&lt;/h4&gt;  &lt;p&gt;   &lt;p&gt;The solution for this is purging the schema. First of all, take a look at the registered schemas using SQL statement:&lt;/p&gt;    &lt;p&gt;     &lt;p&gt;&lt;/p&gt;   &lt;/p&gt;    &lt;p&gt;SQL&amp;gt; select schema_url from user_xml_schemas; &lt;/p&gt;    &lt;p&gt;SCHEMA_URL     &lt;br /&gt;--------------------------------------------- &lt;/p&gt;    &lt;p&gt;&lt;a href="http://www.oracle.com/emp.xsd"&gt;http://www.oracle.com/emp.xsd&lt;/a&gt;&lt;/p&gt;    &lt;p&gt;&lt;/p&gt;    &lt;p&gt;&lt;/p&gt;    &lt;p&gt;     &lt;p&gt;SQL&amp;gt; &lt;/p&gt;      &lt;p&gt;select schema_id from user_xml_schemas;&lt;/p&gt;   &lt;/p&gt;    &lt;p&gt;SCHEMA_ID     &lt;br /&gt;--------------------------------      &lt;br /&gt;91429F33C64A4D60B16294C670DD86C7&lt;/p&gt;    &lt;p&gt;     &lt;p&gt;&lt;/p&gt;      &lt;p&gt;Now, copy that schema ID as the parameter to PURGESCHEMA and execute following:       &lt;p&gt;&lt;/p&gt;     &lt;/p&gt;      &lt;p&gt;SQL&amp;gt; exec DBMS_XMLSCHEMA.PURGESCHEMA('91429F33C64A4D60B16294C670DD86C7');&lt;/p&gt;      &lt;p&gt;       &lt;p&gt;PL/SQL procedure successfully completed.&lt;/p&gt;        &lt;p&gt;&lt;/p&gt;        &lt;p&gt;After this you shouldn’t have that extra schema hanging in your schema list anymore.&lt;/p&gt;&lt;/p&gt;&lt;/p&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-1968753834439075513?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/1968753834439075513/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=1968753834439075513' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/1968753834439075513'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/1968753834439075513'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2009/09/xml-db-forced-xsd-schema-deregistering.html' title='XML DB: Forced XSD Schema deregistering'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-4910459363152333471</id><published>2009-09-11T08:29:00.001+03:00</published><updated>2009-09-11T08:29:23.390+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='WebLogic'/><category scheme='http://www.blogger.com/atom/ns#' term='SOA Suite'/><title type='text'>SOA Suite 11g installation – How to start BAM and SOA servers the first time</title><content type='html'>&lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;After installing SOA Suite 11g there has been a few questions asked why SOA or BAM servers are not started up. After you start the Admin server from $ORACLE_HOME/user_projects/domains/soadomain –using startWebLogic.cmd, you will get the Admin server up with the built-in Enterprise Manager. When you login to the enterprise manager using &lt;a href="http://hostname:port/em"&gt;http://hostname:port/em&lt;/a&gt;, you will see the status of other servers, like this:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_G3ZVZsr8vwg/SqngJ1Nj73I/AAAAAAAAAXc/zqM-2vqwxM0/s1600-h/image3.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="372" alt="image" src="http://lh3.ggpht.com/_G3ZVZsr8vwg/SqngK73K2iI/AAAAAAAAAXg/dzCUSHjtJDg/image_thumb1.png?imgmax=800" width="644" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Indication is that BAM server or SOA server are not started. You can try starting these servers from GUI (click on server and mouse right-click) if you have your node manager up and running. If you don’t, here are my steps to do this form command line (replace the “C:\product\FMW11G” with your installation directory and “soadomain” with your domain name) :&lt;/p&gt;  &lt;p&gt;C:\product\FMW11G\user_projects\domains\soadomain\bin&amp;gt;startManagedWebLogic.cmd soa_server1&lt;/p&gt;  &lt;p&gt;Enter username to boot WebLogic server: weblogic&lt;/p&gt;  &lt;p&gt;Enter password to boot WebLogic server:&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;After this, the SOA server starts up and SOA server runtime files gets created under C:\product\FMW11G\user_projects\domains\soadomain\servers –directory.&lt;/p&gt;  &lt;p&gt;To automate the startup, not having to enter username and password, you need to create file called boot.properties and place this under security directory. In my example the directory would be C:\product\FMW11G\user_projects\domains\soadomain\servers\soa_server1\security. You need to create this directory manually if you don’t have it.&lt;/p&gt;  &lt;p&gt;Editing the boot.properties is familiar if you have dealt with WebLogic server:&lt;/p&gt;  &lt;p&gt;username=weblogic    &lt;br /&gt;password=mypassword&lt;/p&gt;  &lt;p&gt;Next time server is started up, it reads the credentials from boot.properties, encrypts them in this file and continues with startup process.&lt;/p&gt;  &lt;p&gt;Above instructions apply to BAM server as well.&lt;/p&gt;  &lt;p&gt;This should be the end result:&lt;/p&gt;  &lt;p&gt;   &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_G3ZVZsr8vwg/SqngLlpN6XI/AAAAAAAAAXk/F2KbgH5WhiU/s1600-h/image7.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="373" alt="image" src="http://lh3.ggpht.com/_G3ZVZsr8vwg/SqngMjsbjxI/AAAAAAAAAXo/SVv5K9IW_3U/image_thumb3.png?imgmax=800" width="644" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;    &lt;p&gt;&lt;/p&gt; &lt;/p&gt;  &lt;h3&gt;“Start all” script for Windows&lt;/h3&gt; Here is a sample Windows script to start all servers that belong to SOA Suite (defaults to being on SOA domain directory):  &lt;p&gt;   &lt;p&gt;&lt;/p&gt; &lt;/p&gt;  &lt;p&gt;start &amp;quot;SOA Admin Server&amp;quot; startWebLogic.cmd   &lt;br /&gt;start &amp;quot;SOA Server&amp;quot; bin\startManagedWeblogic.cmd soa_server1    &lt;br /&gt;start &amp;quot;BAM Server&amp;quot; bin\startManagedWeblogic.cmd bam_server1&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-4910459363152333471?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/4910459363152333471/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=4910459363152333471' title='7 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/4910459363152333471'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/4910459363152333471'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2009/09/soa-suite-11g-installation-how-to-start.html' title='SOA Suite 11g installation – How to start BAM and SOA servers the first time'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/_G3ZVZsr8vwg/SqngK73K2iI/AAAAAAAAAXg/dzCUSHjtJDg/s72-c/image_thumb1.png?imgmax=800' height='72' width='72'/><thr:total>7</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-5919411289734332238</id><published>2009-08-31T22:58:00.001+03:00</published><updated>2009-08-31T22:58:28.141+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='WebLogic'/><category scheme='http://www.blogger.com/atom/ns#' term='Weblogic Portal'/><title type='text'>File name too long – Error on WebLogic Portal domain removal</title><content type='html'>&lt;p&gt;Sometimes you need to recreate domain or just remove the domain for good. On Windows you might end up with situation where simple recursive WebLogic domain folder delete will cause “File Name too Long” errors and one or two files out of the domain directory cannot be deleted.&lt;/p&gt;  &lt;p&gt;The reason for this is that the complete path (including sub-directories) is longer than 256 characters. The workaround is to reduce the names of the subdirectories one-by-one until you are able to delete the whole domain directory tree. You can start with “rename AdminServer 1” etc. until you are able to remove.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-5919411289734332238?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/5919411289734332238/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=5919411289734332238' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/5919411289734332238'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/5919411289734332238'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2009/08/file-name-too-long-error-on-weblogic.html' title='File name too long – Error on WebLogic Portal domain removal'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-4284786612213131545</id><published>2009-04-23T08:03:00.001+03:00</published><updated>2009-04-23T08:03:52.141+03:00</updated><title type='text'>ODI Public Web Services on WebLogic 10.3</title><content type='html'>&lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;For some reason trying to run ODI (Oracle Data Integrator) public web services on axis2 (1.2.1) container on top of WebLogic 10.3 seemed problematic. Axis2 WAR deployment was successful, but for some reason Axis2 refuses to upload/install the ODI web services AAR file. Nothing in the logs.&lt;/p&gt;  &lt;p&gt;After cratching the head a while I figured out the way to get ODI public services installed on WebLogic 10.3. Here are the steps:&lt;/p&gt;  &lt;h3&gt;Step 1 (please adjust according to your env)&lt;/h3&gt;  &lt;p&gt;Copy €ODI_HOME/oracledi\tools\web_services\odi-public-ws.aar –file to the Web Logic Axis2 deployment directory:&lt;/p&gt;  &lt;p&gt;C:\product\OSB103\osb_10.3\samples\domains\servicebus\servers\xbusServer\tmp\_WL_user\axis2\1sft87\war\WEB-INF\services&amp;gt;&lt;/p&gt;  &lt;h3&gt;Step 2: Edit services.list&lt;/h3&gt;  &lt;p&gt;Edit services.list, add:    &lt;br /&gt;odi-public-ws.aar&lt;/p&gt;  &lt;h3&gt;Step 3: Bounce the axis2 application&lt;/h3&gt;  &lt;p&gt;Stop the axis2 application and start. Now you should have the ODI public web services API available as Axis2 service.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-4284786612213131545?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/4284786612213131545/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=4284786612213131545' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/4284786612213131545'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/4284786612213131545'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2009/04/odi-public-web-services-on-weblogic-103.html' title='ODI Public Web Services on WebLogic 10.3'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-6212435039786577908</id><published>2009-03-26T23:49:00.001+02:00</published><updated>2009-03-26T23:52:56.764+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ODI'/><title type='text'>Adding ODI Public Services to JDeveloper Service Explorer</title><content type='html'>&lt;p&gt;Oracle Data Integrator 10.1.3.5 has now a simple (static) WSIL definition file that can be utilized in SOA development. How this should show up in practical SOA development, you should see the ODI public web service as a service in the "Service Explorer" window in JDeveloper.&lt;/p&gt; &lt;p&gt;This is what I want:&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_G3ZVZsr8vwg/Scv4XS6YKNI/AAAAAAAAANI/5D8VgeoOVEY/s1600-h/image%5B3%5D.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="484" alt="image" src="http://lh3.ggpht.com/_G3ZVZsr8vwg/Scv4YEy7wqI/AAAAAAAAANM/DCF7XN9o4Jw/image_thumb%5B1%5D.png?imgmax=800" width="484" border="0"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;In order to get this working requires couple of manual/trivial configuration steps. First of all I assume that you have deployed the axis2 container to e.g. OracleAS or some other servlet/Java EE container. In my installation I've created a dedicated "odi" OC4J instance for ODI services. Axis2 shows up in my installation using &lt;a href="http://localhost:8889/axis2"&gt;http://localhost:8889/axis2&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;Also assumed is that you use ODI 10.1.3.5 that has the required WSIL file. You could use also earlier versions of ODI, just by creating the WSIL file shown in this article.&lt;/p&gt; &lt;h3&gt;Step 1: Copy OdiInvoke.wsil file from ODI to axis2 directory&lt;/h3&gt; &lt;p&gt;The wanted file is located in $ODIHOME/oracledi/lib/OdiInvoke.wsil. You should copy this file to axis2 web application directory.&lt;/p&gt; &lt;p&gt;In my installation I copied it under this kind of directory:&lt;/p&gt; &lt;p&gt;D:\product\10.1.3.1\soasuite\j2ee\odi\applications\axis2\axis2-1_2\axis2-web&lt;/p&gt; &lt;p&gt;In your installation you might use SOA suite's OC4J for deployment, in which case you should change the "j2ee\odi" part to "j2ee\home" or "j2ee\oc4j_soa".&lt;/p&gt; &lt;h3&gt;Step 2: Fix the OdiInvoke.wsil&lt;/h3&gt; &lt;p&gt;There is a small issue in the WSDL location that prevents the WSDL path working correctly under OC4J/axis2.&lt;/p&gt; &lt;p&gt;Edit OdiInvoke.wsil, change the WSDL location to match your axis2 deployment context.&lt;/p&gt; &lt;p&gt;&amp;lt;?xml version="1.0" encoding="UTF-8"?&amp;gt;&lt;br&gt;&amp;lt;inspection xmlns="&lt;a href="http://schemas.xmlsoap.org/ws/2001/10/inspection/&amp;quot;"&gt;http://schemas.xmlsoap.org/ws/2001/10/inspection/"&lt;/a&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; xmlns:wsilwsdl="&lt;a href="http://schemas.xmlsoap.org/ws/2001/10/inspection/wsdl/&amp;quot;"&gt;http://schemas.xmlsoap.org/ws/2001/10/inspection/wsdl/"&lt;/a&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; xmlns:wsiluddi="&lt;a href="http://schemas.xmlsoap.org/ws/2001/10/inspection/uddi/&amp;quot;"&gt;http://schemas.xmlsoap.org/ws/2001/10/inspection/uddi/"&lt;/a&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; xmlns:uddi="urn:uddi-org:api"&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;service&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;abstract xml:lang="en-US"&amp;gt;&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; Oracle Data Integrator Public Web Services&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/abstract&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;description referencedNamespace="&lt;a href="http://schemas.xmlsoap.org/wsdl/&amp;quot;"&gt;http://schemas.xmlsoap.org/wsdl/"&lt;/a&gt;&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; &lt;strong&gt;location="./services/OdiInvoke?wsdl"&amp;gt;&lt;/strong&gt;&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;lt;wsilwsdl:reference endpointPresent="true"&amp;gt;&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;&amp;nbsp; &amp;lt;wsilwsdl:referencedService xmlns:impl="xmlns.oracle.com/odi/OdiInvoke/"&amp;gt;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; impl:OdiInvoke&amp;lt;/wsilwsdl:referencedService&amp;gt;&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;lt;/wsilwsdl:reference&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/description&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/service&amp;gt;&lt;br&gt;&amp;lt;/inspection&amp;gt;  &lt;p&gt;to&lt;/p&gt; &lt;p&gt;&amp;lt;?xml version="1.0" encoding="UTF-8"?&amp;gt;&lt;br&gt;&amp;lt;inspection xmlns="&lt;a href="http://schemas.xmlsoap.org/ws/2001/10/inspection/&amp;quot;"&gt;http://schemas.xmlsoap.org/ws/2001/10/inspection/"&lt;/a&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; xmlns:wsilwsdl="&lt;a href="http://schemas.xmlsoap.org/ws/2001/10/inspection/wsdl/&amp;quot;"&gt;http://schemas.xmlsoap.org/ws/2001/10/inspection/wsdl/"&lt;/a&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; xmlns:wsiluddi="&lt;a href="http://schemas.xmlsoap.org/ws/2001/10/inspection/uddi/&amp;quot;"&gt;http://schemas.xmlsoap.org/ws/2001/10/inspection/uddi/"&lt;/a&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; xmlns:uddi="urn:uddi-org:api"&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;service&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;abstract xml:lang="en-US"&amp;gt;&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; Oracle Data Integrator Public Web Services&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/abstract&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;description referencedNamespace="&lt;a href="http://schemas.xmlsoap.org/wsdl/&amp;quot;"&gt;http://schemas.xmlsoap.org/wsdl/"&lt;/a&gt;&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; &lt;strong&gt;location="/axis2/services/OdiInvoke?wsdl"&amp;gt;&lt;/strong&gt;&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;lt;wsilwsdl:reference endpointPresent="true"&amp;gt;&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;&amp;nbsp; &amp;lt;wsilwsdl:referencedService xmlns:impl="xmlns.oracle.com/odi/OdiInvoke/"&amp;gt;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; impl:OdiInvoke&amp;lt;/wsilwsdl:referencedService&amp;gt;&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;lt;/wsilwsdl:reference&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/description&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/service&amp;gt;&lt;br&gt;&amp;lt;/inspection&amp;gt;  &lt;h3&gt;Step 3: Configure JDeveloper 10.1.3.4 to show local WSIL registry&lt;/h3&gt; &lt;p&gt;Edit&lt;/p&gt; &lt;p&gt;$JDEVHOME\integration\bpm\designer\config\serviceexplorer_plugin.xml&lt;/p&gt; &lt;p&gt;Uncomment:&lt;/p&gt; &lt;p&gt;&amp;lt;!-- Commenting WSIL as xmethods wsil is no more valid (accessible) &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;ExternalSource name="WSIL" class="oracle.tip.tools.ide.pm.datasources.wsil.WSILDataSourceContainer" enable="true"&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/ExternalSource&amp;gt;&lt;br&gt;--&amp;gt;  &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;h3&gt;Step 4: Create inspection.wsil file for JDeveloper local WSIL registry&lt;/h3&gt; &lt;p&gt;JDeveloper 10.1.3.4 no longer has inspection.wsil file shipped with it. You must create it manually to the same directory where serviceexplorer_plugin.xml is located.&lt;/p&gt; &lt;p&gt;Create file&lt;/p&gt; &lt;p&gt;$JDEVHOME\integration\bpm\designer\config\inspection.wsil&lt;/p&gt; &lt;p&gt;Contents of the file (please change the OdiInvoke.wsil URL to match your environment):&lt;/p&gt; &lt;p&gt;&amp;lt;?xml version="1.0"?&amp;gt;&lt;br&gt;&amp;lt;inspection xmlns="&lt;a href="http://schemas.xmlsoap.org/ws/2001/10/inspection/"&gt;http://schemas.xmlsoap.org/ws/2001/10/inspection/&lt;/a&gt;"&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; xmlns:wsilwsdl="&lt;a href="http://schemas.xmlsoap.org/ws/2001/10/inspection/wsdl/"&gt;http://schemas.xmlsoap.org/ws/2001/10/inspection/wsdl/&lt;/a&gt;"&amp;gt;&lt;/p&gt; &lt;p&gt;&amp;lt;link referencedNamespace="&lt;a href="http://schemas.xmlsoap.org/ws/2001/10/inspection/"&gt;http://schemas.xmlsoap.org/ws/2001/10/inspection/&lt;/a&gt;"&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; location="&lt;a href="http://localhost:8889/axis2/axis2-web/OdiInvoke.wsil"&gt;http://localhost:8889/axis2/axis2-web/OdiInvoke.wsil&lt;/a&gt;"&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;abstract&amp;gt;Oracle Data Integrator Public Web Service&amp;lt;/abstract&amp;gt;&lt;br&gt;&amp;lt;/link&amp;gt;&lt;br&gt; &amp;lt;/inspection&amp;gt;&lt;/p&gt; &lt;h3&gt;Step 5: Restart JDeveloper 10.1.3.x and test&lt;/h3&gt; &lt;p&gt;Now you should have everything ready for testing. Service Explorer should have a new folder called "Local Registry" and one subfolder called "Oracle Data Integrator Public Web Service" underneath it. The name of the folder can be changed just by editing the inspection.wsil file (created in step 4).&lt;/p&gt; &lt;p&gt;Now to use it, you could create a SOAP service in OESB or partner link in BPEL. Recommended way is to create a routing service to virtualize the ODI public web service details. My recommendation would be to create a well defined public routing WSDL with strongly typed payload, instead of generic ODI web service API.&lt;/p&gt; &lt;p&gt;Have fun!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-6212435039786577908?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/6212435039786577908/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=6212435039786577908' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/6212435039786577908'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/6212435039786577908'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2009/03/adding-odi-public-services-to.html' title='Adding ODI Public Services to JDeveloper Service Explorer'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/_G3ZVZsr8vwg/Scv4YEy7wqI/AAAAAAAAANM/DCF7XN9o4Jw/s72-c/image_thumb%5B1%5D.png?imgmax=800' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-1771603521388316990</id><published>2009-03-03T22:19:00.001+02:00</published><updated>2009-03-03T22:19:02.648+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SOA Suite'/><title type='text'>New SOA Suite Clustering Utility</title><content type='html'>&lt;p&gt;For those the need to setup SOA Suite cluster, there is recently published SOA Clustering Utility in OTN:&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.oracle.com/technology/tech/soa/ha/soa_cluster_utility.zip"&gt;http://www.oracle.com/technology/tech/soa/ha/soa_cluster_utility.zip&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Documentation:&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.oracle.com/technology/tech/soa/pdf/oracle-soa-suite-clustering-utility-guide.pdf"&gt;http://www.oracle.com/technology/tech/soa/pdf/oracle-soa-suite-clustering-utility-guide.pdf&lt;/a&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-1771603521388316990?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/1771603521388316990/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=1771603521388316990' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/1771603521388316990'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/1771603521388316990'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2009/03/new-soa-suite-clustering-utility.html' title='New SOA Suite Clustering Utility'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-8197556796579304291</id><published>2009-01-28T19:49:00.001+02:00</published><updated>2009-01-28T20:13:05.513+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='BPM Studio'/><category scheme='http://www.blogger.com/atom/ns#' term='Subversion'/><title type='text'>Enabling Subversion on Oracle BPM Studio 10.3</title><content type='html'>&lt;p&gt;Are you using Subversion and wanted to import your BPM Studio 10.3 project to Subversion repository for sharing amongst your project team?&lt;/p&gt; &lt;p&gt;Here are quick and dirty steps to setup subversion (SVN abbreviated) connection and importing the BPM Studio project into the version control.&lt;/p&gt; &lt;h3&gt;Sharing BPM project &lt;/h3&gt; &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_G3ZVZsr8vwg/SYCepfkZ3cI/AAAAAAAAAK4/BpTOiDIpL7I/s1600-h/image%5B86%5D.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="300" alt="image" src="http://lh5.ggpht.com/_G3ZVZsr8vwg/SYCaSrVOx6I/AAAAAAAAAK8/0P2JTGCVxQo/image_thumb%5B50%5D.png?imgmax=800" width="399" border="0"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Click the context menu (mouse right click) on the main level of your BPM project.&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_G3ZVZsr8vwg/SYCaTBZiofI/AAAAAAAAALA/CQTDzwaC4Ew/s1600-h/image%5B87%5D.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="383" alt="image" src="http://lh5.ggpht.com/_G3ZVZsr8vwg/SYCaTi4m6VI/AAAAAAAAALE/-Ph2yeVxdLI/image_thumb%5B51%5D.png?imgmax=800" width="399" border="0"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Choose "Share Project..."&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_G3ZVZsr8vwg/SYCgLoRXwSI/AAAAAAAAAMo/_7CPe3DA8tM/s1600-h/image%5B110%5D.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="360" alt="image" src="http://lh4.ggpht.com/_G3ZVZsr8vwg/SYCaUvRNpBI/AAAAAAAAAMs/vZlZ_eAIwNo/image_thumb%5B74%5D.png?imgmax=800" width="399" border="0"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Choose SVN as versioning repository type.&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_G3ZVZsr8vwg/SYCaW16PwfI/AAAAAAAAALQ/tY-r0bVbz7A/s1600-h/image%5B89%5D.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="360" alt="image" src="http://lh4.ggpht.com/_G3ZVZsr8vwg/SYCaXoY1KsI/AAAAAAAAALU/YKffd97hm-U/image_thumb%5B53%5D.png?imgmax=800" width="399" border="0"&gt;&lt;/a&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;Enter the URL for the repository. In this example I used Windows based VisualSVN server with https protocol. You might want to point this to your repository URL or subfolder under it. Please note that you will have the possibility to define the BPM project folder later on (e.g. if you wanted to use the "trunk" -practice with subversion).&lt;/p&gt; &lt;p&gt;Depending on the security settings you might need to enter username / password for the repository.&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_G3ZVZsr8vwg/SYCaYAFJNeI/AAAAAAAAALY/o2JIm1NjmBM/s1600-h/image%5B90%5D.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="360" alt="image" src="http://lh4.ggpht.com/_G3ZVZsr8vwg/SYCaYtwhzKI/AAAAAAAAALc/CX4c9eS0pzc/image_thumb%5B54%5D.png?imgmax=800" width="399" border="0"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Either let the wizard automatically use the BPM project name as folder name or define your own folder name (e.g. when using trunk's). In my sample I let the wizard derive the folder name from the BPM project name.&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_G3ZVZsr8vwg/SYCaY0M39MI/AAAAAAAAALg/MRjYvZksze0/s1600-h/image%5B91%5D.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="360" alt="image" src="http://lh5.ggpht.com/_G3ZVZsr8vwg/SYCaZqNGDjI/AAAAAAAAALk/d_PjpEGGqzs/image_thumb%5B55%5D.png?imgmax=800" width="399" border="0"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Ready to rock. Enter the comment for the folder name. Please note that at this point the wizard will not commit the resources to the repository. You will need to commit the files later. Press Finish.&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_G3ZVZsr8vwg/SYCaaBaiLlI/AAAAAAAAALo/YHyQemHEl6o/s1600-h/image%5B92%5D.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="360" alt="image" src="http://lh6.ggpht.com/_G3ZVZsr8vwg/SYCaajiTflI/AAAAAAAAALs/KcE8GS31IE8/image_thumb%5B56%5D.png?imgmax=800" width="399" border="0"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Sharing the project...&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_G3ZVZsr8vwg/SYCaa2RNeTI/AAAAAAAAALw/QkuVwUv6ayQ/s1600-h/image%5B93%5D.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="218" alt="image" src="http://lh6.ggpht.com/_G3ZVZsr8vwg/SYCabvmv8LI/AAAAAAAAAL0/yT6yMUrOpzk/image_thumb%5B57%5D.png?imgmax=800" width="399" border="0"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;The synchronization perspective view will show all the source code for the project. If you wanted to commit all the changes you can do it in the next step, after pressing "Yes".&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_G3ZVZsr8vwg/SYCacPPlW3I/AAAAAAAAAL4/MInl9xc8M4Y/s1600-h/image%5B94%5D.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="300" alt="image" src="http://lh5.ggpht.com/_G3ZVZsr8vwg/SYCacr_-v6I/AAAAAAAAAL8/yfG1W6G5Y3k/image_thumb%5B58%5D.png?imgmax=800" width="399" border="0"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;If you pressed "Yes" you will get this perspective. You could commit the changes (your BPM project source code) from this Eclipse perspective, but in my tutorial I switch to BPM perspective and commit the changes directly there.&lt;/p&gt; &lt;h3&gt;Switching to BPM Perspective&lt;/h3&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_G3ZVZsr8vwg/SYCadE-ijzI/AAAAAAAAAJg/ZOe8f9dwy4o/s1600-h/image%5B29%5D.png"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="108" alt="image" src="http://lh5.ggpht.com/_G3ZVZsr8vwg/SYCadRcD7EI/AAAAAAAAAJk/ek1IW-tw2v8/image_thumb%5B9%5D.png?imgmax=800" width="242" border="0"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Look at Eclipse top right corner. To switch back to BPM Perspective, press the perspective Icon and choose Other...&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_G3ZVZsr8vwg/SYCadjoRI4I/AAAAAAAAAJo/YnBSsB2NzoA/s1600-h/image%5B77%5D.png"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="484" alt="image" src="http://lh5.ggpht.com/_G3ZVZsr8vwg/SYCaeDBQjYI/AAAAAAAAAJs/OvLZ9GTyCT8/image_thumb%5B41%5D.png?imgmax=800" width="399" border="0"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Choose BPM (default) and you will get the BPM design view back.&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_G3ZVZsr8vwg/SYCaesfEhDI/AAAAAAAAAMA/8b1stnVwzQk/s1600-h/image%5B95%5D.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="91" alt="image" src="http://lh6.ggpht.com/_G3ZVZsr8vwg/SYCafAbZdXI/AAAAAAAAAME/xUG9pzTgQTg/image_thumb%5B59%5D.png?imgmax=800" width="399" border="0"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;From the log window you can see that only the project folder was created in the first phase.&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;h3&gt;Committing Changes&lt;/h3&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_G3ZVZsr8vwg/SYCagOq_OCI/AAAAAAAAAMI/saL6Ymr2b4g/s1600-h/image%5B96%5D.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="276" alt="image" src="http://lh4.ggpht.com/_G3ZVZsr8vwg/SYCagsgxa6I/AAAAAAAAAMM/f0kDw0D4Bik/image_thumb%5B60%5D.png?imgmax=800" width="399" border="0"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Now when you really want to commit all the BPM project source files to version control, you should choose the project context menu Team -&amp;gt; Commit...&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_G3ZVZsr8vwg/SYCahWhzOVI/AAAAAAAAAKA/8Fj7ECJAGhM/s1600-h/image%5B80%5D.png"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="484" alt="image" src="http://lh5.ggpht.com/_G3ZVZsr8vwg/SYCah3O5KsI/AAAAAAAAAKE/Q0w_SA0s_v4/image_thumb%5B44%5D.png?imgmax=800" width="352" border="0"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Commit wizard will show you all the files that are changed since the original check out. Since this was the very first import, you will see all the BPM project files marked as changed. Enter a propert explanation for the project and just press Ok to commit the changes.&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_G3ZVZsr8vwg/SYCaiNHzdII/AAAAAAAAAKI/6nmUBUAGHMw/s1600-h/image%5B44%5D.png"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="110" alt="image" src="http://lh3.ggpht.com/_G3ZVZsr8vwg/SYCaiho8zVI/AAAAAAAAAKM/ILG2EU96rT0/image_thumb%5B14%5D.png?imgmax=800" width="244" border="0"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Status window to show the files being committed.&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_G3ZVZsr8vwg/SYCai3qYxYI/AAAAAAAAAMQ/sW5CZqn9Mvo/s1600-h/image%5B97%5D.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="119" alt="image" src="http://lh4.ggpht.com/_G3ZVZsr8vwg/SYCajq2B6FI/AAAAAAAAAMU/2ANDPiw8kv8/image_thumb%5B61%5D.png?imgmax=800" width="399" border="0"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;After the commit, you will see all the files committed in the log window.&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_G3ZVZsr8vwg/SYCakCV99WI/AAAAAAAAAMY/hgPKoENXRww/s1600-h/image%5B98%5D.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="272" alt="image" src="http://lh5.ggpht.com/_G3ZVZsr8vwg/SYCalJMc8qI/AAAAAAAAAMc/jDsU5YKVEH0/image_thumb%5B62%5D.png?imgmax=800" width="399" border="0"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;(Optional) Looking at SVN repository you wout see the BPM project source files (this application is only available if you have access to server having the subversion repository).&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_G3ZVZsr8vwg/SYCalQ0A-zI/AAAAAAAAAMg/qNRHV0v3Gzw/s1600-h/image%5B99%5D.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="549" alt="image" src="http://lh3.ggpht.com/_G3ZVZsr8vwg/SYCalzMrwQI/AAAAAAAAAMk/b08JCr34SMo/image_thumb%5B63%5D.png?imgmax=800" width="399" border="0"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;If you made any change in the BPM project and chose Team -&amp;gt; Commit... the wizard will show all the files affected by your change. You should give a description of your change and press Ok to submit the changes to version control.&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;That's it, very basic introduction to subversion and Oracle BPM Studio 10.3. &lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-8197556796579304291?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/8197556796579304291/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=8197556796579304291' title='6 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/8197556796579304291'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/8197556796579304291'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2009/01/enabling-subversion-on-oracle-bpm.html' title='Enabling Subversion on Oracle BPM Studio 10.3'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_G3ZVZsr8vwg/SYCaSrVOx6I/AAAAAAAAAK8/0P2JTGCVxQo/s72-c/image_thumb%5B50%5D.png?imgmax=800' height='72' width='72'/><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-6562570857191081658</id><published>2009-01-20T00:21:00.001+02:00</published><updated>2009-11-17T23:38:01.881+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='WebLogic'/><category scheme='http://www.blogger.com/atom/ns#' term='Security'/><title type='text'>Enforcing WebLogic 10.3 Admin Console to use Finnish HST Card Authentication</title><content type='html'>&lt;p&gt;By default WebLogic admin console is deployed on the same port as other applications, non-encrypted HTTP traffic, and using username and password as authentication.&lt;/p&gt;  &lt;p&gt;To give the highest level of security on the admin console here are some steps to take:&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Change the admin console from the standard port to SSL secured admin port &lt;/li&gt;    &lt;li&gt;Enable Two-Way Authentication so that only clients with valid digital certificate can access the admin console&lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;In Finland, one of the easy ways to get official&amp;#160; client certificate is to use your HST smart card for authentication. To use that in your workstation, you need smart card reader and software for that. Software can be downloaded free from &lt;a title="http://www.fineid.fi/" href="http://www.fineid.fi/"&gt;http://www.fineid.fi/&lt;/a&gt; (Follow the link &amp;quot;Lataa kortinlukijaohjelmisto&amp;quot;).&lt;/p&gt;  &lt;p&gt;In this article I've tried to summarize steps to enable WebLogic 10.3 server two-way SSL setup with HST client certificate.&lt;/p&gt;  &lt;p&gt;To summarize the steps:&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Create self signed server certificate and store if into custom keystore file &lt;/li&gt;    &lt;li&gt;Extract VRK's trusted CA certificates and import them to the custom keystore file &lt;/li&gt;    &lt;li&gt;Setup custom keystores (for server identity and trust keystore) in WebLogic server &lt;/li&gt;    &lt;li&gt;Create user that corresponds the HST card username. Assign Administrative group to the user. &lt;/li&gt;    &lt;li&gt;Change management port &lt;/li&gt;    &lt;li&gt;Change admin console authentication method from FORM to CLIENT-CERT &lt;/li&gt;    &lt;li&gt;Test &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;Please note that at some point you will get a browser error stating that the server certificate is not valid. This is because of using self-signed server certificates. If you used &amp;quot;official&amp;quot; server certificates e.g. from Verisign you wouldn't get these errors. When using self signed certificates, you just need to accept the error and import the certificate on browser keystore. This error would only happen the first time(s) accessing the site protected with https (SSL).&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Warning: These instructions are experimental and you should make full backup of your environment before trying anything in here. DO NOT TRY THIS IN PRODUCTION BEFORE MAKING SURE IT WORKS IN DEVELOPMENT AND TESTING FIRST.&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;Extracting the Trusted CA Certificates from HST Card&lt;/h3&gt;  &lt;p&gt;You will need the trusted CA (certificate authority) public certificates later in WebLogic key storage to verify the client HST card certificates. If you don't have those trusted VRK (Väestörekisterikeskus) certificates yet, here is one way to get them:&lt;/p&gt;  &lt;p&gt;1. Open up the smart card application (here mPollux as an example):&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_G3ZVZsr8vwg/SXT8fEJTk5I/AAAAAAAAAEw/II7ySiq9yUY/s1600-h/image%5B15%5D.png"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="119" alt="image" src="http://lh5.ggpht.com/_G3ZVZsr8vwg/SXT8fhHaCYI/AAAAAAAAAE0/_prlRZNbB8I/image_thumb%5B5%5D.png?imgmax=800" width="231" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Navigate to &amp;quot;Luotetut varmenteet&amp;quot; and first choose &amp;quot;VRK Gov. Root CA&amp;quot;:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_G3ZVZsr8vwg/SXT8gC7wWaI/AAAAAAAAAE4/ud-7sqFI9nw/s1600-h/image%5B40%5D.png"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="484" alt="image" src="http://lh6.ggpht.com/_G3ZVZsr8vwg/SXT8gr1TWII/AAAAAAAAAE8/jN7ndCVggQg/image_thumb%5B18%5D.png?imgmax=800" width="453" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Double click on the certificate and you will get this window:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_G3ZVZsr8vwg/SXT8hWnA3NI/AAAAAAAAAFA/0MpeMviNf0o/s1600-h/image%5B59%5D.png"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="484" alt="image" src="http://lh4.ggpht.com/_G3ZVZsr8vwg/SXT8iC6Dx2I/AAAAAAAAAFE/Ha-DWl8RI78/image_thumb%5B31%5D.png?imgmax=800" width="410" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Press Details -tab.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_G3ZVZsr8vwg/SXT8iXAI-GI/AAAAAAAAAFI/IDVJkI9JSp4/s1600-h/image%5B60%5D.png"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="484" alt="image" src="http://lh6.ggpht.com/_G3ZVZsr8vwg/SXT8jH0xn6I/AAAAAAAAAFM/RcHzl0gJm68/image_thumb%5B32%5D.png?imgmax=800" width="410" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Press &amp;quot;Copy to file...&amp;quot;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_G3ZVZsr8vwg/SXT8jjA0r3I/AAAAAAAAAFQ/979haaeBxZc/s1600-h/image%5B63%5D.png"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="192" alt="image" src="http://lh6.ggpht.com/_G3ZVZsr8vwg/SXT8kcBgeMI/AAAAAAAAAFU/CzP3KlVSFqM/image_thumb%5B33%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Press next.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_G3ZVZsr8vwg/SXT8kqUztLI/AAAAAAAAAFY/Gnz3hctVsoQ/s1600-h/image%5B66%5D.png"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="192" alt="image" src="http://lh4.ggpht.com/_G3ZVZsr8vwg/SXT8lJITG5I/AAAAAAAAAFc/M8u5EpiJx90/image_thumb%5B34%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Choose Base-64 encoded X.509 (.CER)&lt;/p&gt;  &lt;p&gt;Press Next.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_G3ZVZsr8vwg/SXT8lc_YdUI/AAAAAAAAAFg/YwxGPc9ffNI/s1600-h/image%5B69%5D.png"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="192" alt="image" src="http://lh3.ggpht.com/_G3ZVZsr8vwg/SXT8l2S30CI/AAAAAAAAAFk/BREUVt-RbJg/image_thumb%5B35%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Enter the name of the certificate file and press Next.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_G3ZVZsr8vwg/SXT8mZxl5lI/AAAAAAAAAFo/nIr7TEh1e4Y/s1600-h/image%5B72%5D.png"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="192" alt="image" src="http://lh5.ggpht.com/_G3ZVZsr8vwg/SXT8mmPy84I/AAAAAAAAAFs/fe6n9BcaqJw/image_thumb%5B36%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Press Finish.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_G3ZVZsr8vwg/SXT8nKT7fuI/AAAAAAAAAFw/dKcJO-TSqdk/s1600-h/image%5B75%5D.png"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="111" alt="image" src="http://lh5.ggpht.com/_G3ZVZsr8vwg/SXT8nb335aI/AAAAAAAAAF0/0DO13b2sOtk/image_thumb%5B37%5D.png?imgmax=800" width="204" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;After successful export, you should have an OK window.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Repeat the same for the &amp;quot;VRK Gov. CA for Citizen Qualified Certificates&amp;quot;.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;After these two steps, you should have files with names e.g. &lt;strong&gt;vrk_root.cer&lt;/strong&gt; and &lt;strong&gt;vrk_citizen.cer&lt;/strong&gt; in your chosen folder. These are base64 encoded text files.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;Creating a Self Signed Custom Keystore for Two-way SSL&lt;/h3&gt;  &lt;p&gt;Now we create a custom keystore to store the identity of the WebLogic server certificate and also to include the VRK public certificates so that WebLogic can verify the HST card client certificate against them.&lt;/p&gt;  &lt;p&gt;Here is an example (server certificate for 10 years = 3600 days):&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;keytool -genkey -dname &amp;quot;cn=localhost, ou=Oracle Finland, o=Oracle, c=FI&amp;quot; -alias localhost -keypass mypassword      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/strong&gt;&lt;strong&gt;-keystore D:\product\JDEV11\wlserver_10.3\server\lib\harri.jks -storepass mypassword -validity 3600     &lt;br /&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Above command (by the way, keytool is found from the Java binaries) creates a keystore file named &amp;quot;harri.jks&amp;quot;. You can list the contents of the file with following command:&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;keytool -list -storepass mypassword -keystore harri.jks&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Now, import the VRK trusted certificates next:&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;keytool -import -file D:\temp\vrk_root.cer -trustcacerts -alias VRK_ROOT -keystore harri.jks     &lt;br /&gt;keytool -import -file D:\temp\vrk_citizen.cer -trustcacerts -alias VRK_CITIZEN -keystore harri.jks      &lt;br /&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Now you should have the keystore ready for two-way authentication. Next step is to configure WebLogic server to use this keystore.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;Setting up the custom keystores in WebLogic&lt;/h3&gt;  &lt;p&gt;Navigate to admin console: Home &amp;gt;Summary of Servers &amp;gt;DefaultServer &lt;/p&gt;  &lt;p&gt;Choose Configuration tab and Keystores tab. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_G3ZVZsr8vwg/SXT8n5QaqbI/AAAAAAAAAF4/C0SnhTwvCUg/s1600-h/image%5B79%5D.png"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="434" alt="image" src="http://lh6.ggpht.com/_G3ZVZsr8vwg/SXT8owdG21I/AAAAAAAAAF8/nDkWCO0fP2U/image_thumb%5B39%5D.png?imgmax=800" width="644" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Choose &amp;quot;Custom Identity and Custom Trust&amp;quot; from the &amp;quot;Keystores&amp;quot; popup list. &lt;/p&gt;  &lt;p&gt;Specify the exact path to the keystore you just created above, keystore type &amp;quot;jks&amp;quot; and enter the password for the keystore. &lt;/p&gt;  &lt;p&gt;Press Save. &lt;/p&gt;  &lt;p&gt;Press &amp;quot;SSL&amp;quot; tab. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_G3ZVZsr8vwg/SXT8pQMJ5UI/AAAAAAAAAGA/YBuRi39FYMw/s1600-h/image%5B83%5D.png"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="404" alt="image" src="http://lh3.ggpht.com/_G3ZVZsr8vwg/SXT8p5ZLnVI/AAAAAAAAAGE/iGekFU5DfgA/image_thumb%5B41%5D.png?imgmax=800" width="644" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Choose &amp;quot;Private Key Alias&amp;quot; as the same you used in earlier chapter &amp;quot;Creating a Self Signed Custom Keystore for Two-way SSL&amp;quot;. &lt;/p&gt;  &lt;p&gt;For example if you used: &lt;/p&gt;  &lt;p&gt;keytool -genkey -dname &amp;quot;cn=localhost, ou=Oracle Finland, o=Oracle, c=FI&amp;quot; &lt;strong&gt;-alias localhost&lt;/strong&gt; -keypass mypassword -keystore D:\product\JDEV11\wlserver_10.3\server\lib\harri.jks -storepass mypassword -validity 3600' &lt;/p&gt;  &lt;p&gt;you should enter &amp;quot;localhost&amp;quot; as the alias here to mark the unique key to the server certificate. &lt;/p&gt;  &lt;p&gt;&amp;#160; &lt;/p&gt;  &lt;p&gt;Press the &amp;quot;Advanced&amp;quot; link. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_G3ZVZsr8vwg/SXT8qWi8lDI/AAAAAAAAAGI/eHyp3PUv9MM/s1600-h/image%5B87%5D.png"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="371" alt="image" src="http://lh5.ggpht.com/_G3ZVZsr8vwg/SXT8rOZAxHI/AAAAAAAAAGM/A141DKuFpFI/image_thumb%5B43%5D.png?imgmax=800" width="644" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Change &amp;quot;Two Way Client Cert Behaviour&amp;quot; to wanted value, like &amp;quot;Client Certs Requested But Not Enforced&amp;quot; or &amp;quot;Client Certs Requested And Enforced&amp;quot;. &lt;/p&gt;  &lt;p&gt;Press Save and reboot the WebLogic server. &lt;/p&gt;  &lt;p&gt;&amp;#160; &lt;/p&gt;  &lt;h3&gt;What Is My HST Card Username?&lt;/h3&gt;  &lt;p&gt;To see your username in the Finnish Government ID card, you can do it e.g. by looking at the smart card reader application. In my example I am using mPollux software and I can launch the software by choosing the context menu from mPollux tray icon (yellow icon below):&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_G3ZVZsr8vwg/SXT8rZ0t-PI/AAAAAAAAAGQ/o88ZWJYvngE/s1600-h/image%5B12%5D.png"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="22" alt="image" src="http://lh4.ggpht.com/_G3ZVZsr8vwg/SXT8rg5ti-I/AAAAAAAAAGU/7BrqN-Fo3Ks/image_thumb%5B4%5D.png?imgmax=800" width="94" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_G3ZVZsr8vwg/SXT8fEJTk5I/AAAAAAAAAEw/II7ySiq9yUY/s1600-h/image%5B15%5D.png"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="119" alt="image" src="http://lh5.ggpht.com/_G3ZVZsr8vwg/SXT8fhHaCYI/AAAAAAAAAE0/_prlRZNbB8I/image_thumb%5B5%5D.png?imgmax=800" width="231" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Choose the first option to start the application.&lt;/p&gt;  &lt;p&gt;From the &amp;quot;Lukijat ja kortit&amp;quot; -tab choose the card reader -&amp;gt; Käyttäjän varmenteet -&amp;gt; todentamis- ja salausvarmenne. Double-click on that item.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_G3ZVZsr8vwg/SXT8sLZKWxI/AAAAAAAAAGY/WxhX85neG80/s1600-h/image%5B19%5D.png"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="484" alt="image" src="http://lh6.ggpht.com/_G3ZVZsr8vwg/SXT8sr9TeFI/AAAAAAAAAGc/E8385gtzgco/image_thumb%5B7%5D.png?imgmax=800" width="453" border="0" /&gt;&lt;/a&gt;&amp;#160; &lt;/p&gt;  &lt;p&gt;You will see following window, where the &amp;quot;Issued to:&amp;quot; field will show the username you should write down for later use.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_G3ZVZsr8vwg/SXT8tcLyX-I/AAAAAAAAAGg/t8cPYAqGpq0/s1600-h/image%5B33%5D.png"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="484" alt="image" src="http://lh5.ggpht.com/_G3ZVZsr8vwg/SXT8uKgY05I/AAAAAAAAAGk/4tibggsqhC0/image_thumb%5B13%5D.png?imgmax=800" width="410" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;h3&gt;Create User and Assign Admin Privileges&lt;/h3&gt;  &lt;p&gt;Navigate to Security Realms page on admin console.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_G3ZVZsr8vwg/SXT8umPlhUI/AAAAAAAAAGo/fhsm_Y6QdAE/s1600-h/image%5B91%5D.png"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="228" alt="image" src="http://lh3.ggpht.com/_G3ZVZsr8vwg/SXT8vHWWiNI/AAAAAAAAAGs/2RnxueScNU0/image_thumb%5B45%5D.png?imgmax=800" width="644" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Press &amp;quot;myrealm&amp;quot; (or whatever you have in your server) link.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_G3ZVZsr8vwg/SXT8vrKedKI/AAAAAAAAAGw/Rt_9NWUOKKM/s1600-h/image%5B102%5D.png"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="261" alt="image" src="http://lh5.ggpht.com/_G3ZVZsr8vwg/SXT8wPncn-I/AAAAAAAAAG0/LJfadTQa8nY/image_thumb%5B52%5D.png?imgmax=800" width="644" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Press &amp;quot;New&amp;quot; to enter new user.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_G3ZVZsr8vwg/SXT8wjxQY_I/AAAAAAAAAG4/d3bYA-bofAs/s1600-h/image%5B106%5D.png"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="484" alt="image" src="http://lh5.ggpht.com/_G3ZVZsr8vwg/SXT8xW53qRI/AAAAAAAAAG8/_IKocbf3j0w/image_thumb%5B54%5D.png?imgmax=800" width="508" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Enter the username that is stored in your HST card on &amp;quot;Name&amp;quot; field. You can set whatever password you like, but this is not used when enforcing client certificates. If you don't know the value to put on &amp;quot;Name&amp;quot; -field, please follow the chapter &amp;quot;What Is My HST Card Username?&amp;quot;.&lt;/p&gt;  &lt;p&gt;Assign the needed Groups to the user:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_G3ZVZsr8vwg/SXT8x0duE4I/AAAAAAAAAHA/0zv8bXaiteI/s1600-h/image%5B114%5D.png"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="484" alt="image" src="http://lh3.ggpht.com/_G3ZVZsr8vwg/SXT8ymRcCHI/AAAAAAAAAHE/bpzTofY_kAc/image_thumb%5B58%5D.png?imgmax=800" width="557" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;You would need at least &amp;quot;Administrators&amp;quot; group to enter the admin console application. &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;Change management port&lt;/h3&gt;  &lt;p&gt;To ensure security, you should change the admin console to use administration port (9002 or whichever you choose). This is done from Home -&amp;gt; DefaultDomain -&amp;gt; Configuration -&amp;gt; General.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_G3ZVZsr8vwg/SXT8zDdynCI/AAAAAAAAAHI/5yQzCwRvpEo/s1600-h/image%5B115%5D.png"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="484" alt="image" src="http://lh4.ggpht.com/_G3ZVZsr8vwg/SXT8zict3LI/AAAAAAAAAHM/FUuzdypHSyI/image_thumb%5B59%5D.png?imgmax=800" width="618" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;After the port change, the URL is moved to this admin port right away.&lt;/p&gt;  &lt;h3&gt;Change Console Authentication Method&lt;/h3&gt;  &lt;p&gt;By default WebLogic admin console uses form based authentication (username / password). To enforce using client certification from the Finnish HST card you need to change console application slightly.&lt;/p&gt;  &lt;p&gt;In this example I use JDeveloper 11.1 and the WebLogic that is shipped with it. On this installation, console application is found under:&lt;/p&gt;  &lt;p&gt;D:\product\JDEV11\wlserver_10.3\server\lib\consoleapp&lt;/p&gt;  &lt;p&gt;web.xml file is here&lt;/p&gt;  &lt;p&gt;D:\product\JDEV11\wlserver_10.3\server\lib\consoleapp\webapp\WEB-INF\web.xml&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Edit web.xml as follows. Comment out the FORM based authentication method and replace it with CLIENT-CERT method, like this:&lt;/p&gt;  &lt;p&gt;&amp;#160; &amp;lt;login-config&amp;gt;   &lt;br /&gt;&lt;em&gt;&amp;lt;!-- Commented out     &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &amp;lt;auth-method&amp;gt;FORM&amp;lt;/auth-method&amp;gt;      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &amp;lt;form-login-config&amp;gt;      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &amp;lt;form-login-page&amp;gt;/login/LoginForm.jsp&amp;lt;/form-login-page&amp;gt;      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &amp;lt;form-error-page&amp;gt;/login/LoginError.jsp&amp;lt;/form-error-page&amp;gt;      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &amp;lt;/form-login-config&amp;gt;      &lt;br /&gt;--&amp;gt;      &lt;br /&gt;&lt;/em&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &amp;lt;auth-method&amp;gt;CLIENT-CERT&amp;lt;/auth-method&amp;gt;    &lt;br /&gt;&amp;#160; &amp;lt;/login-config&amp;gt;    &lt;br /&gt;&lt;/p&gt;  &lt;p&gt;You could also change the auth-method to value “CLIENT-CERT,FORM” to fall back to username / password authentication if client certificate authentication fails.   &lt;p&gt;&lt;/p&gt;    &lt;p&gt;After the changes, restart WebLogic server.&lt;/p&gt; &lt;/p&gt;  &lt;h3&gt;&amp;#160;&lt;/h3&gt;  &lt;h3&gt;FireFox / Mozilla Setup&lt;/h3&gt;  &lt;p&gt;If you used mPollux and FireFox or Mozilla, you need to setup the security device manually (this is done only once). You do this by choosing the Tools -&amp;gt; Options -&amp;gt; Advanced and pressing &amp;quot;Security Devices&amp;quot;.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_G3ZVZsr8vwg/SXT80PaA-lI/AAAAAAAAAHQ/Ri0cA-ZFT4M/s1600-h/image%5B118%5D.png"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="240" alt="image" src="http://lh6.ggpht.com/_G3ZVZsr8vwg/SXT80gA3xXI/AAAAAAAAAHU/agvhEV_fX3k/image_thumb%5B60%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Press &amp;quot;Load&amp;quot; to choose to load a new security device.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_G3ZVZsr8vwg/SXT80xf47uI/AAAAAAAAAHY/M7T0BweUZoM/s1600-h/image%5B121%5D.png"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="163" alt="image" src="http://lh6.ggpht.com/_G3ZVZsr8vwg/SXT81Tq0n6I/AAAAAAAAAHc/j3a_5Fkdn8A/image_thumb%5B61%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Give it a name and choose file. With mPollux it looks something like:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_G3ZVZsr8vwg/SXT81tREQxI/AAAAAAAAAHg/BDqVRsFUYRU/s1600-h/image%5B124%5D.png"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="17" alt="image" src="http://lh6.ggpht.com/_G3ZVZsr8vwg/SXT82H4RfVI/AAAAAAAAAHk/3kCXJz5lgjQ/image_thumb%5B62%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;If you needed to do this setup, just to make sure, exit the browser and startup again.&lt;/p&gt;  &lt;h3&gt;Test Run&lt;/h3&gt;  &lt;p&gt;Close all browser windows and remove the Finnish HST card from the card reader.&lt;/p&gt;  &lt;p&gt;Enter the HST card into the smart card reader.&lt;/p&gt;  &lt;p&gt;Open up a browser (IE, Mozilla, FireFox ...) and enter the console URL:&lt;/p&gt;  &lt;p&gt;&lt;a title="https://localhost:9002/console" href="https://localhost:9002/console"&gt;https://localhost:9002/console&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;You should now get the smart card PIN window. An example when using Fujitsu DigiSign software, is below:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_G3ZVZsr8vwg/SXT82qs1WtI/AAAAAAAAAHo/6dB8JgSyk9U/s1600-h/image%5B5%5D.png"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="210" alt="image" src="http://lh4.ggpht.com/_G3ZVZsr8vwg/SXT83coWMNI/AAAAAAAAAHs/Eot0u4cTxj8/image_thumb%5B1%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;When entering the PIN code, you are allowed to enter the console, if your username is assigned to Admin group:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_G3ZVZsr8vwg/SXT83zcDewI/AAAAAAAAAHw/bMthCagMU-c/s1600-h/image%5B9%5D.png"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="473" alt="image" src="http://lh3.ggpht.com/_G3ZVZsr8vwg/SXT842Nze8I/AAAAAAAAAH0/aERGNFy9Wzw/image_thumb%5B3%5D.png?imgmax=800" width="644" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-6562570857191081658?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/6562570857191081658/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=6562570857191081658' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/6562570857191081658'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/6562570857191081658'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2009/01/enforcing-weblogic-103-admin-console-to.html' title='Enforcing WebLogic 10.3 Admin Console to use Finnish HST Card Authentication'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_G3ZVZsr8vwg/SXT8fhHaCYI/AAAAAAAAAE0/_prlRZNbB8I/s72-c/image_thumb%5B5%5D.png?imgmax=800' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-1603334305619080535</id><published>2009-01-15T07:42:00.001+02:00</published><updated>2009-01-15T07:42:28.038+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Utilities'/><title type='text'>New Extensions Available from JDeveloper Official Update Center</title><content type='html'>&lt;p&gt;During the years I've developed few JDeveloper extensions for ESB, BAM, Python (migration from 10.1.2) and JDev Projects. These extensions are now available from the official third party extensions exchange listed here:&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.oracle.com/technology/products/jdev/101/update/exchange.xml"&gt;http://www.oracle.com/technology/products/jdev/101/update/exchange.xml&lt;/a&gt;&lt;/p&gt; &lt;p&gt;To install the extensions, you just need to choose Help -&amp;gt; Check for updates and all the available extensions are listed for installation.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-1603334305619080535?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/1603334305619080535/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=1603334305619080535' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/1603334305619080535'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/1603334305619080535'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2009/01/new-extensions-available-from.html' title='New Extensions Available from JDeveloper Official Update Center'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-4010800144473336615</id><published>2008-12-02T00:10:00.001+02:00</published><updated>2010-08-24T21:39:59.118+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Cygwin'/><category scheme='http://www.blogger.com/atom/ns#' term='IMAP'/><title type='text'>Local IMAP4 server on Windows (cygwin)</title><content type='html'>&lt;p&gt;When moving from Thunderbird to e.g. MS Outlook 2007 there are issues how to migrate the emails from one format to another. There are two main option:&lt;/p&gt;  &lt;p&gt;1. Use 3rd party tool to migrate the Thunderbird folders to PST format or another format that Outlook supports. There are some free utilities that convert the files to EML format.&lt;/p&gt;  &lt;p&gt;2. Setup a local IMAP4 server that acts only locally to serve your folders/emails. When IMAP server is in your local workstation then use that as your &amp;quot;local Mail Account&amp;quot; to extend your email capabilities from the central server.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Looked at the option 1) and quickly realized that I could spend ages converting my emails more or less manually to Outlook format. Forgot that.&lt;/p&gt;  &lt;p&gt;Moved to option 2) which is actually a very nice approach to virtualize my emails as a generic service that could be used anywhere, not just my email client (being that Thunderbird or Outlook).&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;How to do this was another issue. There were bits and pieces on the Internet but none of the documents explained exactly what I should do. Finally, after getting this working I decided to document these steps, at least to serve my own memory in the future.&lt;/p&gt;  &lt;p&gt;Here are the steps for Windows users to setup open source IMAP4/POP3 server on your workstation. Hopefully I didn't forget anything.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;em&gt;A word of warning. IMAP4/POP3 server shipped with Cygwin (uw-imap/uw-ipop3) should not be used in production use. It seems to work but has some limitations, like not handling subfolders elegantly and some other rarerities. So, take it as it is, and adopt your way of working.&lt;/em&gt;&lt;/p&gt;    &lt;p&gt;&lt;em&gt;Yes, I know there are other alternatives but this is not a subject of this post.&lt;/em&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;1. Install cygwin, inettools and OpenSSL (as cygwin packages)&lt;/h3&gt;  &lt;p&gt;If cygwin isn't familiar, go to &lt;a href="http://www.cygwin.com/"&gt;http://www.cygwin.com/&lt;/a&gt;.&lt;/p&gt;  &lt;h3&gt;&amp;#160;&lt;/h3&gt;  &lt;h3&gt;2. After installing cygwin + tools open up the bash command line&lt;/h3&gt;  &lt;p&gt;Navigate to the directory you installed cygwin to and enter cygwin.bat. This should bring you Unix like shell and when you enter commands described below, you should be fine.&lt;/p&gt;  &lt;h3&gt;&amp;#160;&lt;/h3&gt;  &lt;h3&gt;3. Make sure you have following lines in your /etc/inetd.conf&lt;/h3&gt;  &lt;p&gt;In other words, edit the file mentioned above.&lt;/p&gt;  &lt;p&gt;pop3&amp;#160; stream&amp;#160; tcp&amp;#160; nowait&amp;#160; root&amp;#160;&amp;#160; /usr/sbin/uw-ipop3d    &lt;br /&gt;imap&amp;#160; stream&amp;#160; tcp&amp;#160; nowait&amp;#160; root&amp;#160;&amp;#160; /usr/sbin/uw-imapd     &lt;br /&gt;pop3s&amp;#160; stream&amp;#160; tcp&amp;#160; nowait&amp;#160; root&amp;#160;&amp;#160; /usr/sbin/uw-ipop3d     &lt;br /&gt;imaps&amp;#160; stream&amp;#160; tcp&amp;#160; nowait&amp;#160; root&amp;#160;&amp;#160; /usr/sbin/uw-imapd&lt;/p&gt;  &lt;h3&gt;&amp;#160;&lt;/h3&gt;  &lt;h3&gt;4. Add following lines to /etc/services&lt;/h3&gt;  &lt;p&gt;imaps&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 993/tcp    &lt;br /&gt;pop3s&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 995/tcp     &lt;br /&gt;&lt;/p&gt;  &lt;h3&gt;5. Create server certificates for the IMAP/POP3 SSL connection&lt;/h3&gt;  &lt;p&gt;UW-IMAP uses SSL certificates from Cygwin:s /usr/ssl/certs directory (or whichever directory is defined in /usr/ssl/openssl.cnf as “dir” variable) . Below are sample command to creat self-signed certificates for your own purpose or development/testing:&lt;/p&gt;  &lt;p&gt;cd /usr/ssl/certs&lt;/p&gt;  &lt;p&gt;openssl req -new -x509 -nodes -out uw-imapd.pem -keyout uw-imapd.pem -days 3650&lt;/p&gt;  &lt;p&gt;openssl req -new -x509 -nodes -out uw-ipop3d.pem -keyout uw-ipop3d.pem -days 3650&lt;/p&gt;  &lt;p&gt;Please note that you &lt;strong&gt;MUST&lt;/strong&gt; use exactly those file names to get things working correctly.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;NOTE: Please remember to enter your workstation name or &amp;quot;localhost&amp;quot; in the question for &amp;quot;Common name (eg. YOUR name) []:&amp;quot;. If you entered your own name you will have following error message every time you login to see your emails in IMAP server:&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;a href="http://lh6.ggpht.com/_G3ZVZsr8vwg/STRg4_helJI/AAAAAAAAAEI/5IH8pQwIspA/s1600-h/image%5B2%5D.png"&gt;&lt;img style="border-right-width: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" border="0" alt="image" src="http://lh6.ggpht.com/_G3ZVZsr8vwg/STRg5baMydI/AAAAAAAAAEM/V3Me5nwOGVk/image_thumb.png?imgmax=800" width="244" height="128" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;h3&gt;6. Install inetd daemon as Windows service&lt;/h3&gt;  &lt;p&gt;/usr/sbin/inetd&amp;#160;&amp;#160;&amp;#160; --install-as-service &lt;/p&gt;  &lt;p&gt;If above approach doesn’t work properly, try out following:&lt;/p&gt;  &lt;p&gt;cygrunsrv -I inetd -d &amp;quot;CYGWIN inetd&amp;quot; -p /usr/sbin/inetd -a -d -e CYGWIN=&amp;quot;tty ntsec&amp;quot;   &lt;br /&gt;&lt;/p&gt;  &lt;h3&gt;7. Refresh Windows users to the local passwd and group files&lt;/h3&gt;  &lt;p&gt;mkpasswd&amp;#160; --local&amp;#160;&amp;#160; &amp;gt;&amp;#160;&amp;#160; /etc/passwd    &lt;br /&gt;mkgroup&amp;#160; --local&amp;#160;&amp;#160; &amp;gt;&amp;#160;&amp;#160; /etc/group&lt;/p&gt;  &lt;p&gt;After this when you connect to IMAP server you can use your Windows account username and password to login.&lt;/p&gt;  &lt;h3&gt;&amp;#160;&lt;/h3&gt;  &lt;h3&gt;8. If using exim and imap together, tie these directories together with symbolic links&lt;/h3&gt;  &lt;p&gt;cd /var/spool    &lt;br /&gt;ln -s /var/spool/mail /var/mail     &lt;br /&gt;chmod&amp;#160;&amp;#160; 1777&amp;#160;&amp;#160; /var/mail &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;9. Start the IMAP server&lt;/h3&gt;  &lt;p&gt;net start inetd&lt;/p&gt;  &lt;p&gt;Stopping is done like this: net stop inetd&lt;/p&gt;  &lt;h1&gt;&lt;span style="font-weight: bold"&gt;&lt;/span&gt;&lt;/h1&gt;  &lt;h3&gt;&amp;#160;&lt;/h3&gt;  &lt;h3&gt;10. Connecting to IMAP server using SSL connection&lt;/h3&gt;  &lt;p&gt;By default the binaries delivered with cygwin have IMAP server in the most standard mode, plaintext login disabled by default. This means you need to set up IMAPS connection to the IMAP server. The first time you connect, you will get following error message if using self-signed certificates:&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;a href="http://lh6.ggpht.com/_G3ZVZsr8vwg/STThSoBvxQI/AAAAAAAAAEQ/zdjs2sqj9ao/s1600-h/image%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" border="0" alt="image" src="http://lh5.ggpht.com/_G3ZVZsr8vwg/STThTPE04LI/AAAAAAAAAEU/ZRzEYYY6htk/image_thumb%5B1%5D.png?imgmax=800" width="244" height="171" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;After you choose &amp;quot;Accept the certificate permanently&amp;quot; and press OK, you should have login screen to enter your username and password. Next time you login, this nag screen doesn't show up since you accepted your own signed certificate permanently.&lt;/p&gt;  &lt;p&gt;On Outlook, you will get a warning stating that the self signed root certificate for (e.g. localhost) doesn't exist. You fix this by importing your self signed root certificate to Internet Explorer (Tools -&amp;gt; Internet Options -&amp;gt; Content -&amp;gt; Certificates -&amp;gt; Trusted Root Certification Authorities Tab -&amp;gt; Import). &lt;u&gt;Before&lt;/u&gt; this you must convert your self signed certificate to the format that IE understands:&lt;/p&gt;  &lt;p&gt;/usr/ssl/certs&lt;/p&gt;  &lt;p&gt;openssl x509 -in uw-imapd.pem -inform PEM -outform DER -out uw-imapd.crt&lt;/p&gt;  &lt;p&gt;You need to import this uw-imapd.crt file on IE.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;11. All is fine and the world is a better place to live&lt;/h3&gt;  &lt;h2&gt;Troubleshooting&lt;/h2&gt;  &lt;h5&gt;IMAP doesn’t work after updating cygwin stack.&lt;/h5&gt;  &lt;p&gt;&lt;/p&gt; Symptom of this might be that you just get empty or no response from IMAP server. Inetd might be accepting the request but no folders or message content is shown. Make sure that SSL setup is done correctly. Sometimes cygwin update will overwrite the openssl.cnf file and change the certificates directory location. Double check the setup and directories.     &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-4010800144473336615?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/4010800144473336615/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=4010800144473336615' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/4010800144473336615'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/4010800144473336615'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2008/12/local-imap4-server-on-windows-cygwin.html' title='Local IMAP4 server on Windows (cygwin)'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/_G3ZVZsr8vwg/STRg5baMydI/AAAAAAAAAEM/V3Me5nwOGVk/s72-c/image_thumb.png?imgmax=800' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-9177700123544373051</id><published>2008-11-03T22:02:00.001+02:00</published><updated>2008-11-03T22:02:49.186+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Adapter'/><category scheme='http://www.blogger.com/atom/ns#' term='EBS'/><title type='text'>Oracle Applications Adapter: IREP File not present</title><content type='html'>&lt;p&gt;I have been playing with the Oracle Applications adapter. When connecting to EBS Rel12 the first time you might get following dialog prompting to download the irep file as local copy. When you press "Yes", adapter wizard will download the irep repository content to your local file.&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_G3ZVZsr8vwg/SQ9Y1RSeuqI/AAAAAAAAADo/g59oFNeAW9I/s1600-h/image%5B2%5D.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="123" alt="image" src="http://lh4.ggpht.com/_G3ZVZsr8vwg/SQ9Y2DN0sgI/AAAAAAAAADs/Dt9knNmBxBo/image_thumb.png?imgmax=800" width="244" border="0"&gt;&lt;/a&gt; &lt;/p&gt; &lt;h3&gt;Getting IREP File not present repeatedly&lt;/h3&gt; &lt;p&gt;Once you have downloaded the repository you should be fine. But you might be getting this same dialog file coming to you, time after time. The issue is not that you haven't received the local repository. I noticed that the reason is because of your database connection name is in uppercase and the wizard is looking for file name in lowercase.&lt;/p&gt; &lt;p&gt;The workaround to get over this repeated error message is to rename the local irep file to all lowercase, like this:&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_G3ZVZsr8vwg/SQ9Y2lZtPkI/AAAAAAAAADw/YIZ1bNaifXw/s1600-h/image%5B5%5D.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="125" alt="image" src="http://lh4.ggpht.com/_G3ZVZsr8vwg/SQ9Y3AjsJdI/AAAAAAAAAD0/85PQAASFVwI/image_thumb%5B1%5D.png?imgmax=800" width="244" border="0"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;An example: &lt;p&gt;ren irep_data_EBS12DEV_20081103_2143.dat irep_data_ebs12dev_20081103_2143.dat &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_G3ZVZsr8vwg/SQ9Y36FIXGI/AAAAAAAAAD4/BP3D5aIdbqM/s1600-h/image%5B8%5D.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="125" alt="image" src="http://lh6.ggpht.com/_G3ZVZsr8vwg/SQ9Y4o9EYWI/AAAAAAAAAD8/FtiF8LGsWb0/image_thumb%5B2%5D.png?imgmax=800" width="244" border="0"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;After this, you should have another wizard page in the Oracle Applications Adapter wizard page:&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_G3ZVZsr8vwg/SQ9Y5YXUtjI/AAAAAAAAAEA/guvcIjjP_Qo/s1600-h/image%5B11%5D.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="182" alt="image" src="http://lh6.ggpht.com/_G3ZVZsr8vwg/SQ9Y6FquL6I/AAAAAAAAAEE/XGCPmk9H-hA/image_thumb%5B3%5D.png?imgmax=800" width="244" border="0"&gt;&lt;/a&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-9177700123544373051?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/9177700123544373051/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=9177700123544373051' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/9177700123544373051'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/9177700123544373051'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2008/11/oracle-applications-adapter-irep-file.html' title='Oracle Applications Adapter: IREP File not present'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_G3ZVZsr8vwg/SQ9Y2DN0sgI/AAAAAAAAADs/Dt9knNmBxBo/s72-c/image_thumb.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-5212089896494626205</id><published>2008-10-28T20:27:00.001+02:00</published><updated>2008-10-28T20:27:03.646+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Adapter'/><category scheme='http://www.blogger.com/atom/ns#' term='XML'/><title type='text'>Adding encoding -processing Instruction to XML When Using File Adapter</title><content type='html'>&lt;p&gt;By default when using Oracle File Adapter to produce XML documents, no encoding="&amp;lt;charset&amp;gt;" attribute is used in the &amp;lt;?xml version="1.0"?&amp;gt; processing instruction.&lt;/p&gt; &lt;p&gt;Default PI:&lt;/p&gt; &lt;p&gt;&amp;lt;?xml version="1.0" ?&amp;gt;&lt;br&gt;&lt;/p&gt; &lt;p&gt;and wanted PI:&lt;/p&gt; &lt;p&gt;&amp;lt;?xml version="1.0" encoding="UTF-8" ?&amp;gt;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;The way to make this work (at least in 10.1.3.4) is to update the XML schema to include two new options in the schema definition.&lt;/p&gt; &lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; xmlns:nxsd="&lt;a href="http://xmlns.oracle.com/pcbpel/nxsd"&gt;http://xmlns.oracle.com/pcbpel/nxsd&lt;/a&gt;"&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; nxsd:encoding="UTF-8"&amp;gt;&lt;br&gt;&lt;/p&gt; &lt;p&gt;So, adding these attributes will make the schema look like:&lt;/p&gt; &lt;p&gt;&amp;lt;xs:schema xmlns:xs="&lt;a href="http://www.w3.org/2001/XMLSchema"&gt;http://www.w3.org/2001/XMLSchema&lt;/a&gt;" targetNamespace="&lt;a href="http://www.fi.oracle.com/harri.kaukovuo"&gt;http://www.fi.oracle.com/harri.kaukovuo&lt;/a&gt;"&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; elementFormDefault="qualified" attributeFormDefault="unqualified"&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; xmlns:nxsd="&lt;a href="http://xmlns.oracle.com/pcbpel/nxsd"&gt;http://xmlns.oracle.com/pcbpel/nxsd&lt;/a&gt;"&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; nxsd:encoding="UTF-8"&amp;gt;&lt;br&gt;&amp;lt;xs:element name="ORDERS"&amp;gt;&lt;br&gt;...&lt;/p&gt; &lt;p&gt;&amp;lt;/xs:element&amp;gt;  &lt;p&gt;&amp;lt;/xs:schema&amp;gt;    &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-5212089896494626205?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/5212089896494626205/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=5212089896494626205' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/5212089896494626205'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/5212089896494626205'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2008/10/adding-encoding-processing-instruction.html' title='Adding encoding -processing Instruction to XML When Using File Adapter'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-101955879271206388</id><published>2008-10-21T11:08:00.001+03:00</published><updated>2008-10-21T11:08:36.251+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Utilities'/><title type='text'>Great utility to free up disk space: JDiskReport</title><content type='html'>&lt;p&gt;There is not enough of disk space. No matter how large hard disk you get, it will get filled up eventually.&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;After having only 20MB of free space on my C: -drive, I finally take a closer look at the utilities that can point me the directories and files that are reserving the most of the disk space. I found this great utility:&lt;/p&gt; &lt;p&gt;&lt;a title="http://www.jgoodies.com/freeware/jdiskreport/index.html" href="http://www.jgoodies.com/freeware/jdiskreport/index.html"&gt;http://www.jgoodies.com/freeware/jdiskreport/index.html&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Good looking, graphical, Java -based, free and easy to use utility to show exactly what are the directories and files consuming the most of your disk space.&lt;/p&gt; &lt;p&gt;After scanning thru my C: and D: drives I could purge almost 13 GB of meaningless files. &lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-101955879271206388?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/101955879271206388/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=101955879271206388' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/101955879271206388'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/101955879271206388'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2008/10/great-utility-to-free-up-disk-space.html' title='Great utility to free up disk space: JDiskReport'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-6971452282782594753</id><published>2008-09-08T16:26:00.001+03:00</published><updated>2008-09-08T16:26:05.279+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Google'/><title type='text'>Voi räkä!</title><content type='html'>&lt;p&gt; I am running Google Chrome Beta and faced an issue with the browser. The error message is a bit interesting when shown in Finnish language:&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh4.ggpht.com/Harri.Kaukovuo/SMUn6mbAHeI/AAAAAAAAADg/2kC036R8C9g/s1600-h/image%5B2%5D.png"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="87" alt="image" src="http://lh4.ggpht.com/Harri.Kaukovuo/SMUn7G2-AdI/AAAAAAAAADk/RbDYvabFR1g/image_thumb.png?imgmax=800" width="244" border="0"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Funny indeed :)&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-6971452282782594753?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/6971452282782594753/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=6971452282782594753' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/6971452282782594753'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/6971452282782594753'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2008/09/voi-rk.html' title='Voi räkä!'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/Harri.Kaukovuo/SMUn7G2-AdI/AAAAAAAAADk/RbDYvabFR1g/s72-c/image_thumb.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-2173228178558591095</id><published>2008-06-04T08:18:00.001+03:00</published><updated>2008-06-04T08:18:21.878+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OC4J'/><category scheme='http://www.blogger.com/atom/ns#' term='JMS'/><title type='text'>JMSUtils</title><content type='html'>&lt;p&gt;There is a built-in utility to browse/move/delete(drain) messages from JMS queues and topics inside OracleAS OC4J. Starting of the utility has changed a little bit from version 10.1.2 but the usage is the same.  &lt;p&gt;For those that want the fast way of starting up this utility, here is a sample Windows command file:  &lt;p&gt;Create a new file, e.g. called JMSUtils.cmd and the contents:  &lt;p&gt;@REM JMSUtils.cmd&lt;br&gt;@REM&amp;nbsp;&amp;nbsp;&amp;nbsp; This script will launch OracleAS OC4J 10.1.3. JMS command line utility&lt;br&gt;@REM History:&lt;br&gt;@REM&amp;nbsp;&amp;nbsp; 4.6.2008 Harri Kaukovuo, Oracle Finland Oy&lt;br&gt;@set J2EE_HOME=D:\product\10.1.3.1\OracleAS_1\j2ee\home&lt;br&gt;@setlocal&lt;br&gt;@set CLASSPATH=%J2EE_HOME%\oc4j.jar;%J2EE_HOME%\oc4j-api.jar;%J2EE_HOME%\oc4jclient.jar;%J2EE_HOME%\rmic.jar;%J2EE_HOME%\lib\adminclient.jar;%J2EE_HOME%\lib\connector.jar;%J2EE_HOME%\lib\javax77.jar;%J2EE_HOME%\lib\jmxri.jar;%J2EE_HOME%\lib\oc4j-internal.jar&lt;br&gt;@java com.evermind.server.jms.JMSServerUtils -username oc4jadmin -password yourpassword -port 12601 %*&lt;br&gt;@endlocal  &lt;p&gt;You need to replace the value for J2EE_HOME to point to your OracleAS OC4J home directory. By default this utility points to the local host, but you need to connect remote OC4J please add extra "-host myhost.com" as startup uption. To determine the right JMS server port, please see the following chapter.  &lt;h3&gt;Determing JMS server port&lt;/h3&gt; &lt;h4&gt;OPMN&lt;/h4&gt; &lt;p&gt;Depending on the installation (SOA Suite basic, advanced, WebCenter, standalone OC4J), the JMS server setting might be different. One of the easiest way to determine this when running a real OracleAS installation is to use OPMN command line tool:  &lt;p&gt;opmnctl status -fmt %por  &lt;p&gt;Processes in Instance: soasuite.hkaukovu-fi&lt;br&gt;-----&lt;br&gt;ports&lt;br&gt;-----&lt;br&gt;N/A&lt;br&gt;&lt;strong&gt;jms:12601&lt;/strong&gt;,http:8888,rmis:12701,rmi:12401  &lt;p&gt;As you can see, the JMS server port among others is reported as an output. You should use the jms:XXXX value in the JMSUtils.cmd command script as -port option.  &lt;p&gt;opmnctl is found under $ORACLE_HOME/opmn/bin.  &lt;p&gt;&amp;nbsp; &lt;h4&gt;Standalone OC4J&lt;/h4&gt; &lt;p&gt; If you are running standalone OC4J (not installed using Oracle Universal Installer), you should look for $OC4J_HOME/j2ee/home/config/jms.xml file. The entry &lt;p&gt;&amp;lt;jms-server port="9129"&amp;gt; &lt;p&gt;will show you the port number. &lt;p&gt;In the above sample the "&lt;strong&gt;home&lt;/strong&gt;" in the path $OC4J_HOME/j2ee/&lt;strong&gt;home&lt;/strong&gt;/config points to the default OC4J instance name "home". In case you have multiple OC4J instances you might be different subdirectories for each instance (like oc4j_soa etc). &lt;p&gt;&lt;em&gt;Please be aware that if you use OPMN to control the instance, the value in jms.xml will be overriden by OPMN driven values derived from opmn.xml "&amp;lt;port id="jms" range="12601-12700"/&amp;gt;".&lt;/em&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-2173228178558591095?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/2173228178558591095/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=2173228178558591095' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/2173228178558591095'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/2173228178558591095'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2008/06/jmsutils.html' title='JMSUtils'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-8773530359761028202</id><published>2008-04-15T22:26:00.001+03:00</published><updated>2008-04-15T22:26:55.182+03:00</updated><title type='text'>ODI Agent and AD4J Diagnostics Console</title><content type='html'>&lt;p&gt;I was playing with Oracle's new java application diagnostics tool called Oracle Application Diagnostics for Java (AD4J).&lt;/p&gt; &lt;p&gt;&lt;a title="http://www.oracle.com/technology/software/products/oem/htdocs/jade.html" href="http://www.oracle.com/technology/software/products/oem/htdocs/jade.html"&gt;http://www.oracle.com/technology/software/products/oem/htdocs/jade.html&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&lt;a title="http://www.oracle.com/technology/products/oem/pdf/wp_productionappdiagnostics.pdf" href="http://www.oracle.com/technology/products/oem/pdf/wp_productionappdiagnostics.pdf"&gt;http://www.oracle.com/technology/products/oem/pdf/wp_productionappdiagnostics.pdf&lt;/a&gt;&lt;/p&gt; &lt;p&gt;This is great tool to monitor the guts of Java or J2EE engine.&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;AD4J manuals describe how to install the JADE agent on OracleAS or BEA WebLogic, also decribing how to configure standard Java application with agent.&lt;/p&gt; &lt;p&gt;For those that want to monitor Oracle Data Integrator (ODI) agents, here are the steps in details.&lt;/p&gt; &lt;p&gt;1. Download the "Java Agent ZIP File"&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh3.ggpht.com/Harri.Kaukovuo/SAUBdNOVJWI/AAAAAAAAABk/6Ir1Qsaiulg/s1600-h/image%5B2%5D.png"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="177" alt="image" src="http://lh6.ggpht.com/Harri.Kaukovuo/SAUBd9OVJXI/AAAAAAAAABs/rElfLc-xqwk/image_thumb.png?imgmax=800" width="244" border="0"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;2. Place the zip file on ODI installation in $ODIHOME/drivers -directory.&lt;/p&gt; &lt;p&gt;3. Edit the agent.bat (or agent.sh on Unix) to replace the &lt;/p&gt; &lt;p&gt;&lt;em&gt;%ODI_JAVA_START% oracle.odi.Agent %*&lt;/em&gt;  &lt;p&gt;with  &lt;p&gt;&lt;em&gt;%ODI_JAVA_START% jamagent.jamrun jamconshost=localhost jamconsport=3600 jamjvmid=1000 oracle.odi.Agent %*&lt;/em&gt;  &lt;p&gt;Here you should replace jamconshost parameter value with the hostname that has AD4J console running. Also if jamconsport is different than 3600, change the value. Jamjvmid is the identifier that shows up in the JVM list as "port" identifying the JVM from others:  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/Harri.Kaukovuo/SAUBetOVJYI/AAAAAAAAAB0/l_4JCQJkIJ4/s1600-h/image%5B5%5D.png"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="177" alt="image" src="http://lh4.ggpht.com/Harri.Kaukovuo/SAUBfdOVJZI/AAAAAAAAAB8/1wGZk4xFcJs/image_thumb%5B1%5D.png?imgmax=800" width="244" border="0"&gt;&lt;/a&gt;  &lt;p&gt;4. Once the agent.bat or agent.sh is modified (alternatively you made a copy of the agent startup script), you can start it and should see the ODI agent JVM showing up in the AD4J console.    &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-8773530359761028202?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/8773530359761028202/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=8773530359761028202' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/8773530359761028202'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/8773530359761028202'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2008/04/odi-agent-and-ad4j-diagnostics-console.html' title='ODI Agent and AD4J Diagnostics Console'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/Harri.Kaukovuo/SAUBd9OVJXI/AAAAAAAAABs/rElfLc-xqwk/s72-c/image_thumb.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-6827340403320992044</id><published>2008-03-21T01:04:00.001+02:00</published><updated>2008-03-21T01:04:12.075+02:00</updated><title type='text'>Adding Oracle ODI Agent execution under OPMN control</title><content type='html'>&lt;p&gt;I was talking to a customer and explaining opmn and it's role acting as main process control for OracleAS and custom components. While talking also about Oracle Data Integrator (ODI) agents and how to start them up, it occured to my mind to test how to place agent startup/shutdown under opmn control.&lt;/p&gt; &lt;p&gt;Adding your own scripts and executables under opmn control as part of the whole OracleAS package is supported and described in the OPMN manual.&lt;/p&gt; &lt;p&gt;Here is how it goes when adding ODI Agent:&lt;/p&gt; &lt;p&gt;Modify and edit following XML fragment and paste it on $ORACLE_HOME/opmn/conf/opmn.xml&lt;/p&gt; &lt;p&gt;....&lt;/p&gt; &lt;p&gt;&amp;lt;ias-component id="OdiAgent" status="enabled" id-matching="false"&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;environment&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;variable id="ODI_JAVA_HOME"&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;&amp;nbsp;&amp;nbsp; value="D:\product\10.1.3.1\OracleAS_1\jdk" append="false"/&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;variable id="ODI_HOME"&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;&amp;nbsp;&amp;nbsp; value="D:\product\odiclient\oracledi" append="false"/&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/environment&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;process-type id="OdiAgent" module-id="CUSTOM"&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;process-set id="OdiAgent" restart-on-death="true" numprocs="1"&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;module-data&amp;gt;&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;lt;category id="start-parameters"&amp;gt;&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;&amp;nbsp; &amp;lt;data id="start-executable" value="D:\product\odiclient\oracledi\bin\agent.bat"/&amp;gt;&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;&amp;nbsp; &amp;lt;data id="start-args"&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; value="-PORT=20900 -NAME=MYAGENT"/&amp;gt;&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;lt;/category&amp;gt;&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;lt;category id="stop-parameters"&amp;gt;&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;&amp;nbsp; &amp;lt;data id="stop-executable"&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; value="D:\product\odiclient\oracledi\bin\agentstop.bat"/&amp;gt;&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;&amp;nbsp; &amp;lt;data id="stop-args" value="-PORT=20900"/&amp;gt;&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;lt;/category&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/module-data&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/process-set&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/process-type&amp;gt;&lt;br&gt; &amp;lt;/ias-component&amp;gt;&lt;br&gt;...&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;Starting the ODI agent is done by:&lt;/p&gt; &lt;p&gt;opmnctl startproc process-type=OdiAgent&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;Stopping the ODI agent is done by:&lt;/p&gt; &lt;p&gt;opmnctl stopproc process-type=OdiAgent&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;After restarting or reloading the opmn you can see ODI agent starting up and showing up in the status list:&lt;/p&gt; &lt;p&gt;&lt;font face="Courier New" size="2"&gt;D:\product\10.1.3.1\OracleAS_1\opmn\bin&amp;gt;opmnctl status&lt;/font&gt;&lt;/p&gt; &lt;p&gt;&lt;font face="Courier New" size="2"&gt;Processes in Instance: soasuite.hkaukovu-fi&lt;br&gt;---------------------------------+--------------------+---------+---------&lt;br&gt;ias-component&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | process-type&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; |&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pid | status&lt;br&gt;---------------------------------+--------------------+---------+---------&lt;br&gt;OdiAgent&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | OdiAgent&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; |&amp;nbsp;&amp;nbsp; 20780 | Alive&lt;br&gt;ASG&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;&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;&amp;nbsp; | ASG&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;&amp;nbsp; |&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; N/A | Down&lt;br&gt;OC4JGroup:default_group&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | OC4J:home&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; |&amp;nbsp;&amp;nbsp; 31364 | Alive&lt;/font&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-6827340403320992044?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/6827340403320992044/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=6827340403320992044' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/6827340403320992044'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/6827340403320992044'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2008/03/adding-oracle-odi-agent-execution-under.html' title='Adding Oracle ODI Agent execution under OPMN control'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-3362131043543855538</id><published>2008-03-20T01:16:00.001+02:00</published><updated>2008-03-20T01:16:24.886+02:00</updated><title type='text'>Switching BPEL Process File Based Decision Service to WebDAV Based</title><content type='html'>&lt;p&gt;You might get into a situation where you have started the BPEL Process development using file based business rule repository and noticed later on that you should have been using WebDAV instead.&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;Once you have defined the file based business rule service in BPEL process, the file repository is actually &lt;u&gt;copied&lt;/u&gt; under the deployment structure:&lt;/p&gt; &lt;p&gt;&amp;lt;BPEL process&amp;gt;/decisionservices/&amp;lt;servicename&amp;gt;war/WEB-INF/repository&lt;/p&gt; &lt;p&gt;Please note that making any changes on the original rule file will not have any effect on the rule repository deployed and copied with the BPEL process. This is why using WebDAV repository has it's clear role as central place for business rule repository.&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;h4&gt;How to change file repository to WebDAV?&lt;/h4&gt; &lt;p&gt;It is possible to replace the file based repository definition to use WebDAV based repository, with surgical operation on BPEL decision service deployment files.&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;0. Make a backup of the BPEL process you intend to modify.&lt;/p&gt; &lt;p&gt;1. Make sure you have the latest business rule repository imported in the WebDAV location. If you don't have that, you can just connect to WebDAV repository from the rule author application and press "Import" to import the file repository file as such. This will extract the file repository contents into WebDAV file structure. Do &lt;u&gt;not&lt;/u&gt; &lt;u&gt;copy&lt;/u&gt; the file repository "as is" into WebDAV folder as this will not work. You need to import it using rule author.&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;2. (Optional) Create an empty BPEL process and drag&amp;amp;drop a decision service to the process. Define a decision service to use the wanted WebDAV rules connection. Please note that this step is only done to get the needed XML fragment from decisionservices.decs -file. &lt;/p&gt;&amp;lt;repository type="WebDAV"&amp;gt;&lt;br&gt;&amp;nbsp; &amp;lt;webdav&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;url&amp;gt;&lt;a href="http://myhost:7777/rule_repository/poc/"&gt;http://myhost:7777/rule_repository/poc/&lt;/a&gt;&amp;lt;/url&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;username&amp;gt;harri&amp;lt;/username&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;password encrypted="true"&amp;gt;dsIJkj9898dh&amp;lt;/password&amp;gt;&lt;br&gt;&amp;nbsp; &amp;lt;/webdav&amp;gt;&lt;br&gt;&amp;lt;/repository&amp;gt;  &lt;p&gt;3. Open up the actual BPEL process project. Navigate to the &lt;u&gt;file system&lt;/u&gt; level to see the decision service deployment directory that was created behind the scenes the first time you defined the decision service using file based repository.&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;Look for &lt;em&gt;decisionservices.xml&lt;/em&gt; under:&lt;/p&gt; &lt;p&gt;&amp;lt;BPEL process directory&amp;gt;\decisionservices\&amp;lt;servicename&amp;gt;\war\WEB-INF\classes &lt;p&gt;&amp;nbsp; &lt;p&gt;The file has the configuration info for the decision service, among others something like this: &lt;p&gt;&amp;lt;repository type="File"&amp;gt;&lt;br&gt;&amp;nbsp; &amp;lt;file&amp;gt;repositoryresource:MyRuleSets&amp;lt;/file&amp;gt;&lt;br&gt;&amp;lt;/repository&amp;gt;  &lt;p&gt;Replace that with (extracted from an existing decisionservices.decs -file from step 2): &lt;p&gt;&amp;lt;repository type="WebDAV"&amp;gt;&lt;br&gt;&amp;nbsp; &amp;lt;webdav&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;url&amp;gt;&lt;a href="http://myhost:7777/rule_repository/poc/"&gt;http://myhost:7777/rule_repository/poc/&lt;/a&gt;&amp;lt;/url&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;username&amp;gt;harri&amp;lt;/username&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;password encrypted="true"&amp;gt;dsIJkj9898dh&amp;lt;/password&amp;gt;&lt;br&gt;&amp;nbsp; &amp;lt;/webdav&amp;gt;&lt;br&gt;&amp;lt;/repository&amp;gt; &lt;/p&gt; &lt;p&gt;... and save.&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;What I did was also removed the rules repository from: &lt;/p&gt; &lt;p&gt;&amp;lt;BPEL process directory&amp;gt;\decisionservices\&amp;lt;servicename&amp;gt;\war\WEB-INF\repository  &lt;p&gt; just to make sure the service is not using the file based rule repository any more.&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;4. Redeploy the BPEL process.&lt;/p&gt; &lt;p&gt;5. Test.&lt;/p&gt; &lt;p&gt;You should now be using the WebDAV based rules repository with your BPEL decision services.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-3362131043543855538?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/3362131043543855538/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=3362131043543855538' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/3362131043543855538'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/3362131043543855538'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2008/03/switching-bpel-process-file-based.html' title='Switching BPEL Process File Based Decision Service to WebDAV Based'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-2830212015943506518</id><published>2008-01-31T16:57:00.001+02:00</published><updated>2008-01-31T16:58:20.934+02:00</updated><title type='text'>New syntax for Oracle WSM 10.1.3.3 wsmadmin md5encode</title><content type='html'>&lt;p&gt;For those that might have seen OWSM md5 hash encoding utility (e.g. for .htpasswd file), there has been a slight change in the syntax and parameters for 10.1.3.3:&lt;/p&gt; &lt;p&gt;wsmadmin md5encode &amp;lt;file&amp;gt; &amp;lt;username&amp;gt;&lt;/p&gt; &lt;p&gt;the old syntax (10.1.3.1) was instructed like:&lt;/p&gt; &lt;p&gt;wsmadmin md5encode &amp;lt;username&amp;gt; &amp;lt;passwd&amp;gt; &amp;lt;file&amp;gt;&lt;/p&gt; &lt;p&gt;Latter doesn't work in WSM 10.1.3.3 any more.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-2830212015943506518?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/2830212015943506518/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=2830212015943506518' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/2830212015943506518'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/2830212015943506518'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2008/01/new-syntax-for-oracle-wsm-10133.html' title='New syntax for Oracle WSM 10.1.3.3 wsmadmin md5encode'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-5045232804669600675</id><published>2008-01-30T06:54:00.001+02:00</published><updated>2008-01-30T06:54:25.282+02:00</updated><title type='text'>Axis2 Web Services Container on OC4J</title><content type='html'>&lt;p&gt;I was working on a project to call &lt;a href="http://www.oracle.com/technology/products/oracle-data-integrator/index.html" target="_blank"&gt;Oracle Data Integrator&lt;/a&gt; (ODI) from Oracle ESB as part of integration scenario. Part of the ODI installation is to set up infrastructure for public web services, that e.g. allows to call ODI integration scenarios remotely using Web Services calls. ODI Public Web Services uses Apache Axis2 as the web services container.&lt;/p&gt; &lt;p&gt;Installing Axis2 on OC4J 10.1.3. was a real "as easy as 1-2-3" task. Downloaded the WAR Distribution zip file from &lt;a title="http://ws.apache.org/axis2/download.cgi" href="http://ws.apache.org/axis2/download.cgi"&gt;http://ws.apache.org/axis2/download.cgi&lt;/a&gt;, unzipped it on my hard disk and then deployed it using Oracle Application Server control.&lt;/p&gt; &lt;p&gt;After Axis2 WAR deployment, the web services container was ready to rock and to upload the odi-public-ws.aar file required by ODI.&lt;/p&gt; &lt;p&gt;This is just as a reminder for people that wonder how to work with Axis2&amp;nbsp; and OracleAS.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-5045232804669600675?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/5045232804669600675/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=5045232804669600675' title='9 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/5045232804669600675'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/5045232804669600675'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2008/01/axis2-web-services-container-on-oc4j.html' title='Axis2 Web Services Container on OC4J'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><thr:total>9</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-8696455370977468560</id><published>2008-01-11T01:11:00.001+02:00</published><updated>2008-01-11T01:11:51.494+02:00</updated><title type='text'>Unconventional Oracle Installation</title><content type='html'>&lt;p&gt;&lt;/p&gt; &lt;p&gt;Some competitors claim Oracle DB installation takes many days and lots of resources.&lt;/p&gt; &lt;p&gt;These Danish hard core Oracle professionals prove this is not true:&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.youtube.com/watch?v=CHzV4LZnvHc"&gt;http://www.youtube.com/watch?v=CHzV4LZnvHc&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;Please don't try this at home, at least alone ;)&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-8696455370977468560?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/8696455370977468560/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=8696455370977468560' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/8696455370977468560'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/8696455370977468560'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2008/01/unconventional-oracle-installation.html' title='Unconventional Oracle Installation'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-3598723951686160082</id><published>2007-08-23T12:34:00.001+03:00</published><updated>2007-08-23T12:34:50.823+03:00</updated><title type='text'>Missing ODBC connection strings?</title><content type='html'>&lt;p&gt;Here is a cool site for instructing how to define OCBC connection strings for different data sources:&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.connectionstrings.com"&gt;http://www.connectionstrings.com&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-3598723951686160082?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/3598723951686160082/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=3598723951686160082' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/3598723951686160082'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/3598723951686160082'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2007/08/missing-odbc-connection-strings.html' title='Missing ODBC connection strings?'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-4150788625509234141</id><published>2007-08-23T12:29:00.001+03:00</published><updated>2007-08-23T12:29:33.762+03:00</updated><title type='text'>Oracle BAM 10.1.3 External Data Source and Access DB</title><content type='html'>&lt;p&gt;When preparing for a BAM demo I needed to show information from BAM external data source (MS Access sample database Northwind). Manual only described how to configure Oracle Database, but didn't give a sample how to configure Access DB.&lt;/p&gt; &lt;p&gt;After a while of tweaking out the configuration I got Access DB set up as an external data source. The key is to define following values as a sample:&lt;/p&gt; &lt;p&gt;Driver: Microsoft Access Driver (*.mdb)&lt;/p&gt; &lt;p&gt;Connection string: Dbq=d:\demodb\Nwind.mdb;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-4150788625509234141?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/4150788625509234141/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=4150788625509234141' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/4150788625509234141'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/4150788625509234141'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2007/08/oracle-bam-1013-external-data-source.html' title='Oracle BAM 10.1.3 External Data Source and Access DB'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-650911534905676403</id><published>2007-07-26T08:23:00.001+03:00</published><updated>2007-07-26T08:23:56.681+03:00</updated><title type='text'>OpenCMS 7.0.1 and Jetty</title><content type='html'>&lt;p&gt;Finally had some time to play around with OpenCMS again. This time trying to get OpenCMS running on Jetty servlet engine.&lt;/p&gt; &lt;p&gt;Installing on Jetty is pretty straight forward. Just downloaded the OpenCMS zip file, unpacked the war file under $JETTY_HOME/webapps/opencms and extracted the war file with jar xvf opencms.war.&lt;/p&gt; &lt;p&gt;After bouncing the Jetty engine and trying to startup the OpenCMS setup screen I got an exception:&lt;/p&gt; &lt;p&gt;2007-07-25 19:21:06.019::WARN:&amp;nbsp; EXCEPTION&lt;br&gt;javax.servlet.ServletException: Critical error during OpenCms initialization: The OpenCms setup wizard is still enabled.&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at org.opencms.main.OpenCmsServlet.init(OpenCmsServlet.java:262)&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at org.mortbay.jetty.servlet.ServletHolder.initServlet(ServletHolder.java:400)&lt;br&gt;...&lt;/p&gt; &lt;p&gt;This actually caused the whole Jetty engine to misbehave since I could not any more use other applications on the Servlet engine. And naturally the OpenCMS could not be started at all.&lt;/p&gt; &lt;p&gt;Downloaded the source code from read-only CVS repository and looked at the problem. This seems to be the same issue as with BEA WL9, so I needed to uncomment the "OnErrorExitWithoutException" parameter setting under $JETTY_HOME/webapps/opencms/WEB-INF/web.xml.&lt;/p&gt; &lt;p&gt;After uncommenting the servlet parameter and bouncing the Jetty engine I was able to startup OpenCMS setup screen successfully.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-650911534905676403?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/650911534905676403/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=650911534905676403' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/650911534905676403'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/650911534905676403'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2007/07/opencms-701-and-jetty.html' title='OpenCMS 7.0.1 and Jetty'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-3298561001605002199</id><published>2007-05-25T14:52:00.001+03:00</published><updated>2007-05-25T14:52:27.334+03:00</updated><title type='text'>Running Liferay on OracleAS 10.1.2</title><content type='html'>&lt;p&gt;Liferay portal installation on OracleAS 10.1.2 doesn't necessarily follow the installation instructions mentioned in the liferay.com site.&lt;/p&gt; &lt;p&gt;Here are the rough steps to configure Liferay 3.0.6 on OracleAS 10.1.2. J2EE and Web Cache installation.&lt;/p&gt; &lt;p&gt;1. Download the Liferay EAR file. Follow the instructions to update the config files mentioned in the Liferay home pages.&lt;/p&gt; &lt;p&gt;2. Liferay uses different XML parser that is by default configured in OracleAS 10.1.2. To make the container use Xerces parser you need to set up parameters for starting up the container. Make sure you change the "/home/oracle/xerces/xerces-2_9_0" path to reflect your environment.&lt;/p&gt; &lt;p&gt;Edit opmn.xml:&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;ias-component id="OC4J"&amp;gt;&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;lt;process-type id="home" module-id="OC4J" status="enabled"&amp;gt;&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; &amp;lt;module-data&amp;gt;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;category id="start-parameters"&amp;gt;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;data id="java-options" value="-server -Doc4j.userThreads=true -Djava.security.policy=$ORACLE_HOME/j2ee/home/config/java2.policy -Djava.awt.headless=true -Xbootclasspath/a:/home/oracle/xerces/xerces-2_9_0/xml-apis.jar -Dorg.xml.sax.driver=org.apache.xerces.parsers.SAXParser -Djavax.xml.parsers.SAXParserFactory=org.apache.xerces.jaxp.SAXParserFactoryImpl -Djavax.xml.parsers.TransformerFactory=org.apache.xalan.processor.TransformerFactoryImpl -Djavax.xml.transform.TransformerFactory=org.apache.xalan.processor.TransformerFactoryImpl"/&amp;gt;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/category&amp;gt;&lt;br&gt;&lt;/p&gt; &lt;p&gt;After editing the opmn.xml manually, validate the opmn.xml with command:&lt;/p&gt; &lt;p&gt;&lt;font face="Courier"&gt;$ORACLE_HOME/opmn/bin/opmnctl validate&lt;/font&gt;&lt;/p&gt; &lt;p&gt;Reload the changes in opmn with command&lt;/p&gt; &lt;p&gt;&lt;font face="Courier"&gt;$ORACLE_HOME/opmn/bin/opmnctl reload&lt;/font&gt;&lt;/p&gt; &lt;p&gt;Update the dcm repository with command:&lt;/p&gt; &lt;p&gt;&lt;font face="Courier"&gt;$ORACLE_HOME/dcm/bin/dcmctl updateconfig&lt;/font&gt;&lt;/p&gt; &lt;p&gt;3. Configure OC4J global-web-application.xml:&lt;/p&gt; &lt;p&gt;To avoid this exception:&lt;/p&gt; &lt;blockquote&gt; &lt;p&gt;OracleJSP: oracle.jsp.parse.JspParseException: /html/themes/brochure/templates/init.jsp: Line # 27, &amp;lt;theme:defineObjects /&amp;gt; &lt;br&gt;Error: Tag attempted to define a bean which already exists: themeDisplay&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;Resolve: Add following in $ORACLE_HOME/j2ee/home/config/global-web-application.xml&lt;/p&gt; &lt;p&gt;&amp;lt;init-p&lt;b&gt;a&lt;/b&gt;r&lt;b&gt;a&lt;/b&gt;m&amp;gt;&lt;br&gt;&amp;nbsp; &amp;lt;p&lt;b&gt;a&lt;/b&gt;r&lt;b&gt;a&lt;/b&gt;m-n&lt;b&gt;a&lt;/b&gt;me&amp;gt;req_time_introspection&amp;lt;/p&lt;b&gt;a&lt;/b&gt;r&lt;b&gt;a&lt;/b&gt;m-n&lt;b&gt;a&lt;/b&gt;me&amp;gt;&lt;br&gt;&amp;nbsp; &amp;lt;p&lt;b&gt;a&lt;/b&gt;r&lt;b&gt;a&lt;/b&gt;m-v&lt;b&gt;a&lt;/b&gt;lue&amp;gt;true&amp;lt;/p&lt;b&gt;a&lt;/b&gt;r&lt;b&gt;a&lt;/b&gt;m-v&lt;b&gt;a&lt;/b&gt;lue&amp;gt;&lt;br&gt;&amp;lt;/init-p&lt;b&gt;a&lt;/b&gt;r&lt;b&gt;a&lt;/b&gt;m&amp;gt;&lt;br&gt;&lt;/p&gt; &lt;p&gt;4.&amp;nbsp;Copy following jar files to $ORACLE_HOME/j2ee/home/applib&lt;/p&gt; &lt;p&gt;liferay-jdbc.jar&lt;br&gt;xercesImpl.jar&lt;br&gt;xml-apis.jar&lt;br&gt;xmlParserAPIs.jar&lt;br&gt;&lt;/p&gt; &lt;p&gt;The link to Liferay's JDBC driver can be found from Liferay.com. Xerces parser can be downloaded from Apache.org site.&lt;/p&gt; &lt;p&gt;5. Bounce the OC4J container&lt;/p&gt; &lt;p&gt;6. Deploy Liferay EAR file using OracleAS Enterprise Manager.&lt;/p&gt; &lt;p&gt;Test and make sure everything works. If you have any additions, pls let me know and I'll update the notes here.&lt;/p&gt; &lt;p&gt;Looks like a new version of Liferay 4.x.x just popped out. You might give a shot and try above installation instructions with the latest release as well.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-3298561001605002199?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/3298561001605002199/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=3298561001605002199' title='6 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/3298561001605002199'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/3298561001605002199'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2007/05/running-liferay-on-oracleas-1012.html' title='Running Liferay on OracleAS 10.1.2'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-4595262136219263753</id><published>2006-12-30T21:04:00.001+02:00</published><updated>2006-12-30T21:04:50.935+02:00</updated><title type='text'>Windows Live Blog Client</title><content type='html'>&lt;p&gt;Blogger.com got upgraded and my blogger client w.Bloggar refused to work properly with the new beta.blogger.com. Althought the newly announced beta -&amp;gt; production change, w.Bloggar didn't still work.&lt;/p&gt; &lt;p&gt;I started looking at alternatives and found Microsoft Windows Live Blog Client that seems to work nicely with the new Blogger.com.&lt;/p&gt; &lt;p&gt;As the new year 2007 is arriving I wish you all:&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.kaukovuo.com/~blog/orablog/images/WindowsLiveBlogClient_12633/nyban41.gif" atomicselection="true"&gt;&lt;img height="58" src="http://www.kaukovuo.com/~blog/orablog/images/WindowsLiveBlogClient_12633/nyban4.gif" width="240"&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-4595262136219263753?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/4595262136219263753/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=4595262136219263753' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/4595262136219263753'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/4595262136219263753'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2006/12/windows-live-blog-client.html' title='Windows Live Blog Client'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-116215232971878807</id><published>2006-10-29T22:05:00.000+02:00</published><updated>2006-10-29T22:05:29.746+02:00</updated><title type='text'>Configuring Jetty 6 to work with Oracle DB</title><content type='html'>I had the need to print out certain things from my OracleXE database + setup a Web Services engine. My Linux box was running only on 256MB of RAM so I needed a small servlet engine to acts as application server for my JSP application. There were two main options I considered:&lt;br /&gt;&lt;ol&gt;&lt;br /&gt;&lt;li&gt;Tomcat &lt;/li&gt;&lt;br /&gt;&lt;li&gt;Jetty&lt;/li&gt;&lt;br /&gt;&lt;/ol&gt;&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Tomcat&lt;/h3&gt;&lt;br /&gt;&lt;br /&gt;Started with Tomcat 5.5. Installed Tomcat. Installed Axis 1.4. For Axis I needed to manually install bunch of missing JARs. Tried a simple JSP page with JSLT and SQL tags to dig out information from OracleXE. Just to get into phase where I didn't get any missing class exceptions took me a while. I had to manually install mail.jar, activation.jar, xmlsec.jar etc. In the end of stripping out the exceptions I finally could connect the OracleXE database but the only problem was that none of the results were not displayed in the actual JSP result HTML (despite the connection to the database was working). Weird... I used quite a bit of time searching internet for answer how to get this working.&lt;br /&gt;&lt;br /&gt;It was time to throw the towel to the ring. Farewell Tomcat.&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Jetty&lt;/h3&gt;&lt;br /&gt;&lt;br /&gt;Downloaded Jetty 6.0.1. Installed it. Installed Axis 1.4. Axis installation was a nice surprise, almost all the needed libraries were already there for Axis 1.4. I only needed to add xmlsec jar file and Axis was happy. Axis installation was much more fluent in Jetty than in Tomcat. Tried my test JSP to connect OracleXE. There I faced some challeges but got over them very fast and was up and running with working JSP, using JSLT + SQL tags printing results out of my Oracle database.&lt;br /&gt;&lt;br /&gt;Jetty was a pleasant surprise to me. For those folks that needs sample application that works with Oracle database using data sources, here are the steps to do it:&lt;br /&gt;&lt;br /&gt;1. Create directory webapps-plus under $JETTY_HOME if that directory doesn't exists. &lt;br /&gt;Jetty 6.0.1 is configured out-of-the-box with JNDI support if you deploy your application under webapps-plus directory. Also in order to get the JNDI support you need to start the Jetty engine with following parameters:&lt;br/&gt;&lt;br /&gt;&lt;pre&gt;java -jar start.jar etc/jetty.xml etc/jetty-plus.xml&lt;/pre&gt;&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;2. Create a sample application subdirectory $JETTY_HOME/webapps-plus/mysample.&lt;br /&gt;3. Copy WEB-INF from $JETTY_HOME/webapps/test to $JETTY_HOME/webapps-plus/mysample&lt;br /&gt;4. Copy Oracle JDBC driver to $JETTY_HOME/webapps-plus/mysample/WEB-INF/lib. I use ojdbc14.jar.&lt;br /&gt;5. Edit the jetty-web.xml in $JETTY_HOME/webapps-plus/mysample/WEB-INF&lt;br /&gt;&lt;br /&gt;You can configure the Oracle datasource in this config file:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;&amp;lt;?xml version="1.0" encoding="ISO-8859-1"?&amp;gt;&lt;br /&gt;&amp;lt;!DOCTYPE Configure PUBLIC "-//Mort Bay Consulting//DTD Configure//EN" "http://j&lt;br /&gt;etty.mortbay.org/configure.dtd"&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;Configure class="org.mortbay.jetty.webapp.WebAppContext"&amp;gt;&lt;br /&gt;&lt;br /&gt;  &amp;lt;Call class="org.mortbay.log.Log" name="debug"&amp;gt;&lt;br /&gt;    &amp;lt;Arg&amp;gt;executing jetty-web.xml&amp;lt;/Arg&amp;gt;&lt;br /&gt;  &amp;lt;/Call&amp;gt;&lt;br /&gt;&lt;br /&gt;  &amp;lt;!-- Add a DataSource only valid for this webapp                     --&amp;gt;&lt;br /&gt;  &amp;lt;New id="oraclexe" class="org.mortbay.jetty.plus.naming.Resource"&amp;gt;&lt;br /&gt;    &amp;lt;Arg&amp;gt;jdbc/oraclexe&amp;lt;/Arg&amp;gt;&lt;br /&gt;    &amp;lt;Arg&amp;gt;&lt;br /&gt;     &amp;lt;New class="oracle.jdbc.pool.OracleDataSource"&amp;gt;&lt;br /&gt;      &amp;lt;Set name="user"&amp;gt;scott&amp;lt;/Set&amp;gt;&lt;br /&gt;      &amp;lt;Set name="password"&amp;gt;tiger&amp;lt;/Set&amp;gt;&lt;br /&gt;      &amp;lt;Set name="URL"&amp;gt;jdbc:oracle:thin:@myhostname.com:1521:XE&amp;lt;/Set&amp;gt;&lt;br /&gt;     &amp;lt;/New&amp;gt;&lt;br /&gt;    &amp;lt;/Arg&amp;gt;&lt;br /&gt;   &amp;lt;/New&amp;gt;&lt;br /&gt;&amp;lt;/Configure&amp;gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;6. Create a sample JSP file that reports data from Oracle database using the data source defined in jetty-web.xml:&lt;br /&gt;&lt;br /&gt;Here is the sample JSP with SQL tags:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;&amp;lt;%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql" %&amp;gt;&lt;br /&gt;&amp;lt;%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;html&amp;gt;&lt;br /&gt;  &amp;lt;head&amp;gt;&lt;br /&gt;    &amp;lt;title&amp;gt;Oracle DB Test&amp;lt;/title&amp;gt;&lt;br /&gt;  &amp;lt;/head&amp;gt;&lt;br /&gt;  &amp;lt;body&amp;gt;&lt;br /&gt;&lt;br /&gt;  &amp;lt;h2&amp;gt;Results&amp;lt;/h2&amp;gt;&lt;br /&gt;&amp;lt;sql:query dataSource="jdbc/oraclexe" var="rs"&amp;gt;&lt;br /&gt;SELECT * FROM dual&lt;br /&gt;&amp;lt;/sql:query&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;c:choose&amp;gt;&lt;br /&gt;    &amp;lt;c:when test="${rs.rowCount == 0}"&amp;gt;&lt;br /&gt;      Sorry, no messages found.&lt;br /&gt;    &amp;lt;/c:when&amp;gt;&lt;br /&gt;    &amp;lt;c:when test="${rs.rowCount == null}"&amp;gt;&lt;br /&gt;      Sorry, no messages found (null).&lt;br /&gt;    &amp;lt;/c:when&amp;gt;&lt;br /&gt;    &amp;lt;c:otherwise&amp;gt;&lt;br /&gt;      Messages found (${rs.rowCount})&lt;br /&gt;    &amp;lt;/c:otherwise&amp;gt;&lt;br /&gt;&amp;lt;/c:choose&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;c:forEach var="row" items="${rs.rows}"&amp;gt;&lt;br /&gt;    Dummy ${row.dummy}&amp;lt;br/&amp;gt;&lt;br /&gt;&amp;lt;/c:forEach&amp;gt;&lt;br /&gt;&lt;br /&gt;  &amp;lt;/body&amp;gt;&lt;br /&gt;&amp;lt;/html&amp;gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;7. Bounce jetty to get all the changes in effect.&lt;br /&gt;&lt;br /&gt;If everythings went well, you should be having a working connection to Oracle database printing out something like:&lt;br /&gt;&lt;b&gt;Results&lt;/b&gt;&lt;br /&gt;Messages found (1) Dummy X&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-116215232971878807?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/116215232971878807/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=116215232971878807' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/116215232971878807'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/116215232971878807'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2006/10/configuring-jetty-6-to-work-with.html' title='Configuring Jetty 6 to work with Oracle DB'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-115588219802007115</id><published>2006-08-18T09:23:00.000+03:00</published><updated>2006-08-18T09:23:18.056+03:00</updated><title type='text'>Disabling Gnome/KDE in RedHat startup</title><content type='html'>Here is something that I consider FAQ but never remember how to do it after installing RedHat Linux.&lt;br /&gt;How to disable graphical desktop in server startup? This is to conserve system resourses when server is used only remotely e.g. SSH.&lt;br /&gt;&lt;br /&gt;su - &lt;enter root pass&gt;&lt;br /&gt;vi /etc/inittab&lt;br /&gt;&lt;br /&gt;Look for a line like this: id:5:initdefault:&lt;br /&gt;&lt;br /&gt;This line specifies default runlevel on boot.&lt;br /&gt; Default runlevel. The runlevels used by RHS are:&lt;br /&gt;   0 - halt (Do NOT set initdefault to this)&lt;br /&gt;   1 - Single user mode&lt;br /&gt;   2 - Multiuser, without NFS (The same as 3, if you do not have networking)&lt;br /&gt;   3 - Full multiuser mode&lt;br /&gt;   4 - unused&lt;br /&gt;   5 - X11&lt;br /&gt;   6 - reboot (Do NOT set initdefault to this)&lt;br /&gt;&lt;br /&gt;Change the 5 in the quote above to a 3. Save and reboot.&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-115588219802007115?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/115588219802007115/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=115588219802007115' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/115588219802007115'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/115588219802007115'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2006/08/disabling-gnomekde-in-redhat-startup.html' title='Disabling Gnome/KDE in RedHat startup'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-114349041142670981</id><published>2006-03-27T23:13:00.000+03:00</published><updated>2006-03-27T23:13:31.426+03:00</updated><title type='text'>HAM</title><content type='html'>BAM (Business Activity Monitoring) is cool new technology for business monitoring.&lt;br /&gt;There are products like &lt;a href="http://www.oracle.com/technology/products/integration/bam/index.html"&gt;Oracle BAM&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Home Activity Monitoring (HAM?)  is a word I could describe following ultra &lt;b&gt;COOL&lt;/b&gt; Dutch site: &lt;a href="http://www.bwired.nl/"&gt;http://www.bwired.nl/&lt;br /&gt;&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Amazing !! :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-114349041142670981?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/114349041142670981/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=114349041142670981' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/114349041142670981'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/114349041142670981'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2006/03/ham_27.html' title='HAM'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-114061291864260582</id><published>2006-02-22T14:55:00.000+02:00</published><updated>2006-02-22T14:55:18.660+02:00</updated><title type='text'>OC4J (9.0.4, 10.1.2 and 10.1.3) log file rotation</title><content type='html'>For those that want to rotate the OC4J log files under $ORACLE_HOME/opmn/logs, there are new parameters not documented in 9.0.4/10.1.2 documentation:&lt;br /&gt;&lt;br /&gt;&lt;b&gt;[New JVM parameters]&lt;/b&gt;&lt;br /&gt; "stdstream.filesize"&lt;br /&gt;   Max file size limit of each archive. Unit is megabyte.&lt;br /&gt; "stdstream.filenumber"&lt;br /&gt;   Max number of files that oc4j can keep as archives. The oldest file&lt;br /&gt;   will be automatically deleted if the limit is exceeded.&lt;br /&gt; "stdstream.rotatetime"&lt;br /&gt;   Time when the log file is rotated. Format is "HH:mm". The archive&lt;br /&gt;   will be rotated at the specified time everyday.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;[Usage]&lt;/b&gt;&lt;br /&gt;ex 1: rotate stdout/stderr when the file size is reached to 2.5M byte.&lt;br /&gt;  java -Dstdstream.filesize=2.5 -jar oc4j.jar -out std.out -err std.err&lt;br /&gt;ex 2: rotate stdout at 13:30 everyday&lt;br /&gt;  java -Dstdstream.rotatetime=13:30 -jar oc4j.jar -out std.out&lt;br /&gt;ex 3: rotate stdout at 13:30 everyday and keep 10 files as archive&lt;br /&gt;  java -Dstdstream.rotatetime=13:30 -Dstdstream.filenumber=10 -jar oc4j.jar -out std.out&lt;br /&gt;&lt;br /&gt;The generated log file would look like &amp;lt;filename w/o extension&amp;gt;_yyyy_MM_dd_HH_mm_ss.&amp;lt;extension&amp;gt;&lt;br /&gt;e.g. std_2004_07_08_13_24_53.out&lt;br /&gt;&lt;br /&gt;&lt;b&gt;[Note]&lt;/b&gt;&lt;br /&gt;1. The same parameter are used for both "-out" and "-err".&lt;br /&gt;2. In AS mode, the log files will be created under &amp;lt;island name and process id&amp;gt; directory&lt;br /&gt;    (this isn't changed by this fix, existing code handles this)&lt;br /&gt;3. Both "filesize" and "rotatetime" parameters can be used at the same time.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;opmn.xml&lt;/b&gt;&lt;br /&gt;In order to get these parameters in opmn.xml you need to define it as follows:&lt;br /&gt;...&lt;br /&gt;&amp;lt;category id="start-parameters"&amp;gt;&lt;br /&gt;  &amp;lt;data id="java-options" value="-server -Djava.security.policy=$ORACLE_HOME/j2ee/home/config/java2.policy -Djava.awt.headless=true -Dstdstream.filesize=0.2 -Dstdstream.filenumber=5"/&amp;gt;&lt;br /&gt;  &amp;lt;data id="oc4j-options" value="-out std.out -err std.err"/&amp;gt;&lt;br /&gt;&amp;lt;/category&amp;gt;&lt;br /&gt;...&lt;br /&gt;&lt;br /&gt;You will find the new log files under:$ORACLE_HOME/j2ee/home/home_default_island_1&lt;br /&gt;&lt;br /&gt;The file naming will be like:&lt;br /&gt;std_2006_02_22_14_01_17.out&lt;br /&gt;std_2006_02_22_14_16_25.out&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-114061291864260582?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/114061291864260582/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=114061291864260582' title='9 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/114061291864260582'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/114061291864260582'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2006/02/oc4j-904-1012-and-1013-log-file.html' title='OC4J (9.0.4, 10.1.2 and 10.1.3) log file rotation'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><thr:total>9</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-113735427114265929</id><published>2006-01-15T21:44:00.000+02:00</published><updated>2006-01-15T21:44:31.210+02:00</updated><title type='text'>HTML DB Region Title Dynamic Translation</title><content type='html'>I've been working at home to build our family web site using OracleXE and HTML DB (2.1). One of the targets for the new design is to support multiple languages dynamically so that whenever user has either English, Finnish or Swedish browser preference the web site should display using that language.&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;HTML DB has translation capabilities built-in but the functionality wasn't exactly what I was looking for. I wanted the same HTML DB application to support all above languages, not to have multiple languages and multiple applications.&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;Everything else was doable, I created dynamic content relational tables and the content of the web pages is retrieved from the database using the language preferred.&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;One problem are was region titles, which doesn't support translatability within the same application out of the box. I am able to print out the region title using application level attributes, so called substitution variables. This is half way what I wanted but there is no language perspective to this. I want to print out the welcome region box title as "Welcome", "Tervetuloa", "V&amp;auml;lkommen" dependent on the browser language.&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;I finally discovered a way to do this. First of all I have to use javascript to do this. Secondly I &lt;u&gt;thought&lt;/u&gt; I could use the "navigator.language" variable from the client browser to discover the preferred language of the browser, but this didn't work exactly as I thought. Namely this variable prints out the installed browser language, not the preferred language that user has selected from the browser preferences.&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;The workaround to discover how to get the "HTTP_ACCEPT_LANGUAGE" -setting took awhile. Finally I got a working Javascript snippet that did the trick with HTML DB:&lt;br /&gt;&lt;pre&gt;&amp;lt;script type="text/javascript"&amp;gt;var language = '&amp;amp;BROWSER_LANGUAGE.';&lt;br /&gt; if (language.indexOf('fi') &gt; -1) document.write("Tervetuloa");&lt;br /&gt; else if (language.indexOf('sv') &gt; -1) document.write("V&amp;auml;lkommen");&lt;br /&gt; else document.write("Welcome")&amp;lt;/script&amp;gt;&lt;/pre&gt;&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;So the key is to use the &amp;amp;BROWSER_LANGUAGE. -substitution variable to find out the preferred browser language to get the right result.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-113735427114265929?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/113735427114265929/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=113735427114265929' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/113735427114265929'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/113735427114265929'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2006/01/html-db-region-title-dynamic.html' title='HTML DB Region Title Dynamic Translation'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-113079548595127871</id><published>2005-10-31T23:51:00.000+02:00</published><updated>2005-10-31T23:51:25.986+02:00</updated><title type='text'>OpenCMS and OC4J 10.1.2 (part 2)</title><content type='html'>Trying to get OpenCMS working with OC4J 10.1.2 (or 10.1.3 dp4) seems to be quite challenging task. What makes this very interesting is that I don't seem to get any errors or exception messages in any of the logs despite of enabling full debugging in log4j.properties file.&lt;br /&gt;&lt;br /&gt;There were definitely something wrong with the installation of OpenCMS on OC4J. The installation failed on NPE but system somehow managed to start up. Perhaps some of the modules got installed correctly. I can see that some of the config files point to Tomcat setup (like pointing to ROOT -default web application), so there might be something Tomcat specific behind the scenes that affect the application execution on other containers.&lt;br /&gt;&lt;br /&gt;Anyways, to fork the problem area I installed OpenCMS using Tomcat (which works fine) so that I got the repository installed correctly on my Oracle 10.1.3 database. What I did then was I copied all the OpenCMS config etc. files under Tomcat webapps to the OC4J directory to make sure everything is as it should be after the installation. What happens is that systems starts up nicely, the log file compared to Tomcat looks exactly the same (used UltraEdit file diff'er to find out the differences). But what happens next after entering login (Admin/admin), is not something I am looking for. The login screen keeps popping up all the times and the workspace isn't shown. No error messages, no exceptions, no beeps, no nothing.&lt;br /&gt;&lt;br /&gt;One step closer to despairness was when I downloaded the whole OpenCMS sources tree on my JDeveloper and re-built the whole application from sources. Now the only thing to find out was to remotely debug the OpenCMS server using JDeveloper's remote debugger and starting OC4J in debugging mode. Ok. This should work... or should it? I set the debug break point and debug the application line-by-line. For some reason the debugger freaks out in the critical moments that should point out the problem area. What is going on?&lt;br /&gt;&lt;br /&gt;I also see that other people face the same problem when looking at OpenCMS mailing list.&lt;br /&gt;&lt;br /&gt;Battle continues. Having the sources and detail debugging should eventually reveal the source of the problem. Let's see how long this takes.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-113079548595127871?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/113079548595127871/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=113079548595127871' title='7 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/113079548595127871'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/113079548595127871'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2005/10/opencms-and-oc4j-1012-part-2.html' title='OpenCMS and OC4J 10.1.2 (part 2)'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><thr:total>7</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-112969615940872150</id><published>2005-10-19T07:29:00.000+03:00</published><updated>2005-10-19T07:29:19.440+03:00</updated><title type='text'>OpenCMS and OC4J 10.1.2</title><content type='html'>For those that want to get OpenCMS working with OC4J here is an important note. The OpenCMS installer uses Java threads when setting up the modules. If you don't have user threads enabled in OC4J, you will face errors like "Unable to read opencms xml configuration". To work around this, you have to enable background threads for the container and this you do by adding following parameter to the OC4J container startup:&lt;br /&gt;&lt;blockquote&gt;-Doc4j.userThreads=true&lt;/blockquote&gt;&lt;br /&gt;So if you start the OC4J from command line: java -jar oc4j.jar, you need to start with java -Doc4j.userThreads=true -jar oc4j.jar.&lt;br /&gt;After this you will be able to run the setup successfully and continue using OpenCMS.&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Re-packagaging EAR&lt;/h3&gt;&lt;br /&gt;&lt;br /&gt;For those that need helping hand on the re-wrapping the OpenCMS war file to be deployed as EAR in OC4J here are the steps:&lt;br /&gt;1. Create a new subdirectory&lt;br /&gt;2. Copy the opencms.war file to that directory&lt;br /&gt;3. Create META-INF -directory and new file application.xml&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&amp;lt;?xml version = '1.0' encoding = 'windows-1252'?&amp;gt;&lt;br /&gt;&amp;lt;!DOCTYPE application PUBLIC "-//Sun Microsystems, Inc.//DTD J2EE Application 1.3//EN" "http://java.sun.com/dtd/application_1_3.dtd"&amp;gt;&lt;br /&gt;&amp;lt;application&amp;gt;&lt;br /&gt;  &amp;lt;display-name&amp;gt;opencms&amp;lt;/display-name&amp;gt;&lt;br /&gt;  &amp;lt;module&amp;gt;&lt;br /&gt;    &amp;lt;web&amp;gt;&lt;br /&gt;      &amp;lt;web-uri&amp;gt;opencms.war&amp;lt;/web-uri&amp;gt;&lt;br /&gt;      &amp;lt;context-root&amp;gt;opencms&amp;lt;/context-root&amp;gt;&lt;br /&gt;    &amp;lt;/web&amp;gt;&lt;br /&gt;  &amp;lt;/module&amp;gt;&lt;br /&gt;&amp;lt;/application&amp;gt;&lt;/blockquote&gt;&lt;br /&gt;4. Package EAR file: jar cvf opencms.ear *&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Deployment&lt;/h3&gt;&lt;br /&gt;For deployment I usually use a script that uses admin.jar. Here is a sample I use on Windows:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;set OC4JDIR=D:\apps\oc4j_extended_101202\j2ee\home&lt;br /&gt;set FILEE=%1%&lt;br /&gt;java -jar %OC4JDIR%\admin.jar ormi://localhost admin welcome -undeploy %FILEE%&lt;br /&gt;java -jar %OC4JDIR%\admin.jar ormi://localhost admin welcome -deploy -deploymentName %FILEE% -file %FILEE%.ear &lt;br /&gt;java -jar %OC4JDIR%\admin.jar ormi://localhost admin welcome -bindWebApp %FILEE% %FILEE% http-web-site %FILEE%&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;For Linux you need to figure out yourself how to replace the variable names in Unix style ;)&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Login Problems&lt;/h3&gt;&lt;br /&gt;In the end of the installation I still faced some NPE exceptions, looks like they were related somehow to user management.&lt;br /&gt;Once I re-started the instance I got following errors in the opencms.log:&lt;br /&gt;&lt;blockquote&gt;19 Oct 2005 06:59:21,578 ERROR [  org.opencms.main.OpenCmsCore: 296] Critical error during OpenCms initialization: The OpenCms setup wizard is still enabled.&lt;/blockquote&gt;&lt;br /&gt;This can be fixed by setting the setup wizard setting to false in opencms.properties -file.&lt;br /&gt;&lt;br /&gt;Once trying to open up the admin workspace using URL: http://localhost:8888/opencms/opencms/system/login, I will get the login dialog where I enter the default Admin username and password. From the log files seems like I get successful authentication but the workspace never shows up. The login dialog will always be shown to user. Seems like browser type (IE, TB) doesn't have anything to do with this.&lt;br /&gt;&lt;br /&gt;The login problem is still to be resolved until OpenCMS can be successfully used with OC4J.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;I'll be back.&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-112969615940872150?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/112969615940872150/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=112969615940872150' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/112969615940872150'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/112969615940872150'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2005/10/opencms-and-oc4j-1012.html' title='OpenCMS and OC4J 10.1.2'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-112367450838036357</id><published>2005-08-10T14:48:00.000+03:00</published><updated>2005-08-10T14:48:28.380+03:00</updated><title type='text'>BPEL Orchestration versus Choreography</title><content type='html'>I found a great arcticle (by Matjaz Juric) describing the concepts of BPEL Orchestration versus Choreography in simple way:&lt;br /&gt;&lt;a href="http://www.oracle.com/technology/pub/articles/matjaz_bpel1.html"&gt;http://www.oracle.com/technology/pub/articles/matjaz_bpel1.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-112367450838036357?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/112367450838036357/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=112367450838036357' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/112367450838036357'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/112367450838036357'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2005/08/bpel-orchestration-versus-choreography.html' title='BPEL Orchestration versus Choreography'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-112085599117307782</id><published>2005-07-08T23:53:00.000+03:00</published><updated>2005-07-08T23:56:06.230+03:00</updated><title type='text'>Jakarta Slide on OC4J</title><content type='html'>Never give up (referring to &lt;a href="http://kaukovuo.blogspot.com/2004/12/slide-webdav-server-on-oracle-or-orion.html"&gt;this&lt;/a&gt; post). Finally got Jakarta Slide server running on OC4J. The issue was with XML stack, there seems to be some sort of differences between the default Oracle XDK and the XML stack used with Slide. Anyways, to get Slide running you should define the Xerces and Xalan parsers as the JAXP factories in the OC4J startup.&lt;br /&gt;Here is a sample startup script for my OC4J:&lt;br /&gt;&lt;PRE&gt;cd $HOME/oc4j/j2ee/home&lt;br /&gt;java&lt;br /&gt; -Djavax.xml.parsers.DocumentBuilderFactory=org.apache.xerces.jaxp.DocumentBuilderFactoryImpl&lt;br /&gt; -Djavax.xml.parsers.SAXParserFactory=org.apache.xerces.jaxp.SAXParserFactoryImpl &lt;br /&gt; -Djavax.xml.transform.TransformerFactory=org.apache.xalan.processor.TransformerFactoryImpl &lt;br /&gt;-jar oc4j.jar&lt;/PRE&gt;&lt;br /&gt;Xalan and Xerces libraries should be placed under JAVA_HOME/jre/lib/ext and remember to give at least read access to the account running the OC4j container.&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-112085599117307782?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/112085599117307782/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=112085599117307782' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/112085599117307782'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/112085599117307782'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2005/07/jakarta-slide-on-oc4j.html' title='Jakarta Slide on OC4J'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-112085306298635318</id><published>2005-07-08T23:04:00.000+03:00</published><updated>2005-07-08T23:04:23.010+03:00</updated><title type='text'>JDeveloper 10.1.2 and Linux-x86_64 with JDK 1.5 (64-bit)</title><content type='html'>For those running on 64-bit Linux (e.g. using AMD64 CPUs) it is possible that you have 64-bit JDK 1.5 pre-installed. This is the case at least with Fedora Core 4.0 (64-bit).&lt;br /&gt;&lt;br /&gt;If you want to get 10.1.2 JDeveloper running with JDK 1.5 you might get an error message such as:&lt;br /&gt;&lt;PRE&gt;Error: Hotspot VM not supported&lt;br /&gt;Error: JDeveloper can't recognize the JDK version&lt;/PRE&gt;&lt;br /&gt;Tha last error message is because of the first. To work around this you should edit the $JDEV_HOME/jdev/bin/jdev.conf -file and comment out the line that shows:&lt;br /&gt;&lt;PRE&gt;SetJavaVM hotspot&lt;/PRE&gt;&lt;br /&gt;After this you should be able to start JDeveloper 10.1.2.&lt;br /&gt;&lt;br /&gt;You might get some weird sticky startup screen showing in front of the initial questionnaire windows. After passing these (either try moving the windows or just pressing Enter) you should be fine with JDeveloper.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-112085306298635318?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/112085306298635318/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=112085306298635318' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/112085306298635318'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/112085306298635318'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2005/07/jdeveloper-1012-and-linux-x8664-with.html' title='JDeveloper 10.1.2 and Linux-x86_64 with JDK 1.5 (64-bit)'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-111937764610222976</id><published>2005-06-21T21:14:00.000+03:00</published><updated>2005-06-21T21:14:06.126+03:00</updated><title type='text'>Powerpoint notes removal add-in</title><content type='html'>I described &lt;a href="http://kaukovuo.blogspot.com/2004/11/removing-powerpoint-slide-comments.html"&gt;earlier&lt;/a&gt; a way to add a VBA macro in Powerpoint to allow removing the comments out of PPTs. This required adding the macro each time manually or having the macro in the powerpoint template by default. I decided that I make this small utility more handy by adding this as PPT add-in. This way the macro will be available all the times when dealing with PPTs.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.pcuf.fi/~hkaukovu/blog/HJK_Remove_Notes.ppa"&gt;Here is the PPT add-in&lt;/a&gt; (HJK_Remove_Notes.ppa), which you need to copy to the Microsoft add-ins directory. In my workstation the target directory is: C:\Documents and Settings\hkaukovu\Application Data\Microsoft\AddIns&lt;br /&gt;&lt;br /&gt;After this you should restart the Powerpoint and navigate to Tools -&gt; Add-Ins and press "Add New...". Choose the HJK_Remove_Notes.ppa -file and press Enable Macros button to start the add-in. You should have Plugins -menu item after the "Help" and from there if you choose "Delete Notes" you should be able to delete all the notes from the currently open PPT. The VBA macro will confirm you before you delete the notes.&lt;br /&gt;&lt;br /&gt;If you find any issues pls let me know.&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-111937764610222976?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/111937764610222976/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=111937764610222976' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/111937764610222976'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/111937764610222976'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2005/06/powerpoint-notes-removal-add-in.html' title='Powerpoint notes removal add-in'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-111935124787552080</id><published>2005-06-21T13:54:00.000+03:00</published><updated>2005-06-21T13:54:07.876+03:00</updated><title type='text'>Comment on Blojsom installation on OC4J</title><content type='html'>I wrote in my &lt;a href="http://kaukovuo.blogspot.com/2004/11/how-to-deploy-blojsom-blogging.html"&gt;earlier&lt;/a&gt; article about installing Blojsom on OC4J.&lt;br /&gt;&lt;br /&gt;There is an easier way for installing applications on OC4J as pointed by Olaf Heimburger in his blog:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.orablogs.com/olaf/archives/001043.html"&gt;http://www.orablogs.com/olaf/archives/001043.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-111935124787552080?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/111935124787552080/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=111935124787552080' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/111935124787552080'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/111935124787552080'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2005/06/comment-on-blojsom-install_111935124787552080.html' title='Comment on Blojsom installation on OC4J'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-111929889133513043</id><published>2005-06-20T23:21:00.000+03:00</published><updated>2005-06-20T23:21:31.336+03:00</updated><title type='text'>OC4J: Adding your own logging handler for J2EE application logging</title><content type='html'>For those that have the need to use their own custom or ready-made logging handlers with Oracle OC4J container, here is a sample how to do it.&lt;br /&gt;&lt;br /&gt;Oracle OC4J J2EE logging is based on the J2SE 1.4 java.util.logging. This is the new standard logging utility that has most of the same features log4j has, althought log4j still has more custom logging handlers compared to JUL logging.&lt;br /&gt;&lt;br /&gt;You can add your own JUL (java.util.logging) handler as logging handler in the container component (defined in j2ee-logging.xml), but this doesn't affect any of the sub-component loggings, like JMS, server, RMI etc. j2ee-logging.xml affects on custom logging events used in the applications.&lt;br /&gt;&lt;br /&gt;One thing to note here is that in order to use e.g. java.util.logging.FileHandler, you must set the "-Djava.util.logging.config.file" -option in the "java -jar oc4j.jar" call to configure the logging options. Setting the properties in the j2ee-logging.xml doesn't have any effect on the java.util.logging handlers.&lt;br /&gt;&lt;br /&gt;So in order to run the OC4J with the wanted logging handler you need to startup the container with following command line:&lt;br /&gt;&lt;blockquote&gt;java -Djava.util.logging.config.file=d:\apps\jdev1012\j2ee\home\properties\logging.properties -jar oc4j.jar&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;hr&gt;&lt;br /&gt;Here is a sample j2ee-logging.xml:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;&amp;lt;logging_configuration&amp;gt;&lt;br /&gt;  &amp;lt;log_handlers&amp;gt;&lt;br /&gt;     &amp;lt;log_handler name="oc4j-handler" class="java.util.logging.FileHandler"&amp;gt;&lt;br /&gt;    &amp;lt;/log_handler&amp;gt;&lt;br /&gt;  &amp;lt;/log_handlers&amp;gt;&lt;br /&gt;  &amp;lt;loggers&amp;gt;&lt;br /&gt;   &amp;lt;logger name="oracle" level="ALL" useParentHandlers="false"&amp;gt;&lt;br /&gt;      &amp;lt;handler name="oc4j-handler"/&amp;gt;&lt;br /&gt;    &amp;lt;/logger&amp;gt;&lt;br /&gt; &amp;lt;/loggers&amp;gt;&lt;br /&gt;&amp;lt;/logging_configuration&amp;gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;hr&gt;&lt;br /&gt;Here is a sample logging.properties file:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;java.util.logging.FileHandler.level=ALL&lt;br /&gt;#  "/" the local pathname separator&lt;br /&gt;# "%t" the system temporary directory&lt;br /&gt;# "%h" the value of the "user.home" system property&lt;br /&gt;# "%g" the generation number to distinguish rotated logs&lt;br /&gt;# "%u" a unique number to resolve conflicts&lt;br /&gt;# "%%" translates to a single percent sign "%"&lt;br /&gt;java.util.logging.FileHandler.pattern=%h/central%u.log&lt;br /&gt;java.util.logging.FileHandler.limit=0&lt;br /&gt;java.util.logging.FileHandler.count=1&lt;br /&gt;java.util.logging.FileHandler.append=true&lt;br /&gt;java.util.logging.FileHandler.formatter=java.util.logging.SimpleFormatter&lt;br /&gt;&lt;br /&gt;oracle.emp.kaukovuo.logger.test.LoggerServlet=ALL&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-111929889133513043?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/111929889133513043/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=111929889133513043' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/111929889133513043'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/111929889133513043'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2005/06/oc4j-adding-your-own-logging-handler_20.html' title='OC4J: Adding your own logging handler for J2EE application logging'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-111327648553456402</id><published>2005-04-12T06:28:00.000+03:00</published><updated>2005-04-12T06:28:05.533+03:00</updated><title type='text'>OC4J Logging and debugging</title><content type='html'>There is a great link that describes the OC4J logging and debugging in short:&lt;br /&gt;&lt;a href="http://www.oracle.com/technology/tech/java/oc4j/htdocs/oc4j-logging-debugging-technote.html" title="OracleAS Containers for J2EE - Logging and Debugging"&gt;OracleAS  Containers for J2EE - Logging and Debugginghttp://www.oracle.com/technology/tech/java/oc4j/htdocs/oc4j-logging-debugging-technote.html&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-111327648553456402?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/111327648553456402/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=111327648553456402' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/111327648553456402'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/111327648553456402'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2005/04/oc4j-logging-and-debugging.html' title='OC4J Logging and debugging'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-111323621936156214</id><published>2005-04-11T19:16:00.000+03:00</published><updated>2005-10-06T10:34:32.303+03:00</updated><title type='text'>Loading Java properties file inside EJB component (OC4J)</title><content type='html'>Loading properties file inside Java is common way to parametrize the application. Under single JVM you would use following code to load the properties file:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;    Properties prop = new Properties();&lt;br /&gt;    try&lt;br /&gt;    {&lt;br /&gt;      prop.load(new FileInputStream("hello.properties"));&lt;br /&gt;    }&lt;br /&gt;    catch (FileNotFoundException e)&lt;br /&gt;    {&lt;br /&gt;      e.printStackTrace();&lt;br /&gt;    }&lt;br /&gt;    catch (IOException e)&lt;br /&gt;    {&lt;br /&gt;      e.printStackTrace();&lt;br /&gt;    }&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Under OC4J you might want to keep all the properties files under the same directory e.g. $OC4J_HOME/properties. For this you should edit the container application.xml file under $OC4J_HOME/config -directory. Add following line to the application.xml:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;    &amp;lt;library path="../properties"/&amp;gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;In the J2EE application you can trust the class loader to find the properties file under this directory. For this you should code your application as:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;    &lt;br /&gt;    Properties prop = new Properties();&lt;br /&gt;    try&lt;br /&gt;    {&lt;br /&gt;      prop.load(Thread.currentThread().getContextClassLoader().getResourceAsStream("hello.properties"));&lt;br /&gt;    }&lt;br /&gt;    catch (FileNotFoundException e)&lt;br /&gt;    {&lt;br /&gt;      e.printStackTrace();&lt;br /&gt;    }&lt;br /&gt;    catch (IOException e)&lt;br /&gt;    {&lt;br /&gt;      e.printStackTrace();&lt;br /&gt;    }&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-111323621936156214?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/111323621936156214/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=111323621936156214' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/111323621936156214'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/111323621936156214'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2005/04/loading-java-properties-file-inside.html' title='Loading Java properties file inside EJB component (OC4J)'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-111161578690858935</id><published>2005-03-24T00:09:00.000+02:00</published><updated>2005-03-24T00:09:46.906+02:00</updated><title type='text'>Calling C/C++ gSOAP Web Services from JDeveloper</title><content type='html'>gSOAP is publicly developed C/C++ SOAP framework for Web Services client and server development.&lt;br /&gt;&lt;br /&gt;Here is some loggin information trying to get Java -&gt; C++ (via Web Services) to work together.&lt;br /&gt;&lt;br /&gt;gSOAP distribution does not have ready made *.dlls or *.lib libraries for direct compilation. I had already Microsoft Visual C++ 6, which was just perfect environment for compiling the gSOAP basic *.dll's and sample C/C++ application. I tought I start the mini-project with the calculator samples mentioned in the manual. Generated the needed source code (*.cpp and *.h) + resource files using soapcpp2.exe.&lt;br /&gt;&lt;br /&gt;Ok. after little bit of tweaking I got the first calc.exe to run as Web Service. Remember to add the "soap_set_namespaces(&amp;soap, namespaces);" line after "soap_init(&amp;soap)" in the C++ code. This will result the response message having all the needed namespaces and avoiding "SOAP version mismatch or invalid SOAP message" -error. Also noticeable was that the simple samples in manual did not work "as is" but the multi-threaded (with pooling) seems to work just fine, so that code base was used to serve the Web Service calls.&lt;br /&gt;&lt;br /&gt;Imported the generated WSDL to the JDeveloper (9.0.5.2) and generated the Java sample code. Trying to run the Web Service stub results in following error message: "Method 'ns1:add' not implemented: method name or namespace not recognized".&lt;br /&gt;&lt;br /&gt;=&gt; The problem was that the sample Calc.cpp had some odd namespace definitions. After I copied the namespace definitions form Calculator.nsmap the Web Service started working.&lt;br /&gt;&lt;br /&gt;After this the TCP packet monitor showed that Web Service returns the right answer, but Java deserializer returns an exception at Java side:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;[SOAPException: faultCode=SOAP-ENV:Client; msg=No Deserializer found to deserialize a &amp;apos;:result&amp;apos; using encoding style &amp;apos;http://schemas.xmlsoap.org/soap/encoding/&amp;apos;.; targetException=java.lang.IllegalArgumentException: No Deserializer found to deserialize a ':result' using encoding style 'http://schemas.xmlsoap.org/soap/encoding/'.]&lt;br /&gt;	at org.apache.soap.SOAPException.&amp;lt;init&amp;gt;(SOAPException.java:78)&lt;br /&gt;	at org.apache.soap.rpc.Call.invoke(Call.java:308)&lt;br /&gt;	at oracle.emp.kaukovuo.ws.mypackage.CalculatorStub.add(CalculatorStub.java:79)&lt;br /&gt;	at oracle.emp.kaukovuo.ws.mypackage.CalculatorStub.main(CalculatorStub.java:36)&lt;br /&gt;Process exited with exit code 0.&lt;/blockquote&gt; &lt;br /&gt;&lt;br /&gt;Looks like the result -element should be data typed (the same kind of problems as with Microsoft SOAP Toolkit). This is easily worked around with J2EE Web Services by adding web.xml initialization parameter "accept-untyped-request" to "true". How is this done in Java client environment when receiving response?&lt;br /&gt;&lt;br /&gt;The response to the question lies in gSOAP manual chapter: "&lt;b&gt;8.1.5  XSD Type Encoding Considerations&lt;/b&gt;".&lt;br /&gt;&lt;br /&gt;The most important thing is to compile the header file with "-t" option. This generates code to send typed messages (with the xsi:type attribute).&lt;br /&gt;For fast development you should take a look at the *.xml files that soapcpp2 compiler generates. These will reflect the requests and responses that the SOAP client/server will receive. In the first phase you don't need to get everything running to test.&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-111161578690858935?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/111161578690858935/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=111161578690858935' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/111161578690858935'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/111161578690858935'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2005/03/calling-cc-gsoap-web-services-from.html' title='Calling C/C++ gSOAP Web Services from JDeveloper'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-110191997221222639</id><published>2004-12-01T18:52:00.000+02:00</published><updated>2004-12-01T18:52:52.213+02:00</updated><title type='text'>Slide WebDAV server on Oracle or Orion J2EE, not working?</title><content type='html'>Ran into very interesting Apache project "Slide":&lt;br /&gt;http://jakarta.apache.org/slide/index.html&lt;br /&gt;&lt;br /&gt;This is an open source WebDAV J2EE implementation that is runnable (theoretically) on any Servlet 2.3 compliant web container.&lt;br /&gt;Well, of course I could not resist trying this out on Oracle OC4J server. Deploying went fine but trying to run the engine will result on errors complaining on XML libraries. Apparently this product is built on top of open source XML libraries and out of the box they are not compliant to be run on any J2EE container.&lt;br /&gt;&lt;br /&gt;The second trial was with Orion J2EE server. The deployment went fine but received errors when trying to access the http://localhost/slide -URL. The errors seem to complain about missing encoding libraries. If I just knew what should I do...&lt;br /&gt;Here is the error message:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;Orion/2.0.5 initialized&lt;br /&gt;28 Nov 2004 22:06:07 - org.apache.slide.webdav.WebdavServlet - ERROR - java.io.UnsupportedEncodingException: "UTF-8"&lt;br /&gt;java.io.UnsupportedEncodingException: "UTF-8"&lt;br /&gt;        at sun.io.Converters.getConverterClass(Unknown Source)&lt;br /&gt;        at sun.io.Converters.newConverter(Unknown Source)&lt;br /&gt;        at sun.io.CharToByteConverter.getConverter(Unknown Source)&lt;br /&gt;        at sun.nio.cs.StreamEncoder$ConverterSE.&amp;lt;init&amp;gt;(Unknown Source)&lt;br /&gt;        at sun.nio.cs.StreamEncoder$ConverterSE.&amp;lt;init&amp;gt;(Unknown Source)&lt;br /&gt;        at sun.nio.cs.StreamEncoder.forOutputStreamWriter(Unknown Source)&lt;br /&gt;        at java.io.OutputStreamWriter.&amp;lt;init&amp;gt;(Unknown Source)&lt;br /&gt;        at com.evermind.server.http.EvermindHttpServletResponse.getWriter(Unknown Source)&lt;br /&gt;        at javax.servlet.ServletResponseWrapper.getWriter(ServletResponseWrapper.java:37)&lt;br /&gt;        at org.apache.slide.webdav.util.DirectoryIndexGenerator.generate(DirectoryIndexGenerator.java:165)&lt;br /&gt;        at org.apache.slide.webdav.WebdavServlet.doGet(WebdavServlet.java:352)&lt;br /&gt;        at javax.servlet.http.HttpServlet.service(HttpServlet.java:244)&lt;br /&gt;        at org.apache.slide.webdav.WebdavServlet.service(WebdavServlet.java:158)&lt;br /&gt;&lt;br /&gt;        at javax.servlet.http.HttpServlet.service(HttpServlet.java:336)&lt;br /&gt;        at com.evermind._ha.doFilter(Unknown Source)&lt;br /&gt;        at org.apache.slide.webdav.filter.LogFilter.doFilter(LogFilter.java:141)&lt;br /&gt;&lt;br /&gt;        at com.evermind._ctb._psd(Unknown Source)&lt;br /&gt;        at com.evermind._ctb._bqc(Unknown Source)&lt;br /&gt;        at com.evermind._ax._luc(Unknown Source)&lt;br /&gt;        at com.evermind._ax._ucb(Unknown Source)&lt;br /&gt;        at com.evermind._bf.run(Unknown Source)&lt;br /&gt;ApplicationServerThread, 28-marras-2004 22:06:07, unauthenticated, GET, 500 "Internal Server Error", 40 ms, /&lt;br /&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-110191997221222639?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/110191997221222639/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=110191997221222639' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/110191997221222639'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/110191997221222639'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2004/12/slide-webdav-server-on-oracle-or-orion.html' title='Slide WebDAV server on Oracle or Orion J2EE, not working?'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-110158986652849767</id><published>2004-11-27T23:11:00.000+02:00</published><updated>2004-11-27T23:30:34.336+02:00</updated><title type='text'>Deploying Blojsom on Orion J2EE Server</title><content type='html'>As many of you might know already is Oracle J2EE technology based on Orion J2EE server. Currently these two servers go their separate ways in development, but there are still quite a lot similarities. I use this container at home for my personal web projects (family home pages etc). The installation of blojsom Blog server is pretty much the same as in Oracle J2EE server, with the exception of different name in http web site XML configuration file.&lt;br /&gt;&lt;br /&gt;Here is the steps to deploy the blojsom blogging application on ORION J2EE container. Tested on 2.0.5 version.&lt;br /&gt;&lt;ol&gt;&lt;br /&gt;&lt;li&gt;Download the WAR file for blojsom (http://sourceforge.net/project/showfiles.php?group_id=72754)&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Copy blojsom.war to it's own directory, without any other files in it.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Make subdirectory META-INF&lt;/li&gt;&lt;br /&gt;&lt;li&gt;cd META-INF&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Create/edit application.xml -file with following content:&lt;/li&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;&amp;lt;?xml version = '1.0' encoding = 'windows-1252'?&amp;gt;&lt;br /&gt;&amp;lt;!DOCTYPE application PUBLIC "-//Sun Microsystems, Inc.//DTD J2EE Application 1.3//EN" "http://java.sun.com/dtd/application_1_3.dtd"&amp;gt;&lt;br /&gt;&amp;lt;application&amp;gt;&lt;br /&gt;  &amp;lt;display-name&amp;gt;Blojsom&amp;lt;/display-name&amp;gt;&lt;br /&gt;  &amp;lt;module&amp;gt;&lt;br /&gt;    &amp;lt;web&amp;gt;&lt;br /&gt;      &amp;lt;web-uri&amp;gt;blojsom.war&amp;lt;/web-uri&amp;gt;&lt;br /&gt;      &amp;lt;context-root&amp;gt;blojsom&amp;lt;/context-root&amp;gt;&lt;br /&gt;    &amp;lt;/web&amp;gt;&lt;br /&gt;  &amp;lt;/module&amp;gt;&lt;br /&gt;&amp;lt;/application&amp;gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;li&gt;Change directory to the root directory where blojsom.war exists. Create an EAR file out of the directory:&lt;/li&gt;&lt;br /&gt;&amp;lt;path_to_your_jdk_home&amp;gt;\jdk\bin\jar cvf blojsom.ear *&lt;br /&gt;You should see something like:&lt;br /&gt;added manifest&lt;br /&gt;adding: blojsom.war(in = 2493553) (out= 2449558)(deflated 1%)&lt;br /&gt;adding: web-inf/(in = 0) (out= 0)(stored 0%)&lt;br /&gt;adding: web-inf/application.xml(in = 387) (out= 240)(deflated 37%)&lt;br /&gt;&lt;li&gt;Copy this *.ear file to ORION_HOME/applications -directory&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Edit ORION_HOME/config/server.xml&lt;/li&gt;&lt;br /&gt;Add following line under the application-server -root element:&lt;br /&gt;&lt;blockquote&gt;&amp;lt;application name="blojsom" path="../applications/blojsom.ear" auto-start="true" /&amp;gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;li&gt;Edit ORION_HOME/config/default-web-site.xml&lt;/li&gt;&lt;br /&gt;Add following line:&lt;br /&gt;&lt;blockquote&gt;&amp;lt;web-app application="blojsom" name="blojsom" load-on-startup="true" root="/blojsom" /&amp;gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;li&gt;Start the ORION server&lt;/li&gt;&lt;br /&gt;Auto-deployment should start at this point.&lt;br /&gt;&lt;li&gt;Edit ORION_HOME/applications/blojsom/blojsom/WEB-INF/default/blog.properties&lt;/li&gt;&lt;br /&gt;Change the blog-base-url and blog-url to point to your server and ORION port.&lt;br /&gt;Change also other meaningful descriptive parameters to match your needs.&lt;br /&gt;&lt;li&gt;Restart the ORION server&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Point your browser to url http://localhost:&amp;lt;port&amp;gt;/blojsom/blog/default/&lt;/li&gt;&lt;br /&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-110158986652849767?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/110158986652849767/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=110158986652849767' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/110158986652849767'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/110158986652849767'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2004/11/deploying-blojsom-on-orion-j2ee-server.html' title='Deploying Blojsom on Orion J2EE Server'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-110144650108541159</id><published>2004-11-26T07:21:00.000+02:00</published><updated>2004-11-26T07:21:41.086+02:00</updated><title type='text'>Removing Powerpoint slide comments</title><content type='html'>I am working as a sales consultant and use Powerpoint slides quite often to describe the presented material. Many time some of the Powerpoint slides are annotated by someone else and if I want to deliver the PPT to the customers/partners I must remove the annotations. Doing this manually is time-consuming. Here is a trick to add a simple Visual Basic macro that automatically removes the annotations and leaves the slides.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;Sub DelNotesShapes()&lt;br /&gt;Dim oSld As Slide&lt;br /&gt;For Each oSld In ActivePresentation.Slides&lt;br /&gt;    If oSld.NotesPage.Shapes.Count &gt; 0 Then&lt;br /&gt;        oSld.NotesPage.Shapes.Range.Delete&lt;br /&gt;    End If&lt;br /&gt;Next oSld&lt;br /&gt;Set oSld = Nothing&lt;br /&gt;End Sub&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Press Alt-F11, choose from menu Insert-&gt;Module and copy above VBA code to the editor. Press Save and exit the VBA editor.&lt;br /&gt;Run the macro in PPT with Alt-F8, choosing above macro name DelNotesShapes and "Run". After this all the notes/annotations are removed.&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-110144650108541159?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/110144650108541159/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=110144650108541159' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/110144650108541159'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/110144650108541159'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2004/11/removing-powerpoint-slide-comments.html' title='Removing Powerpoint slide comments'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-110072573756718419</id><published>2004-11-17T23:08:00.000+02:00</published><updated>2004-11-18T12:59:53.906+02:00</updated><title type='text'>How to deploy Blojsom blogging application on standalone OC4J</title><content type='html'>Here is the steps to deploy the blojsom blogging application on Oracle Container 4 J2EE.&lt;br /&gt;&lt;ol&gt;&lt;br /&gt;&lt;li&gt;Download the WAR file for blojsom (http://sourceforge.net/project/showfiles.php?group_id=72754)&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Copy blojsom.war to it's own directory, without any other files in it.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Make subdirectory META-INF&lt;/li&gt;&lt;br /&gt;&lt;li&gt;cd META-INF&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Create/edit application.xml -file with following content:&lt;/li&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;&amp;lt;?xml version = '1.0' encoding = 'windows-1252'?&amp;gt;&lt;br /&gt;&amp;lt;!DOCTYPE application PUBLIC "-//Sun Microsystems, Inc.//DTD J2EE Application 1.3//EN" "http://java.sun.com/dtd/application_1_3.dtd"&amp;gt;&lt;br /&gt;&amp;lt;application&amp;gt;&lt;br /&gt;  &amp;lt;display-name&amp;gt;Blojsom&amp;lt;/display-name&amp;gt;&lt;br /&gt;  &amp;lt;module&amp;gt;&lt;br /&gt;    &amp;lt;web&amp;gt;&lt;br /&gt;      &amp;lt;web-uri&amp;gt;blojsom.war&amp;lt;/web-uri&amp;gt;&lt;br /&gt;      &amp;lt;context-root&amp;gt;blojsom&amp;lt;/context-root&amp;gt;&lt;br /&gt;    &amp;lt;/web&amp;gt;&lt;br /&gt;  &amp;lt;/module&amp;gt;&lt;br /&gt;&amp;lt;/application&amp;gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;li&gt;Create an EAR file out of the directory:&lt;/li&gt;&lt;br /&gt;&amp;lt;path_to_your_jdk_home&amp;gt;\jdk\bin\jar cvf blojsom.ear *&lt;br /&gt;You should see something like:&lt;br /&gt;added manifest&lt;br /&gt;adding: blojsom.war(in = 2493553) (out= 2449558)(deflated 1%)&lt;br /&gt;adding: web-inf/(in = 0) (out= 0)(stored 0%)&lt;br /&gt;adding: web-inf/application.xml(in = 387) (out= 240)(deflated 37%)&lt;br /&gt;&lt;li&gt;Copy this *.ear file to OC4J_HOME/applications -directory&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Edit OC4J_HOME/config/server.xml&lt;/li&gt;&lt;br /&gt;Add following line under the application-server -root element:&lt;br /&gt;&lt;blockquote&gt;&amp;lt;application name="blojsom" path="../applications/blojsom.ear" auto-start="true" /&amp;gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;li&gt;Edit OC4J_HOME/config/http-web-site.xml&lt;/li&gt;&lt;br /&gt;Add following line:&lt;br /&gt;&lt;blockquote&gt;&amp;lt;web-app application="blojsom" name="blojsom" load-on-startup="true" root="/blojsom" /&amp;gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;li&gt;Start the OC4J server&lt;/li&gt;&lt;br /&gt;Auto-deployment should start at this point.&lt;br /&gt;&lt;li&gt;Edit OC4J_HOME/applications/blojsom/blojsom/WEB-INF/default/blog.properties&lt;/li&gt;&lt;br /&gt;Change the blog-base-url and blog-url to point to your server and OC4J port.&lt;br /&gt;Change also other meaningful descriptive parameters to match your needs.&lt;br /&gt;&lt;li&gt;Shutdown the OC4J and restart it.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Point your browser to url http://localhost:8888/blojsom/blog/default/&lt;/li&gt;&lt;br /&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-110072573756718419?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/110072573756718419/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=110072573756718419' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/110072573756718419'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/110072573756718419'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2004/11/how-to-deploy-blojsom-blogging.html' title='How to deploy Blojsom blogging application on standalone OC4J'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-110071963010462360</id><published>2004-11-17T21:27:00.000+02:00</published><updated>2004-11-17T22:31:33.023+02:00</updated><title type='text'>Testing Oracle Software Packager</title><content type='html'>Finally got the time to test drive the Oracle Software Packager 2.2 that is used to create installation packages installable by Oracle Universal installer.&lt;br /&gt;&lt;br /&gt;Great tool! After 1 hour I got my first installation staging area built up and tested using Oracle Universal installer.&lt;br /&gt;Just wondering why this tool is not more widely used within our customers and partners.&lt;br /&gt;&lt;br /&gt;Oracle Software Packager can create installation components which can be bundled together to create a main installation component. This seems to work nicely when using a "custom" installation option. All the subcomponents can be either selected or de-selected the same way as it works with OracleAS or OracleDB installation.&lt;br /&gt;&lt;br /&gt;I'm going to use the installer to bundle all custom Interconnect adapters, adapter customizers and transformations so that they are more easily installed. The package will be called OracleAS Interconnect Power Pack.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-110071963010462360?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/110071963010462360/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=110071963010462360' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/110071963010462360'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/110071963010462360'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2004/11/test-from-w.html' title='Testing Oracle Software Packager'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8874378.post-109873361343032336</id><published>2004-10-25T23:44:00.000+03:00</published><updated>2004-11-17T21:28:56.906+02:00</updated><title type='text'>First post</title><content type='html'>Finally got the time to get my blog up and running. This blog is mainly concentrated on Oracle technology.&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8874378-109873361343032336?l=kaukovuo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kaukovuo.blogspot.com/feeds/109873361343032336/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8874378&amp;postID=109873361343032336' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/109873361343032336'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8874378/posts/default/109873361343032336'/><link rel='alternate' type='text/html' href='http://kaukovuo.blogspot.com/2004/10/first-post.html' title='First post'/><author><name>Harri Kaukovuo</name><uri>http://www.blogger.com/profile/16748583654886421957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_G3ZVZsr8vwg/SXT92d0O2OI/AAAAAAAAAIA/U1q920AUIwE/S220/harri.jpg'/></author><thr:total>0</thr:total></entry></feed>
