<?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-13394094</id><updated>2012-02-16T11:24:18.480-08:00</updated><category term='web service SOAP testing'/><category term='Vista'/><category term='WSDL'/><category term='java jdeveloper'/><category term='java'/><category term='CRM'/><category term='java jdeveloper vista'/><category term='web service'/><category term='random'/><category term='rant iPod'/><category term='WCF Web Service tips'/><category term='life coaching'/><category term='JDeveloper Web Service WSDL'/><category term='JDeveloper Funny'/><category term='XML binding'/><title type='text'>Web Services on Drugs</title><subtitle type='html'>Web 2.0 experimentation and more...</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default?start-index=101&amp;max-results=100'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>102</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-13394094.post-1243533327832522286</id><published>2011-11-26T18:31:00.001-08:00</published><updated>2011-11-26T18:32:22.652-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='CRM'/><title type='text'>Customer Service and user experience</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: left;"&gt;I have been trying to setup a new account with Amazon to get into the french version of the associate program, and got an email with potential french readers. It all started well, with a nice intro:&lt;/div&gt;&lt;blockquote class="tr_bq"&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="background-color: rgba(255, 255, 255, 0.917969); color: #222222; font-family: arial, sans-serif; font-size: 13px;"&gt;Cher Partenaire,&lt;/span&gt;&lt;br style="background-color: rgba(255, 255, 255, 0.917969); color: #222222; font-family: arial, sans-serif; font-size: 13px;" /&gt;&lt;span class="Apple-style-span" style="background-color: rgba(255, 255, 255, 0.917969); color: #222222; font-family: arial, sans-serif; font-size: 13px;"&gt;Merci d'avoir pris contact avec le Programme Partenaires d'Amazon.fr.&lt;/span&gt;&lt;/i&gt;&lt;/blockquote&gt;&amp;nbsp;Then, there was a link:&lt;br /&gt;&lt;blockquote class="tr_bq"&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="background-color: rgba(255, 255, 255, 0.917969); color: #222222; font-family: arial, sans-serif; font-size: 13px;"&gt;Ai-je résolu votre problème?&lt;/span&gt;&amp;nbsp;&lt;/i&gt;&amp;nbsp;&lt;/blockquote&gt;&lt;blockquote class="tr_bq"&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="background-color: rgba(255, 255, 255, 0.917969); color: #222222; font-family: arial, sans-serif; font-size: 13px;"&gt;Si non, cliquez ici s'il vous plaît :&lt;/span&gt;&amp;nbsp;+a short link&lt;/i&gt;&lt;/blockquote&gt;After I answered a few questions, I got a nice 'Call Me' offer, except they are close right now.&lt;br /&gt;&amp;nbsp;&lt;img border="0" height="192" src="http://3.bp.blogspot.com/-mn1Mx_PpOco/TtGeg5psvtI/AAAAAAAAAy4/OTwR8YLVuqE/s400/CallMe.png" style="text-align: left;" width="400" /&gt;&lt;br /&gt;Why are we not able to get a better user experience and see the open hours upfront?&lt;br /&gt;&lt;br /&gt;It would be nice to have an&amp;nbsp;asynchronous&amp;nbsp;way to keep in touch on my current issue or ticket.&amp;nbsp;CRM has still a long way to go, especially for free services. Or am I asking too much here?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-1243533327832522286?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/1243533327832522286/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=1243533327832522286' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/1243533327832522286'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/1243533327832522286'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2011/11/customer-service-and-user-experience.html' title='Customer Service and user experience'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-mn1Mx_PpOco/TtGeg5psvtI/AAAAAAAAAy4/OTwR8YLVuqE/s72-c/CallMe.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-4237786461791873554</id><published>2011-06-30T05:50:00.000-07:00</published><updated>2011-06-30T05:54:06.063-07:00</updated><title type='text'>Amazon search box is gone</title><content type='html'>Until I can find a way to setup my french account on Amazon Associates, the link to search is gone from by blog as it's now a dead account.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-xStfATqmtOw/Tgxw9QSjbrI/AAAAAAAAAdE/U1B4LJ4ScDo/s1600/ThanksYouJerryBrown.png" imageanchor="1" style="margin-left:1em; margin-right:1em"&gt;&lt;img border="0" height="84" width="400" src="http://3.bp.blogspot.com/-xStfATqmtOw/Tgxw9QSjbrI/AAAAAAAAAdE/U1B4LJ4ScDo/s400/ThanksYouJerryBrown.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;From twitter:&lt;br /&gt;RT @Scobleizer An Open Letter To Jeff Bezos On Terminating The Amazon Affiliate Program In California http://t.co/By2lZxC from @dannysullivan&lt;br /&gt;&lt;br /&gt;Thanks you, Jerry Brown.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-4237786461791873554?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/4237786461791873554/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=4237786461791873554' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/4237786461791873554'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/4237786461791873554'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2011/06/amazon-search-box-is-gone.html' title='Amazon search box is gone'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-xStfATqmtOw/Tgxw9QSjbrI/AAAAAAAAAdE/U1B4LJ4ScDo/s72-c/ThanksYouJerryBrown.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-4114358542033636154</id><published>2010-12-25T14:12:00.000-08:00</published><updated>2010-12-25T14:12:53.531-08:00</updated><title type='text'>Lose end of 2010, as we get ready for .next</title><content type='html'>It has been a very quiet year on the blogging side. Most of the free time was spent on the new media, trying to figure out why Facebook and Twitter were so useful to communicate with the world.&lt;br /&gt;&lt;br /&gt;As I am wrapping up the year, I have two new books on my night stand:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.amazon.com/Processing-XML-documents-Oracle-JDeveloper/dp/1847196667?ie=UTF8&amp;amp;tag=webser082-20&amp;amp;link_code=btl&amp;amp;camp=213689&amp;amp;creative=392969" target="_blank"&gt;Processing XML documents with Oracle JDeveloper 11g&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.amazon.com/Processing-XML-documents-Oracle-JDeveloper/dp/1847196667?ie=UTF8&amp;amp;tag=webser082-20&amp;amp;link_code=bil&amp;amp;camp=213689&amp;amp;creative=392969" imageanchor="1" target="_blank"&gt;&lt;img alt="Processing XML documents with Oracle JDeveloper 11g" src="http://ws.amazon.com/widgets/q?MarketPlace=US&amp;amp;ServiceVersion=20070822&amp;amp;ID=AsinImage&amp;amp;WS=1&amp;amp;Format=_SL160_&amp;amp;ASIN=1847196667&amp;amp;tag=webser082-20" /&gt;&lt;/a&gt;&lt;img alt="" border="0" height="1" src="http://www.assoc-amazon.com/e/ir?t=webser082-20&amp;amp;l=bil&amp;amp;camp=213689&amp;amp;creative=392969&amp;amp;o=1&amp;amp;a=1847196667" style="border: none !important; margin: 0px !important; padding: 0px !important;" width="1" /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.amazon.com/Web-2-0-Solutions-Oracle-WebCenter/dp/1847195806?ie=UTF8&amp;amp;tag=webser082-20&amp;amp;link_code=btl&amp;amp;camp=213689&amp;amp;creative=392969" target="_blank"&gt;Web 2.0 Solutions with Oracle WebCenter 11g&lt;/a&gt;&lt;img alt="" border="0" height="1" src="http://www.assoc-amazon.com/e/ir?t=webser082-20&amp;amp;l=btl&amp;amp;camp=213689&amp;amp;creative=392969&amp;amp;o=1&amp;amp;a=1847195806" style="border: none !important; margin: 0px !important; padding: 0px !important;" width="1" /&gt;&lt;a href="http://www.amazon.com/Web-2-0-Solutions-Oracle-WebCenter/dp/1847195806?ie=UTF8&amp;amp;tag=webser082-20&amp;amp;link_code=bil&amp;amp;camp=213689&amp;amp;creative=392969" imageanchor="1" target="_blank"&gt;&lt;img alt="Web 2.0 Solutions with Oracle WebCenter 11g" src="http://ws.amazon.com/widgets/q?MarketPlace=US&amp;amp;ServiceVersion=20070822&amp;amp;ID=AsinImage&amp;amp;WS=1&amp;amp;Format=_SL160_&amp;amp;ASIN=1847195806&amp;amp;tag=webser082-20" /&gt;&lt;/a&gt;&lt;img alt="" border="0" height="1" src="http://www.assoc-amazon.com/e/ir?t=webser082-20&amp;amp;l=bil&amp;amp;camp=213689&amp;amp;creative=392969&amp;amp;o=1&amp;amp;a=1847195806" style="border: none !important; margin: 0px !important; padding: 0px !important;" width="1" /&gt;&lt;br /&gt;&lt;br /&gt;With this on my to-read list, I should be able to convert my experimentations into something useful. I need to find a better way to:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;keep track of my comic books and follow the new releases dates&lt;br /&gt;&lt;li&gt;build a collection of my preferred recipes, from the family and friends, together with the pictures I shoot and store in my Smug-mug account. &lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;Let see how I can make it happend in 2011 ;-)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-4114358542033636154?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/4114358542033636154/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=4114358542033636154' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/4114358542033636154'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/4114358542033636154'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2010/12/lose-end-of-2010-as-we-get-ready-for.html' title='Lose end of 2010, as we get ready for .next'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-7652921251780648943</id><published>2010-10-18T09:43:00.000-07:00</published><updated>2010-10-18T09:43:50.976-07:00</updated><title type='text'>Mon humeur du jour.</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;Suicide pill in full motion :&lt;img border="0" src="http://1.bp.blogspot.com/_HveDAwtrmoQ/TLx41EwMKMI/AAAAAAAAAZc/_aMKSsrhlag/s1600/ss.gif" /&gt;&lt;/div&gt;&lt;iframe align="left" frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=webser082-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=bpl&amp;amp;asins=B0021L8V1Q&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="height: 245px; padding-right: 10px; padding-top: 5px; width: 131px;"&gt;&lt;/iframe&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-7652921251780648943?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/7652921251780648943/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=7652921251780648943' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/7652921251780648943'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/7652921251780648943'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2010/10/mon-humeur-du-jour.html' title='Mon humeur du jour.'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_HveDAwtrmoQ/TLx41EwMKMI/AAAAAAAAAZc/_aMKSsrhlag/s72-c/ss.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-1562425985322167359</id><published>2010-04-28T23:05:00.000-07:00</published><updated>2010-04-28T23:07:34.426-07:00</updated><title type='text'>Java Decompiler</title><content type='html'>I have a new tools to share with you : JD GUI&lt;br /&gt;&lt;br /&gt;&lt;a href="http://java.decompiler.free.fr/?q=jdgui"&gt;http://java.decompiler.free.fr/?q=jdgui&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;It's one of the must-have if you need to figure out why things are not working the way you expect them to work...&lt;br /&gt;&lt;br /&gt;After two days searching for a NPE, which was not reported, I wished I would not have wait that long before to get down to the rubber.&lt;br /&gt;&lt;br /&gt;Hoping I'll learn from my mistakes.&lt;br /&gt;&lt;br /&gt;Remember the bad smell:&lt;br /&gt;&lt;br /&gt;try {&lt;br /&gt;} catch {&lt;br /&gt;return null;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;My $0.02 for today.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-1562425985322167359?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/1562425985322167359/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=1562425985322167359' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/1562425985322167359'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/1562425985322167359'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2010/04/java-decompiler.html' title='Java Decompiler'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-5936436447886567566</id><published>2009-10-30T14:50:00.000-07:00</published><updated>2009-10-30T15:25:50.056-07:00</updated><title type='text'>Friday the 30th, Halloween is just around the corner</title><content type='html'>Always been confused between 13th and 30th, when it goes to English pronunciation - go figure.&lt;br /&gt;&lt;br /&gt;There has been a lot going on, and it may explain why my blog has been so quiet lately. Here are some fun facts and though about Web square (a.k.a 2.0):&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Thanks to a spammer, I came across an &lt;a href="http://ws-rx.blogspot.com/2007/05/latest-oc4j-released.html"&gt;old post&lt;/a&gt; of mine where I was happy to see my ranking in the oc4j WS forum so high. Since, I have been moving to other area of development, and only reply to forum post using feedly reader, when I kind of see obvious error I can help with. I used to have a gold medal - now I am a newbie again. Did I lost my mojo?  &lt;/li&gt;&lt;li&gt;My new center of interest goes around ADF nowadays, and there is a new blog to add to your list - &lt;a href="http://adfgarage.blogspot.com/"&gt;ADF Garage&lt;/a&gt;.&lt;/li&gt;&lt;/ul&gt;On the fun part, I am wondering if it would make sense to put multiple mobile version of web sites, side by side in a single page, instead of using the full blown version, even when you are on a wide-screen computer, attached to a fast network.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_HveDAwtrmoQ/SutjOKhpFPI/AAAAAAAAAV0/VB19p2vXp8A/s1600-h/feedly-karma-stat.jpg"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 291px; height: 400px;" src="http://3.bp.blogspot.com/_HveDAwtrmoQ/SutjOKhpFPI/AAAAAAAAAV0/VB19p2vXp8A/s400/feedly-karma-stat.jpg" alt="" id="BLOGGER_PHOTO_ID_5398517673328448754" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Try &lt;a href="http://m.facebook.com/home.php"&gt;facebook&lt;/a&gt; and &lt;a href="http://m.twitter.com/edwk"&gt;twitter&lt;/a&gt; mobile editions, side by side as google gadgets or with the eXo portal - Tug, are you reading this?&lt;/li&gt;&lt;li&gt;I love the karma feature in &lt;a href="http://feedly.com/"&gt;feedly&lt;/a&gt; - it give you some interesting inside on what others do with your tweets. I need to figure out a way to get google reader setup for source inside the firewall...&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Typo are very easy with mobile device, and the use of # with the wrong keyword make it all goes to the drain - search #oow2009 vs. #oow09 :-) / We need auto correct on the fly to supplement our slow brains or chubby fingers...&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;And my next fun project is to write a tool to cleanup some large XML files; a small jazn-data.xml file, with about ~13k lines. I need a nice UI to search for grants for given resource path or by role. For the job, I'll pick JDeveloper 11g and his companion book : &lt;a href="http://www.packtpub.com/processing-xml-documents-with-oracle-jdeveloper-11g/book"&gt;&lt;span style="font-style: italic; font-weight: bold;"&gt;Processing XML documents with Oracle JDeveloper 11g&lt;/span&gt;&lt;/a&gt;. I'll report back once I have it all figured out, in a couple of nights ;-)&lt;br /&gt;&lt;br /&gt;Until then, Happy Halloween everyone.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-5936436447886567566?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/5936436447886567566/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=5936436447886567566' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/5936436447886567566'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/5936436447886567566'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2009/10/friday-30th-halloween-is-just-around.html' title='Friday the 30th, Halloween is just around the corner'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_HveDAwtrmoQ/SutjOKhpFPI/AAAAAAAAAV0/VB19p2vXp8A/s72-c/feedly-karma-stat.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-7773883471791060104</id><published>2009-04-02T16:02:00.000-07:00</published><updated>2009-04-02T16:13:43.775-07:00</updated><title type='text'>Should I write code before I can test it?</title><content type='html'>Maybe this would be better as a question on twitter, as I may not get to many comment here on my web 1.5 journal.&lt;br /&gt;&lt;br /&gt;Is it OK to write code I cannot test and assumes that by the time I am done writing the features I have in mind, the environment to test it would be available, or should I start setting up the environment first, and get the hello world application up and running with the monitoring and clean log files, so that I can then go ahead with small incremental cycles which are all providing features I can test as I go?&lt;br /&gt;&lt;br /&gt;On another topic, when can you consider that a forum or forum category is to be considered dead?&lt;br /&gt;a) 0 post in a day&lt;br /&gt;b) 0 post in a week ?&lt;br /&gt;c) 0 post in a month?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-7773883471791060104?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/7773883471791060104/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=7773883471791060104' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/7773883471791060104'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/7773883471791060104'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2009/04/should-i-write-code-before-i-can-test.html' title='Should I write code before I can test it?'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-4185172650025808270</id><published>2009-04-01T13:05:00.000-07:00</published><updated>2009-04-01T13:07:46.625-07:00</updated><title type='text'>iFool</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_HveDAwtrmoQ/SdPJOcgW4EI/AAAAAAAAAUw/glkCidrwG3U/s1600-h/HappyBirthDay.jpg"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 400px; height: 280px;" src="http://1.bp.blogspot.com/_HveDAwtrmoQ/SdPJOcgW4EI/AAAAAAAAAUw/glkCidrwG3U/s400/HappyBirthDay.jpg" alt="" id="BLOGGER_PHOTO_ID_5319816834861948994" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;No comment, I have been looking forward to my new toys for days now, and the news is out on April first ...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-4185172650025808270?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/4185172650025808270/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=4185172650025808270' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/4185172650025808270'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/4185172650025808270'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2009/04/no-comment-i-have-been-looking-forward.html' title='iFool'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_HveDAwtrmoQ/SdPJOcgW4EI/AAAAAAAAAUw/glkCidrwG3U/s72-c/HappyBirthDay.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-4382604687148714380</id><published>2008-12-07T18:40:00.000-08:00</published><updated>2008-12-07T18:41:58.822-08:00</updated><title type='text'>Thinking to light the fireplace tonight ?</title><content type='html'>Check this first:&lt;br /&gt;&lt;br /&gt;&lt;script src="http://nmp.newsgator.com/ngbuzz/buzz.ashx?buzzId=146282&amp;amp;apiToken=C8A8F8F5025D418F8AACB0A7FB2A799A&amp;amp;trkP=ba78aee8-4101-436a-b8f7-838f3a285f06&amp;amp;trkM=EB1924BA-1697-5269-1B6F-1472D5A28FA8&amp;amp;trkC=B2CC6E18-C6C2-C5BD-25AC-1472D5A2AD59" type="text/javascript"&gt;&lt;/script&gt;&lt;img style="visibility:hidden;width:0px;height:0px;" border="0" width="0" height="0" src="http://counters.gigya.com/wildfire/IMP/CXNID=2000002.0NXC/bT*xJmx*PTEyMjg3MDM3MTcxNTkmcHQ9MTIyODcwMzczNDQ5MiZwPTI2NTAzMSZkPTE*NjI4MiZnPTImdD*mbz1kOGUwOWI2YThjYzI*Y2JiOWE*NTA*ZTZkNGY3Mjk1Yw==.gif" /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-4382604687148714380?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/4382604687148714380/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=4382604687148714380' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/4382604687148714380'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/4382604687148714380'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2008/12/thinking-to-light-fireplace-tonight.html' title='Thinking to light the fireplace tonight ?'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-2393747769542126079</id><published>2008-11-04T13:32:00.000-08:00</published><updated>2008-11-04T13:45:26.250-08:00</updated><title type='text'>JDeveloper 11g on Mac OS-X</title><content type='html'>Today, I have been stuck at home, and it was a good opportunity for me to upgrade my current 10g release of JDeveloper to the latest and greatest, on my iMac.&lt;br /&gt;So far so good, but remember the basics: read the releases notes, and Google for someone else, with past experience on your issue at hand.&lt;br /&gt;1) setup JDK 1.6 / for me it was already part of the 'OS', just needed to change the default JDK - Applications &gt; Utils &gt; Java &gt; Admin Java, DRAG the 1.6 Version at the top in the list&lt;br /&gt;2) tweak JDK so that the JDev installer does find home as a valid one - It's &lt;a href="http://www.oracle.com/technology/products/jdev/htdocs/11/knownissues.html#install4"&gt;all documented in the readme&lt;/a&gt; (watch for the missing /).&lt;br /&gt;3) Next, you can &lt;a href="http://forums.oracle.com/forums/thread.jspa?messageID=2803036"&gt;setup your own .app file&lt;/a&gt; to have a nice icon to start from (there is more than just an icon if you are really looking into it).&lt;br /&gt;&lt;br /&gt;Now, that I have my first "Hello Eric" service up on WLS, I can start to look at the next steps: setup SVN and get going with the new discovery process.&lt;br /&gt;&lt;br /&gt;By the time I am done here, America will have a new president. Let's hope they get the upgrade too.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-2393747769542126079?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/2393747769542126079/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=2393747769542126079' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/2393747769542126079'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/2393747769542126079'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2008/11/jdeveloper-11g-on-mac-os-x.html' title='JDeveloper 11g on Mac OS-X'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-5673718023836723886</id><published>2008-10-20T11:26:00.000-07:00</published><updated>2008-10-20T11:43:44.938-07:00</updated><title type='text'>Random notes</title><content type='html'>For some time, I have been away from my blog, and sent most of my spare time on facebook, trying to figure out why I should use it. did not find the answer yet ... but I am sure there is some. otherwise, why would everyone been their, and acept my request to connect with them in the first place?&lt;br /&gt;&lt;br /&gt;I have a &lt;a href="http://xkcd.com/456/"&gt;new comic strip&lt;/a&gt; to share with you: &lt;a href="http://imgs.xkcd.com/comics/cautionary.png"&gt;http://imgs.xkcd.com/comics/cautionary.png&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;If you are still in WS-Land, you may find useful information from Gerard &lt;a href="http://kingsfleet.blogspot.com"&gt;on his blog&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Until next time.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-5673718023836723886?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/5673718023836723886/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=5673718023836723886' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/5673718023836723886'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/5673718023836723886'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2008/10/random-notes.html' title='Random notes'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-3503494527807710372</id><published>2008-08-21T12:46:00.000-07:00</published><updated>2008-08-21T14:24:51.860-07:00</updated><title type='text'>Gary Vaynerchuk on National TV</title><content type='html'>If you are into wine, you may like this wen site: &lt;a href="http://tv.winelibrary.com/"&gt;http://tv.winelibrary.com/&lt;/a&gt;. Gary Vaynerchuk is fun to watch, on his TV show.&lt;br /&gt;I am now waiting for &lt;a href="http://www.seesmic.com/loiclemeur"&gt;Loic Le Meur&lt;/a&gt; to have his version of wine testing on &lt;a href="http://www.seesmic.com/"&gt;Seemic&lt;/a&gt;, so that &lt;span class="sourceAuthors"&gt;&lt;a href="http://scobleizer.com/2008/08/20/monetization/"&gt;Robert Scoble&lt;/a&gt; knows what to buy, next time he looks for a good bottle.&lt;br /&gt;But, why do we need to through Facebook or FriendConnect in the mix?&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-3503494527807710372?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/3503494527807710372/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=3503494527807710372' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/3503494527807710372'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/3503494527807710372'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2008/08/gary-vaynerchuk-on-national-tv.html' title='Gary Vaynerchuk on National TV'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-3490836091643896574</id><published>2008-06-03T14:47:00.000-07:00</published><updated>2008-06-03T15:08:09.142-07:00</updated><title type='text'>Random link</title><content type='html'>As father day is coming around the  conner, here is some could stuff I'll love to have:&lt;br /&gt;the virtual goggles: &lt;a href="http://www.psfk.com/2008/06/virtual-googles-for-your-future-robotic-assistant.html"&gt;http://www.psfk.com/2008/06/virtual-googles-for-your-future-robotic-assistant.html&lt;/a&gt;&lt;br /&gt;the BAD Mini Club: &lt;a href="http://jalopnik.com/390392/a-bad-bad-mini-clubman-for-a-good-cause"&gt;http://jalopnik.com/390392/a-bad-bad-mini-clubman-for-a-good-cause&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-3490836091643896574?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/3490836091643896574/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=3490836091643896574' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/3490836091643896574'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/3490836091643896574'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2008/06/random-link.html' title='Random link'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-3889566102214306623</id><published>2008-05-30T10:49:00.000-07:00</published><updated>2008-05-30T10:58:33.753-07:00</updated><title type='text'>Hard to guess error, which may not be obvious at first</title><content type='html'>As you are getting up to speed with the command line option you get with the Oracle Web Service stack, you may ran into the following error message (hopefully, you will be able to google this post) : "&lt;span style="font-style: italic;"&gt;method &lt;/span&gt;&lt;span style="font-style: italic;"&gt;java.util.Collections.emptyList&lt;/span&gt;&lt;span style="font-style: italic;"&gt; with signature ()Ljava.util.List; was not found.&lt;/span&gt;"&lt;br /&gt;&lt;br /&gt;As the string is directly coming back from the &lt;span style="font-style: italic;"&gt;java.lang.NoSuchMethodError&lt;/span&gt;&lt;b&gt; &lt;/b&gt;exception, there is little to be done about it, other that checking that you have pre-requist before to get started. A better error message would have been "&lt;span style="font-style: italic;"&gt;JAVA 5 or higher required&lt;/span&gt;".&lt;br /&gt;&lt;br /&gt;If you ran into this issue, the simplest test to perform is to check the version of the JDK you are getting in your environment (&lt;span style="font-style: italic;"&gt;$ java -version will do it&lt;/span&gt;).&lt;br /&gt;&lt;br /&gt;I guess it's why I am using the ant task instead of the command line option, those days...&lt;br /&gt;&lt;br /&gt;Hope it save some of you some time some day.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-3889566102214306623?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/3889566102214306623/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=3889566102214306623' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/3889566102214306623'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/3889566102214306623'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2008/05/hard-to-guess-error-which-may-not-be.html' title='Hard to guess error, which may not be obvious at first'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-7859480941618462719</id><published>2008-04-14T12:37:00.000-07:00</published><updated>2008-04-14T16:02:16.317-07:00</updated><title type='text'>HTTP Analyzer :: Cru 2008</title><content type='html'>As I am spending more and more time with BPEL and more complex deployment layout, trapping the SOAP messages going across multiple nodes was becoming harder, until I got introduced to one of the new features from JDeveloper. With the 11g TP3, available from OTN (&lt;a href="http://forums.oracle.com/forums/ann.jspa?annID=669"&gt;see announcement&lt;/a&gt;), there is a new feature that makes working with the HTTP Analyzer tool even better; the &lt;span style="font-weight: bold; font-style: italic;"&gt;Rules and Filters&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;You can define rules and associate with your HTTP listner. &lt;a href="http://ws-rx.blogspot.com/2006/07/finding-messages-with-http-analyzer.html"&gt;Back in 2006&lt;/a&gt;, I was explaining how to navigate from message to message with the blue arrows. With this release, you have a new TAB - named correlation - that groups message by logical unit; the grouping is done with the WS-Addressing MessageID (see Figure 1).&lt;br /&gt;Let starts by getting the setup right. For that, you will need to do the following (the exact step may varied, based on you specific configuration setup):&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Find the IP address (or hostname)  of the system where you run JDeveloper, and make sure that this system can be access from the location where your BPEL server runs -  130.35.74.160 in our current scenario. You will also need to find the port number assigned to the HTTP Analyzer instance you run - 8099 in our scenario.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Find out if you have already some proxy setting setup on your SOA installation. If you don't have any, then you will just need to had a new entry, but if you have already some default setup, it's important to find it, so that you can overwrite the existing setup - in our current scenario, I have a script, $HOME/soa/bin/soaenv, which define a system property.&lt;br /&gt;old: JAVA_PROXY="-Dhttp.proxySet=true -Dhttp.proxyHost=proxy.rajkovic.org -Dhttp.proxyPort=80 -Dhttp.nonProxyHosts=happy|happy.rajkovic.org|localhost|127.0.0.1|*rajkovic.org"&lt;br /&gt;new: JAVA_PROXY="-Dhttp.proxySet=true -Dhttp.proxyHost=130.35.74.160 -Dhttp.proxyPort=8099"&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Start HTTP Analyzer first - click on the green arrow.&lt;/li&gt;&lt;li&gt;Start the remote process for your SOA server instance - $HOME/soa/bin/startsoa in our scenario.&lt;/li&gt;&lt;/ol&gt;Once this is done, it's business as usual. In my case, I use SOAP UI to invoke my composite, but you have many other options available, including HTTP Analyzer and the 'send request' feature.&lt;br /&gt;&lt;br /&gt;During setup, there are a few mistakes to avoid, to get this working right the first time :&lt;br /&gt;&lt;ol&gt;&lt;li&gt;If you remove all the entries from the exclude list (-Dhttp.nonProxyHosts option), you need to start your HTTP Analyzer process before you start the server. The ping perform during startup will fails unless you are already listening to request on 130.35.74.160:8099. You can see the ping request as entry #1 in the Sequence pane (Figure 2).&lt;br /&gt;&lt;/li&gt;&lt;li&gt;If you are using localhost within BPEL, you need to setup rules to forward request back to the original service endpoints, as illustrated with the Rules Configuration (Figure 3). Without this rule setup, the HTTP Analyzer process does not know how to route request to 'http://localhost:8880' - This is what happened to me with entry #11 in the Sequence pane (Figure 2).&lt;/li&gt;&lt;li&gt;If you don't want to have all the requests going through your HTTP listener, you can change the way you deploy your process, and use either the IP address or the hostname in your BPEL process, instead of localhost, and handle the exclude list appropriately. I have found that using the IP address is a simple way to filter those request, as all your 'normal' request will continue to use the fully qualified name of the server. This is illustrated with the 3 groups of messages in Figure 1, where we used  IP@ (#2-#5), fully qualified hostname (#7-#10), and localhost (#12-#15) in turns.&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;&lt;div style="text-align: left;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_HveDAwtrmoQ/SAO044yBhiI/AAAAAAAAANg/uNev_RwaJpg/s1600-h/http-analyzer-correlation.jpg"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://2.bp.blogspot.com/_HveDAwtrmoQ/SAO044yBhiI/AAAAAAAAANg/uNev_RwaJpg/s400/http-analyzer-correlation.jpg" alt="HTTP Analyzer :: Correlation Pane" id="BLOGGER_PHOTO_ID_5189190085068817954" border="0" /&gt;Figure 1 :: Correlation Pane&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;If you don't see any message, at first, make sure you toggle back to the 'Sequence' pane; you will not get message correlated with each other, unless you have the magic correlation ID in those messages, and you get successful MEP (code 200 or 202).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_HveDAwtrmoQ/SAO0r4yBhhI/AAAAAAAAANY/YwMIjw6Aypc/s1600-h/http-analyzer-sequence.jpg"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://2.bp.blogspot.com/_HveDAwtrmoQ/SAO0r4yBhhI/AAAAAAAAANY/YwMIjw6Aypc/s400/http-analyzer-sequence.jpg" alt="HTTP Analyzer :: Sequence Pane" id="BLOGGER_PHOTO_ID_5189189861730518546" border="0" /&gt;Figure 2 :: Sequence Pane&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Setting up the rules to forward requests targeted at localhost back to the reel location is a very neat feature, as it does not requires to make any change on the remote applications.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_HveDAwtrmoQ/SAO1YIyBhjI/AAAAAAAAANo/sPV6RxKNWMA/s1600-h/http-analyzer-rule-settings.jpg"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://3.bp.blogspot.com/_HveDAwtrmoQ/SAO1YIyBhjI/AAAAAAAAANo/sPV6RxKNWMA/s400/http-analyzer-rule-settings.jpg" alt="HTTP Analyzer :: Rules Configuration" id="BLOGGER_PHOTO_ID_5189190621939729970" border="0" /&gt;Figure 3 :: Rules Configuration&lt;/a&gt;&lt;br /&gt;Here is a very simple rule, that works with a single service endpoint. As you get more and more endpoint going through your HTTP Analyzer, remember that you can setup more than one listener, with different port numbers and different sets of rules.&lt;br /&gt;&lt;br /&gt;To make this google friendly, here are the error message seen on the &lt;span style="font-style: italic;"&gt;first time&lt;/span&gt; errors I encounter. Hope this solve you some grief too.&lt;br /&gt;&lt;br /&gt;SOA startup, waiting for ping to succeed:&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;&lt;/span&gt;&lt;blockquote&gt;&lt;span style="font-family: times new roman;"&gt;08/04/14 09:49:01 Oracle Containers for J2EE 11g (11.1.1.0.0)  initialized.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;08/04/14 09:49:49 -------&gt; CompositeDeployerTimer triggered&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;08/04/14 09:49:49 -------&gt; CompositeDeployerTimer trying http connection to http://happy.rajkovic.org:8880&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;08/04/14 09:49:49 -------&gt; CompositeDeployerTimer ping failed.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;08/04/14 09:49:49 -------&gt; CompositeDeployerTimer: Server not ready. Will retry in 30 seconds.&lt;/span&gt;&lt;/blockquote&gt;HTTP Analyzer error when trying to reach localhost:8880 (without the rule):&lt;br /&gt;&lt;blockquote style="font-family: times new roman;"&gt;An exception occurred while retrieving the response for http://localhost:8880/SetTransform/SetTransformService.&lt;br /&gt;java.net.ConnectException: Connection refused: connect&lt;br /&gt;...&lt;br /&gt;&lt;/blockquote&gt;And finally, remember that you can save those  messages captured into a file, using the WS-I.org file format. It's a great way to exchange those SOAP M.E.P. around, with your  co-workers or in house WS-Residents. &lt;br /&gt;&lt;br /&gt;With this, have fun in today's world of SOA.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-7859480941618462719?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/7859480941618462719/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=7859480941618462719' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/7859480941618462719'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/7859480941618462719'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2008/04/http-analyzer-cru-2008.html' title='HTTP Analyzer :: &lt;i&gt;Cru 2008&lt;/i&gt;'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_HveDAwtrmoQ/SAO044yBhiI/AAAAAAAAANg/uNev_RwaJpg/s72-c/http-analyzer-correlation.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-2246283378480602978</id><published>2008-03-07T10:56:00.000-08:00</published><updated>2008-03-07T11:04:07.853-08:00</updated><title type='text'>T.G.I.F.</title><content type='html'>Happy Hour or special Boost - see &lt;a href="http://www.aldenteblog.com/2008/03/happy-hour-drin.html"&gt;http://www.aldenteblog.com/2008/03/happy-hour-drin.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;And for Monday, we will be back to the healthy version...&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_HveDAwtrmoQ/R9GROsknNeI/AAAAAAAAAM4/gPQGVSVPIoU/s1600-h/101-recettes.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;" src="http://1.bp.blogspot.com/_HveDAwtrmoQ/R9GROsknNeI/AAAAAAAAAM4/gPQGVSVPIoU/s400/101-recettes.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5175077128494331362" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-2246283378480602978?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/2246283378480602978/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=2246283378480602978' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/2246283378480602978'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/2246283378480602978'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2008/03/tgif.html' title='T.G.I.F.'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_HveDAwtrmoQ/R9GROsknNeI/AAAAAAAAAM4/gPQGVSVPIoU/s72-c/101-recettes.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-2656739055253208272</id><published>2008-02-12T17:25:00.000-08:00</published><updated>2008-02-12T17:40:34.996-08:00</updated><title type='text'>Next-Generation Grid Enabled SOA</title><content type='html'>If you have ~one hour to spare in from of your computer, or at the Gym with the podcast version, this &lt;a href="http://www.parleys.com/display/PARLEYS/Next-Generation+Grid+Enabled+SOA?showComments=true"&gt;presentation from Dave Chappell&lt;/a&gt; is worth your time.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_HveDAwtrmoQ/R7JKam-IB9I/AAAAAAAAAMw/MdPvwfCB1jA/s1600-h/bpel-dehydration.jpg"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;" src="http://3.bp.blogspot.com/_HveDAwtrmoQ/R7JKam-IB9I/AAAAAAAAAMw/MdPvwfCB1jA/s400/bpel-dehydration.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5166273543545554898" /&gt;&lt;/a&gt;&lt;br /&gt;I love the introduction of &lt;span style="font-style:italic;"&gt;BPEL Dehydration Example&lt;/span&gt; which starts with a sip of water ;-)&lt;br /&gt;&lt;br /&gt;Getting back to the big picture, when you are down to the rubber, trying to make versioning works with Web Services is not a bad idea.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-2656739055253208272?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/2656739055253208272/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=2656739055253208272' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/2656739055253208272'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/2656739055253208272'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2008/02/next-generation-grid-enabled-soa.html' title='Next-Generation Grid Enabled SOA'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_HveDAwtrmoQ/R7JKam-IB9I/AAAAAAAAAMw/MdPvwfCB1jA/s72-c/bpel-dehydration.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-6409496502144622980</id><published>2008-02-05T10:24:00.000-08:00</published><updated>2008-02-05T10:36:09.726-08:00</updated><title type='text'>Before, there was Web 1.0 - Kudo to this app developer</title><content type='html'>You don't need to with Web 2.0 to build a Web Application that is usable and fast. Remember how Google was (and still his on the search part).&lt;br /&gt;&lt;a href="http://picasaweb.google.com/eric.rajkovic/RandomPics/photo#5163566425478801938"&gt;&lt;img src="http://lh3.google.com/eric.rajkovic/R6isTmTMKhI/AAAAAAAAAMo/j4UzO1MyIaY/s288/peek-screen-shoot.jpg" /&gt;&lt;/a&gt;&lt;br /&gt;If you are using the Oracle Middle Ware, I'll recommend the peek console, for the Oscar nomination - http://localhost:8988/peek with the latest Tech Preview III.&lt;br /&gt;Special Kudos for the developer-architect-QA guys (maybe they are the same after all).&lt;br /&gt;&lt;table style="width:auto;"&gt;&lt;tr&gt;&lt;td&gt;&lt;a href="http://picasaweb.google.com/eric.rajkovic/RandomPics/photo#5163563165598624242"&gt;&lt;img src="http://lh4.google.com/eric.rajkovic/R6ipV2TMKfI/AAAAAAAAAMc/2Vpr1U3-kw4/s800/peek-hw.png" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="font-family:arial,sans-serif; font-size:11px; text-align:right"&gt;From &lt;a href="http://picasaweb.google.com/eric.rajkovic/RandomPics"&gt;Random pics&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;br /&gt;My Youtube watch for today: &lt;a href="http://www.youtube.com/watch?v=Y78r-sSVbwI"&gt;Chem-Culture&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-6409496502144622980?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/6409496502144622980/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=6409496502144622980' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/6409496502144622980'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/6409496502144622980'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2008/02/before-there-was-web-10-kudo-to-this.html' title='Before, there was Web 1.0 - Kudo to this app developer'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-6505627430245221056</id><published>2008-01-25T15:45:00.000-08:00</published><updated>2008-01-25T15:58:47.929-08:00</updated><title type='text'>setEndpoint('endpoint') on JAX-WS</title><content type='html'>I have been so used to the simple way to overwrite the URL endpoint you get from the WSDL location with the Oracle's JAX-RPC client proxy, that I have to remember it's that easy on JAX-WS based proxy:&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;br /&gt;URL endpointUrl; &lt;br /&gt;&lt;br /&gt;((BindingProvider)port).getRequestContext().put(BindingProvider.ENDPOINT_ADDRESS_PROPERTY,&lt;br /&gt;endpointUrl.toExternalForm());&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;Some reading and video to watch, while your are waiting for your commit,merge, or other integration task to complete: &lt;a href="http://codicesoftware.blogspot.com/2007/05/linus-torvalds-on-git-and-scm.html"&gt;Linus Torvalds on GIT and SCM&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;My recent YouTube watch:&lt;br /&gt;Head tracking: &lt;a href="http://www.youtube.com/watch?v=Jd3-eiid-Uw"&gt;http://www.youtube.com/watch?v=Jd3-eiid-Uw&lt;/a&gt;&lt;br /&gt;Décompte des manifestants: &lt;a href="http://www.youtube.com/watch?v=zFYGxSfVoyU"&gt;http://www.youtube.com/watch?v=zFYGxSfVoyU&lt;/a&gt;&lt;br /&gt;Blue-ray: &lt;a href="http://www.youtube.com/watch?v=eiI-z87Hmlk"&gt;http://www.youtube.com/watch?v=eiI-z87Hmlk&lt;/a&gt; &lt;a href="http://www.youtube.com/watch?v=friS4OOcdgQ"&gt;http://www.youtube.com/watch?v=friS4OOcdgQ&lt;/a&gt;&lt;br /&gt;Mergers: &lt;a href="http://www.youtube.com/watch?v=cOlznuyPOeM"&gt;http://www.youtube.com/watch?v=cOlznuyPOeM&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-6505627430245221056?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/6505627430245221056/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=6505627430245221056' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/6505627430245221056'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/6505627430245221056'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2008/01/setendpointendpoint-on-jax-ws.html' title='setEndpoint(&apos;endpoint&apos;) on JAX-WS'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-1371508019571935622</id><published>2007-12-07T17:27:00.001-08:00</published><updated>2007-12-07T17:43:22.457-08:00</updated><title type='text'>JAX-RPC or JAX-WS ?</title><content type='html'>With the latest technology preview of JDeveloper, you have to choose between two flavors. Kind of like Strawberry vs. Vanilla. Which one should I pick. After all it's a question of taste.&lt;br /&gt;Personally, I pick JAX-RPC for the following reasons:&lt;br /&gt;- It's more stable as it was already part of 10.1.3 release.&lt;br /&gt;- There is a nice helper to set endpoint address (and other little things).&lt;br /&gt;- It does not query for the WSDL every time you instantiate a new object, which is mainly adding HTTP requests I do not want to see in the HTTP Analyzer window.&lt;br /&gt;- Most of the time, I can work around schema issues with the no-data-binding options. You just need to learn how to leverage this class: oracle.webservices.SOAPUtil and the 'toSOAPElement()' method. &lt;br /&gt;&lt;br /&gt;If you are looking into new features, like addressing, ws-rm or any policy-based feature, you should look at JAX-WS. It's the future.&lt;br /&gt;&lt;br /&gt;For those who are missing setEndpoint(), the equivalent in JAX-WS will look like this:&lt;br /&gt;URL endpointUrl;&lt;br /&gt;... &lt;br /&gt;((BindingProvider)port).getRequestContext().put(BindingProvider.ENDPOINT_ADDRESS_PROPERTY,&lt;br /&gt;endpointUrl.toExternalForm());&lt;br /&gt;&lt;br /&gt;It's hard to teach an old dog new tricks...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-1371508019571935622?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/1371508019571935622/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=1371508019571935622' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/1371508019571935622'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/1371508019571935622'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2007/12/jax-rpc-or-jax-ws.html' title='JAX-RPC or JAX-WS ?'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-3794628158531746408</id><published>2007-12-06T12:45:00.000-08:00</published><updated>2007-12-06T13:05:29.473-08:00</updated><title type='text'>Is bigger really better ?</title><content type='html'>Do you need dual screen or a bigger screen?&lt;br /&gt;&lt;br /&gt;For a long time, I have been thinking that having dual screen setup was more productive than having a single screen, then I start to look at some other developers having a single large 24" screen with many xterm.&lt;br /&gt;&lt;br /&gt;I am getting tired to see pop-up showing up in the middle of the virtual screen that is the result of two screens.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_HveDAwtrmoQ/R1hiELbtpiI/AAAAAAAAAKk/gE8i7teFMAw/s1600-h/PIC-0068.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://4.bp.blogspot.com/_HveDAwtrmoQ/R1hiELbtpiI/AAAAAAAAAKk/gE8i7teFMAw/s400/PIC-0068.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5140966798571447842" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I know, the correct answer is to have 3 screens. Then, the small pop-up will be centered in the middle of the virtual space as well as the physical display.&lt;br /&gt;&lt;br /&gt;Soon, I'm hoping to get a new 24" iMac for my home operations. Yes, I still believe in Santa...&lt;br /&gt;&lt;br /&gt;My YouTube pick for today (in memory of WebVan):&lt;br /&gt; &lt;a href="http://fr.youtube.com/watch?v=5TYobcseYfE"&gt;http://fr.youtube.com/watch?v=5TYobcseYfE&lt;/a&gt;&lt;br /&gt; &lt;a href="http://fr.youtube.com/watch?v=fi4fzvQ6I-o"&gt;http://fr.youtube.com/watch?v=fi4fzvQ6I-o&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Until next time...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-3794628158531746408?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/3794628158531746408/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=3794628158531746408' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/3794628158531746408'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/3794628158531746408'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2007/12/is-bigger-really-better.html' title='Is bigger really better ?'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_HveDAwtrmoQ/R1hiELbtpiI/AAAAAAAAAKk/gE8i7teFMAw/s72-c/PIC-0068.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-8642230762080647995</id><published>2007-12-05T09:00:00.000-08:00</published><updated>2007-12-05T09:14:31.537-08:00</updated><title type='text'>Bye bye Vista - Welcome Linux</title><content type='html'>I have been busy recently, and this is how it translate on my blog. Not much was happening there... I use to post about Web Services, and Vista until that day, where I got a system upgrade.&lt;br /&gt;It all started nicely with a nice screen and a simple prompt.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_HveDAwtrmoQ/R1bZ7LbtpdI/AAAAAAAAAJ8/_RPyDhKcuJ8/s1600-h/PIC-0011.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_HveDAwtrmoQ/R1bZ7LbtpdI/AAAAAAAAAJ8/_RPyDhKcuJ8/s400/PIC-0011.jpg" alt="" id="BLOGGER_PHOTO_ID_5140535635394536914" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;The only problem was that it took me to much time before to get to that screen. (I even had the time to turn on the camera on my "Mobile5" device to take the two shoots.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_HveDAwtrmoQ/R1bavbbtpeI/AAAAAAAAAKE/Eq4iPEm3AA8/s1600-h/PIC-0012.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://3.bp.blogspot.com/_HveDAwtrmoQ/R1bavbbtpeI/AAAAAAAAAKE/Eq4iPEm3AA8/s400/PIC-0012.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5140536533042701794" /&gt;&lt;/a&gt;&lt;br /&gt;That was it. Bye bye vista / Welcome to Entreprise Linux 5.&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_HveDAwtrmoQ/R1bbK7btpfI/AAAAAAAAAKM/ljcGOJTpsHs/s1600-h/PIC-0020.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://1.bp.blogspot.com/_HveDAwtrmoQ/R1bbK7btpfI/AAAAAAAAAKM/ljcGOJTpsHs/s400/PIC-0020.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5140537005489104370" /&gt;&lt;/a&gt;&lt;br /&gt;Maybe, it was made to happen, when I picked this background for my laptop.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_HveDAwtrmoQ/R1bbj7btpgI/AAAAAAAAAKU/i-5D3Ioucvo/s1600-h/PIC-0021.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://1.bp.blogspot.com/_HveDAwtrmoQ/R1bbj7btpgI/AAAAAAAAAKU/i-5D3Ioucvo/s400/PIC-0021.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5140537434985833986" /&gt;&lt;/a&gt;&lt;br /&gt;To be fair, I have to said that I got my first 'screen of death' on my iMac during the same periode of time...&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_HveDAwtrmoQ/R1bb6rbtphI/AAAAAAAAAKc/YCkZtPGGO2g/s1600-h/PIC-0072.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://4.bp.blogspot.com/_HveDAwtrmoQ/R1bb6rbtphI/AAAAAAAAAKc/YCkZtPGGO2g/s400/PIC-0072.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5140537825827857938" /&gt;&lt;/a&gt; &lt;br /&gt;With all that, I wish you a good day. &lt;br /&gt;Next time, I may be back with useful stuff.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-8642230762080647995?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/8642230762080647995/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=8642230762080647995' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/8642230762080647995'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/8642230762080647995'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2007/12/bye-bye-vista-welcome-linux.html' title='Bye bye Vista - Welcome Linux'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_HveDAwtrmoQ/R1bZ7LbtpdI/AAAAAAAAAJ8/_RPyDhKcuJ8/s72-c/PIC-0011.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-4493538816705147574</id><published>2007-10-16T17:28:00.000-07:00</published><updated>2007-10-16T17:42:06.187-07:00</updated><title type='text'>Undeploy app from JDeveloper 11g</title><content type='html'>With Technology Preview II, you can now undeploy your J2EE applications from within JDeveloper - no need to get back to the command line or to write ant task to do this.&lt;br /&gt;&lt;ul&gt;&lt;li&gt;From the 'view' menu, select the 'Application Server Navigator'&lt;/li&gt;&lt;li&gt;Navigate to Application Servers -&gt; IDE Connections -&gt; &lt;span style="font-style: italic;"&gt;[AppServerConnection]&lt;/span&gt; -&gt; standalone -&gt; Applications&lt;/li&gt;&lt;li&gt;Select your application node and using the context menu, pick the 'undeploy' command.&lt;/li&gt;&lt;/ul&gt;It's that simple:&lt;br /&gt;&lt;a href="http://www.flickr.com/photos/35045136@N00/1592234075/" title="undeploy command"&gt;&lt;img src="http://farm3.static.flickr.com/2310/1593118914_19b332da9e.jpg" width="272" height="106" alt="undeploy command" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;[AppServerConnection]&lt;/span&gt; has to be replaced with the name of the name you gave to &lt;span style="font-style: italic;"&gt;your&lt;/span&gt; connection.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-4493538816705147574?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/4493538816705147574/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=4493538816705147574' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/4493538816705147574'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/4493538816705147574'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2007/10/undeploy-app-from-jdeveloper-11g.html' title='Undeploy app from JDeveloper 11g'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://farm3.static.flickr.com/2310/1593118914_19b332da9e_t.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-7267415970308188568</id><published>2007-10-10T13:45:00.000-07:00</published><updated>2007-10-10T13:50:06.208-07:00</updated><title type='text'>JDeveloper .Next</title><content type='html'>If you are trying to stay on top of the latest technologies in the Java land, you can get your hands on the latest preview version of JDeveloper today:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-style: italic;"&gt;Oracle JDeveloper 11g Technical Preview 2&lt;/span&gt; is available &lt;a href="http://www.oracle.com/technology/software/products/jdev/htdocs/soft11tp.html?msgid=5971552"&gt;here&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;More on this, once I get a chance to install the Mac OS X version.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-7267415970308188568?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/7267415970308188568/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=7267415970308188568' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/7267415970308188568'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/7267415970308188568'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2007/10/jdeveloper-next.html' title='JDeveloper .Next'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-2102534350549615652</id><published>2007-06-21T13:42:00.001-07:00</published><updated>2007-06-21T13:53:06.701-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='web service'/><category scheme='http://www.blogger.com/atom/ns#' term='WSDL'/><title type='text'>Web Services: TopDown vs. BottomUp</title><content type='html'>As I am going through some more web-services related work, I came across two arguments to favor TodDown (or WSDL first) design pattern:&lt;br /&gt;&lt;br /&gt;1) Including the partner link information that BPEL is expecting to find is trivial when you own the WSDL document. Try to get this added at the end of your document, using code first...&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;  &amp;lt;plnk:partnerLinkType name="StepTransform"&lt;br /&gt;                        xmlns:plnk="http://schemas.xmlsoap.org/ws/2003/05/partner-link/"&gt;&lt;br /&gt;    &amp;lt;plnk:role name="XmlStepTransformPort"&gt;&lt;br /&gt;      &amp;lt;plnk:portType name="tns:XmlStepTransformPort"/&gt;&lt;br /&gt;    &amp;lt;/plnk:role&gt;&lt;br /&gt;  &amp;lt;/plnk:partnerLinkType&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;2)Adding wsdl:documentation element within wsdl:portType/wsdl:operation will improve the end-user experience, and should be done always. It's like arguing against the value of javadoc on external APIs....&lt;br /&gt;&lt;br /&gt;Today, the mood is WSDL first: Design, then code.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-2102534350549615652?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/2102534350549615652/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=2102534350549615652' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/2102534350549615652'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/2102534350549615652'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2007/06/web-services-topdown-vs-bottomup.html' title='Web Services: TopDown vs. BottomUp'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-1007676971972138013</id><published>2007-05-24T14:30:00.000-07:00</published><updated>2007-05-24T14:41:09.148-07:00</updated><title type='text'>Consistency and Diagnosability - ζ release</title><content type='html'>This could be another WTF entry, somewhere else...&lt;br /&gt;&lt;br /&gt;A small sample from a log file,as I was trying to search for some potential explanation - No, I didn't made it up or remove a single line in between.&lt;a href="javascript:void(0)" onclick="return false;" tabindex="7"&gt;&lt;span&gt;&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(0, 0, 102);"&gt;07/05/24 14:25:52 &lt;/span&gt;------&gt; creating monitor&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(192, 192, 192);"&gt;2007-05-24 14:25:52.203&lt;/span&gt; ERROR WSM-xxxx Unable to find audit event definitions.&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(204, 0, 0);"&gt;May 24, 2007 2:25:52 PM&lt;/span&gt; xxxx.xxxxx.audit.spi.AuditProvider init&lt;br /&gt;&lt;br /&gt;just using some xxxxx so that google does not index this blog entry, and you end-up here while trying to find some help on the net.&lt;br /&gt;&lt;br /&gt;It may be time to rethink the Greek alphabet and start using the letter zeta (&amp;zeta;)...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-1007676971972138013?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/1007676971972138013/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=1007676971972138013' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/1007676971972138013'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/1007676971972138013'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2007/05/consistency-and-diagnosability-release.html' title='Consistency and Diagnosability - &amp;zeta; release'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-8369051568153249149</id><published>2007-05-22T11:10:00.000-07:00</published><updated>2007-05-22T11:34:36.819-07:00</updated><title type='text'>Internal Server Error (unexpected null value for literal data)</title><content type='html'>Here is a slightly different version of an error, that took me more than a blink off an eye to recognize.&lt;br /&gt;&lt;br /&gt;Unlike in &lt;a href="http://ws-rx.blogspot.com/2006/04/unexpected-null-value-for-literal-data.html"&gt;my previous post&lt;/a&gt;, the error is coming from the server, wrapped in a soap:fault.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:times new roman;"&gt;&lt;/span&gt;&lt;span style="font-family:times new roman;"&gt;   &amp;lt;env:Body&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:times new roman;"&gt;      &lt;/span&gt;&lt;span style="font-family:times new roman;"&gt; &lt;/span&gt;&lt;span style="font-family:times new roman;"&gt;      &lt;/span&gt;&lt;span style="font-family:times new roman;"&gt; &lt;/span&gt;&lt;span style="font-family:times new roman;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-family:times new roman;"&gt;env:Fault&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:times new roman;"&gt;         &lt;/span&gt;&lt;span style="font-family:times new roman;"&gt;      &lt;/span&gt;&lt;span style="font-family:times new roman;"&gt; &lt;/span&gt;&lt;span style="font-family:times new roman;"&gt;      &lt;/span&gt;&lt;span style="font-family:times new roman;"&gt; &lt;/span&gt;&lt;span style="font-family:times new roman;"&gt;      &lt;/span&gt;&lt;span style="font-family:times new roman;"&gt; &lt;/span&gt;&lt;span style="font-family:times new roman;"&gt;      &lt;/span&gt;&lt;span style="font-family:times new roman;"&gt; &lt;/span&gt;&lt;span style="font-family:times new roman;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-family:times new roman;"&gt;faultcode&gt;env:Server&lt;/span&gt;&lt;span style="font-family:times new roman;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-family:times new roman;"&gt;/faultcode&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:times new roman;"&gt;      &lt;/span&gt;&lt;span style="font-family:times new roman;"&gt; &lt;/span&gt;&lt;span style="font-family:times new roman;"&gt;      &lt;/span&gt;&lt;span style="font-family:times new roman;"&gt; &lt;/span&gt;&lt;span style="font-family:times new roman;"&gt;      &lt;/span&gt;&lt;span style="font-family:times new roman;"&gt; &lt;/span&gt;&lt;span style="font-family:times new roman;"&gt;      &lt;/span&gt;&lt;span style="font-family:times new roman;"&gt; &lt;/span&gt;&lt;span style="font-family:times new roman;"&gt;         &lt;/span&gt;&lt;span style="font-family:times new roman;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-family:times new roman;"&gt;faultstring&gt;Internal Server Error (unexpected null value for literal data)&lt;/span&gt;&lt;span style="font-family:times new roman;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-family:times new roman;"&gt;/faultstring&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:times new roman;"&gt;      &lt;/span&gt;&lt;span style="font-family:times new roman;"&gt; &lt;/span&gt;&lt;span style="font-family:times new roman;"&gt;      &lt;/span&gt;&lt;span style="font-family:times new roman;"&gt; &lt;/span&gt;&lt;span style="font-family:times new roman;"&gt;      &lt;/span&gt;&lt;span style="font-family:times new roman;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-family:times new roman;"&gt;/env:Fault&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:times new roman;"&gt;   &lt;/span&gt;&lt;span style="font-family:times new roman;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-family:times new roman;"&gt;/env:Body&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;The root cause is the same -- a serialization error, but this time on the implementation of the service instead of the client proxy. Remember that all the parts of the schema not marked as nullable or optional must have a value. And you have the same options to handle this:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;change your XML Schema, so that it's aligned with your code.&lt;/li&gt;&lt;li&gt;add code in the generated JavaBean, so that you have default value set&lt;/li&gt;&lt;li&gt;remember to always use all the setter when instantiating a new Java object that will be included in the response (this is error prone, so it's why I like #2 better).&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;Using SOAP UI was the quickest way to run and run again, until the server side was fixed - 0 line of code, and the ability to save and replay the same request over and over.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_HveDAwtrmoQ/RlM2sf6CogI/AAAAAAAAAC8/w2bhyj4t5M4/s1600-h/soap-ui-test.png"&gt;&lt;img style="cursor: pointer;" src="http://1.bp.blogspot.com/_HveDAwtrmoQ/RlM2sf6CogI/AAAAAAAAAC8/w2bhyj4t5M4/s400/soap-ui-test.png" alt="" id="BLOGGER_PHOTO_ID_5067454143829025282" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Hope this will save some time, some day, to some of you...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-8369051568153249149?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/8369051568153249149/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=8369051568153249149' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/8369051568153249149'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/8369051568153249149'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2007/05/internal-server-error-unexpected-null.html' title='Internal Server Error (unexpected null value for literal data)'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_HveDAwtrmoQ/RlM2sf6CogI/AAAAAAAAAC8/w2bhyj4t5M4/s72-c/soap-ui-test.png' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-8349407679554078378</id><published>2007-05-17T22:47:00.001-07:00</published><updated>2007-05-17T22:59:39.088-07:00</updated><title type='text'>JDev 11g new feature - webapp.deploy</title><content type='html'>If you are moving from JDeveloper 10g to 11g Technology Preview, as I did in the past days, you may find this handy - it took me a while to figure it out, so it may save you time.&lt;br /&gt;&lt;br /&gt;I used to deploy my Web Services applications directly from the IDE with the context menu on the webapp.deploy node, as in the picture below.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_HveDAwtrmoQ/Rk0-s_6CodI/AAAAAAAAACk/Kv59PP3Fmg0/s1600-h/WebAppDeploy.png"&gt;&lt;img style="cursor:pointer; cursor:hand;" src="http://1.bp.blogspot.com/_HveDAwtrmoQ/Rk0-s_6CodI/AAAAAAAAACk/Kv59PP3Fmg0/s400/WebAppDeploy.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5065774098651718098" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;With 11g, it's a little different. The node is gone; instead you can find the command directly on the project's node.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_HveDAwtrmoQ/Rk0_Ef6CoeI/AAAAAAAAACs/3hn3QekS-Mg/s1600-h/DeployWebServices.png"&gt;&lt;img style="cursor:pointer; cursor:hand;" src="http://3.bp.blogspot.com/_HveDAwtrmoQ/Rk0_Ef6CoeI/AAAAAAAAACs/3hn3QekS-Mg/s400/DeployWebServices.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5065774502378643938" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;And, if you want to make modification to the deployment descriptor, you will find a new entry in the project properties screen, under the deployment category.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_HveDAwtrmoQ/Rk0_tv6CofI/AAAAAAAAAC0/ELHNYV4ttcg/s1600-h/DeploymentConfiguration.png"&gt;&lt;img style="cursor:pointer; cursor:hand;" src="http://4.bp.blogspot.com/_HveDAwtrmoQ/Rk0_tv6CofI/AAAAAAAAAC0/ELHNYV4ttcg/s400/DeploymentConfiguration.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5065775211048247794" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I'll share some more, as there are some nice features. Check the "&lt;a href="http://blogs.oracle.com/duffblog/2007/05/09#a417"&gt;Test Proxy&lt;/a&gt;" feature on Brian's blog.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-8349407679554078378?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/8349407679554078378/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=8349407679554078378' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/8349407679554078378'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/8349407679554078378'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2007/05/jdev-11g-new-feature-webappdeploy.html' title='JDev 11g new feature - webapp.deploy'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_HveDAwtrmoQ/Rk0-s_6CodI/AAAAAAAAACk/Kv59PP3Fmg0/s72-c/WebAppDeploy.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-3024990281168155948</id><published>2007-05-11T15:40:00.000-07:00</published><updated>2007-05-11T15:51:29.159-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='random'/><title type='text'>Who likes F.U.D.G.E ?</title><content type='html'>The new acronym &lt;a href="http://blogs.msdn.com/jevdemon/archive/2007/04/26/yet-another-acronym.aspx"&gt;FUDGE&lt;/a&gt; of the day: Fear, Uncertainty, and Doubt around Governance in the Enterprise. No, &lt;a href="http://images.google.com/images?q=fudge"&gt;it's not a cookie&lt;/a&gt;, but it goes well with S.C.A: Society of &lt;a href="http://www.ewh.ieee.org/r5/central_texas/austin_cs/presentations/2004-09-22.pdf"&gt;Confused Architects&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-3024990281168155948?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/3024990281168155948/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=3024990281168155948' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/3024990281168155948'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/3024990281168155948'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2007/05/who-likes-fudge.html' title='Who likes F.U.D.G.E ?'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-7567570219494283617</id><published>2007-05-10T11:51:00.000-07:00</published><updated>2007-05-10T12:02:42.171-07:00</updated><title type='text'>Who Need Dual Screen?</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_HveDAwtrmoQ/RkNqBCMmb5I/AAAAAAAAACc/ECbF_ng-4i0/s1600-h/DualScreenRocks.PNG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://4.bp.blogspot.com/_HveDAwtrmoQ/RkNqBCMmb5I/AAAAAAAAACc/ECbF_ng-4i0/s400/DualScreenRocks.PNG" border="0" alt=""id="BLOGGER_PHOTO_ID_5063006972096704402" /&gt;&lt;/a&gt;&lt;br /&gt;I do - a picture is worth 100ths words...&lt;br /&gt;&lt;br /&gt;And you only need to hit (right-Shift + Print Screen) to get both screens into your clipboard.&lt;br /&gt;&lt;br /&gt;By the way, you can see the new version of JDeveloper with the WSIL browser and the Test Web Service integration, working on a remote OC4J instance even with 0 project on your local disk - pretty cool. I'll write some more about it once I got it figured out. &lt;br /&gt;Nice Work, Alan and Gerard (sorry if I missed anyone).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-7567570219494283617?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/7567570219494283617/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=7567570219494283617' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/7567570219494283617'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/7567570219494283617'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2007/05/who-need-dual-screen.html' title='Who Need Dual Screen?'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_HveDAwtrmoQ/RkNqBCMmb5I/AAAAAAAAACc/ECbF_ng-4i0/s72-c/DualScreenRocks.PNG' height='72' width='72'/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-8178571573424401563</id><published>2007-05-07T15:28:00.000-07:00</published><updated>2007-05-07T15:51:31.403-07:00</updated><title type='text'>Latest OC4J released</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://forums.oracle.com/forums/forum.jspa?forumID=97"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://1.bp.blogspot.com/_HveDAwtrmoQ/Rj-p5SMmb4I/AAAAAAAAACU/5QCLDQreews/s400/TopUsers.PNG" alt="" id="BLOGGER_PHOTO_ID_5061951307790053250" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;As we are heading to the 2007 &lt;span style="font-style: italic;"&gt;cru&lt;/span&gt; for JavaOne, we are also getting the latest oc4j version available, to start playing with the latest technology available on the J2EE trent: get it from OTN on &lt;a href="http://www.oracle.com/technology/tech/java/oc4j/index.html"&gt;the oc4j homepage&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;This mark another personal achievement : closing up on the number of posts with Mike, on the OTN Web Services forum.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-8178571573424401563?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/8178571573424401563/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=8178571573424401563' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/8178571573424401563'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/8178571573424401563'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2007/05/latest-oc4j-released.html' title='Latest OC4J released'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_HveDAwtrmoQ/Rj-p5SMmb4I/AAAAAAAAACU/5QCLDQreews/s72-c/TopUsers.PNG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-8833700499213405281</id><published>2007-04-16T23:39:00.000-07:00</published><updated>2007-04-16T23:53:01.064-07:00</updated><title type='text'>PHP and JDeveloper - Hand by Hand</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_HveDAwtrmoQ/RiRsFnbJFfI/AAAAAAAAABc/-JBty-ku0KQ/s1600-h/ParsingError.png"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;" src="http://2.bp.blogspot.com/_HveDAwtrmoQ/RiRsFnbJFfI/AAAAAAAAABc/-JBty-ku0KQ/s400/ParsingError.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5054283525554509298" /&gt;&lt;/a&gt;&lt;br /&gt;If you are looking for a simple editor, with the ability to do simple validation of your PHP files, JDeveloper 10.1.3.2 may be an option for you. Look for the PHP extension using the "Check for Updates..." feature in the Help menu.&lt;br /&gt;For long, I have been thinking that scripting was not easy to use, as you have to wait until the execution time to get syntax errors. Now, you can see some of the basic syntax error as you type in.&lt;br /&gt;&lt;br /&gt;Here are some other resources I wanted to share:&lt;br /&gt;- &lt;a href="http://www.oracle.com/technology/pub/articles/deployphp/index.html"&gt;The DeployPHP Series&lt;/a&gt;  &lt;br /&gt;- &lt;a href="http://www.oracle.com/technology/products/jdev/tips/duff/mysql_and_oc4j3.html"&gt;Configuring MySQL DataSources with OC4J and JDeveloper&lt;/a&gt;&lt;br /&gt;- &lt;a href="http://www.oracle.com/technology/products/jdev/howtos/10g/MySql/MySQL_and_BC_HowTo.html"&gt;How To Use ADF Business Components with MySQL&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Web services are getting the back seat on my blog;-)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-8833700499213405281?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/8833700499213405281/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=8833700499213405281' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/8833700499213405281'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/8833700499213405281'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2007/04/php-and-jdeveloper-hand-by-hand.html' title='PHP and JDeveloper - Hand by Hand'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_HveDAwtrmoQ/RiRsFnbJFfI/AAAAAAAAABc/-JBty-ku0KQ/s72-c/ParsingError.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-7233086995542072917</id><published>2007-04-09T16:06:00.000-07:00</published><updated>2007-04-09T16:12:17.153-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='rant iPod'/><title type='text'>iPod auto sink</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_HveDAwtrmoQ/RhrHnV9Wd4I/AAAAAAAAABQ/A_TZPJ_v_l0/s1600-h/iPodSyncCompleted.png"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;" src="http://4.bp.blogspot.com/_HveDAwtrmoQ/RhrHnV9Wd4I/AAAAAAAAABQ/A_TZPJ_v_l0/s320/iPodSyncCompleted.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5051569410772727682" /&gt;&lt;/a&gt;&lt;br /&gt;Is there anyway we can turn off the use of this nice "auto erase" feature on the iTunes software, so that you don't loose the content if the pop-up "&lt;span style="font-style:italic;"&gt;do you want to erase the content of this foreigner iPod?&lt;/span&gt;" get the focus as you are typing in text and hit ENTER ?&lt;br /&gt;&lt;br /&gt;The result is quiet simple: a clean iPod. Cool to go with this piece of electronic equipement to the gym. I guess it will be my lane excuse to go back home directly, tonight ;-)&lt;br /&gt;&lt;br /&gt;This will be a good one for the 'get a Mac' commercial...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-7233086995542072917?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/7233086995542072917/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=7233086995542072917' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/7233086995542072917'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/7233086995542072917'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2007/04/ipod-auto-sink.html' title='iPod auto sink'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_HveDAwtrmoQ/RhrHnV9Wd4I/AAAAAAAAABQ/A_TZPJ_v_l0/s72-c/iPodSyncCompleted.png' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-3916872123798798238</id><published>2007-04-03T10:21:00.000-07:00</published><updated>2007-04-03T10:39:47.492-07:00</updated><title type='text'>[SOAPAction] Error: Unable to determine operation id</title><content type='html'>To try to make it easier for those who google with error message, here are two possible explanations for this error message, when using JAX-RPC based Web Service runtine.&lt;br /&gt;a) The value of the SOAPAction attribute on the HTTP Header on the wire do not match with the value expected by the service endpoint, as advertised on the WSDL soap:binding.&lt;br /&gt;Wire sample:&lt;br /&gt;&lt;pre&gt;...&lt;br /&gt;User-Agent: Oracle HTTPClient Version 10h&lt;br /&gt;SOAPAction: "CalculatePrice"&lt;br /&gt;...&lt;/pre&gt;&lt;br /&gt;WSDL snippet:&lt;br /&gt;&lt;pre&gt;&lt;a name="44"&gt;&lt;font class="s1"&gt;44  &lt;/font&gt;&lt;font class="s75"&gt;  &lt;/font&gt;&lt;font class="s77"&gt;&amp;lt;&lt;/font&gt;&lt;font class="s78"&gt;binding&lt;/font&gt; &lt;font class="s79"&gt;name&lt;/font&gt;&lt;font class="s77"&gt;=&lt;/font&gt;&lt;font class="s80"&gt;&amp;quot;XmlCalculatePricePort&amp;quot;&lt;/font&gt; &lt;font class="s79"&gt;type&lt;/font&gt;&lt;font class="s77"&gt;=&lt;/font&gt;&lt;font class="s80"&gt;&amp;quot;tns:XmlCalculatePricePort&amp;quot;&lt;/font&gt;&lt;font class="s77"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="45"&gt;&lt;font class="s1"&gt;45  &lt;/font&gt;&lt;font class="s75"&gt;    &lt;/font&gt;&lt;font class="s77"&gt;&amp;lt;&lt;/font&gt;&lt;font class="s78"&gt;soap:binding&lt;/font&gt; &lt;font class="s79"&gt;transport&lt;/font&gt;&lt;font class="s77"&gt;=&lt;/font&gt;&lt;font class="s80"&gt;&amp;quot;http://schemas.xmlsoap.org/soap/http&amp;quot;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="46"&gt;&lt;font class="s1"&gt;46  &lt;/font&gt;                  &lt;font class="s79"&gt;style&lt;/font&gt;&lt;font class="s77"&gt;=&lt;/font&gt;&lt;font class="s80"&gt;&amp;quot;document&amp;quot;&lt;/font&gt;&lt;font class="s77"&gt;/&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="47"&gt;&lt;font class="s1"&gt;47  &lt;/font&gt;&lt;font class="s75"&gt;    &lt;/font&gt;&lt;font class="s77"&gt;&amp;lt;&lt;/font&gt;&lt;font class="s78"&gt;operation&lt;/font&gt; &lt;font class="s79"&gt;name&lt;/font&gt;&lt;font class="s77"&gt;=&lt;/font&gt;&lt;font class="s80"&gt;&amp;quot;CalculatePrice&amp;quot;&lt;/font&gt;&lt;font class="s77"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="48"&gt;&lt;font class="s1"&gt;48  &lt;/font&gt;&lt;font class="s75"&gt;      &lt;/font&gt;&lt;font class="s77"&gt;&amp;lt;&lt;/font&gt;&lt;font class="s78"&gt;soap:operation&lt;/font&gt; &lt;font class="s79"&gt;soapAction&lt;/font&gt;&lt;font class="s77"&gt;=&lt;/font&gt;&lt;font class="s80"&gt;&amp;quot;CalculatePrice&amp;quot;&lt;/font&gt;&lt;font class="s77"&gt;/&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="49"&gt;&lt;font class="s1"&gt;49  &lt;/font&gt;&lt;font class="s75"&gt;      &lt;/font&gt;&lt;font class="s77"&gt;&amp;lt;&lt;/font&gt;&lt;font class="s78"&gt;input&lt;/font&gt;&lt;font class="s77"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="50"&gt;&lt;font class="s1"&gt;50  &lt;/font&gt;&lt;font class="s75"&gt;        &lt;/font&gt;&lt;font class="s77"&gt;&amp;lt;&lt;/font&gt;&lt;font class="s78"&gt;soap:body&lt;/font&gt; &lt;font class="s79"&gt;use&lt;/font&gt;&lt;font class="s77"&gt;=&lt;/font&gt;&lt;font class="s80"&gt;&amp;quot;literal&amp;quot;&lt;/font&gt;&lt;font class="s77"&gt;/&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="51"&gt;&lt;font class="s1"&gt;51  &lt;/font&gt;&lt;font class="s75"&gt;      &lt;/font&gt;&lt;font class="s77"&gt;&amp;lt;/&lt;/font&gt;&lt;font class="s78"&gt;input&lt;/font&gt;&lt;font class="s77"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="52"&gt;&lt;font class="s1"&gt;52  &lt;/font&gt;&lt;font class="s75"&gt;      &lt;/font&gt;&lt;font class="s77"&gt;&amp;lt;&lt;/font&gt;&lt;font class="s78"&gt;output&lt;/font&gt;&lt;font class="s77"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="53"&gt;&lt;font class="s1"&gt;53  &lt;/font&gt;&lt;font class="s75"&gt;        &lt;/font&gt;&lt;font class="s77"&gt;&amp;lt;&lt;/font&gt;&lt;font class="s78"&gt;soap:body&lt;/font&gt; &lt;font class="s79"&gt;use&lt;/font&gt;&lt;font class="s77"&gt;=&lt;/font&gt;&lt;font class="s80"&gt;&amp;quot;literal&amp;quot;&lt;/font&gt;&lt;font class="s77"&gt;/&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="54"&gt;&lt;font class="s1"&gt;54  &lt;/font&gt;&lt;font class="s75"&gt;      &lt;/font&gt;&lt;font class="s77"&gt;&amp;lt;/&lt;/font&gt;&lt;font class="s78"&gt;output&lt;/font&gt;&lt;font class="s77"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="55"&gt;&lt;font class="s1"&gt;55  &lt;/font&gt;&lt;font class="s75"&gt;    &lt;/font&gt;&lt;font class="s77"&gt;&amp;lt;/&lt;/font&gt;&lt;font class="s78"&gt;operation&lt;/font&gt;&lt;font class="s77"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="56"&gt;&lt;font class="s1"&gt;56  &lt;/font&gt;&lt;font class="s75"&gt;  &lt;/font&gt;&lt;font class="s77"&gt;&amp;lt;/&lt;/font&gt;&lt;font class="s78"&gt;binding&lt;/font&gt;&lt;font class="s77"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;em&gt;Note: the use of the quote is highly recommended for better interoperability.&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;b) If the service do not rely on this HTTP header to route incomming messages to specific operation (uses empty value in the WSDL soap:binding), it will use the fully qualified name (or QName) of the first child of the soap:body element to route the incomming message -- {http://siebel.com/OrderManagement/Quote/PSP}CalculatePrice_Input in the example below. If the value  on the wire does not match with the one expected (and advertized in the WSDL), you may get the error message listed above. In such case, make sure that the name is properly qualified. A common mistake here is to use the wrong namespace.&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;a name="1"&gt;&lt;font class="s1"&gt;  1  &lt;/font&gt;&lt;font class="s77"&gt;&amp;lt;?&lt;/font&gt;&lt;font class="s78"&gt;xml&lt;/font&gt; &lt;font class="s79"&gt;version&lt;/font&gt; &lt;font class="s77"&gt;=&lt;/font&gt; &lt;font class="s80"&gt;'1.0'&lt;/font&gt; &lt;font class="s79"&gt;encoding&lt;/font&gt; &lt;font class="s77"&gt;=&lt;/font&gt; &lt;font class="s80"&gt;'UTF-8'&lt;/font&gt;&lt;font class="s77"&gt;?&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="2"&gt;&lt;font class="s1"&gt;  2  &lt;/font&gt;&lt;font class="s77"&gt;&amp;lt;&lt;/font&gt;&lt;font class="s78"&gt;env:Envelope&lt;/font&gt; &lt;font class="s79"&gt;xmlns:env&lt;/font&gt;&lt;font class="s77"&gt;=&lt;/font&gt;&lt;font class="s80"&gt;&amp;quot;http://schemas.xmlsoap.org/soap/envelope/&amp;quot;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="3"&gt;&lt;font class="s1"&gt;  3  &lt;/font&gt;              &lt;font class="s79"&gt;xmlns:xsd&lt;/font&gt;&lt;font class="s77"&gt;=&lt;/font&gt;&lt;font class="s80"&gt;&amp;quot;http://www.w3.org/2001/XMLSchema&amp;quot;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="4"&gt;&lt;font class="s1"&gt;  4  &lt;/font&gt;              &lt;font class="s79"&gt;xmlns:xsi&lt;/font&gt;&lt;font class="s77"&gt;=&lt;/font&gt;&lt;font class="s80"&gt;&amp;quot;http://www.w3.org/2001/XMLSchema-instance&amp;quot;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="5"&gt;&lt;font class="s1"&gt;  5  &lt;/font&gt;              &lt;font class="s79"&gt;xmlns:ns0&lt;/font&gt;&lt;font class="s77"&gt;=&lt;/font&gt;&lt;font class="s80"&gt;&amp;quot;http://siebel.com/OrderManagement/Quote/PSP&amp;quot;&lt;/font&gt;&lt;font class="s77"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="6"&gt;&lt;font class="s1"&gt;  6  &lt;/font&gt;&lt;font class="s75"&gt;   &lt;/font&gt;&lt;font class="s77"&gt;&amp;lt;&lt;/font&gt;&lt;font class="s78"&gt;env:Body&lt;/font&gt;&lt;font class="s77"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="7"&gt;&lt;font class="s1"&gt;  7  &lt;/font&gt;&lt;font class="s75"&gt;      &lt;/font&gt;&lt;font class="s77"&gt;&amp;lt;&lt;/font&gt;&lt;font class="s78"&gt;ns0:CalculatePrice_Input&lt;/font&gt;&lt;font class="s77"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="8"&gt;&lt;font class="s1"&gt;  8  &lt;/font&gt;&lt;font class="s75"&gt;         &lt;/font&gt;&lt;font class="s77"&gt;&amp;lt;&lt;/font&gt;&lt;font class="s78"&gt;ListOfQuote&lt;/font&gt; &lt;font class="s79"&gt;xmlns&lt;/font&gt;&lt;font class="s77"&gt;=&lt;/font&gt;&lt;font class="s80"&gt;&amp;quot;http://siebel.com/OrderManagement/Quote/Data&amp;quot;&lt;/font&gt;&lt;font class="s77"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="9"&gt;&lt;font class="s1"&gt;  9  &lt;/font&gt;&lt;font class="s75"&gt;            &lt;/font&gt;&lt;font class="s77"&gt;&amp;lt;&lt;/font&gt;&lt;font class="s78"&gt;Quote&lt;/font&gt;&lt;font class="s77"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-3916872123798798238?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/3916872123798798238/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=3916872123798798238' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/3916872123798798238'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/3916872123798798238'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2007/04/soapaction-error-unable-to-determine.html' title='[SOAPAction] Error: Unable to determine operation id'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-7245981969239625419</id><published>2007-04-01T22:00:00.000-07:00</published><updated>2007-03-30T21:57:16.217-07:00</updated><title type='text'>Elections 2007 - qui l'eu cru !!!</title><content type='html'>&lt;span style="font-weight:bold;"&gt;Je ressemble à Dominique Voynet 40%&lt;/span&gt;&lt;br /&gt;&lt;a href="http://www.quelcandidat.com/index.php?option=com_wrapper&amp;Itemid=69"&gt; &lt;img src="http://www.quelcandidat.com/images/stories/matches/voynet_match.jpg" border="0"&gt; &lt;/a&gt;&lt;br /&gt;Mes points communs avec les autres candidats:&lt;br /&gt;2/ François Bayrou 40%&lt;br /&gt;3/ Olivier Besancenot 36%&lt;br /&gt;4/ Marie-Georges Buffet 36%&lt;br /&gt;5/ Nicolas Sarkozy 32%&lt;br /&gt;6/ Ségolène Royal 32%&lt;br /&gt;7/ Philippe de Villiers 28%&lt;br /&gt;8/ Frédéric Nihous 24%&lt;br /&gt;9/ Jean-Marie Le Pen 16%&lt;br /&gt;10/ Arlette Laguiller 12%&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-7245981969239625419?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/7245981969239625419/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=7245981969239625419' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/7245981969239625419'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/7245981969239625419'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2007/04/elections-2007-qui-leu-cru.html' title='Elections 2007 - qui l&apos;eu cru !!!'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-8981036882553692050</id><published>2007-03-30T17:21:00.000-07:00</published><updated>2007-03-30T17:21:38.468-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='XML binding'/><category scheme='http://www.blogger.com/atom/ns#' term='JDeveloper Web Service WSDL'/><title type='text'>Why do I get a null value back...</title><content type='html'>Why do I get a null value back from my JAVA object when the data was there in my XML stream?&lt;br /&gt;&lt;br /&gt;This is a question, that I have seen over and over with different O2X mapping technologies. Sometime using JAXB, sometime using Web Services, and now with SDO. It's also a common issue with .NET Web services.&lt;br /&gt;&lt;br /&gt;I do see the data on the wire or in my XML file, but I am getting a null value once I try to retrive it using the JAVA accessor APIs. How is this possible, is this a bug?&lt;br /&gt;&lt;br /&gt;The short answer is No. It's a feature!!! When the instance data do not match with the schema definition, it will be silently ignored by the XML processor (a.k.a. de-serialization layer). Let me try to give a simple example to illustrate this.&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;XML Schema&lt;/span&gt;&lt;br/&gt;&lt;pre&gt;&lt;a name="1"&gt;&lt;font class="s1"&gt; 1  &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;?&lt;/font&gt;&lt;font class="s85"&gt;xml&lt;/font&gt; &lt;font class="s86"&gt;version&lt;/font&gt;&lt;font class="s84"&gt;=&lt;/font&gt;&lt;font class="s87"&gt;&amp;quot;1.0&amp;quot;&lt;/font&gt; &lt;font class="s86"&gt;encoding&lt;/font&gt;&lt;font class="s84"&gt;=&lt;/font&gt;&lt;font class="s87"&gt;&amp;quot;UTF-8&amp;quot;&lt;/font&gt; &lt;font class="s84"&gt;?&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="2"&gt;&lt;font class="s1"&gt; 2  &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;&lt;/font&gt;&lt;font class="s85"&gt;xsd:schema&lt;/font&gt; &lt;font class="s86"&gt;xmlns&lt;/font&gt;&lt;font class="s84"&gt;=&lt;/font&gt;&lt;font class="s87"&gt;&amp;quot;http://www.oracle.com/ias/automation/dte&amp;quot;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="3"&gt;&lt;font class="s1"&gt; 3  &lt;/font&gt;            &lt;font class="s86"&gt;xmlns:xsd&lt;/font&gt;&lt;font class="s84"&gt;=&lt;/font&gt;&lt;font class="s87"&gt;&amp;quot;http://www.w3.org/2001/XMLSchema&amp;quot;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="4"&gt;&lt;font class="s1"&gt; 4  &lt;/font&gt;            &lt;font class="s86"&gt;targetNamespace&lt;/font&gt;&lt;font class="s84"&gt;=&lt;/font&gt;&lt;font class="s87"&gt;&amp;quot;http://www.oracle.com/ias/automation/dte&amp;quot;&lt;/font&gt;&lt;font class="s84"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="5"&gt;&lt;font class="s1"&gt; 5  &lt;/font&gt;&lt;font class="s82"&gt;  &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;&lt;/font&gt;&lt;font class="s85"&gt;xsd:element&lt;/font&gt; &lt;font class="s86"&gt;name&lt;/font&gt;&lt;font class="s84"&gt;=&lt;/font&gt;&lt;font class="s87"&gt;&amp;quot;travelGuide&amp;quot;&lt;/font&gt;&lt;font class="s84"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="6"&gt;&lt;font class="s1"&gt; 6  &lt;/font&gt;&lt;font class="s82"&gt;    &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;&lt;/font&gt;&lt;font class="s85"&gt;xsd:complexType&lt;/font&gt;&lt;font class="s84"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="7"&gt;&lt;font class="s1"&gt; 7  &lt;/font&gt;&lt;font class="s82"&gt;      &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;&lt;/font&gt;&lt;font class="s85"&gt;xsd:sequence&lt;/font&gt;&lt;font class="s84"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="8"&gt;&lt;font class="s1"&gt; 8  &lt;/font&gt;&lt;font class="s82"&gt;        &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;&lt;/font&gt;&lt;font class="s85"&gt;xsd:element&lt;/font&gt; &lt;font class="s86"&gt;ref&lt;/font&gt;&lt;font class="s84"&gt;=&lt;/font&gt;&lt;font class="s87"&gt;&amp;quot;map&amp;quot;&lt;/font&gt;&lt;font class="s84"&gt;/&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="9"&gt;&lt;font class="s1"&gt; 9  &lt;/font&gt;&lt;font class="s82"&gt;      &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;/&lt;/font&gt;&lt;font class="s85"&gt;xsd:sequence&lt;/font&gt;&lt;font class="s84"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="10"&gt;&lt;font class="s1"&gt;10  &lt;/font&gt;&lt;font class="s82"&gt;    &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;/&lt;/font&gt;&lt;font class="s85"&gt;xsd:complexType&lt;/font&gt;&lt;font class="s84"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="11"&gt;&lt;font class="s1"&gt;11  &lt;/font&gt;&lt;font class="s82"&gt;  &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;/&lt;/font&gt;&lt;font class="s85"&gt;xsd:element&lt;/font&gt;&lt;font class="s84"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="12"&gt;&lt;font class="s1"&gt;12  &lt;/font&gt;&lt;font class="s82"&gt;  &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;&lt;/font&gt;&lt;font class="s85"&gt;xsd:element&lt;/font&gt; &lt;font class="s86"&gt;name&lt;/font&gt;&lt;font class="s84"&gt;=&lt;/font&gt;&lt;font class="s87"&gt;&amp;quot;map&amp;quot;&lt;/font&gt;&lt;font class="s84"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="13"&gt;&lt;font class="s1"&gt;13  &lt;/font&gt;&lt;font class="s82"&gt;    &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;&lt;/font&gt;&lt;font class="s85"&gt;xsd:complexType&lt;/font&gt;&lt;font class="s84"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="14"&gt;&lt;font class="s1"&gt;14  &lt;/font&gt;&lt;font class="s82"&gt;      &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;&lt;/font&gt;&lt;font class="s85"&gt;xsd:sequence&lt;/font&gt;&lt;font class="s84"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="15"&gt;&lt;font class="s1"&gt;15  &lt;/font&gt;&lt;font class="s82"&gt;        &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;&lt;/font&gt;&lt;font class="s85"&gt;xsd:element&lt;/font&gt; &lt;font class="s86"&gt;maxOccurs&lt;/font&gt;&lt;font class="s84"&gt;=&lt;/font&gt;&lt;font class="s87"&gt;&amp;quot;unbounded&amp;quot;&lt;/font&gt; &lt;font class="s86"&gt;minOccurs&lt;/font&gt;&lt;font class="s84"&gt;=&lt;/font&gt;&lt;font class="s87"&gt;&amp;quot;1&amp;quot;&lt;/font&gt; &lt;font class="s86"&gt;ref&lt;/font&gt;&lt;font class="s84"&gt;=&lt;/font&gt;&lt;font class="s87"&gt;&amp;quot;route&amp;quot;&lt;/font&gt;&lt;font class="s84"&gt;/&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="16"&gt;&lt;font class="s1"&gt;16  &lt;/font&gt;&lt;font class="s82"&gt;      &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;/&lt;/font&gt;&lt;font class="s85"&gt;xsd:sequence&lt;/font&gt;&lt;font class="s84"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="17"&gt;&lt;font class="s1"&gt;17  &lt;/font&gt;&lt;font class="s82"&gt;    &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;/&lt;/font&gt;&lt;font class="s85"&gt;xsd:complexType&lt;/font&gt;&lt;font class="s84"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="18"&gt;&lt;font class="s1"&gt;18  &lt;/font&gt;&lt;font class="s82"&gt;  &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;/&lt;/font&gt;&lt;font class="s85"&gt;xsd:element&lt;/font&gt;&lt;font class="s84"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="19"&gt;&lt;font class="s1"&gt;19  &lt;/font&gt;&lt;font class="s82"&gt;  &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;&lt;/font&gt;&lt;font class="s85"&gt;xsd:element&lt;/font&gt; &lt;font class="s86"&gt;name&lt;/font&gt;&lt;font class="s84"&gt;=&lt;/font&gt;&lt;font class="s87"&gt;&amp;quot;route&amp;quot;&lt;/font&gt;&lt;font class="s84"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="20"&gt;&lt;font class="s1"&gt;20  &lt;/font&gt;&lt;font class="s82"&gt;    &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;&lt;/font&gt;&lt;font class="s85"&gt;xsd:complexType&lt;/font&gt;&lt;font class="s84"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="21"&gt;&lt;font class="s1"&gt;21  &lt;/font&gt;&lt;font class="s82"&gt;      &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;&lt;/font&gt;&lt;font class="s85"&gt;xsd:sequence&lt;/font&gt;&lt;font class="s84"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="22"&gt;&lt;font class="s1"&gt;22  &lt;/font&gt;&lt;font class="s82"&gt;        &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;&lt;/font&gt;&lt;font class="s85"&gt;xsd:element&lt;/font&gt; &lt;font class="s86"&gt;name&lt;/font&gt;&lt;font class="s84"&gt;=&lt;/font&gt;&lt;font class="s87"&gt;&amp;quot;from&amp;quot;&lt;/font&gt; &lt;font class="s86"&gt;type&lt;/font&gt;&lt;font class="s84"&gt;=&lt;/font&gt;&lt;font class="s87"&gt;&amp;quot;xsd:string&amp;quot;&lt;/font&gt;&lt;font class="s84"&gt;/&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="23"&gt;&lt;font class="s1"&gt;23  &lt;/font&gt;&lt;font class="s82"&gt;        &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;&lt;/font&gt;&lt;font class="s85"&gt;xsd:element&lt;/font&gt; &lt;font class="s86"&gt;name&lt;/font&gt;&lt;font class="s84"&gt;=&lt;/font&gt;&lt;font class="s87"&gt;&amp;quot;to&amp;quot;&lt;/font&gt; &lt;font class="s86"&gt;type&lt;/font&gt;&lt;font class="s84"&gt;=&lt;/font&gt;&lt;font class="s87"&gt;&amp;quot;xsd:string&amp;quot;&lt;/font&gt;&lt;font class="s84"&gt;/&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="24"&gt;&lt;font class="s1"&gt;24  &lt;/font&gt;&lt;font class="s82"&gt;      &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;/&lt;/font&gt;&lt;font class="s85"&gt;xsd:sequence&lt;/font&gt;&lt;font class="s84"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="25"&gt;&lt;font class="s1"&gt;25  &lt;/font&gt;&lt;font class="s82"&gt;      &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;&lt;/font&gt;&lt;font class="s85"&gt;xsd:attribute&lt;/font&gt; &lt;font class="s86"&gt;name&lt;/font&gt;&lt;font class="s84"&gt;=&lt;/font&gt;&lt;font class="s87"&gt;&amp;quot;distance&amp;quot;&lt;/font&gt; &lt;font class="s86"&gt;type&lt;/font&gt;&lt;font class="s84"&gt;=&lt;/font&gt;&lt;font class="s87"&gt;&amp;quot;xsd:int&amp;quot;&lt;/font&gt;&lt;font class="s84"&gt;/&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="26"&gt;&lt;font class="s1"&gt;26  &lt;/font&gt;&lt;font class="s82"&gt;    &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;/&lt;/font&gt;&lt;font class="s85"&gt;xsd:complexType&lt;/font&gt;&lt;font class="s84"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="27"&gt;&lt;font class="s1"&gt;27  &lt;/font&gt;&lt;font class="s82"&gt;  &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;/&lt;/font&gt;&lt;font class="s85"&gt;xsd:element&lt;/font&gt;&lt;font class="s84"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="28"&gt;&lt;font class="s1"&gt;28  &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;/&lt;/font&gt;&lt;font class="s85"&gt;xsd:schema&lt;/font&gt;&lt;font class="s84"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="29"&gt;&lt;/a&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;XML instance&lt;/span&gt;&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;&lt;pre&gt;&lt;a name="1"&gt;&lt;font class="s1"&gt; 1  &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;&lt;/font&gt;&lt;font class="s85"&gt;travelGuide&lt;/font&gt; &lt;font class="s86"&gt;xmlns:xsi&lt;/font&gt;&lt;font class="s84"&gt;=&lt;/font&gt;&lt;font class="s87"&gt;&amp;quot;http://www.w3.org/2001/XMLSchema-instance&amp;quot;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="2"&gt;&lt;font class="s1"&gt; 2  &lt;/font&gt;             &lt;font class="s86"&gt;xmlns&lt;/font&gt;&lt;font class="s84"&gt;=&lt;/font&gt;&lt;font class="s87"&gt;&amp;quot;http://www.oracle.com/ias/automation/dte&amp;quot;&lt;/font&gt;&lt;font class="s84"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="3"&gt;&lt;font class="s1"&gt; 3  &lt;/font&gt;&lt;font class="s82"&gt; &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;&lt;/font&gt;&lt;font class="s85"&gt;map&lt;/font&gt;&lt;font class="s84"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="4"&gt;&lt;font class="s1"&gt; 4  &lt;/font&gt;&lt;font class="s82"&gt;  &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;&lt;/font&gt;&lt;font class="s85"&gt;route&lt;/font&gt; &lt;font class="s86"&gt;distance&lt;/font&gt;&lt;font class="s84"&gt;=&lt;/font&gt;&lt;font class="s87"&gt;&amp;quot;500&amp;quot;&lt;/font&gt;&lt;font class="s84"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="5"&gt;&lt;font class="s1"&gt; 5  &lt;/font&gt;&lt;font class="s82"&gt;   &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;&lt;/font&gt;&lt;font class="s85"&gt;from&lt;/font&gt;&lt;font class="s84"&gt;&amp;gt;&lt;/font&gt;&lt;font class="s82"&gt;bangalore&lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;/&lt;/font&gt;&lt;font class="s85"&gt;from&lt;/font&gt;&lt;font class="s84"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="6"&gt;&lt;font class="s1"&gt; 6  &lt;/font&gt;&lt;font class="s82"&gt;   &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;&lt;/font&gt;&lt;font class="s85"&gt;to&lt;/font&gt;&lt;font class="s84"&gt;&amp;gt;&lt;/font&gt;&lt;font class="s82"&gt;chennai&lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;/&lt;/font&gt;&lt;font class="s85"&gt;to&lt;/font&gt;&lt;font class="s84"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="7"&gt;&lt;font class="s1"&gt; 7  &lt;/font&gt;&lt;font class="s82"&gt;  &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;/&lt;/font&gt;&lt;font class="s85"&gt;route&lt;/font&gt;&lt;font class="s84"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="8"&gt;&lt;font class="s1"&gt; 8  &lt;/font&gt;&lt;font class="s82"&gt; &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;/&lt;/font&gt;&lt;font class="s85"&gt;map&lt;/font&gt;&lt;font class="s84"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="9"&gt;&lt;font class="s1"&gt; 9  &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;/&lt;/font&gt;&lt;font class="s85"&gt;travelGuide&lt;/font&gt;&lt;font class="s84"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="10"&gt;&lt;/a&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;&lt;strong&gt;Sample Test Code:&lt;/strong&gt;&lt;br/&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;&lt;a name="1"&gt;&lt;font class="s1"&gt; 1  &lt;/font&gt;&lt;font class="s18"&gt;package&lt;/font&gt; &lt;font class="s21"&gt;test&lt;/font&gt;&lt;font class="s22"&gt;;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="2"&gt;&lt;font class="s1"&gt; 2  &lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="3"&gt;&lt;font class="s1"&gt; 3  &lt;/font&gt;&lt;font class="s18"&gt;import&lt;/font&gt; &lt;font class="s21"&gt;junit&lt;/font&gt;&lt;font class="s22"&gt;.&lt;/font&gt;&lt;font class="s21"&gt;framework&lt;/font&gt;&lt;font class="s22"&gt;.&lt;/font&gt;&lt;font class="s21"&gt;TestCase&lt;/font&gt;&lt;font class="s22"&gt;;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="4"&gt;&lt;font class="s1"&gt; 4  &lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="5"&gt;&lt;font class="s1"&gt; 5  &lt;/font&gt;&lt;font class="s18"&gt;import&lt;/font&gt; &lt;font class="s21"&gt;oracle&lt;/font&gt;&lt;font class="s22"&gt;.&lt;/font&gt;&lt;font class="s21"&gt;xml&lt;/font&gt;&lt;font class="s22"&gt;.&lt;/font&gt;&lt;font class="s21"&gt;parser&lt;/font&gt;&lt;font class="s22"&gt;.&lt;/font&gt;&lt;font class="s21"&gt;schema&lt;/font&gt;&lt;font class="s22"&gt;.&lt;/font&gt;&lt;font class="s21"&gt;XMLSchema&lt;/font&gt;&lt;font class="s22"&gt;;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="6"&gt;&lt;font class="s1"&gt; 6  &lt;/font&gt;&lt;font class="s18"&gt;import&lt;/font&gt; &lt;font class="s21"&gt;oracle&lt;/font&gt;&lt;font class="s22"&gt;.&lt;/font&gt;&lt;font class="s21"&gt;xml&lt;/font&gt;&lt;font class="s22"&gt;.&lt;/font&gt;&lt;font class="s21"&gt;parser&lt;/font&gt;&lt;font class="s22"&gt;.&lt;/font&gt;&lt;font class="s21"&gt;schema&lt;/font&gt;&lt;font class="s22"&gt;.&lt;/font&gt;&lt;font class="s21"&gt;XSDBuilder&lt;/font&gt;&lt;font class="s22"&gt;;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="7"&gt;&lt;font class="s1"&gt; 7  &lt;/font&gt;&lt;font class="s18"&gt;import&lt;/font&gt; &lt;font class="s21"&gt;oracle&lt;/font&gt;&lt;font class="s22"&gt;.&lt;/font&gt;&lt;font class="s21"&gt;xml&lt;/font&gt;&lt;font class="s22"&gt;.&lt;/font&gt;&lt;font class="s21"&gt;parser&lt;/font&gt;&lt;font class="s22"&gt;.&lt;/font&gt;&lt;font class="s21"&gt;v2&lt;/font&gt;&lt;font class="s22"&gt;.&lt;/font&gt;&lt;font class="s21"&gt;DOMParser&lt;/font&gt;&lt;font class="s22"&gt;;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="8"&gt;&lt;font class="s1"&gt; 8  &lt;/font&gt;&lt;font class="s18"&gt;import&lt;/font&gt; &lt;font class="s21"&gt;oracle&lt;/font&gt;&lt;font class="s22"&gt;.&lt;/font&gt;&lt;font class="s21"&gt;xml&lt;/font&gt;&lt;font class="s22"&gt;.&lt;/font&gt;&lt;font class="s21"&gt;parser&lt;/font&gt;&lt;font class="s22"&gt;.&lt;/font&gt;&lt;font class="s21"&gt;v2&lt;/font&gt;&lt;font class="s22"&gt;.&lt;/font&gt;&lt;font class="s21"&gt;XMLParseException&lt;/font&gt;&lt;font class="s22"&gt;;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="9"&gt;&lt;font class="s1"&gt; 9  &lt;/font&gt;&lt;font class="s18"&gt;import&lt;/font&gt; &lt;font class="s21"&gt;oracle&lt;/font&gt;&lt;font class="s22"&gt;.&lt;/font&gt;&lt;font class="s21"&gt;xml&lt;/font&gt;&lt;font class="s22"&gt;.&lt;/font&gt;&lt;font class="s21"&gt;parser&lt;/font&gt;&lt;font class="s22"&gt;.&lt;/font&gt;&lt;font class="s21"&gt;v2&lt;/font&gt;&lt;font class="s22"&gt;.&lt;/font&gt;&lt;font class="s21"&gt;XMLParser&lt;/font&gt;&lt;font class="s22"&gt;;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="10"&gt;&lt;font class="s1"&gt;10  &lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="11"&gt;&lt;font class="s1"&gt;11  &lt;/font&gt;&lt;font class="s18"&gt;public&lt;/font&gt; &lt;font class="s18"&gt;class&lt;/font&gt; &lt;font class="s21"&gt;SchemaValidationTest&lt;/font&gt; &lt;font class="s18"&gt;extends&lt;/font&gt; &lt;font class="s21"&gt;TestCase&lt;/font&gt; &lt;font class="s23"&gt;{&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="12"&gt;&lt;font class="s1"&gt;12  &lt;/font&gt;    &lt;font class="s18"&gt;static&lt;/font&gt; &lt;font class="s18"&gt;final&lt;/font&gt; &lt;font class="s21"&gt;String&lt;/font&gt; &lt;font class="s21"&gt;XML_URI&lt;/font&gt; &lt;font class="s22"&gt;=&lt;/font&gt; &lt;font class="s17"&gt;&amp;quot;file:///dev/howto/jaxb-test/travel.xml&amp;quot;&lt;/font&gt;&lt;font class="s22"&gt;;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="13"&gt;&lt;font class="s1"&gt;13  &lt;/font&gt;    &lt;font class="s18"&gt;static&lt;/font&gt; &lt;font class="s18"&gt;final&lt;/font&gt; &lt;font class="s21"&gt;String&lt;/font&gt; &lt;font class="s21"&gt;XSD_URI&lt;/font&gt; &lt;font class="s22"&gt;=&lt;/font&gt; &lt;font class="s17"&gt;&amp;quot;file:///dev/howto/jaxb-test/travel.xsd&amp;quot;&lt;/font&gt;&lt;font class="s22"&gt;;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="14"&gt;&lt;font class="s1"&gt;14  &lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="15"&gt;&lt;font class="s1"&gt;15  &lt;/font&gt;    &lt;font class="s18"&gt;public&lt;/font&gt; &lt;font class="s21"&gt;SchemaValidationTest&lt;/font&gt;&lt;font class="s23"&gt;(&lt;/font&gt;&lt;font class="s21"&gt;String&lt;/font&gt; &lt;font class="s21"&gt;sTestName&lt;/font&gt;&lt;font class="s23"&gt;)&lt;/font&gt; &lt;font class="s23"&gt;{&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="16"&gt;&lt;font class="s1"&gt;16  &lt;/font&gt;        &lt;font class="s18"&gt;super&lt;/font&gt;&lt;font class="s23"&gt;(&lt;/font&gt;&lt;font class="s21"&gt;sTestName&lt;/font&gt;&lt;font class="s23"&gt;)&lt;/font&gt;&lt;font class="s22"&gt;;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="17"&gt;&lt;font class="s1"&gt;17  &lt;/font&gt;    &lt;font class="s23"&gt;}&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="18"&gt;&lt;font class="s1"&gt;18  &lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="19"&gt;&lt;font class="s1"&gt;19  &lt;/font&gt;    &lt;font class="s18"&gt;public&lt;/font&gt; &lt;font class="s18"&gt;void&lt;/font&gt; &lt;font class="s21"&gt;testValidation&lt;/font&gt;&lt;font class="s23"&gt;()&lt;/font&gt; &lt;font class="s18"&gt;throws&lt;/font&gt; &lt;font class="s21"&gt;Exception&lt;/font&gt; &lt;font class="s23"&gt;{&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="20"&gt;&lt;font class="s1"&gt;20  &lt;/font&gt;        &lt;font class="s21"&gt;DOMParser&lt;/font&gt; &lt;font class="s21"&gt;dp&lt;/font&gt; &lt;font class="s22"&gt;=&lt;/font&gt; &lt;font class="s18"&gt;new&lt;/font&gt; &lt;font class="s21"&gt;DOMParser&lt;/font&gt;&lt;font class="s23"&gt;()&lt;/font&gt;&lt;font class="s22"&gt;;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="21"&gt;&lt;font class="s1"&gt;21  &lt;/font&gt;        &lt;font class="s16"&gt;// Turns Schema Validation on&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="22"&gt;&lt;font class="s1"&gt;22  &lt;/font&gt;        &lt;font class="s21"&gt;dp&lt;/font&gt;&lt;font class="s22"&gt;.&lt;/font&gt;&lt;font class="s21"&gt;setValidationMode&lt;/font&gt;&lt;font class="s23"&gt;(&lt;/font&gt;&lt;font class="s21"&gt;XMLParser&lt;/font&gt;&lt;font class="s22"&gt;.&lt;/font&gt;&lt;font class="s21"&gt;SCHEMA_VALIDATION&lt;/font&gt;&lt;font class="s23"&gt;)&lt;/font&gt;&lt;font class="s22"&gt;;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="23"&gt;&lt;font class="s1"&gt;23  &lt;/font&gt;        &lt;font class="s16"&gt;// Uses System.out to get any validation error&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="24"&gt;&lt;font class="s1"&gt;24  &lt;/font&gt;        &lt;font class="s21"&gt;dp&lt;/font&gt;&lt;font class="s22"&gt;.&lt;/font&gt;&lt;font class="s21"&gt;setErrorStream&lt;/font&gt;&lt;font class="s23"&gt;(&lt;/font&gt;&lt;font class="s21"&gt;System&lt;/font&gt;&lt;font class="s22"&gt;.&lt;/font&gt;&lt;font class="s21"&gt;out&lt;/font&gt;&lt;font class="s23"&gt;)&lt;/font&gt;&lt;font class="s22"&gt;;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="25"&gt;&lt;font class="s1"&gt;25  &lt;/font&gt;        &lt;font class="s16"&gt;// Set Schema Object for Validation&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="26"&gt;&lt;font class="s1"&gt;26  &lt;/font&gt;        &lt;font class="s21"&gt;dp&lt;/font&gt;&lt;font class="s22"&gt;.&lt;/font&gt;&lt;font class="s21"&gt;setXMLSchema&lt;/font&gt;&lt;font class="s23"&gt;(&lt;/font&gt;&lt;font class="s18"&gt;new&lt;/font&gt; &lt;font class="s21"&gt;XSDBuilder&lt;/font&gt;&lt;font class="s23"&gt;()&lt;/font&gt;&lt;font class="s22"&gt;.&lt;/font&gt;&lt;font class="s21"&gt;build&lt;/font&gt;&lt;font class="s23"&gt;(&lt;/font&gt;&lt;font class="s21"&gt;XSD_URI&lt;/font&gt;&lt;font class="s23"&gt;))&lt;/font&gt;&lt;font class="s22"&gt;;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="27"&gt;&lt;font class="s1"&gt;27  &lt;/font&gt;        &lt;font class="s21"&gt;dp&lt;/font&gt;&lt;font class="s22"&gt;.&lt;/font&gt;&lt;font class="s21"&gt;parse&lt;/font&gt;&lt;font class="s23"&gt;(&lt;/font&gt;&lt;font class="s21"&gt;XML_URI&lt;/font&gt;&lt;font class="s23"&gt;)&lt;/font&gt;&lt;font class="s22"&gt;;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="28"&gt;&lt;font class="s1"&gt;28  &lt;/font&gt;    &lt;font class="s23"&gt;}&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="29"&gt;&lt;font class="s1"&gt;29  &lt;/font&gt;&lt;font class="s23"&gt;}&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;The output from the test, with validation errors, looks like this: &lt;br /&gt;&lt;pre&gt;file:///dev/howto/jaxb-test/travel.xml&amp;lt;Line 5, Column 10&gt;: XML-24534: (Error) Element 'from' not expected.&lt;br /&gt;file:///dev/howto/jaxb-test/travel.xml&amp;lt;Line 6, Column 8&gt;: XML-24534: (Error) Element 'to' not expected.&lt;br /&gt;file:///dev/howto/jaxb-test/travel.xml&amp;lt;Line 7, Column 11&gt;: XML-24521: (Error) Element not completed: 'route'&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;The explaination: In the instance data, we have a fully qualified name (or QName) for the element that is '&lt;span style="font-style:italic;"&gt;{http://www.oracle.com/ias/automation/dte}from&lt;/span&gt;' while the expectation, based on the schema definition was to have an unqualified element (or with an empty namespace) and usulally noted as '&lt;span style="font-style:italic;"&gt;{}from&lt;/span&gt;'. In other words, a simple impedance mismatch.&lt;br /&gt;&lt;br /&gt;Here you have two way to solve the issue:&lt;br /&gt;a) change the schema definition to match with the wire format. In our sample, adding the &lt;strong&gt;&lt;em&gt;'elementFormDefault="qualified"&lt;/em&gt;&lt;/strong&gt;' attribute to the schema is all it takes.&lt;br /&gt;&lt;br /&gt;b) change the instance data so that it is consistent with the XML Schema. In our sample, you need to put from and to in no-namespace, by adding an empty default namespace on each element, like this:&lt;br /&gt;&lt;pre&gt;&lt;a name="4"&gt;&lt;font class="s1"&gt; 4  &lt;/font&gt;&lt;font class="s82"&gt;  &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;&lt;/font&gt;&lt;font class="s85"&gt;route&lt;/font&gt; &lt;font class="s86"&gt;distance&lt;/font&gt;&lt;font class="s84"&gt;=&lt;/font&gt;&lt;font class="s87"&gt;&amp;quot;500&amp;quot;&lt;/font&gt;&lt;font class="s84"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="5"&gt;&lt;font class="s1"&gt; 5  &lt;/font&gt;&lt;font class="s82"&gt;   &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;&lt;/font&gt;&lt;font class="s85"&gt;from&lt;/font&gt; &lt;font class="s86"&gt;xmlns&lt;/font&gt;&lt;font class="s84"&gt;=&lt;/font&gt;&lt;font class="s87"&gt;&amp;quot;&amp;quot;&lt;/font&gt;&lt;font class="s84"&gt;&amp;gt;&lt;/font&gt;&lt;font class="s82"&gt;bangalore&lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;/&lt;/font&gt;&lt;font class="s85"&gt;from&lt;/font&gt;&lt;font class="s84"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="6"&gt;&lt;font class="s1"&gt; 6  &lt;/font&gt;&lt;font class="s82"&gt;   &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;&lt;/font&gt;&lt;font class="s85"&gt;to&lt;/font&gt; &lt;font class="s86"&gt;xmlns&lt;/font&gt;&lt;font class="s84"&gt;=&lt;/font&gt;&lt;font class="s87"&gt;&amp;quot;&amp;quot;&lt;/font&gt;&lt;font class="s84"&gt;&amp;gt;&lt;/font&gt;&lt;font class="s82"&gt;chennai&lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;/&lt;/font&gt;&lt;font class="s85"&gt;to&lt;/font&gt;&lt;font class="s84"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="7"&gt;&lt;font class="s1"&gt; 7  &lt;/font&gt;&lt;font class="s82"&gt;  &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;/&lt;/font&gt;&lt;font class="s85"&gt;route&lt;/font&gt;&lt;font class="s84"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Remember... &lt;span style="font-style:italic;"&gt;When you have some doubt, you should make sure that you have the right assumption; make sure that the XML schema and the XML instance data are consistent with each other.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Here is a paper worth reading, if you are new to these concepts: &lt;a href="http://www.oracle.com/technology/pub/articles/srivastava_namespaces.html"&gt;XML Schema: Understanding Namespaces&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-8981036882553692050?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/8981036882553692050/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=8981036882553692050' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/8981036882553692050'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/8981036882553692050'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2007/03/why-do-i-get-null-value-back.html' title='Why do I get a null value back...'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-4419749527706657123</id><published>2007-03-26T10:00:00.000-07:00</published><updated>2007-03-26T12:37:15.288-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='JDeveloper Web Service WSDL'/><title type='text'>Multiple servies in a single application.</title><content type='html'>Here are some simple step by step instructions to be able to package two Web Services that implement the same service with different SEI, using a single contract (the wire format as described in the WSDL).&lt;br /&gt;&lt;br /&gt;Here is the Ant task once would write to achieve this:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;&lt;blockquote&gt;&amp;lt;o:topdownassemble uri="PojoPricer"&lt;br /&gt;  output="./to_hide"&lt;br /&gt;  classname="com.siebel.ordermanagement.quote.psp.PojoPriceCalculator"&lt;br /&gt;  input="./classes"&lt;br /&gt;  wsdl="./etc/calculateprice.wsdl"/&gt;&lt;br /&gt;&amp;lt;o:topdownassemble uri="XmlPricer"&lt;br /&gt;  output="./to_hide"&lt;br /&gt;  classname="com.siebel.ordermanagement.quote.psp.XmlPriceCalculator"&lt;br /&gt;  input="./classes"&lt;br /&gt;  wsdl="./etc/calculateprice.wsdl"&lt;br /&gt;  ear="./dist/${app.name}.ear"&lt;br /&gt;  databinding="false"&lt;br /&gt;  appendtoexistingdds="true/&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Unfortunately, this will not work, as the two service endpoints are using the same service name.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;em&gt;[o:topDownAssemble] oracle.j2ee.ws.common.tools.api.ValidationException:&lt;br /&gt;Could not update web.xml because &lt;servlet-name&gt;"CalculatePricePort"&lt;br /&gt;already exists. The value of &lt;servlet-name&gt;generated by wsa is port name.&lt;br /&gt;If bottom-up assembling approach is used, please specify a portName argument&lt;br /&gt;value that does not already exist. If topdown assembling approach or genDDs is&lt;br /&gt;used, put the two webservices in different wars so they do not share deployment&lt;br /&gt;descriptors.&lt;/em&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;First, you will need to develop the first service instance, using the basic Top-Down assemble method. For now, we will assume that you have already done this. Check the &lt;a href="http://download-west.oracle.com/docs/cd/B32110_01/web.htm"&gt;WS User's Guide&lt;/a&gt; on OTN.&lt;br /&gt;&lt;br /&gt;Now, here are the few steps in question:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;make a copy of the primary WSDL, into the one that would be used for the second service endpoint - in our case &lt;em&gt;xmlcalulateprice.wsdl&lt;/em&gt;.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;change the following names in the new WSDL: &lt;/li&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;the service&lt;/li&gt;&lt;li&gt;the binding &lt;/li&gt;&lt;li&gt;the port&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;li&gt;add a second assemble task on your Ant file. now that you are using a new name for the service and binding, the names are not going to clash, and WSA assemble command will be working just fine. The sample above gives a template of the two top-down assemble command - just remember to use a different WSDL filename. &lt;/li&gt;&lt;br /&gt;&lt;li&gt;assemble and deploy the updated application. &lt;/li&gt;&lt;/ol&gt;&lt;p&gt;It's that simple ;-)&lt;/p&gt;&lt;p&gt;&lt;br /&gt;Now, we have two service endpoints packaged in a single .ear/.war file. You can use this in two  scenario: &lt;/p&gt;&lt;ol&gt;&lt;li&gt;compare the performance of different XML-Java binding options.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;deploy a new revision of your service without to break backward compatibility.&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;You will notice that the changes I have described in step #2 above do not have any impact on the format of the SOAP message on the wire.&lt;br /&gt;&lt;br /&gt;To be able to compare the two WSDL files, there is a cool feature in JDeveloper, that will be a time saver for you, if you get acquinted with, before you need to debug broken services - it's the file comparaison utility: select your two files, using the contextual right click menu, uses 'Compare With' -&gt; 'Each Other'. To work well with XML files, the trick is to use the 'Reformat ' option first on both files, so that they have similar linefeed breaks and overall layout.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_HveDAwtrmoQ/RggfWDrtKYI/AAAAAAAAABE/-wd2czIHGkE/s1600-h/CompareWitheachOther.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5046317846274845058" style="FLOAT: left; MARGIN: 0px 0px 10px 10px; CURSOR: hand" alt="" src="http://4.bp.blogspot.com/_HveDAwtrmoQ/RggfWDrtKYI/AAAAAAAAABE/-wd2czIHGkE/s320/CompareWitheachOther.jpg" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-4419749527706657123?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/4419749527706657123/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=4419749527706657123' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/4419749527706657123'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/4419749527706657123'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2007/03/multiple-servies-in-single-application.html' title='Multiple servies in a single application.'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_HveDAwtrmoQ/RggfWDrtKYI/AAAAAAAAABE/-wd2czIHGkE/s72-c/CompareWitheachOther.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-7500588409169690307</id><published>2007-03-25T20:51:00.000-07:00</published><updated>2007-03-25T21:02:55.864-07:00</updated><title type='text'>Scalling your Web Site for the un-expected...</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://farm1.static.flickr.com/153/430737982_da4572614a.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px;" src="http://farm1.static.flickr.com/153/430737982_da4572614a.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;This was so funny (or sad) that I could not keep it for myself: A web application with Oracle's branding that is not able to handle the load as the Access &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;ODBC&lt;/span&gt; drivers gets the number of connections down to 0. There was just a few hundreds of &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_1"&gt;frantic&lt;/span&gt; web shoppers trying to get first to the registration page. A static HTML form may have done just fine.&lt;br /&gt;&lt;br /&gt;Next time you design a web site to scale up, remember to avoid unnecessary use of &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_2"&gt;resource&lt;/span&gt; that are finite...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-7500588409169690307?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/7500588409169690307/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=7500588409169690307' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/7500588409169690307'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/7500588409169690307'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2007/03/scalling-your-web-site-for-un-expected.html' title='Scalling your Web Site for the un-expected...'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://farm1.static.flickr.com/153/430737982_da4572614a_t.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-813193492181422892</id><published>2007-03-22T11:38:00.000-07:00</published><updated>2007-03-22T12:01:06.104-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='web service SOAP testing'/><title type='text'>soap UI - or a dream come true</title><content type='html'>&lt;a href="http://www.flickr.com/photos/35045136@N00/430567045/"&gt;&lt;img style="FLOAT: right; MARGIN: 0px 0px 10px 10px; WIDTH: 240px; CURSOR: hand" alt="soapUI-wsa" src="http://farm1.static.flickr.com/150/430567045_70bb51e895_m.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;If you are on the market for a tool that can help you with your SOA quest, here is a new addition to the mandatory toolbox (or USB key swiss knife).&lt;br /&gt;&lt;br /&gt;Finding Oracle in the drop-down list, together with Axis and XFire is a sign: there are some real people out there using our stuff.&lt;br /&gt;&lt;br /&gt;And, the best part is that it works!!! I won't need to continu maintaining my own ant scripts for plain vanilla use of wsa when I am not using JDeveloper. &lt;a href="http://www.soapui.org/"&gt;Download the latest here&lt;/a&gt; and see it for yourself, if you don't believe me.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-813193492181422892?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/813193492181422892/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=813193492181422892' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/813193492181422892'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/813193492181422892'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2007/03/soap-ui-or-dream-come-true.html' title='soap UI - or a dream come true'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://farm1.static.flickr.com/150/430567045_70bb51e895_t.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-6896049103632624941</id><published>2007-03-08T08:57:00.000-08:00</published><updated>2007-03-08T10:09:08.573-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Vista'/><title type='text'>Vista unzip performance, PNG files and more</title><content type='html'>I) Unzip speed.&lt;br /&gt;&lt;br /&gt;I found an easy work around for my unzip issue; it's called PODP (Plain Old Dos Promt). Thanks to  &lt;strong&gt;C. Spieler&lt;/strong&gt;, I can &lt;a href="http://farm1.static.flickr.com/133/414771755_e1b3005df2_o.png"&gt;execute unzip from the command line&lt;/a&gt;.&lt;br /&gt;&lt;pre&gt;&lt;span style="font-size:85%;color:#000099;"&gt;&lt;strong&gt;C:\Users\erajkovi\Downloads&gt;unzip sqldeveloper-1.1.2.2579-no-jre.zip -d \opt&lt;/strong&gt;&lt;/span&gt;&lt;/pre&gt;II) Screen capture and files size.&lt;br /&gt;&lt;br /&gt;This may just be a fact: PNG is far from giving you a compression level that is comparable to JPEG on Windows Vista, using Paint. I have done a screen capture of my full desktop screen (1280x1024) and save it in PNG, as I was becoming acoustate to use open formats. The bottom line:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://farm1.static.flickr.com/177/414771749_e4afe81b32_o.jpg"&gt;vista-desktop.jpg&lt;/a&gt; -&gt; size = 190KB&lt;/li&gt;&lt;li&gt;&lt;a href="http://farm1.static.flickr.com/139/408008946_6348672fb6_o.png"&gt;vista-desktop.png&lt;/a&gt; -&gt; size = 2.690MB&lt;/li&gt;&lt;/ul&gt;I must be doing something wrong...&lt;br /&gt;&lt;br /&gt;III) &lt;a title="blocked::http://www.oracle.com/technology/tech/migration/workbench/index_sqldev_omwb.html" href="http://www.oracle.com/technology/tech/migration/workbench/index_sqldev_omwb.html"&gt;SQL Developer Migration Workbench&lt;/a&gt; Early Adopter for public evaluation is out !!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-6896049103632624941?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/6896049103632624941/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=6896049103632624941' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/6896049103632624941'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/6896049103632624941'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2007/03/vista-unzip-performance-png-files-and.html' title='Vista unzip performance, PNG files and more'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-4299747688920316343</id><published>2007-03-01T23:25:00.000-08:00</published><updated>2007-03-01T23:53:12.750-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='XML binding'/><category scheme='http://www.blogger.com/atom/ns#' term='web service'/><title type='text'>JAX-WS 2.1 : First spin.</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://weblogs.java.net/blog/kohsuke/archive/20070201/large.png"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 200px;" src="http://weblogs.java.net/blog/kohsuke/archive/20070201/large.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;span style="font-weight: bold;"&gt;JAX-WS 2.1 is out.&lt;/span&gt;&lt;br /&gt;&lt;blockquote&gt;Here is a blog entry that will give you all the details you need: see the &lt;a href="http://weblogs.java.net/blog/vivekp/archive/2007/02/jaxws_21_fcs_fa_1.html"&gt;Fast &amp;amp; Furious&lt;/a&gt;.&lt;br /&gt;For me, it means it's time to give it a try and build some interface to PayPal Web services. The performance improvement seams to be worth a closer look.&lt;/blockquote&gt;In my current project, I have start to look at performance between different implementations for a given Business Process, and I am getting to the point were the interpretation of the performance number can be swinged either way, just with a few tweaks on my dataset.&lt;br /&gt;Here is a tip I wanted to share with those that are trying to use SOAPElement --the JAX-RPC/SAAJ equivalent of the DOM Element-- when trying to work with large datagram that are handled as XML: Make sure you do not try to preserve whitespace. Otherwise, for every nested element you have (XMLElement) you will have an extra java object to carry the linefeed (an XMLText). It can add up very quick.&lt;br /&gt;&lt;br /&gt;The key is on line 193, in the code folowing code snippet:&lt;pre&gt;&lt;br /&gt;&lt;a name="189"&gt;&lt;font class="s1"&gt;189  &lt;/font&gt;    &lt;font class="s18"&gt;private&lt;/font&gt; &lt;font class="s21"&gt;SOAPElement&lt;/font&gt; &lt;font class="s21"&gt;getDocumentFromString&lt;/font&gt;&lt;font class="s23"&gt;(&lt;/font&gt;&lt;font class="s21"&gt;String&lt;/font&gt; &lt;font class="s21"&gt;xmlStream&lt;/font&gt;&lt;font class="s23"&gt;)&lt;/font&gt; &lt;font class="s23"&gt;{&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="190"&gt;&lt;font class="s1"&gt;190  &lt;/font&gt;        &lt;font class="s21"&gt;SOAPElement&lt;/font&gt; &lt;font class="s21"&gt;res&lt;/font&gt; &lt;font class="s22"&gt;=&lt;/font&gt; &lt;font class="s19"&gt;null&lt;/font&gt;&lt;font class="s22"&gt;;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="191"&gt;&lt;font class="s1"&gt;191  &lt;/font&gt;        &lt;font class="s18"&gt;try&lt;/font&gt; &lt;font class="s23"&gt;{&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="192"&gt;&lt;font class="s1"&gt;192  &lt;/font&gt;            &lt;font class="s21"&gt;DOMParser&lt;/font&gt; &lt;font class="s21"&gt;builder&lt;/font&gt; &lt;font class="s22"&gt;=&lt;/font&gt; &lt;font class="s18"&gt;new&lt;/font&gt; &lt;font class="s21"&gt;DOMParser&lt;/font&gt;&lt;font class="s23"&gt;()&lt;/font&gt;&lt;font class="s22"&gt;;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="193"&gt;&lt;font class="s1"&gt;193  &lt;/font&gt;            &lt;font class="s21"&gt;builder&lt;/font&gt;&lt;font class="s22"&gt;.&lt;/font&gt;&lt;font class="s21"&gt;setPreserveWhitespace&lt;/font&gt;&lt;font class="s23"&gt;(&lt;/font&gt;&lt;font class="s19"&gt;false&lt;/font&gt;&lt;font class="s23"&gt;)&lt;/font&gt;&lt;font class="s22"&gt;;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="194"&gt;&lt;font class="s1"&gt;194  &lt;/font&gt;            &lt;font class="s21"&gt;builder&lt;/font&gt;&lt;font class="s22"&gt;.&lt;/font&gt;&lt;font class="s21"&gt;parse&lt;/font&gt;&lt;font class="s23"&gt;(&lt;/font&gt;&lt;font class="s18"&gt;new&lt;/font&gt; &lt;font class="s21"&gt;StringReader&lt;/font&gt;&lt;font class="s23"&gt;(&lt;/font&gt;&lt;font class="s21"&gt;xmlStream&lt;/font&gt;&lt;font class="s23"&gt;))&lt;/font&gt;&lt;font class="s22"&gt;;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="195"&gt;&lt;font class="s1"&gt;195  &lt;/font&gt;            &lt;font class="s21"&gt;res&lt;/font&gt; &lt;font class="s22"&gt;=&lt;/font&gt; &lt;font class="s21"&gt;SOAPUtil&lt;/font&gt;&lt;font class="s22"&gt;.&lt;/font&gt;&lt;font class="s21"&gt;toSOAPElement&lt;/font&gt;&lt;font class="s23"&gt;((&lt;/font&gt;&lt;font class="s21"&gt;Element&lt;/font&gt;&lt;font class="s23"&gt;)&lt;/font&gt;&lt;font class="s21"&gt;builder&lt;/font&gt;&lt;font class="s22"&gt;.&lt;/font&gt;&lt;font class="s21"&gt;getDocument&lt;/font&gt;&lt;font class="s23"&gt;()&lt;/font&gt;&lt;font class="s22"&gt;.&lt;/font&gt;&lt;font class="s21"&gt;getDocumentElement&lt;/font&gt;&lt;font class="s23"&gt;())&lt;/font&gt;&lt;font class="s22"&gt;;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="196"&gt;&lt;font class="s1"&gt;196  &lt;/font&gt;        &lt;font class="s23"&gt;}&lt;/font&gt; &lt;font class="s18"&gt;catch&lt;/font&gt; &lt;font class="s23"&gt;(&lt;/font&gt;&lt;font class="s21"&gt;Exception&lt;/font&gt; &lt;font class="s21"&gt;ex&lt;/font&gt;&lt;font class="s23"&gt;)&lt;/font&gt; &lt;font class="s23"&gt;{&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="197"&gt;&lt;font class="s1"&gt;197  &lt;/font&gt;            &lt;font class="s21"&gt;ex&lt;/font&gt;&lt;font class="s22"&gt;.&lt;/font&gt;&lt;font class="s21"&gt;printStackTrace&lt;/font&gt;&lt;font class="s23"&gt;()&lt;/font&gt;&lt;font class="s22"&gt;;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="198"&gt;&lt;font class="s1"&gt;198  &lt;/font&gt;        &lt;font class="s23"&gt;}&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="199"&gt;&lt;font class="s1"&gt;199  &lt;/font&gt;        &lt;font class="s18"&gt;return&lt;/font&gt; &lt;font class="s21"&gt;res&lt;/font&gt;&lt;font class="s22"&gt;;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="200"&gt;&lt;font class="s1"&gt;200  &lt;/font&gt;    &lt;font class="s23"&gt;}&lt;/font&gt;&lt;/a&gt;&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/13394094-4299747688920316343?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/4299747688920316343/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=4299747688920316343' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/4299747688920316343'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/4299747688920316343'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2007/03/jax-ws-21-first-spin.html' title='JAX-WS 2.1 : First spin.'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-3055270694858880867</id><published>2007-02-28T19:49:00.000-08:00</published><updated>2007-02-28T20:09:54.729-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Vista'/><title type='text'>Vista and the integrated unzip feature, tips wanted?</title><content type='html'>If you have any tips to share, please drop me a comment here. It may help other as well...&lt;br /&gt;&lt;br /&gt;So far, the only result I got from Google are this &lt;span style="font-style:italic;"&gt;&lt;a href="http://forums.thedailywtf.com/forums/thread/111073.aspx"&gt;"Worse Than Failure"&lt;/a&gt;&lt;/span&gt; entry with screen shoot similar to mine, and an entry from Microsoft's &lt;a href="http://support.microsoft.com/kb/932170"&gt;support&lt;/a&gt; that seams off topic... &lt;br /&gt;&lt;br /&gt;Here is how the process started.&lt;br /&gt;&lt;a href="http://www.flickr.com/photos/35045136@N00/405874736/" title="Photo Sharing"&gt;&lt;img src="http://farm1.static.flickr.com/180/405874736_8a34f2ea7e.jpg" width="500" height="370" alt="Vista unzip estimate" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;After I got started on search the net and into the mood that trigger this entry, it got even worth.&lt;br /&gt;&lt;a href="http://www.flickr.com/photos/35045136@N00/405874739/" title="Photo Sharing"&gt;&lt;img src="http://farm1.static.flickr.com/156/405874739_f5a0763542.jpg" width="416" height="199" alt="Vista unzip estimate, take 2" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;A few years back, at JavaOne, there was a presentation were Oracle was demonstrating how JDeveloper intaller, or the lack of it, was easy to used, compared to the VisualStudio equivalent of the time. &lt;br /&gt;&lt;br /&gt;Could have this been done on purpose? &lt;br /&gt;&lt;br /&gt;Or is this just that I need to turn off the remaining security features that I have still not totaly disabled?&lt;br /&gt;&lt;br /&gt;By the time the unzip was done with the extra process, I had already configure IIS 7.0 on than same Vista Ultimate instance, thanks to &lt;a href="http://www.howtogeek.com/howto/windows-vista/how-to-install-iis-on-windows-vista/"&gt;this post&lt;/a&gt;. Just remember to enable the new default port on your local firewall. Some things are getting better...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-3055270694858880867?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/3055270694858880867/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=3055270694858880867' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/3055270694858880867'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/3055270694858880867'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2007/02/vista-and-integrated-unzip-feature-tips.html' title='Vista and the integrated unzip feature, tips wanted?'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://farm1.static.flickr.com/180/405874736_8a34f2ea7e_t.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-928846770567019329</id><published>2007-02-20T12:29:00.000-08:00</published><updated>2007-02-20T12:46:20.902-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='XML binding'/><category scheme='http://www.blogger.com/atom/ns#' term='web service'/><title type='text'>SOAPFaultException: IllegalArgumentException: Decoding tip</title><content type='html'>As part of my ongoing work on the SOA and SCA (Society of Confused Architects) bandwagon, I have a new not-so-easy error to explain and share with you.&lt;br /&gt;&lt;br /&gt;Here is how the error will reads from the client side, when using Oracle Web Services tech Stack on the 10gR3 releases:&lt;br /&gt;&lt;blockquote&gt;&lt;span style="font-family:courier new;font-size:78%;"&gt;javax.xml.rpc.soap.SOAPFaultException: Caught exception while handling request:&lt;br /&gt;deserialization error: java.lang.IllegalArgumentException&lt;/span&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;The SOAP response will look something like that:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;&lt;a name="1"&gt;&lt;font class="s1"&gt; 1  &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;?&lt;/font&gt;&lt;font class="s85"&gt;xml&lt;/font&gt; &lt;font class="s86"&gt;version&lt;/font&gt; &lt;font class="s84"&gt;=&lt;/font&gt; &lt;font class="s87"&gt;'1.0'&lt;/font&gt; &lt;font class="s86"&gt;encoding&lt;/font&gt; &lt;font class="s84"&gt;=&lt;/font&gt; &lt;font class="s87"&gt;'UTF-8'&lt;/font&gt;&lt;font class="s84"&gt;?&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="2"&gt;&lt;font class="s1"&gt; 2  &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;&lt;/font&gt;&lt;font class="s85"&gt;env:Envelope&lt;/font&gt; &lt;font class="s86"&gt;xmlns:env&lt;/font&gt;&lt;font class="s84"&gt;=&lt;/font&gt;&lt;font class="s87"&gt;&amp;quot;http://schemas.xmlsoap.org/soap/envelope/&amp;quot;&lt;/font&gt;&lt;font class="s84"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="3"&gt;&lt;font class="s1"&gt; 3  &lt;/font&gt;&lt;font class="s82"&gt;   &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;&lt;/font&gt;&lt;font class="s85"&gt;env:Body&lt;/font&gt;&lt;font class="s84"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="4"&gt;&lt;font class="s1"&gt; 4  &lt;/font&gt;&lt;font class="s82"&gt;      &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;&lt;/font&gt;&lt;font class="s85"&gt;env:Fault&lt;/font&gt;&lt;font class="s84"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="5"&gt;&lt;font class="s1"&gt; 5  &lt;/font&gt;&lt;font class="s82"&gt;         &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;&lt;/font&gt;&lt;font class="s85"&gt;faultcode&lt;/font&gt;&lt;font class="s84"&gt;&amp;gt;&lt;/font&gt;&lt;font class="s82"&gt;env:Client&lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;/&lt;/font&gt;&lt;font class="s85"&gt;faultcode&lt;/font&gt;&lt;font class="s84"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="6"&gt;&lt;font class="s1"&gt; 6  &lt;/font&gt;&lt;font class="s82"&gt;         &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;&lt;/font&gt;&lt;font class="s85"&gt;faultstring&lt;/font&gt;&lt;font class="s84"&gt;&amp;gt;&lt;/font&gt;&lt;font class="s82"&gt;Caught exception while handling request: deserialization&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="7"&gt;&lt;font class="s1"&gt; 7  &lt;/font&gt;&lt;font class="s82"&gt;                      error: java.lang.IllegalArgumentException&lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;/&lt;/font&gt;&lt;font class="s85"&gt;faultstring&lt;/font&gt;&lt;font class="s84"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="8"&gt;&lt;font class="s1"&gt; 8  &lt;/font&gt;&lt;font class="s82"&gt;      &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;/&lt;/font&gt;&lt;font class="s85"&gt;env:Fault&lt;/font&gt;&lt;font class="s84"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="9"&gt;&lt;font class="s1"&gt; 9  &lt;/font&gt;&lt;font class="s82"&gt;   &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;/&lt;/font&gt;&lt;font class="s85"&gt;env:Body&lt;/font&gt;&lt;font class="s84"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="10"&gt;&lt;font class="s1"&gt;10  &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;/&lt;/font&gt;&lt;font class="s85"&gt;env:Envelope&lt;/font&gt;&lt;font class="s84"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="11"&gt;&lt;/a&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;In my case, the error was just because I was having an invalid value&lt;br /&gt;for some XML Schema type - the incomming value was not in the set &lt;br /&gt;defined in the schema.&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;&lt;a name="1"&gt;&lt;font class="s1"&gt; 1  &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;&lt;/font&gt;&lt;font class="s85"&gt;xs:schema&lt;/font&gt; &lt;font class="s86"&gt;xmlns:xs&lt;/font&gt;&lt;font class="s84"&gt;=&lt;/font&gt;&lt;font class="s87"&gt;&amp;quot;http://www.w3.org/2001/XMLSchema&amp;quot;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="2"&gt;&lt;font class="s1"&gt; 2  &lt;/font&gt;           &lt;font class="s86"&gt;xmlns:tns&lt;/font&gt;&lt;font class="s84"&gt;=&lt;/font&gt;&lt;font class="s87"&gt;&amp;quot;http://ws.rajkovic.org/samples&amp;quot;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="3"&gt;&lt;font class="s1"&gt; 3  &lt;/font&gt;           &lt;font class="s86"&gt;targetNamespace&lt;/font&gt;&lt;font class="s84"&gt;=&lt;/font&gt;&lt;font class="s87"&gt;&amp;quot;http://ws.rajkovic.org/samples&amp;quot;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="4"&gt;&lt;font class="s1"&gt; 4  &lt;/font&gt;           &lt;font class="s86"&gt;elementFormDefault&lt;/font&gt;&lt;font class="s84"&gt;=&lt;/font&gt;&lt;font class="s87"&gt;&amp;quot;qualified&amp;quot;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="5"&gt;&lt;font class="s1"&gt; 5  &lt;/font&gt;           &lt;font class="s86"&gt;attributeFormDefault&lt;/font&gt;&lt;font class="s84"&gt;=&lt;/font&gt;&lt;font class="s87"&gt;&amp;quot;unqualified&amp;quot;&lt;/font&gt;&lt;font class="s84"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="6"&gt;&lt;font class="s1"&gt; 6  &lt;/font&gt;&lt;font class="s82"&gt;...&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="7"&gt;&lt;font class="s1"&gt; 7  &lt;/font&gt;&lt;font class="s82"&gt;      &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;&lt;/font&gt;&lt;font class="s85"&gt;xs:simpleType&lt;/font&gt; &lt;font class="s86"&gt;name&lt;/font&gt;&lt;font class="s84"&gt;=&lt;/font&gt;&lt;font class="s87"&gt;&amp;quot;TitleType&amp;quot;&lt;/font&gt;&lt;font class="s84"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="8"&gt;&lt;font class="s1"&gt; 8  &lt;/font&gt;&lt;font class="s82"&gt;        &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;&lt;/font&gt;&lt;font class="s85"&gt;xs:restriction&lt;/font&gt; &lt;font class="s86"&gt;base&lt;/font&gt;&lt;font class="s84"&gt;=&lt;/font&gt;&lt;font class="s87"&gt;&amp;quot;xs:string&amp;quot;&lt;/font&gt;&lt;font class="s84"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="9"&gt;&lt;font class="s1"&gt; 9  &lt;/font&gt;&lt;font class="s82"&gt;          &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;&lt;/font&gt;&lt;font class="s85"&gt;xs:enumeration&lt;/font&gt; &lt;font class="s86"&gt;value&lt;/font&gt;&lt;font class="s84"&gt;=&lt;/font&gt;&lt;font class="s87"&gt;&amp;quot;Company&amp;quot;&lt;/font&gt;&lt;font class="s84"&gt;/&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="10"&gt;&lt;font class="s1"&gt;10  &lt;/font&gt;&lt;font class="s82"&gt;          &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;&lt;/font&gt;&lt;font class="s85"&gt;xs:enumeration&lt;/font&gt; &lt;font class="s86"&gt;value&lt;/font&gt;&lt;font class="s84"&gt;=&lt;/font&gt;&lt;font class="s87"&gt;&amp;quot;Mr.&amp;quot;&lt;/font&gt;&lt;font class="s84"&gt;/&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="11"&gt;&lt;font class="s1"&gt;11  &lt;/font&gt;&lt;font class="s82"&gt;          &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;&lt;/font&gt;&lt;font class="s85"&gt;xs:enumeration&lt;/font&gt; &lt;font class="s86"&gt;value&lt;/font&gt;&lt;font class="s84"&gt;=&lt;/font&gt;&lt;font class="s87"&gt;&amp;quot;Ms.&amp;quot;&lt;/font&gt;&lt;font class="s84"&gt;/&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="12"&gt;&lt;font class="s1"&gt;12  &lt;/font&gt;&lt;font class="s82"&gt;        &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;/&lt;/font&gt;&lt;font class="s85"&gt;xs:restriction&lt;/font&gt;&lt;font class="s84"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="13"&gt;&lt;font class="s1"&gt;13  &lt;/font&gt;&lt;font class="s82"&gt;      &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;/&lt;/font&gt;&lt;font class="s85"&gt;xs:simpleType&lt;/font&gt;&lt;font class="s84"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="14"&gt;&lt;font class="s1"&gt;14  &lt;/font&gt;&lt;font class="s82"&gt;      &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;&lt;/font&gt;&lt;font class="s85"&gt;xs:element&lt;/font&gt; &lt;font class="s86"&gt;name&lt;/font&gt;&lt;font class="s84"&gt;=&lt;/font&gt;&lt;font class="s87"&gt;&amp;quot;title&amp;quot;&lt;/font&gt; &lt;font class="s86"&gt;type&lt;/font&gt;&lt;font class="s84"&gt;=&lt;/font&gt;&lt;font class="s87"&gt;&amp;quot;tns:TitleType&amp;quot;&lt;/font&gt;&lt;font class="s84"&gt;/&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="15"&gt;&lt;font class="s1"&gt;15  &lt;/font&gt;&lt;font class="s82"&gt;...&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="16"&gt;&lt;font class="s1"&gt;16  &lt;/font&gt;&lt;font class="s84"&gt;&amp;lt;/&lt;/font&gt;&lt;font class="s85"&gt;xs:schema&lt;/font&gt;&lt;font class="s84"&gt;&amp;gt;&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Hope it can help some of you out there, getting to the bottom&lt;br /&gt;of your interoperability issues faster.&lt;br /&gt;&lt;br /&gt;-Ecco&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-928846770567019329?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/928846770567019329/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=928846770567019329' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/928846770567019329'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/928846770567019329'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2007/02/soapfaultexception-illegalargumentexcep.html' title='SOAPFaultException: IllegalArgumentException: Decoding tip'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-5677506113030636858</id><published>2007-02-06T16:19:00.000-08:00</published><updated>2007-02-06T16:36:44.131-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='web service'/><title type='text'>WS 10.1.3.1 faultcode of the day - env:Server UndeclaredThrowableException</title><content type='html'>Here is an error that I have seen a few time in the past days, for which I have not find an easy way around. Just a user error, hard to catch...&lt;br /&gt;&lt;blockquote&gt;&amp;lt;&lt;span class="xmlTag"&gt;env:Body&lt;/span&gt;&lt;span class="xmlTag"&gt;&gt;&lt;/span&gt;&lt;br /&gt;  &amp;lt;&lt;span class="xmlTag"&gt;env:Fault&lt;/span&gt;&lt;span class="xmlTag"&gt;&gt;&lt;/span&gt;&lt;br /&gt;    &amp;lt;&lt;span class="xmlTag"&gt;faultcode&lt;/span&gt;&lt;span class="xmlTag"&gt;&gt;&lt;/span&gt;env:Server&amp;lt;&lt;span class="xmlTag"&gt;/faultcode&gt;&lt;/span&gt;&lt;br /&gt;    &amp;lt;&lt;span class="xmlTag"&gt;faultstring&lt;/span&gt;&lt;span class="xmlTag"&gt;&gt;&lt;/span&gt;Internal Server Error (Caught exception while handling request: java.lang.reflect.UndeclaredThrowableException)&amp;lt;&lt;span class="xmlTag"&gt;/faultstring&gt;&lt;/span&gt;&lt;br /&gt;  &amp;lt;&lt;span class="xmlTag"&gt;/env:Fault&gt;&lt;/span&gt;&lt;br /&gt;&amp;lt;&lt;span class="xmlTag"&gt;&lt;/span&gt;&lt;span class="xmlTag"&gt;/env:Body&gt;&lt;/span&gt;&lt;/blockquote&gt;In playing with the 'mapheaderstoparameters' option for the &lt;a href="http://download.oracle.com/docs/cd/B31017_01/web.1013/b28974/wsassemble.htm#CHDECAIG"&gt;topDownAssemble&lt;/a&gt; target, I forgot to change the method signature on the implementation class before to repackage my application. When the code generated at deployement time does not match with the code packaged in your application, this is the error you may get.&lt;br /&gt;&lt;span class="xmlTag"&gt;&lt;/span&gt;&lt;br /&gt;Until we get smarter in the code generation and have dynamic services with pre-deployment check, the best remains to make a knot on your handkerchief.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-5677506113030636858?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/5677506113030636858/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=5677506113030636858' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/5677506113030636858'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/5677506113030636858'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2007/02/ws-10131-faultcode-of-day-envserver.html' title='WS 10.1.3.1 faultcode of the day - env:Server UndeclaredThrowableException'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-7936321065571823390</id><published>2007-02-05T09:51:00.000-08:00</published><updated>2007-02-05T10:24:06.982-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java jdeveloper'/><title type='text'>Some random notes, in a developer's reading day.</title><content type='html'>Here are some random link to resources I found on the Web, that I have read over the weekend, and that I'll keep in my bookmarks for a while. As I am in transit between different computers, I figure out that my &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_0"&gt;blog&lt;/span&gt; was not a bad place to keep them handy...&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a onclick="return top.js.OpenExtLink(window,event,this)" href="http://www.cs.auckland.ac.nz/~pgut001/pubs/vista_cost.txt" target="_blank"&gt;A Cost Analysis of Windows Vista Content Protection&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Just one viewpoint on Vista's content protection system. &lt;/p&gt;&lt;p&gt;As a side note, I have seen Vista Ultimate running on a brand new high-end system over the weekend, at a friend's home, with an &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1" onclick="BLOG_clickHandler(this)"&gt;XBox&lt;/span&gt;360 and a huge TV screen. &lt;/p&gt;&lt;p&gt;Very nice !!! I am &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_2"&gt;jealous&lt;/span&gt;, I can't do the same with a 24 inch &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3" onclick="BLOG_clickHandler(this)"&gt;iMac&lt;/span&gt; using my Home Theater setup. &lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://blogs.msdn.com/tims/"&gt;Musings of a Windows Vista Technical Evangelist&lt;/a&gt; &lt;/li&gt;&lt;/ul&gt;&lt;p&gt;A nice blog with tones of tips on Windows Vista.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.devx.com/enterprise/Article/33507/1954"&gt;The Top 12 Productivity Killers in Your Development Methodology&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;I especially have this one reasoning in my mind: &lt;em&gt;&lt;span style="font-family:georgia;"&gt;"Fact 12: Coding conventions are efficient; they must be imposed." &lt;/span&gt;&lt;/em&gt;I still have not been able to understand why this is not &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4" onclick="BLOG_clickHandler(this)"&gt;de&lt;/span&gt;-&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_5" onclick="BLOG_clickHandler(this)"&gt;jure&lt;/span&gt; in any software development organisation - small or large.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.devx.com/Java/Article/33398/1954"&gt;Mustang Must-Haves: What's Cool in Java SE 6&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Start thinking about 6.0, so you will be ready on time. For me, it just mean I have to start running my code using 6.0 &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_6" onclick="BLOG_clickHandler(this)"&gt;JDK&lt;/span&gt; and see if my &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_7" onclick="BLOG_clickHandler(this)"&gt;IDE&lt;/span&gt; can handle it. As you need to pick the best tool for the job, it may be time to evaluate a new tool.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.infoq.com/articles/spring-2-intro"&gt;Spring 2.0: What's New and Why it Matters&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.infoq.com/articles/arjen-poutsma-spring-ws"&gt;Interview: &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_8" onclick="BLOG_clickHandler(this)"&gt;Arjen&lt;/span&gt; &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_9" onclick="BLOG_clickHandler(this)"&gt;Poutsma&lt;/span&gt; on Spring Web Services&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;I have also start to use &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_10" onclick="BLOG_clickHandler(this)"&gt;JDeveloper&lt;/span&gt; to play with &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_11" onclick="BLOG_clickHandler(this)"&gt;mySQL&lt;/span&gt;, Subversion, Hibernate, and found some interesting how-to on the topics. I'll have to make another compilation of what is &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_12"&gt;useful&lt;/span&gt; and some of the traps I didn't missed, in case it helps others.&lt;/p&gt;&lt;p&gt;It was a busy weekend ;-)&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-7936321065571823390?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/7936321065571823390/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=7936321065571823390' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/7936321065571823390'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/7936321065571823390'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2007/02/some-random-notes-in-developers-reading.html' title='Some random notes, in a developer&apos;s reading day.'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-2652409811050869566</id><published>2007-02-02T19:12:00.000-08:00</published><updated>2007-02-02T19:32:01.631-08:00</updated><title type='text'>Santa, or a serious ramen shop for serious ramen fans.</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://farm1.static.flickr.com/136/377724489_dbb98e730b_m.jpg"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 200px;" src="http://farm1.static.flickr.com/136/377724489_dbb98e730b_m.jpg" alt="" border="0" /&gt;&lt;/a&gt;Today was another farwell lunch; this time it's mine turn.&lt;br /&gt;&lt;br /&gt;The destination was &lt;a href="http://www.yelp.com/biz/y_Vpeb9pYPQlOuIlVn0rxg"&gt;Santa&lt;/a&gt;, a ramen place downtown San Mateo.&lt;br /&gt;&lt;br /&gt;The first time I eat there, about 5 years ago, was when I was interviewing for my current job position.&lt;br /&gt;Serge, Olivier, the only reel changes since that time are that the Japanese TV shows are no longer part of the  'atmosphere' and that you are both far away. Nilesh will be able to carry on the tradition.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;After all, there is such thing as a free lunch !!! &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: georgia; font-style: italic;"&gt;For some, it was the price to pay to see me going away.  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;So long everyone.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-2652409811050869566?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/2652409811050869566/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=2652409811050869566' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/2652409811050869566'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/2652409811050869566'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2007/02/santa-or-serious-ramen-shop-for-serious.html' title='Santa, or a serious ramen shop for serious ramen fans.'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://farm1.static.flickr.com/136/377724489_dbb98e730b_t.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-1541866701167474962</id><published>2007-01-23T23:25:00.000-08:00</published><updated>2007-01-29T21:15:06.783-08:00</updated><title type='text'>Access to SOAP Header from response payload</title><content type='html'>As I was trying to explain the difference between SOAPElement (a.k.a. XMLElement or Element in the java world) and Document, I got to realized that this know-how could be usefull when you need to access the content of the soap:header that is comming back from the service endpoint on the response.&lt;br /&gt;&lt;br /&gt;To illustrate this technique, I'll be using WS-Addessing and the .NET endpoint Microsoft exposes for testing purposes (http://131.107.72.15/WSAddressingCR_Service_WCF/WSAddressing10.svc).&lt;br /&gt;&lt;br /&gt;In my test scenario, the request looks like this&lt;br /&gt;&lt;blockquote&gt;&amp;lt;env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"&gt;&lt;br /&gt;   &amp;lt;env:Header&gt;&lt;br /&gt;      &amp;lt;wsa:Action xmlns:wsa="http://www.w3.org/2005/08/addressing"&gt;http://example.org/action/echoIn&amp;lt;/wsa:Action&gt;&lt;br /&gt;      &amp;lt;wsa:ReplyTo xmlns:wsa="http://www.w3.org/2005/08/addressing"&gt;&lt;br /&gt;         &amp;lt;wsa:Address xmlns:wsa="http://www.w3.org/2005/08/addressing"&gt;http://www.w3.org/2005/08/addressing/anonymous&amp;lt;/wsa:Address&gt;&lt;br /&gt;      &amp;lt;/wsa:ReplyTo&gt;&lt;br /&gt;      &amp;lt;wsa:To xmlns:wsa="http://www.w3.org/2005/08/addressing"&gt;http://131.107.72.15:80/WSAddressingCR_Service_WCF/WSAddressing10.svc/Soap12&amp;lt;/wsa:To&gt;&lt;br /&gt;   &amp;lt;/env:Header&gt;&lt;br /&gt;   &amp;lt;env:Body&gt;&lt;br /&gt;      &amp;lt;ans12:echoIn xmlns:ans12="http://example.org/echo"&gt;test1132&amp;lt;/ans12:echoIn&gt;&lt;br /&gt;   &amp;lt;/env:Body&gt;&lt;br /&gt;&amp;lt;/env:Envelope&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;For now, I'll assume that you can figure out the way to send the proper SOAP Header in the request, and point you &lt;a href="http://download.oracle.com/docs/cd/B31017_01/web.1013/b28974/toc.htm"&gt;at the documentation&lt;/a&gt; if you need further information about JAX-RPC handlers.&lt;br /&gt;&lt;br /&gt;To construct the client, you can use the following ant target:&lt;br /&gt;&lt;blockquote&gt;&amp;lt;target name="genproxy"&gt;&lt;br /&gt;&amp;nbsp;&amp;lt;delete dir="./gen_src"/&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;lt;o:genproxy wsdl="./etc/wcf-server/WSAddressingCR.wsdl" output="./gen_src" debug="true" classpath="./classes"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;o:handler name="AddressingClientHandler" class="org.w3c.addressing.ClientHandler"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;o:soapheader value="{http://www.w3.org/2005/08/addressing}Action"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;o:initparam name="test" value="testValue"/&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/o:soapheader&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/o:handler&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;lt;/o:genproxy&gt;&lt;br /&gt;&amp;lt;/target&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;The trick to get access to the soap:header in the response is as follow:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;use the databinding="false" option on the o:genProxy command - this will change the method signature of your java code, and give you access to the raw XML.&lt;/li&gt;&lt;li&gt;from the SOAPElement you are getting in return, get back to the  containing  XML Document -  the soap:envelope. Once you have it, you can access any value from the soap:header &lt;/li&gt;&lt;/ol&gt;It's that simple. The draw back of this is on the java side - now, you have to construct the SOAP request and decode the SOAP response by hand. It's only a temporary solution, until we get to J2SE 6.0 and JAX-WS.&lt;br /&gt;&lt;br /&gt;code snippet:&lt;br /&gt;    SOAPElement result = myPort.echo(input);&lt;br /&gt;    System.out.println("result as SOAPElement");&lt;br /&gt;    ((XMLElement) result).print(System.out);&lt;br /&gt;    System.out.println("result as Document");&lt;br /&gt;    ((XMLElement) result.getOwnerDocument().getDocumentElement()).print(System.out);&lt;br /&gt;&lt;br /&gt;output:&lt;br /&gt;&lt;br /&gt;     result as SOAPElement&lt;br /&gt;     &amp;lt;echoOut xmlns="http://example.org/echo"&gt;test1132&amp;lt;/echoOut&gt;&lt;br /&gt;     result as Document&lt;br /&gt;     &amp;lt;s:Envelope xmlns:s="http://www.w3.org/2003/05/soap-envelope" xmlns:a="http://www.w3.org/2005/08/addressing"&gt;&lt;br /&gt;         &amp;lt;s:Header&gt;&lt;br /&gt;            &amp;lt;a:Action s:mustUnderstand="1"&gt;http://example.org/action/echoOut       &amp;lt;/a:Action&gt;&lt;br /&gt;         &amp;lt;/s:Header&gt;&lt;br /&gt;         &amp;lt;s:Body&gt;&lt;br /&gt;            &amp;lt;echoOut xmlns="http://example.org/echo"&gt;test1132&amp;lt;/echoOut&gt;&lt;br /&gt;         &amp;lt;/s:Body&gt;&lt;br /&gt;     &amp;lt;/s:Envelope&gt;&lt;br /&gt;&lt;br /&gt;In this example, the a:Action header is not that usefull, but imagine you can gain access to a:RelatesTo or a:MessageID using the same technique.&lt;br /&gt;&lt;br /&gt;Have fun!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-1541866701167474962?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/1541866701167474962/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=1541866701167474962' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/1541866701167474962'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/1541866701167474962'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2007/01/access-to-soap-header-from-response.html' title='Access to SOAP Header from response payload'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-7970642777841998166</id><published>2007-01-18T18:21:00.000-08:00</published><updated>2007-01-18T19:35:25.663-08:00</updated><title type='text'>Did I hear Raw Food ?</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://farm1.static.flickr.com/162/361886095_90638d03c1_m.jpg"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 200px;" src="http://farm1.static.flickr.com/162/361886095_90638d03c1_m.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;This was my lunch plate, from &lt;a href="http://koma-sushi.com/"&gt;koma-sushi&lt;/a&gt; in Menlo Park. I'll to see with &lt;a href="http://coachingfrance.blogspot.com/"&gt;my coach&lt;/a&gt; if this is a good lunch, based on my current exercise level [0 step/day] and my beer drinking exercise from the past days...&lt;br /&gt;&lt;br /&gt;I guess I really need to get the iPhone to have better picture quality.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-7970642777841998166?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/7970642777841998166/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=7970642777841998166' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/7970642777841998166'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/7970642777841998166'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2007/01/did-i-hear-raw-food.html' title='Did I hear Raw Food ?'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://farm1.static.flickr.com/162/361886095_90638d03c1_t.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-3539282244296173934</id><published>2007-01-11T23:37:00.000-08:00</published><updated>2007-01-11T23:46:46.882-08:00</updated><title type='text'>Upgrading to Vista today ...</title><content type='html'>I could not resist on this one...&lt;br /&gt;&lt;br /&gt;After seeing the PS3 vs WII ads on YouTube, I am getting used to the pattern. but the last "&lt;a href="http://www.apple.com/getamac/"&gt;Get a Mac&lt;/a&gt;" clip on &lt;a href="http://movies.apple.com/movies/us/apple/getamac/apple-getamac-surgery_480x376.mov"&gt;Surgery&lt;/a&gt; made my day.&lt;br /&gt;&lt;br /&gt;For me, the upgrade was not that painfull after all. just a few hours to scan and rescan the disk - I was using RC2, so it's one could expect as you move to the production release.&lt;br /&gt;&lt;br /&gt;Next week, I'll try to locate the anti-virus release of Symantec that's supported for Vista - it should be out by now.&lt;br /&gt;&lt;br /&gt;For me, the killer app on Vista remain the index on the outlook email that can be accessed from the start menu - Spotlight re-invented, just better. &lt;br /&gt;&lt;br /&gt;By the way, did you see the new iPhone, the phone re-invented, an ipod with a rotary wheel, like in the old days. When are we going to get iPod analog, for the vynil lovers?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-3539282244296173934?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/3539282244296173934/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=3539282244296173934' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/3539282244296173934'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/3539282244296173934'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2007/01/upgrading-to-vista-today.html' title='Upgrading to Vista today ...'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-6923738912115588643</id><published>2007-01-04T23:37:00.000-08:00</published><updated>2007-01-05T00:15:53.306-08:00</updated><title type='text'>Invalid WSDL - and the answer is ...</title><content type='html'>I forgot to provide the answer on last quizz about invalid WSDL, and XML tips.&lt;br /&gt;&lt;br /&gt;The WSDL in question: &lt;a href="http://www.rajkovic.org/ws/wsdl/bads/annotatedBank2.wsdl"&gt;http://www.rajkovic.org/ws/wsdl/bads/annotatedBank2.wsdl&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The issue: by mistake, I did reuse the same prefix for two namespace. The &lt;span style="font-weight: bold; font-style: italic;"&gt;tns&lt;/span&gt; prefix is associated with 'http://ws.rajkovic.org/demo/annotatedBank'&lt;br /&gt;at the global scope (wsdl:definitions) and reused with 'http://ws.rajkovic.org/demo/annotatedBank/types'&lt;br /&gt;at the schema scope (xsd:schema element).&lt;br /&gt;&lt;br /&gt;In the wsdl:part, element="tns:create-account" references an element named {http://ws.rajkovic.org/demo/annotatedBank}create-account, which is not found. Based on the schema's targetNamespace, the QName (qualified name) of the element is {http://ws.rajkovic.org/demo/annotatedBank/types}create-account.&lt;br /&gt;&lt;br /&gt;There are two ways to fix this error:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Uses the same targetNamespace URI (and tns prefix) for both WSDL and Schema elements. Keep It Simple as much as possible.&lt;/li&gt;&lt;li&gt;Introduce a new prefixe  in your  wsdl:definition element (xmlns:types="http://ws.rajkovic.org/demo/annotatedBank/types") and uses the newly introduced prefixe to reference elements defined in your schema (element="types:create-account"). It's not a bad idea to avoid reusing the same prefix with different URI in a single document. That way, you will avoid this pitfall.&lt;/li&gt;&lt;/ol&gt;Remember: Keep It Simple, Stupid.&lt;br /&gt;&lt;br /&gt;Here is today's WSDL: &lt;a href="http://www.rajkovic.org/ws/wsdl/bads/kiss-20070104.wsdl"&gt;http://www.rajkovic.org/ws/wsdl/bads/kiss-20070104.wsdl&lt;/a&gt;. Can you spot the mistake?&lt;br /&gt;&lt;br /&gt;I agree, it's getting a little more involved.&lt;br /&gt;&lt;br /&gt;Have fun,&lt;br /&gt;&lt;br /&gt;You can always get back to your favorite &lt;a href="http://sudoku-factory.com/SudokuDuJour/SudokuDuJourPDF.php"&gt;&lt;span style="font-style: italic;"&gt;sudoku du jour&lt;/span&gt;&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-6923738912115588643?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/6923738912115588643/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=6923738912115588643' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/6923738912115588643'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/6923738912115588643'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2007/01/invalid-wsdl-and-answer-is.html' title='Invalid WSDL - and the answer is ...'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-655405276729798098</id><published>2007-01-01T23:28:00.000-08:00</published><updated>2007-01-01T23:42:32.214-08:00</updated><title type='text'>Happy New Year</title><content type='html'>As we get into 2007, it's time to take new resolutions, and make some predictions.&lt;br /&gt;&lt;br /&gt;Resolution: to post on this blog once a week, about Web Services and other rant.&lt;br /&gt;Prediction: 2007 will be the year of WS-*, the JAX-WS APIs and Java 6.0.&lt;br /&gt;&lt;br /&gt;Happy 2007 !!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-655405276729798098?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/655405276729798098/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=655405276729798098' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/655405276729798098'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/655405276729798098'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2007/01/happy-new-year.html' title='Happy New Year'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-8740443221055510878</id><published>2006-12-18T21:44:00.000-08:00</published><updated>2006-12-18T22:10:49.569-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='JDeveloper Web Service WSDL'/><title type='text'>model error: element "{http://...}foo" not found</title><content type='html'>As I got some reply off-line, on my previous post, it's time to gives the explanation for the first invalid WSDL.&lt;br /&gt;&lt;br /&gt;First, here is my ANT script (build.xml), that can be used to validate any WSDL in JDeveloper 10.1.3:&lt;br /&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;/span&gt;&lt;blockquote  style="font-family:courier new;"&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&amp;lt;project name="blog-demo" default="all" basedir="." xmlns:o="antlib:oracle"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; &lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; &lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; &amp;lt;&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;property file="build.properties"/&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; &lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; &lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; &lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&amp;lt;&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;target name="analyze"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; &lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; &lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; &lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; &lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; &lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; &lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&amp;lt;&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;o:analyze wsdl="http://www.rajkovic.org/ws/wsdl/bads/annotatedBank.wsdl"/&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; &lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; &lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; &lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&amp;lt;&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;/target&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&amp;lt;&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;/project&gt;&lt;br /&gt;&lt;/span&gt;&lt;/blockquote&gt;and the output&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;&lt;/span&gt;&lt;blockquote&gt;&lt;span style="font-family:courier new;"&gt;analyze:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;model error: element "{http://ws.rajkovic.org/demo/annotatedBank}create-account" not found.&lt;/span&gt;&lt;/blockquote&gt;In &lt;a href="http://www.rajkovic.org/ws/wsdl/bads/annotatedBank.wsdl"&gt;annotatedBank.wsdl&lt;/a&gt;, there is a missing element: &lt;span style="font-weight: bold;font-family:courier new;font-size:85%;"  &gt;&amp;lt;&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;types&gt;&lt;/span&gt;. The &lt;span style="font-style: italic;font-family:courier new;font-size:85%;"  &gt;&amp;lt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;schema&gt;&lt;/span&gt; element cannot be a direct child of the &lt;span style="font-style: italic;font-family:courier new;font-size:85%;"  &gt;&amp;lt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;definitions&gt;&lt;/span&gt; element. In my broken sample, the schema is invisible, and therefore the element 'create-account' cannot be found. Check &lt;a href="http://www.rajkovic.org/ws/wsdl/annotatedBank.wsdl"&gt;the valid WSDL&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;To challenge your knowledge, here is another broken WSDL: &lt;a href="http://www.rajkovic.org/ws/wsdl/bads/annotatedBank2.wsdl"&gt;http://www.rajkovic.org/ws/wsdl/bads/annotatedBank2.wsdl&lt;/a&gt; . This is another common error that you may encounter while trying to author WSDL files by hand.&lt;br /&gt;&lt;br /&gt;Let see who can find the error...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-8740443221055510878?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/8740443221055510878/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=8740443221055510878' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/8740443221055510878'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/8740443221055510878'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2006/12/model-error-element-httpfoo-not-found.html' title='model error: element &quot;{http://...}foo&quot; not found'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-5333010424466766377</id><published>2006-12-17T18:45:00.000-08:00</published><updated>2006-12-17T19:04:33.709-08:00</updated><title type='text'>java.net.ConnectException: Connection refused</title><content type='html'>As I am still getting question related to this error, when using JDeveloper, I'll describe my troubleshooting tips here, so that it can be indexed by Google (and other search engines).&lt;br /&gt;&lt;br /&gt;If you can access the web resource from IE or Mozilla, but can't get the WSDL to work with JDeveloper, you are most likely facing a common issue. Your HTTP proxy setup may be incorrect.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://static.flickr.com/139/325575935_62bd606d60.jpg"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 200px;" src="http://static.flickr.com/139/325575935_62bd606d60.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Here is the screenshoot of the configuration from JDeveloper 10.1.3.1. Last time I used JDeveloper, I was using the HTTP Analyzer feature and I forgot to turn it off before to exit the application. When I re-started JDeveloper the next day, the proxy was still setup for port 8099.&lt;br /&gt;&lt;br /&gt;Here is a sample of the output you may get when you face this configuration error: &lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Buildfile: /Users/eric/devroot/build.xml&lt;/span&gt;  &lt;span style="font-family:courier new;"&gt;analyze:&lt;/span&gt; &lt;span style="font-family:courier new;"&gt;Failed to read wsdl file at: "http://www.rajkovic.org/ws/wsdl/bads/annotatedBank.wsdl", caused by: java.net.ConnectException.    : Connection refused&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Remember to stop HTTP Analyzer before to exit JDeveloper or to check your proxy setting often, and you will be OK.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-5333010424466766377?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/5333010424466766377/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=5333010424466766377' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/5333010424466766377'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/5333010424466766377'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2006/12/javanetconnectexception-connection.html' title='java.net.ConnectException: Connection refused'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-1101336239376514104</id><published>2006-12-16T19:04:00.000-08:00</published><updated>2006-12-16T19:12:08.465-08:00</updated><title type='text'>Broken WSDL, but why?</title><content type='html'>I have started to rely on the XML schema validation that is embedded in JDeveloper and forgot some of the basic check I was doing manually prior to that. &lt;br /&gt;&lt;br /&gt;To help improving on error reporting, so that we can make file easier for developers of Web Services, I'll try to compile a list of broken WSDLs, so that we can use them when looking for negative test scenario.&lt;br /&gt;&lt;br /&gt;Here is the first one: &lt;a href="http://www.rajkovic.org/ws/wsdl/bads/annotatedBank.wsdl"&gt;http://www.rajkovic.org/ws/wsdl/bads/annotatedBank.wsdl&lt;/a&gt;. You can try it, see what error you get and if it make any sense to you. Post a comment with the error you find in this WSDL :-)&lt;br /&gt;&lt;br /&gt;Have Fun !!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-1101336239376514104?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/1101336239376514104/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=1101336239376514104' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/1101336239376514104'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/1101336239376514104'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2006/12/broken-wsdl-but-why.html' title='Broken WSDL, but why?'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-8230601511777968676</id><published>2006-12-09T16:11:00.000-08:00</published><updated>2006-12-09T16:37:14.914-08:00</updated><title type='text'>Common JAXRPC error - unexpected element name</title><content type='html'>If you are using JAXRPC, there is an error message that may be hard to connect back to the root cause of the problem. The error message reads something like:&lt;br /&gt;unexpected element name: expected=&lt;span style="color: rgb(102, 0, 204);"&gt;FileMetadata&lt;/span&gt;, actual=&lt;span style="color: rgb(102, 0, 204);"&gt;{urn:FileUpload}FileMetadata&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;There may be multiple causes for this error message. The first you want to look at is the flavor of XML schema advertized in the WSDL.&lt;br /&gt;&lt;br /&gt;The default value for the &lt;span style="font-style: italic;"&gt;elementFormDefault&lt;/span&gt; attribute is &lt;span style="font-style: italic;"&gt;unqualified&lt;/span&gt; (see  &lt;a href="http://www.w3.org/TR/2004/PER-xmlschema-1-20040318/structures.html#element-schema"&gt;the w3c spec&lt;/a&gt;), which is what the error message above is trying to convey. In the schema section of your WSDL, make sure you can find the declaration: &lt;b&gt;&lt;span style=";font-family:Lucida Handwriting;font-size:85%;color:red;"   &gt;&lt;span style=""&gt;elementFormDefault="qualified"&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Sometime, this get lost in the edits of the WSDL file, and many Web Services toolkits wont validate on the consumer side (Axis and .NET are among those). If you cannot alter the original WSDL, make a local copy that you can use to generate your artifacts, then contact the service provider so that they can make the change. The WS-I tools should be able to help you detect this kind of issues with minimal efforts.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-8230601511777968676?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/8230601511777968676/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=8230601511777968676' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/8230601511777968676'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/8230601511777968676'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2006/12/common-jaxrpc-error-unexpected-element.html' title='Common JAXRPC error - unexpected element name'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-7591074749592464152</id><published>2006-12-08T23:22:00.000-08:00</published><updated>2006-12-08T23:51:59.808-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='life coaching'/><title type='text'>Who needs private coaching ?</title><content type='html'>&lt;a href="http://www.profcs.com/app/?af=528028"&gt;&lt;br /&gt;&lt;img style="margin: 10px; float: left; cursor: pointer; width: 225px;" src="http://www.myprivatecoach.com/myPrivateCoach/images/mpc_logo_225x50.gif" alt="Visit My Private Coach" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Having your own private coach did not seams like something anyone will ever be able to afford. With the rising new technologies behind web2.0, I may be proven wrong...&lt;br /&gt;&lt;br /&gt;I am still doing good with my programm to loose weight, as I have someone home that watch out for me (and my diet).&lt;br /&gt;&lt;br /&gt;If you are not as lucky as I am, maybe you should contact &lt;a href="http://www.profcs.com/app/?Clk=1728953"&gt;Coach Valerie&lt;/a&gt;!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-7591074749592464152?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/7591074749592464152/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=7591074749592464152' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/7591074749592464152'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/7591074749592464152'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2006/12/who-needs-private-coaching-for.html' title='Who needs private coaching ?'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-6208034843484610529</id><published>2006-11-30T22:48:00.000-08:00</published><updated>2006-11-30T23:36:04.413-08:00</updated><title type='text'>Googling and more...</title><content type='html'>Here are some pieces of Web2.0 I haved enjoyed today. I figure out I should share them.&lt;br /&gt;&lt;a href="http://www.infoq.com/presentations/effective-api-design"&gt;How to Design a Good API &amp; Why it Matters&lt;/a&gt; (1 hour worth listening too)&lt;br /&gt;&lt;br /&gt;&lt;a href="http://wanderingbarque.com/nonintersecting/2006/11/15/the-s-stands-for-simple/"&gt;The S stands for Simple&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I found this catching title funny: &lt;br /&gt; "&lt;span style="font-style: italic;"&gt;Want to be cool? Learn REST. Want a career? Learn WS.&lt;/span&gt;" &lt;br /&gt;&lt;br /&gt;learned that "&lt;a href="http://en.wikipedia.org/wiki/Google_%28verb%29"&gt;to Google&lt;/a&gt;" is now a verb that is on some dictionary - Thanks Antoine !!!&lt;br /&gt;&lt;br /&gt;found out &lt;a href="http://news.com.com/Apple+Cool+enough+for+your+granny/2100-1041_3-6139819.html?tag=nefd.top"&gt;why I have an iMac at home&lt;/a&gt; - Thanks Yobo !!! (you'll have one soon...)&lt;br /&gt;&lt;br /&gt;and finaly, tested  &lt;a href="http://www.punksoftware.com/ubericon"&gt;UberIcon&lt;/a&gt; from Punk Software - Thanks Olivier !!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-6208034843484610529?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/6208034843484610529/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=6208034843484610529' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/6208034843484610529'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/6208034843484610529'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2006/11/googling-and-more.html' title='Googling and more...'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-3913334846492156532</id><published>2006-11-18T12:01:00.000-08:00</published><updated>2006-11-18T14:39:16.317-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java jdeveloper'/><title type='text'>dmg for JDev 10.1.3.1 on MAC is available from OTN</title><content type='html'>I have missed the annoucement, so I figure other may also be looking for it:&lt;br /&gt;Check the &lt;a href="http://www.oracle.com/technology/software/products/jdev/htdocs/soft10131.html"&gt;OTN download page&lt;/a&gt; for the latest download.&lt;br /&gt;Another usefull page to bookmark are the &lt;a href="http://download.oracle.com/docs/cd/B31017_01/index.htm"&gt;Main Documentation&lt;/a&gt; and &lt;a href="http://download.oracle.com/docs/cd/B31017_01/web.htm"&gt;J2EE &amp; Web Services&lt;/a&gt; pages.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-3913334846492156532?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/3913334846492156532/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=3913334846492156532' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/3913334846492156532'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/3913334846492156532'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2006/11/dmg-for-jdev-10131-on-mac-is-available.html' title='dmg for JDev 10.1.3.1 on MAC is available from OTN'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-36217767137377184</id><published>2006-11-01T21:16:00.000-08:00</published><updated>2006-11-01T21:27:39.315-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java jdeveloper vista'/><title type='text'>Changing the version of JDK used by JDeveloper</title><content type='html'>I have recently learned a quick and lazy way to change the version of the JDK used to run JDeveloper 10g R3. I am sure there is an option somewhere in the configuration screen to do the same, which I couldn't find...&lt;br /&gt;&lt;br /&gt;While JDeveloper is not running, locate the embedded JDK on disk and rename (or delete) that directory. For me, it was C:\opt\jdev\jdk. Once it's done, restart and you will by asked to locate the version of the JDK you want to use.&lt;br /&gt;&lt;br /&gt;It's another step to get going with JAVA on Vista.&lt;br /&gt;&lt;br /&gt;-ecco&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-36217767137377184?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/36217767137377184/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=36217767137377184' title='9 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/36217767137377184'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/36217767137377184'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2006/11/changing-version-of-jdk-used-by.html' title='Changing the version of JDK used by JDeveloper'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>9</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-3278958499606148810</id><published>2006-10-30T17:59:00.000-08:00</published><updated>2006-10-30T19:08:47.176-08:00</updated><title type='text'>Running Java on Vista RC2, some tips...</title><content type='html'>As days go by, I am able to get more and more done on my desktop, but still to figure out how to get the productivity increase, as I was initially expecting from a modern OS.&lt;br /&gt;&lt;br /&gt;The last issues that I was facing was IPv6 vs. IPv4, and I have now been able to google the resource that  explain it all:  "&lt;a href="http://www.microsoft.com/technet/community/columns/cableguy/cg1005.mspx"&gt;The Cable Guy - October 2005&lt;/a&gt;" on MSDN, especially the 'Disabling IPv6' section.&lt;br /&gt;&lt;br /&gt;Unless you disable IPv6 on all interfaces, you will have to change your way to start java process. Here is my new way to launch JUnit tests from ant:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;lt;junit showoutput="true" fork="yes"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;jvmarg value="-Djava.net.preferIPv4Stack=true"&gt;&lt;br /&gt;...&lt;br /&gt;&lt;br /&gt;I had to use the same option when starting the server-side process for my J2EE container. As this is not exactly lightweight, I'll have to find a better way forward (most likely hack with the registry as advised by the &lt;a href="http://www.microsoft.com/technet/community/columns/cableguy/cg1005.mspx#EDH"&gt;Cable Guy&lt;/a&gt;). For some reason, I was expecting to find such information from the new integrated search features...&lt;br /&gt;&lt;br /&gt;Next, you will need to check the properties for the files and directories created when you unzip a file in place, using the embedded feature that come with Vista. All the files are read-only by default.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://static.flickr.com/107/284166234_603631e853_o.png"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 200px;" src="http://static.flickr.com/107/284166234_603631e853_o.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Last is the permission required to run any java process. I used to have a bunch of batch files pre-cooked to start my processes with different option (debug, verbose, ...), and keep all those shortcut on my desktop. Now, I am back to Linux land and need to remember to 'sudo' so that the process has enough privilege to do his job. In Vista, it's called "Run as administrator".&lt;br /&gt;&lt;br /&gt;When you have the cmd windows opened, remember to check the title bar every time you run into any failure during the execution of your processes or tests. I am still used to the double-click on my desktop icons instead of the 'right-click + run as' required.&lt;br /&gt;&lt;a href="http://www.flickr.com/photos/35045136@N00/284166239/" title="Remember to check for the username in the title of your windows..."&gt;&lt;img src="http://static.flickr.com/107/284166239_0984124da5_o.png" width="688" height="68" alt="vista-sudo-like" /&gt;&lt;/a&gt;&lt;br /&gt;Hope you will find this useful and that it will save you some time and frustration.&lt;br /&gt;-- Ecco&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-3278958499606148810?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/3278958499606148810/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=3278958499606148810' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/3278958499606148810'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/3278958499606148810'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2006/10/runing-java-on-vista-rc2-some-tips.html' title='Running Java on Vista RC2, some tips...'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-2561816848353073435</id><published>2006-10-27T00:33:00.000-07:00</published><updated>2006-10-27T00:40:06.626-07:00</updated><title type='text'>Vista RC2 - a better experience</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger2/174/1635/1600/download_on_RC2.png"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://photos1.blogger.com/blogger2/174/1635/200/download_on_RC2.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Earlier this week, I stop by Microsoft booth at Oracle Open World to check out Vista.&lt;br /&gt;&lt;br /&gt;Back home, I did burn the DVD of RC2 and try the system upgrade from RC1.&lt;br /&gt;&lt;br /&gt;It was just fine, and I am now back to normal network speed.&lt;br /&gt;&lt;br /&gt;If you think about giving Vista a trial, go directly to RC2 ;-)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-2561816848353073435?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/2561816848353073435/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=2561816848353073435' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/2561816848353073435'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/2561816848353073435'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2006/10/vista-rc2-better-experience.html' title='Vista RC2 - a better experience'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-1652785227051361229</id><published>2006-10-22T21:48:00.000-07:00</published><updated>2006-10-22T23:19:46.343-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='WCF Web Service tips'/><title type='text'>Connection reset from a WCF Web Service</title><content type='html'>Here is an error message you may see, when calling WCF Web Services from java:&lt;br /&gt;IOException retrieving the response: java.net.SocketException: Connection reset&lt;br /&gt;&lt;br /&gt;As it may not be obvious the first time you see it, this may save you some time.&lt;br /&gt;&lt;br /&gt;One reason for this behaviour is when the WCF endpint is expecting to see wsa:Action SOAP header in the request.&lt;br /&gt;&lt;br /&gt;To find out if you are facing this case, you have to look inside the WSDL, and search for the policy that describes the contract for your endpoint.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;&lt;br /&gt;&amp;lt;wsp:Policy wsu:Id="CustomBinding_Echo1_policy"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;lt;wsp:ExactlyOne&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;wsp:All&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;wsaw:UsingAddressing/&gt;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/wsp:All&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;lt;/wsp:ExactlyOne&gt;&lt;br /&gt;&amp;lt;/wsp:Policy&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;To make this a concrete example, here is a &lt;a href="http://131.107.72.15/WSAddressingCR_Service_WCF/WSAddressing10.svc?wsdl"&gt;sample WSDL&lt;/a&gt;. To find the policy, you will need to &lt;a href="http://131.107.72.15/WSAddressingCR_Service_WCF/WSAddressing10.svc?wsdl=wsdl1"&gt;follow the import&lt;/a&gt; as the policy are not always advertized in the top-level document.&lt;br /&gt;&lt;br /&gt;Here is how the import looks:&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;lt;wsdl:import namespace="http://example.org/" location="http://.../WSAddressing10.svc?wsdl=wsdl1"/&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;To get around this, make sure you have the proper wsa:Action value in the reques, as in this sample:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;&lt;br /&gt;&amp;lt;env:Header xmlns:wsa="http://www.w3.org/2005/08/addressing"&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&amp;nbsp;&amp;nbsp;&amp;lt;wsa:Action&gt;http://example.org/action/echoIn&amp;lt;/wsa:Action&gt;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;lt;wsa:ReplyTo&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;wsa:Address&gt;http://www.w3.org/2005/08/addressing/anonymous&amp;lt;/wsa:Address&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;lt;/wsa:ReplyTo&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;lt;wsa:To&gt;http://.../WSAddressing10.svc/Soap12&amp;lt;/wsa:To&gt;&lt;br /&gt;&amp;lt;/env:Header&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Another thing to watch for is the value used for the SOAP Action (SOAP 1.1) or the action attribute in the Content-type (for SOAP 1.2).&lt;br /&gt;&lt;br /&gt;Here is a SOAP 1.2 sample:&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;Content-type: application/soap+xml; charset=UTF-8;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;action="http://example.org/action/echoIn"&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Remember that the two value must be identical, for the messages to be processed by WCF. Otherwise, you will get a "connection reset" error message at best, or see the connection left open indefinitely.&lt;br /&gt;&lt;br /&gt;Happy SOA coding&lt;br /&gt;&lt;br /&gt;-Ecco&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-1652785227051361229?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/1652785227051361229/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=1652785227051361229' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/1652785227051361229'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/1652785227051361229'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2006/10/connection-reset-from-wcf-web-service.html' title='Connection reset from a WCF Web Service'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-8581519253987555089</id><published>2006-10-22T20:19:00.001-07:00</published><updated>2006-10-22T20:29:25.491-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='JDeveloper Funny'/><title type='text'>Productivity Hints</title><content type='html'>It's funny to see how creative developers can be when they are testing their features, or is this really that hard to slice Angel Cake?&lt;br /&gt;&lt;a href="http://www.flickr.com/photos/35045136@N00/275095513/" title="Angel Cake"&gt;&lt;img src="http://static.flickr.com/101/275095513_82554e5ade_o.png" alt="AngelCake"/&gt;&lt;/a&gt;&lt;br /&gt;Just a random screen, as I was starting the latest version of &lt;a href="http://www.oracle.com/technology/software/products/jdev/htdocs/soft10131.html"&gt;JDeveloper 10.1.3.1&lt;/a&gt; on my iMac.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-8581519253987555089?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/8581519253987555089/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=8581519253987555089' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/8581519253987555089'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/8581519253987555089'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2006/10/productivity-hints.html' title='Productivity Hints'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-116113727125949516</id><published>2006-10-17T18:41:00.000-07:00</published><updated>2006-10-18T22:07:22.791-07:00</updated><title type='text'>Going the Vista way</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://static.flickr.com/101/272744038_210517d3e1_m.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 200px;" src="http://static.flickr.com/101/272744038_210517d3e1_m.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;As a geek, and an iMac user at home, I had to try the newly released Windows Vista, after my recent trip to Redmond.&lt;br /&gt;&lt;br /&gt;Microsoft is even branding its refreshment after its new baby.&lt;br /&gt;&lt;br /&gt;After a clean install and a seamless connection on the corporate network, with access to the network printers and the shared disks on my linux systems, it was time to start reel work.&lt;br /&gt;&lt;br /&gt;My luck started to go south. Connecting my iPod shuffle on the keyboard's USB connector to access it as a memory stick did bring up an error pop-up.&lt;br /&gt;&lt;br /&gt;Next was a strange behavior when scrolling into my Java applications. After a quick email to the in-house guru, and a pointer to &lt;a href="http://weblogs.java.net/blog/chet/archive/2006/10/java_on_vista_y.html"&gt;this blog&lt;/a&gt;, I was back on track...&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://static.flickr.com/55/272611838_96d4d03ca9.jpg"&gt;&lt;img style="float:left; margin:10px 10px 0 0;cursor:pointer; cursor:hand;width: 320px;" src="http://static.flickr.com/55/272611838_96d4d03ca9.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Since this morning, I have been trying to download the latest JDK from Sun's web site, so that I can get my Java applications in a usable state, and I am back to the stone age on the modem speed.&lt;br /&gt;&lt;br /&gt;I'll need to figure out which setup I need to tweak to get back the the ligthning speed of modern computers.&lt;br /&gt;&lt;br /&gt;Let see how it goes. Hopefully, my next story will be on a better tone.&lt;br /&gt;&lt;br /&gt;10/18 Update - watch out for IPv6 vs. IPv4. Let's hope this is it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-116113727125949516?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/116113727125949516/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=116113727125949516' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/116113727125949516'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/116113727125949516'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2006/10/going-vista-way.html' title='Going the Vista way'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-115763921779520564</id><published>2006-09-07T07:23:00.000-07:00</published><updated>2006-10-18T22:07:22.701-07:00</updated><title type='text'>MTOM the Oracle way</title><content type='html'>I just saw &lt;a href="http://forums.oracle.com/forums/thread.jspa?threadID=419942"&gt;the annoncement&lt;/a&gt; from Tug on the OTN Web Services forum about a new HowTo: &lt;a href="http://www.oracle.com/technology/tech/java/oc4j/10131/how_to/how-to-ws-mtom/doc/how-to-ws-mtom.html"&gt;Use MTOM to Exchange Binary Data Using Web Services&lt;/a&gt; &lt;br /&gt;&lt;br /&gt;Nice work Tug! &lt;br /&gt;&lt;br /&gt;I hope this is the first in a long serie...&lt;br /&gt;&lt;br /&gt;-ecco&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-115763921779520564?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/115763921779520564/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=115763921779520564' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/115763921779520564'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/115763921779520564'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2006/09/mtom-oracle-way.html' title='MTOM the Oracle way'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-115717341816335053</id><published>2006-09-01T21:56:00.000-07:00</published><updated>2006-10-18T22:07:22.607-07:00</updated><title type='text'>2006-09-01: A Date To Remember</title><content type='html'>Today is a &lt;span style="font-style:italic;"&gt;big&lt;/span&gt; date for me and my new diet. &lt;br /&gt;&lt;br /&gt;The initial goal was to loose over 20 pounds. On the scale at the gym, the magic number was 22!!! &lt;span style="font-weight:bold;"&gt;&lt;br /&gt;&lt;br /&gt;Yes&lt;/span&gt;, 22 pounds since I started in early July after our vacation in southern California.&lt;br /&gt;&lt;br /&gt;Let see where I go from here...&lt;br /&gt;&lt;br /&gt;-ecco&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-115717341816335053?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/115717341816335053/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=115717341816335053' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/115717341816335053'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/115717341816335053'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2006/09/2006-09-01-date-to-remember.html' title='2006-09-01: A Date To Remember'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-115579030688232648</id><published>2006-08-16T21:00:00.000-07:00</published><updated>2006-10-18T22:07:22.518-07:00</updated><title type='text'>Oracle SOA Suite 10.1.3 Developer Preview</title><content type='html'>In case you did not see the news, the new &lt;a href="http://www.oracle.com/technology/software/products/ias/soapreview.html"&gt;Oracle SOA Suite 10.1.3 Developer Preview&lt;/a&gt; is available from OTN for download. Check it out !!! &lt;br /&gt;&lt;br /&gt;In the Web Services front, there are some new features available to make your life easier. Over the next weeks, I'll try it out on my new home computer and share some of the findings here.&lt;br /&gt;&lt;br /&gt;To share you experience and give us feedback, visit the &lt;a href="http://forums.oracle.com/forums/forum.jspa?forumID=97"&gt;Web Services&lt;/a&gt; forum on OTN.&lt;br /&gt;&lt;br /&gt;-ecco&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-115579030688232648?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/115579030688232648/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=115579030688232648' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/115579030688232648'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/115579030688232648'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2006/08/oracle-soa-suite-1013-developer.html' title='Oracle SOA Suite 10.1.3 Developer Preview'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-115363849469313820</id><published>2006-07-23T00:00:00.000-07:00</published><updated>2006-10-18T22:07:22.431-07:00</updated><title type='text'>.NET Web Service response is null on client side</title><content type='html'>If you are trying to use a .NET client to invoke some Web Service, and you are getting an empty result (or return value) one of the possible explaination is that the format of the SOAP response on the wire does not match the format advertise in the WSDL.&lt;br /&gt;&lt;br /&gt;Unlike most JAX-RPC stacks who will fault in such case, when deserialization fails (XML 2 JAVA), the .NET stack ignore the unexpected nodes, and continue processing with the default value for the types, based on the CLR dafault behaviour.&lt;br /&gt;&lt;br /&gt;When you are in doubt, remember to capture the SOAP payload for manual introspection and try with another client stack.&lt;br /&gt;&lt;br /&gt;-ecco&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-115363849469313820?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/115363849469313820/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=115363849469313820' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/115363849469313820'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/115363849469313820'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2006/07/net-web-service-response-is-null-on.html' title='.NET Web Service response is null on client side'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-115354319585159548</id><published>2006-07-21T21:32:00.000-07:00</published><updated>2006-10-18T22:07:22.338-07:00</updated><title type='text'>A Book on Database Web Services</title><content type='html'>For those that want to interface the Oracle Database with Web Service, there is a nice book just good released for you: &lt;a href="http://www.amazon.com/gp/product/1555583296/103-0558210-7564612?v=glance&amp;n=283155"&gt;&lt;span style="font-style: italic;"&gt;Oracle Database Programming Using Java and Web Services&lt;/span&gt;&lt;/a&gt;, by &lt;a href="http://db360.blogspot.com/"&gt;Kuassi Mensah&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-115354319585159548?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/115354319585159548/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=115354319585159548' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/115354319585159548'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/115354319585159548'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2006/07/book-on-database-web-services.html' title='A Book on Database Web Services'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-115224472593137106</id><published>2006-07-06T20:51:00.000-07:00</published><updated>2006-10-18T22:07:22.250-07:00</updated><title type='text'>Finding messages with HTTP Analyzer</title><content type='html'>I got catch by surprise a few times, trying to capture SOAP messages with JDeveloper's integrated HTTP Analyzer and figured out it's worth sharing with others. Here it is.&lt;br /&gt;&lt;br /&gt;When using JDeveloper's HTTP Analyzer to capture messages exchanges, I sometime get the wrong proxy setting, forget about it, fix it and try to run, run and run without to see any message captured. In reallity, messages are captured but are not displayed when you keep the focus on the Data pane.&lt;br /&gt;&lt;br /&gt;Remember to watch the next/previous message buttons in the toolbar. If they are blue (not disabled), you have message captured, as shown in Figure 2. Just click on the button to display one of the messages. You can also switch back to the history pane, as shown in Figure 3.&lt;br /&gt;&lt;br /&gt;Here are the screens, with some hint highlighted with red-circle.&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;img src="http://static.flickr.com/53/183820171_c3fac4c386_o.png" alt="HtmlAnalyzerNoContent" height="254" width="546" /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;span style="font-style: italic;"&gt;Figure 1 - HTML Analyzer with focus on the Data pane&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;img src="http://static.flickr.com/74/183820172_7a43ac3c68_o.png" alt="HtmlAnalyzerWithContent" height="254" width="546" /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;span style="font-style: italic;"&gt;Figure 2 - Same HTML Analyzer with focus on the Data pane, after running the test&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style="font-style: italic;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: center;"&gt;&lt;img src="http://static.flickr.com/60/183820170_70d5cb4a4d_o.png" alt="HtmlAnalyzerHistory" height="254" width="546" /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;span style="font-style: italic;"&gt;Figure 3 - HTML Analyzer with focus on the History pane&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;Hope this will save you some time and frustration.&lt;br /&gt;-ecco&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-115224472593137106?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/115224472593137106/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=115224472593137106' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/115224472593137106'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/115224472593137106'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2006/07/finding-messages-with-http-analyzer.html' title='Finding messages with HTTP Analyzer'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-115216549623261214</id><published>2006-07-05T22:45:00.000-07:00</published><updated>2006-10-18T22:07:22.140-07:00</updated><title type='text'>Ted Neward on Web Services</title><content type='html'>If you are into Web Service, and are trying to understand where the industry is going, you should take a few minutes and listen to this interview on the ServerSide:  &lt;a href="http://www.theserverside.com/tt/tss?service=page/TechTalksLibrary#neward06"&gt;Ted Neward - Web Services and Security&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;If you don't have the time to check it out, here are some highlight from the transcript:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;I have to go to each of the vendors and I have to beat them over the head with a two-by-four to stop making web services look like RPC calls.&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;Start from your code, just sprinkle some web service magic pixie dust on it and lo and behold you have a web service, bad things, bad, bad, bad, bad. I need to beat the vendors over the head to stop doing that... That’s just not going to work.&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;If you're out there today building a web service and you're not downloading the other platform and working with that as part of your test suites. If you're building a Java web service, you have to download the .NET framework, you have to download NUnit and you have to write your unit tests as NUnit .NET unit tests. If you're not doing that you're fooling yourself.&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;If you just want to do CORBA with angle brackets, fine, you can do it, but don’t be surprised when partners come to you and say it doesn’t work and when you tell them, “Well, that’s because the problem is on your end”.&lt;/li&gt;&lt;/ul&gt;But you should find the time to listen to Ted's interview!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-115216549623261214?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/115216549623261214/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=115216549623261214' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/115216549623261214'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/115216549623261214'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2006/07/ted-neward-on-web-services.html' title='Ted Neward on Web Services'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-115216329048738902</id><published>2006-07-05T22:14:00.000-07:00</published><updated>2006-10-18T22:07:22.057-07:00</updated><title type='text'>unacceptable symbols</title><content type='html'>Recently, as I was following our IT policies and run Windows Update, I got the following message:&lt;br /&gt;&lt;span style="font-style:italic;"&gt;"This item updates the Bookshelf Symbol 7 font included in some Microsoft products. The font has been found to contain unacceptable symbols. After you install this item, you may have to restart your computer."&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;How can Microsoft expect you will run your business on Windows 2003 Advanced Server and  be OK the restart your computer for a silly font with a symbol in the wrong place?&lt;br /&gt;&lt;br /&gt;I don't get it...&lt;br /&gt;&lt;br /&gt;For the full story, check this &lt;a href="http://semanticcompositions.typepad.com/index/2004/05/unacceptable_sy.html"&gt;detailed blog entry&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-115216329048738902?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/115216329048738902/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=115216329048738902' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/115216329048738902'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/115216329048738902'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2006/07/unacceptable-symbols.html' title='unacceptable symbols'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-114931541650234147</id><published>2006-06-02T22:55:00.000-07:00</published><updated>2006-10-18T22:07:21.921-07:00</updated><title type='text'>Failed to find wsa.jar.</title><content type='html'>Just realized as I am working on some sample code with JDeveloper 10.1.3 and the WSA ant targets that there is a warning that can be missleading to new users.&lt;br /&gt;&lt;br /&gt;Here is what you see in the 'Apache Ant - Log' window:&lt;br /&gt;&lt;pre style="color: rgb(51, 51, 255);"&gt;Buildfile: C:\dev\howto\xml-client\build.xml&lt;br /&gt;&lt;br /&gt;genproxy:&lt;br /&gt;Failed to find wsa.jar.&lt;br /&gt;&lt;/pre&gt;&lt;pre style="color: rgb(0, 153, 0);"&gt;BUILD SUCCESSFUL&lt;br /&gt;Total time: 11 seconds&lt;/pre&gt;&lt;br /&gt;In my environment, with the build.properties file generated by JDeveloper, the issue was that the environment variable used a relative path.&lt;br /&gt;&lt;br /&gt;#Wed May 31 23:39:13 PDT 2006&lt;br /&gt;javac.debug=on&lt;br /&gt;oracle.home=../../../opt/jdev/&lt;br /&gt;...&lt;br /&gt;&lt;br /&gt;WSA is looking for oracle.home or oc4j.home to locate oc4j.home/webservices/lib/wsa.jar&lt;br /&gt;&lt;br /&gt;Using an absolute path is all it takes to get ride of the extra warning.&lt;br /&gt;#Wed May 31 23:39:13 PDT 2006&lt;br /&gt;javac.debug=on&lt;br /&gt;oracle.home=/opt/jdev/&lt;br /&gt; ...&lt;br /&gt;&lt;br /&gt;For more details, see &lt;a href="http://download-west.oracle.com/docs/cd/B25221_01/web.1013/b14434/gettingstart.htm#CHDFBEAC"&gt;'Setting Up Ant for WebServicesAssembler'&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;No big deal, just noise.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-114931541650234147?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/114931541650234147/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=114931541650234147' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/114931541650234147'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/114931541650234147'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2006/06/failed-to-find-wsajar.html' title='Failed to find wsa.jar.'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-114930771597175578</id><published>2006-06-02T21:08:00.000-07:00</published><updated>2006-10-18T22:07:21.839-07:00</updated><title type='text'>Susan Duncan Filtering the Muddy Waters of Web Services, SOA, Oracle ADF and tools</title><content type='html'>Susan, welcome to the blogsphere.&lt;br /&gt;Here is a new resource for SOA and Web Services:&lt;a href="http://www.susanduncan.blogspot.com/"&gt;Susan Duncan Filtering the Muddy Waters of Web Services, SOA, Oracle ADF and tools&lt;/a&gt;. If you are looking for some pointers to get your WSS services going, you should at it to your feed. &lt;br /&gt;&lt;br /&gt;-ecco.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-114930771597175578?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/114930771597175578/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=114930771597175578' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/114930771597175578'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/114930771597175578'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2006/06/susan-duncan-filtering-muddy-waters-of.html' title='Susan Duncan Filtering the Muddy Waters of Web Services, SOA, Oracle ADF and tools'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-114764446130574245</id><published>2006-05-14T15:03:00.000-07:00</published><updated>2006-10-18T22:07:21.772-07:00</updated><title type='text'>Just for Fun</title><content type='html'>&lt;p&gt;&lt;img src="http://static.flickr.com/55/146448187_9e8e1f14cf_o.jpg" border="10" width="85" height="85" alt="idiot outsides" align="right"/&gt;Sometime, a picture is worth a thousand words. This one says it all. In other words, when it does not works as expected, "the problem is most likely between the chair and the keyborad", another version of R.T.F.M.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-114764446130574245?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/114764446130574245/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=114764446130574245' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/114764446130574245'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/114764446130574245'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2006/05/just-for-fun.html' title='Just for Fun'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-114662842476623451</id><published>2006-05-02T20:49:00.000-07:00</published><updated>2006-10-18T22:07:21.701-07:00</updated><title type='text'>JDeveloper's WSDL Editor - how to get better clues</title><content type='html'>Recently, I have been helping customers with broken WSDL files. I decided it would be valuable to others as well. Here are my 2 tips.&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;JDeveloper Editor&lt;/li&gt;&lt;br /&gt;As you can see in the screen shoot below, you can get usefull hint from the WSDL editor in &lt;a href="http://www.oracle.com/technology/products/jdev/index.html"&gt;JDeveloper 10g R3&lt;/a&gt;:&lt;br /&gt;&lt;ol&gt;&lt;br /&gt;&lt;li&gt;Switch the Editor view from Design to Source.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;If there is any syntax error, you will see some orange or red on the right side of the screen.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;If you mouse-over the lines that are underline in orange or red, you will see the pop-up window with some information describing the syntax error. In &lt;a href="http://forums.oracle.com/forums/message.jspa?messageID=1281865"&gt;this case&lt;/a&gt;, there is something wrong with the &lt;span style="font-weight: bold;"&gt;&amp;lt;include&gt;&lt;/span&gt; element.&lt;/li&gt;&lt;br /&gt;&lt;/ol&gt;&lt;br /&gt;&lt;a href="http://www.flickr.com/photos/35045136@N00/139522357/" title="Photo Sharing"&gt;&lt;img src="http://static.flickr.com/45/139522357_5a4729ece8.jpg" alt="WSDL Editor" height="256" width="500" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Once you have the first hint, you are on the right path to solve your problem. The next step is to compare the broken WSDL with other valid samples. It becomes easier to figure out that the include element need to be wrapped and is not in the expected namespace.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;lt;wsdl:types&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;schema xmlns="http://www.w3.org/2001/XMLSchema"&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;targetNamespace="http://ws.cegetel.com/unautrens"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;import namespace="http://vs.cegetel.com"       schemaLocation="./test1.xsd"/&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/schema&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;lt;/wsdl:types&gt;&lt;br /&gt;Finding that include should be replace with import may be a little harder to figure out, at first. &lt;br /&gt;&lt;br /&gt;&lt;li&gt;WSA ant task analyze&lt;/li&gt;&lt;br /&gt;Another powerfull tool in your toolbox is the &lt;span style="font-style: italic;"&gt;analyze&lt;/span&gt; task. Here is a very simple ant script that  can be used, within JDeveloper:&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;lt;project name="otn" basedir="." xmlns:o="antlib:oracle"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;property file="build.properties"/&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;target name="check-wsdl"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;o:analyze wsdl="./src/test.wsdl"/&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/target&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;lt;/project&gt;&lt;br /&gt;&lt;br /&gt;The error message, when you execute the target 'check-wsdl' will give you another hint: &lt;br /&gt;&lt;span style="font-style:italic;"&gt;model error: element "{http://vs.cegetel.com}creerContracSimp" not found.&lt;/span&gt;&lt;br /&gt;'creerContracSimp' is defined in test1.xsd but is not found by the WSDL processor. This is the second hint that guide you toward the invalid include element.&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;With the two tools combined, you are in good hands.&lt;br /&gt;&lt;br /&gt;Hope you will find this usefull.&lt;br /&gt;-ecco&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-114662842476623451?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/114662842476623451/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=114662842476623451' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/114662842476623451'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/114662842476623451'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2006/05/jdevelopers-wsdl-editor-how-to-get.html' title='JDeveloper&apos;s WSDL Editor - how to get better clues'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-114594049268247746</id><published>2006-04-24T21:38:00.000-07:00</published><updated>2006-10-18T22:07:21.637-07:00</updated><title type='text'>BPEL Process Tracing</title><content type='html'>When you are dealing with Web services, there is a common problem that you have to deal with; Capturing SOAP request/response as they flow on the wire between the client and the service endpoint.&lt;br /&gt;&lt;br /&gt;Tug's &lt;a href="http://www.grallandco.com/blog/archives/2006/04/oracle_bpel_deb.html"&gt;blog entry&lt;/a&gt; give you all the steps required to be successful with the setup, when using Oracle BPEL process manager.&lt;br /&gt;&lt;br /&gt;I have to try using Tug's instruction in conjunction to &lt;a href="http://www.mindreef.com/products/soapscope/index.php"&gt;Mindreef's SOAPscope&lt;/a&gt; to see how it works. At first, it looks very promising.&lt;br /&gt;&lt;br /&gt;-ecco&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-114594049268247746?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/114594049268247746/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=114594049268247746' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/114594049268247746'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/114594049268247746'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2006/04/bpel-process-tracing.html' title='BPEL Process Tracing'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-114567343058765687</id><published>2006-04-21T19:32:00.000-07:00</published><updated>2006-10-18T22:07:21.561-07:00</updated><title type='text'>Having Fun playing on the Internet</title><content type='html'>If you are looking for something to do over the weekend, as the rain returns here are some cool links I wanted to share:&lt;br /&gt;&lt;br /&gt;For the youngsters: Visit &lt;a href="http://www.jigkids.com/"&gt;http://www.jigkids.com/&lt;/a&gt; and complete your own puzzle online.&lt;br /&gt;&lt;br /&gt;For the older: &lt;a href="http://sudoku-factory.com/SudokuDuJour/SudokuDuJourPDF.php"&gt;The Sudoku of the day&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;And for the rest of us, just a little reading from the &lt;a href="http://www.darwinawards.com/darwin/index_darwin2005.html"&gt;2005 Darwin Awards&lt;/a&gt; finalists.&lt;br /&gt;&lt;br /&gt;-ecco&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-114567343058765687?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/114567343058765687/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=114567343058765687' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/114567343058765687'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/114567343058765687'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2006/04/having-fun-playing-on-internet.html' title='Having Fun playing on the Internet'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-114560220252091758</id><published>2006-04-20T23:27:00.000-07:00</published><updated>2006-10-18T22:07:21.478-07:00</updated><title type='text'>Web Services and XML Documents</title><content type='html'>For some it's obvious. As it was not for me, I decided to put it on e-paper so that you can google this when you need it.&lt;br /&gt;&lt;br /&gt;If you want to exchange XML Document, meaning the whole content of an XML file, with Web services, you should not use org.w3c.dom.Document or any other object representation of your XML DOM tree in your method signature. Instead, you should be using a Plain Old Types (POT) like String or byte[].&lt;br /&gt;&lt;br /&gt;Take the following code sample, here using JSR-181 annotations:&lt;br /&gt;&lt;code&gt;&lt;br /&gt;@WebMethod&lt;br /&gt;public Document getDocument(String input) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;Document res = null;&lt;br /&gt;&amp;nbsp;&amp;nbsp;try {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;DOMParser builder = new DOMParser();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;builder.parse(new StringReader(STR_XML_DOCUMENT));&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;res = builder.getDocument();&lt;br /&gt;&amp;nbsp;&amp;nbsp;} catch (Exception ex) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ex.printStackTrace();&lt;br /&gt;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;return res;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;private static final String STR_XML_DOCUMENT =&lt;br /&gt;&amp;nbsp;&amp;nbsp;"&amp;lt;?xml version=\"1.0\"?&gt;\n" + &lt;br /&gt;&amp;nbsp;&amp;nbsp;"&amp;lt;!DOCTYPE module PUBLIC\n" +&lt;br /&gt;&amp;nbsp;&amp;nbsp;"\"-//Puppy Crawl//DTD Check Configuration 1.2//EN\"\n" +&lt;br /&gt;&amp;nbsp;&amp;nbsp;"\"http://www.puppycrawl.com/dtds/configuration_1_2.dtd\"&gt;\n" +&lt;br /&gt;&amp;nbsp;&amp;nbsp;"\n" + "&amp;lt;module name=\"Checker\"&gt;\n" +&lt;br /&gt;&amp;nbsp;&amp;nbsp;" &amp;lt;!-- Comments are safe --&gt;\n" +&lt;br /&gt;&amp;nbsp;&amp;nbsp;" &amp;lt;metadata name=\"com.atlas-sw.eclipse\" value=\"I like &amp;nbsp;&amp;nbsp;Sydney\"/&gt;\n" +&lt;br /&gt;&amp;nbsp;&amp;nbsp;"&amp;lt;/module&gt;";&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;You will be able to assemble and deploy the service endpoint just fine, but it may not behaves as once could expect. The SOAP Response carries only the inner Element; the &lt;strong&gt;&amp;lt;module&gt;&lt;/strong&gt; node.&lt;br /&gt;&lt;code&gt;&lt;br /&gt;&amp;lt;?xml version="1.0" encoding="UTF-8"?&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;lt;env:Envelope &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;xmlns:xsd="http://www.w3.org/2001/XMLSchema"&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;xmlns:ns0="http://rajkovic.org/types/"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;lt;env:Body&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;ans1:getDocumentResponse &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;xmlns:ans1="http://rajkovic.org/"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;ns0:return&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;module name="Checker"&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;lt;metadata name="com.atlas-sw.eclipse" value="I like Sydney"/&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/module&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/ns0:return&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/ans1:getDocumentResponse&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;lt;/env:Body&gt;&lt;br /&gt;&amp;lt;/env:Envelope&gt;&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;If the PI, CDATA or comments are important to you, using org.w3c.dom.Document or org.w3c.dom.Element is not an option. Instead, you should be using xsd:string or some binary data type like byte[].&lt;br /&gt;&lt;br /&gt;-ecco&lt;br /&gt;&lt;br /&gt;ps. This information is based on the current 10.1.3.0 release of JDeveloper.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-114560220252091758?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/114560220252091758/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=114560220252091758' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/114560220252091758'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/114560220252091758'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2006/04/web-services-and-xml-documents.html' title='Web Services and XML Documents'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-114403941141438410</id><published>2006-04-02T20:34:00.000-07:00</published><updated>2006-10-18T22:07:21.411-07:00</updated><title type='text'>unexpected null value for literal data</title><content type='html'>&lt;p class="MsoNormal"&gt;There is a challenge that is hard to overcome at first; making sense of error messages.&lt;/p&gt; &lt;p class="MsoNormal"&gt;You can always Google with the text of the error, &lt;a href="http://www.google.com/search?hl=en&amp;q=unexpected+null+value+for+literal+data&amp;amp;btnG=Google+Search"&gt;“unexpected null value for literal data”&lt;/a&gt; and hope to be &lt;a href="http://www.google.com/search?hl=en&amp;q=unexpected+null+value+for+literal+data&amp;amp;btnG=Google+Search&amp;btnI=I%27m+Feeling+Lucky"&gt;lucky&lt;/a&gt;. If you are using Oracle Application Server 10.1.3.0, here is the explaination for the message and two ways out.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;The Exception:&lt;br /&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;/p&gt;&lt;blockquote&gt;&lt;p class="MsoNormal"&gt;unexpected null value for literal data&lt;br /&gt;at oracle.j2ee.ws.common.util.exception.JAXRPCExceptionBase.&amp;lt;init&gt;(JAXRPCExceptionBase.java:52)&lt;br /&gt;at oracle.j2ee.ws.common.encoding.SerializationException.&amp;lt;init&gt;(SerializationException.java:26)&lt;br /&gt;...&lt;br /&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p class="MsoNormal"&gt;The relevant schema:&lt;br /&gt;&lt;/p&gt;&lt;blockquote&gt;&lt;p class="MsoNormal"&gt;&amp;lt;complexType name="Customer"&gt;&lt;br /&gt;&amp;lt;sequence&gt;&lt;br /&gt;  &amp;lt;element name="address" type="tns:Address"/&gt;&lt;br /&gt;  &amp;lt;element name="firstName" type="string"/&gt;&lt;br /&gt;         &amp;lt;element name="lastName" type="string"/&gt;&lt;br /&gt;&amp;lt;/sequence&gt;&lt;br /&gt;&amp;lt;/complexType&gt;&lt;br /&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p class="MsoNormal"&gt;A sample code that will cause this exception:&lt;br /&gt;&lt;/p&gt;&lt;blockquote&gt;public void testServ() throws Exception {&lt;br /&gt;  ServiceSoapHttpPortClient service = new ServiceSoapHttpPortClient();&lt;br /&gt;&lt;br /&gt;  Customer c = new Customer();&lt;br /&gt;     c.setFirstName("eric");&lt;br /&gt;  c.setLastName("rajkovic");&lt;br /&gt;     service.echoCustomer(c);&lt;br /&gt;}&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;The problem: Based on the schema definition, the Address is required for every Customer instance. This is because the default value for the minOccurs attribute is 1.&lt;p&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;The ways out: i) make sure that you do not use any '&lt;span style="font-style: italic;"&gt;null&lt;/span&gt;' value in your Java code for inputs that are mendatories, based on the schema definition or ii) make the element optional in the schema. This second option will be especially handy if you have a large number of complex types nested in your schema and the server is OK with missing input elements.&lt;br /&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;i) modified client code:&lt;br /&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;/p&gt;&lt;blockquote&gt;public void testServ() throws Exception {&lt;br /&gt;  ServiceSoapHttpPortClient service = new ServiceSoapHttpPortClient();&lt;br /&gt;&lt;br /&gt;      Customer c = new Customer();&lt;br /&gt;      c.setFirstName("eric");&lt;br /&gt;      c.setLastName("rajkovic");&lt;br /&gt;  &lt;span style="font-weight: bold;"&gt;    Address a = new Address();&lt;/span&gt;&lt;br /&gt;  &lt;span style="font-weight: bold;"&gt;    a.setStreet("street name");&lt;/span&gt;&lt;br /&gt;  &lt;span style="font-weight: bold;"&gt;    c.setAddress(a);&lt;/span&gt;&lt;br /&gt;       service.echoCustomer(c);&lt;br /&gt;}&lt;br /&gt;&lt;/blockquote&gt;ii) modified XML Schema&lt;br /&gt;&lt;p&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;/p&gt;&lt;blockquote&gt;&amp;lt;complexType name="Customer"&gt;&lt;br /&gt;&amp;lt;sequence&gt;&lt;br /&gt;           &amp;lt;element name="address" type="tns:Address" &lt;span style="font-weight: bold;"&gt;minOccurs="0"&lt;/span&gt;/&gt;&lt;br /&gt;           &amp;lt;element name="firstName" type="string"/&gt;&lt;br /&gt;           &amp;lt;element name="lastName" type="string"/&gt;&lt;br /&gt;     &amp;lt;/sequence&gt;&lt;br /&gt;&amp;lt;/complexType&gt;&lt;/blockquote&gt;It's the drawback of trying to be strict and avoid serialiazing data that may be rejected by a strict service endpoint.&lt;br /&gt;&lt;br /&gt;-ecco&lt;br /&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/13394094-114403941141438410?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/114403941141438410/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=114403941141438410' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/114403941141438410'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/114403941141438410'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2006/04/unexpected-null-value-for-literal-data.html' title='unexpected null value for literal data'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-114384770379672409</id><published>2006-03-31T15:28:00.000-08:00</published><updated>2006-10-18T22:07:21.328-07:00</updated><title type='text'>360 Degree DB Programming</title><content type='html'>Welcome to the blogging world, Kuassi. &lt;br /&gt;&lt;br /&gt;I'll have to check &lt;a href="http://db360.blogspot.com/"&gt;360 Degree DB Programming&lt;/a&gt; and learn new tips and tricks from you.&lt;br /&gt;&lt;br /&gt;Goog luck with this new endhavour :-)&lt;br /&gt;-ecco&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-114384770379672409?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/114384770379672409/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=114384770379672409' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/114384770379672409'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/114384770379672409'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2006/03/360-degree-db-programming.html' title='360 Degree DB Programming'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-114378336580489711</id><published>2006-03-30T21:27:00.000-08:00</published><updated>2006-10-18T22:07:21.260-07:00</updated><title type='text'>XML processor or Regex, that is the question.</title><content type='html'>&lt;p class="MsoNormal"&gt;Sometime, you have to wonder why something works the way it does. &lt;/p&gt;     &lt;p class="MsoNormal"&gt;The most recent time I had to scratch my head, was when trying to showcase the integration of Web services with the Office 2003 Research pane. It let me wonder what SOAP toolkit is used to build the client side piece. The answer came from the wire; some homegrown client, identified as 'Microsoft Office/11.0 (Windows NT 5.2; Microsoft Office 11.0.6568; Pro)' in the user-agent field.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;     &lt;p class="MsoNormal"&gt;If you scope the namespace as Microsoft expects them to be, based on &lt;a href="http://office.microsoft.com/Research/query.asmx?WSDL"&gt;the WSDL they advertise&lt;/a&gt;, or include a whitespace between the parameter element and the registration response, it won't work. And the error is displayed as "No services were added because the service provider did not provide any valid information." - not exactly true...&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;       &lt;p class="MsoNormal"&gt;When you put this is context of other papers, like &lt;span style="text-decoration: underline;"&gt;&lt;/span&gt;&lt;a href="http://www.cs.auckland.ac.nz/%7Epgut001/pubs/xmlsec.txt"&gt;'Why XML Security is Broken'&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;, it make it all clear - The XML processing is most likely limited to some kind of &lt;span style=""&gt;&lt;/span&gt;optimized text processor that's only serving one purpose: extract the business data from the SOAP wrapper as fast as possible. As I was hutting for some hint, I discovered that the Office 2003 research pane accepts either literal or encoded response. &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;     &lt;p class="MsoNormal"&gt;Nowadays, Web services and SOAP are only used as a transport channel for Plain Old Text (or binary data). Do not try to mix the schema that describes the operations and the underlying business objects.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;     &lt;p class="MsoNormal"&gt;It’s kind of sad to see that we cannot use XML as a native format inside the SOAP envelope.&lt;br /&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;-ecco&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-114378336580489711?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/114378336580489711/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=114378336580489711' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/114378336580489711'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/114378336580489711'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2006/03/xml-processor-or-regex-that-is.html' title='XML processor or Regex, that is the question.'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-114031737830596521</id><published>2006-02-18T18:34:00.000-08:00</published><updated>2006-10-18T22:07:21.192-07:00</updated><title type='text'>Can I dance with you?</title><content type='html'>&lt;span style="font-style: italic;"&gt;I don't know how to Tango, but I still want to dance  with you.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;I just came across Harold's blog entry about Sun's &lt;a href="http://weblogs.java.net/blog/haroldcarr/archive/2006/02/an_overview_of_1.html"&gt;project Tango&lt;/a&gt; and  Arun's   "&lt;a style="font-style: italic;" href="http://weblogs.java.net/blog/arungupta/archive/2006/02/it_takes_two_to_1.html"&gt;It takes 2 to tango&lt;/a&gt;" post. As they put it, the focus is to have interop working between Sun and Microsoft.   What about the other platforms? Hopefully, we will get back to the 'true interop' model and the  n*m  spirit  of SOAPBuilder. It will benefit all users of Web services, and make investment in the technologie worthwile.&lt;br /&gt;&lt;br /&gt;From the outcome of the plugfest event, you get the guaranty that you will be able to call Microsoft endpoints from your platform and that you can host Microsoft-friendly services, that customer's of the .NET platform can consume.&lt;br /&gt;&lt;br /&gt;The missing piece:  any  level  of confidence that your customers will be able to consume your own flavor of WSDL, if you are not using the Microsoft style and formats - see my &lt;a href="http://ws-rx.blogspot.com/2006/01/ms-office-2003-generated-code-with-no.html"&gt;post on Office 2003&lt;/a&gt; for such example, were the WSDL is following the WS-I profile but fails to mimic some Microsoft secret-sauce.&lt;br /&gt;&lt;br /&gt;Hope that the &lt;a href="http://groups.yahoo.com/group/soapbuilders/"&gt;SOAPbuilder&lt;/a&gt; community can  find a way to get  back some traction - "whatever happened to interop testing" thread may tell us ...&lt;br /&gt;&lt;br /&gt;-Ecco&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-114031737830596521?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/114031737830596521/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=114031737830596521' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/114031737830596521'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/114031737830596521'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2006/02/can-i-dance-with-you.html' title='Can I dance with you?'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-113937868551164040</id><published>2006-02-07T21:48:00.000-08:00</published><updated>2006-10-18T22:07:21.128-07:00</updated><title type='text'>Where is my code ?</title><content type='html'>Just find a new 'feature' in JDeveloper 10gR3 that was surprising at first. When you use the "Create Web Service Proxy" wizard, there is only one icon in the Application Navigator. Trying to locate the java classes by opening the packages structure won't work.&lt;br /&gt;&lt;img src="http://static.flickr.com/25/96188345_f0b0e6a8b2_o.png" width="304" height="299" alt="ApplicationNavigator" /&gt;&lt;br /&gt;Here are two options:&lt;br /&gt;&lt;ol&gt;   &lt;li&gt;Switch to the System Navigator.&lt;/li&gt;&lt;br /&gt;&lt;img src="http://static.flickr.com/30/96188346_69b07387d0.jpg" width="304" height="299" alt="SystemNavigator" /&gt;&lt;br /&gt;   &lt;li&gt;Open the Structure pane and select the proxy node - the 'Round4XSDTestProxy' node in the Application Navigator. The content of the structure pane will list all the classes, including the Client class that contains the main method for your quick tests.&lt;/li&gt; &lt;br /&gt;&lt;img src="http://static.flickr.com/26/96188347_41d5829f76.jpg" width="361" height="340" alt="Structure" /&gt;&lt;br /&gt;&lt;/ol&gt;Happy coding,&lt;br /&gt;-Ecco&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-113937868551164040?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/113937868551164040/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=113937868551164040' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/113937868551164040'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/113937868551164040'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2006/02/where-is-my-code.html' title='Where is my code ?'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-113869207388080179</id><published>2006-01-30T23:04:00.000-08:00</published><updated>2006-10-18T22:07:21.057-07:00</updated><title type='text'>Oracle Application Server 10g Release 3</title><content type='html'>The 10.1.3.0 has been going live over the weekend. Here are few link worth adding to your bookmark shortlist: &lt;a href="http://download-west.oracle.com/docs/cd/B25221_01/web.htm"&gt;Documentation&lt;/a&gt;, Web services APIs &lt;a href="http://download-west.oracle.com/docs/cd/B25221_01/web.1013/b25988/index.html"&gt;Javadoc&lt;/a&gt;, and &lt;a href="http://www.oracle.com/technology/tech/java/oc4j/1013/how_to/index.html"&gt;HowTo's&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;If you did not get the bits yet, here they are.  Download version 10.1.3 of &lt;a href="http://www.oracle.com/technology/software/products/ias/htdocs/1013.html" class="bodylink"&gt;Oracle Application Server 10&lt;em&gt;g&lt;/em&gt;&lt;/a&gt; and &lt;a href="http://www.oracle.com/technology/software/products/jdev/index.html" class="bodylink"&gt;Oracle JDeveloper 10&lt;em&gt;g&lt;/em&gt;&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Happy coding!&lt;br /&gt;-Ecco&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-113869207388080179?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/113869207388080179/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=113869207388080179' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/113869207388080179'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/113869207388080179'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2006/01/oracle-application-server-10g-release.html' title='Oracle Application Server 10g Release 3'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-113712647879060416</id><published>2006-01-12T20:27:00.000-08:00</published><updated>2006-10-18T22:07:20.991-07:00</updated><title type='text'>JDeveloper 10gR3 and Web Services</title><content type='html'>If you are planing on developing Web Services on the Oracle stack, using the &lt;a href="http://www.oracle.com/technology/software/products/jdev/index.html"&gt;latest 10.1.3 preview available&lt;/a&gt;, I have a couple of tips for you:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Once you are done with the HelloWorld sample service, consider moving from the wizard-based development model to the ant-based scripting on top of WSA - the underlying Web Service Assembler utility.&lt;/li&gt;&lt;li&gt;If you have decided to use the CLI [Command Line Interface] mode to build your simple services, just because an IDE is not for you, I have the same recomendation to make: consider moving from the CLI base model to the ANT base development environment.&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;Here are my main reasons for that:&lt;/p&gt;&lt;ol&gt;&lt;li&gt;JDeveloper's support for annotation (&lt;a href="http://www.jcp.org/en/jsr/detail?id=181"&gt;JSR-181&lt;/a&gt;) is not intuitive as you have to joggle between code changes and re-enter the wizard while WSA does give you a more predictible development process. Note that you need JDK 1.5.x in order to leveareage annotations - It's the only way to handle SOAP header in bottom-up scenario, if you need to have a rational for using annotation.&lt;/li&gt;&lt;li&gt;WSA's CLI does not support all the complex scenario that can be handled using ANT script - Search for 'oracle:port' in the user's guide to see for yourself.&lt;oracle:port'&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/oracle:port'&gt;&lt;p&gt;For these two reasons, switching to ant-based development as soon as possible in your development cycles will be a lifesaver, once you are under presure to deliver this last-minute features that cannot be handled with JDev or the CLI modes.&lt;/p&gt;&lt;p&gt;That said, you can still run your ant target from within JDeveloper - it works great. Remember to run ant in a separate process, and that the setup of JDeveloper process -like HTTP proxy setting- are not propagated automatically to the ant process.&lt;/p&gt;&lt;p&gt;&lt;a title="Photo Sharing" href="http://www.flickr.com/photos/35045136@N00/85883006/"&gt;&lt;img height="171" alt="jdev-20060112" src="http://static.flickr.com/42/85883006_557b2349e3_m.jpg" width="240" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;The only time where I find the CLI still valuable is to rapidely test and develop client-side artifacts. There, the mode I used most are: genProxy, analyze, fetchWsdl and genInterface. Those commands are only usefull once, and you are not likely to re-run them as part of your automated build process. If you are, ant is your prefered mode, again.&lt;/p&gt;&lt;p&gt;Happy Coding !!!&lt;/p&gt;&lt;p&gt;-Ecco&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-113712647879060416?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/113712647879060416/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=113712647879060416' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/113712647879060416'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/113712647879060416'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2006/01/jdeveloper-10gr3-and-web-services.html' title='JDeveloper 10gR3 and Web Services'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-113659087793294765</id><published>2006-01-06T15:28:00.000-08:00</published><updated>2006-10-18T22:07:20.907-07:00</updated><title type='text'>MS Office 2003 - Generated code with no parameter</title><content type='html'>In the process of getting my Web services integrated with the Office 2003 desktop suite, I run into another issue, which is again anoing. Even with a WSDL that adhers to WS-I BP1.x, the experience, out off the box is not that snooth.&lt;br /&gt;&lt;br /&gt;The sympthome: the VBA code generated for each operation, do not have any parameter or return value. Here is a simple example with 2 operations.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 102, 102);font-family:courier new;" &gt;Public Sub wsm_getVersion()&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 102, 102);font-family:courier new;" &gt;...&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 102, 102);font-family:courier new;" &gt;Public Sub wsm_echoString()&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 102, 102);font-family:courier new;" &gt;...&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;At first, this code looks fine, and there is no error message, warning, or hint of any kind that can be used to figure that the code generated is not functional. Before to delve into the WSDL and Schema definition, here is the code that one would have expected.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 102, 102);font-family:courier new;" &gt;Public Function wsm_getVersion() As String&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 102, 102);font-family:courier new;" &gt;...&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 102, 102);font-family:courier new;" &gt;Public Function wsm_echoString(ByVal str_input As String) As String&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 102, 102);font-family:courier new;" &gt;...&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;The problem: The wizard is not able to process the type definition of any top-level element, unless the type definition is inlined. Here is the sample output element/type defition for the echoString operation:&lt;br /&gt;&lt;br /&gt;&amp;lt;element name="echoStringResponse" type="tns:echoStringResponse"/&gt;&lt;br /&gt;&amp;lt;complexType name="echoStringResponse"&gt;&lt;br /&gt; &amp;lt;sequence&gt;&lt;br /&gt;   &amp;lt;element name="result" type="string" nillable="true"/&gt;&lt;br /&gt; &amp;lt;/sequence&gt;&lt;br /&gt;&amp;lt;/complexType&gt;&lt;br /&gt;&lt;br /&gt;The solution: change the XML schema in the WSDL, to follow the format recognized by Office, with anonymous complexType for all the wrapper elements - thoses created to mimic RPC style with document-literal-wrapped.&lt;br /&gt;&lt;br /&gt;&amp;lt;element name="echoStringResponseElement"&gt;&lt;br /&gt; &amp;lt;complexType&gt;&lt;br /&gt;   &amp;lt;sequence&gt;&lt;br /&gt;     &amp;lt;element name="result" type="string" nillable="true"/&gt;&lt;br /&gt;   &amp;lt;/sequence&gt;&lt;br /&gt; &amp;lt;/complexType&gt;&lt;br /&gt;&amp;lt;/element&gt;&lt;br /&gt;&lt;br /&gt;Hard to figure this one out, unless you can put the 2 WSDLs side by side.&lt;br /&gt;&lt;br /&gt;Happy Coding,&lt;br /&gt;-Ecco&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-113659087793294765?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/113659087793294765/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=113659087793294765' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/113659087793294765'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/113659087793294765'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2006/01/ms-office-2003-generated-code-with-no.html' title='MS Office 2003 - Generated code with no parameter'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-113652026165103270</id><published>2006-01-05T18:40:00.000-08:00</published><updated>2006-10-18T22:07:20.826-07:00</updated><title type='text'>Web Services Design Tips - SOAPAction</title><content type='html'>Recently, I have been asked why a service was not working without the infamous SOAPAction, and I figured out I should try to explain it, one for all. Let me know if it works for you.&lt;br /&gt;As the SOAPAction is transport specific -an HTTP header field, you should try to avoid it's use when authoring WSDL files for your new services, especially if you plan to use other transports for the same service. There are only a few usecases where you really need it: it's when you are using 'bare-style' document-literal binding or overloaded method (if your language of choice permit it).&lt;br /&gt;The Key to this problem is to understand the relationship between the WSDL and the wire format, and to realize that the name of the wsdl:operation is not necessary present on the wire. Let's take an example to clarify this point. Here is a simple JAVA interface, that will be our samle code today:&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Figure 1. Sample JAVA SEI&lt;/span&gt;&lt;br /&gt;&lt;table bgcolor="#cccccc" border="2" cellpadding="0" cellspacing="0" width="100%"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;pre&gt;&lt;code class="section"&gt;public interface SEI extends java.rmi.Remote {&lt;br /&gt;public String lookupPhone(String eid)&lt;br /&gt;  throws java.rmi.RemoteException;&lt;br /&gt;&lt;br /&gt;public String lookupEmail(String eid)&lt;br /&gt;  throws java.rmi.RemoteException;&lt;br /&gt;}&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;This JAVA SEI can be converted into the following WSDL format.&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Figure 2. Sample &lt;span style="font-family:monospace;"&gt;WSDL equivalent to the SEI&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;table bgcolor="#cccccc" border="2" cellpadding="0" cellspacing="0" width="100%"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;pre&gt;&lt;code class="section"&gt;  &amp;lt;types&gt;&lt;br /&gt;  &amp;lt;schema xmlns="http://www.w3.org/2001/XMLSchema"&lt;br /&gt;targetnamespace="http://ws.fusion.com/"&lt;br /&gt;elementformdefault="qualified"&lt;br /&gt;tns="http://ws.fusion.com/"&gt;&lt;br /&gt;      &amp;lt;element name="eid" type="string" nillable="true"&gt;&lt;br /&gt;      &amp;lt;element name="result" type="string" nillable="true"&gt;&lt;br /&gt;  &amp;lt;/element&gt;&lt;br /&gt;&amp;lt;/element&gt;&lt;br /&gt;&amp;lt;message name="lookupEmail"&gt;&lt;br /&gt;  &amp;lt;part name="eid" element="tns:eid"&gt;&lt;br /&gt;&amp;lt;/part&gt;&lt;br /&gt;&amp;lt;message name="lookupEmailResponse"&gt;&lt;br /&gt;  &amp;lt;part name="result" element="tns:result"&gt;&lt;br /&gt;&amp;lt;/part&gt;&lt;br /&gt;&amp;lt;message name="lookupPhone"&gt;&lt;br /&gt;  &amp;lt;part name="eid" element="tns:eid"&gt;&lt;br /&gt;&amp;lt;/part&gt;&lt;br /&gt;&amp;lt;message name="lookupPhoneResponse"&gt;&lt;br /&gt;  &amp;lt;part name="result" element="tns:result"&gt;&lt;br /&gt;&amp;lt;/part&gt;&lt;br /&gt;&amp;lt;porttype name="WrappedService"&gt;&lt;br /&gt;  &amp;lt;operation name="lookupEmail"&gt;&lt;br /&gt;      &amp;lt;input message="tns:lookupEmail"&gt;&lt;br /&gt;      &amp;lt;output message="tns:lookupEmailResponse"&gt;&lt;br /&gt;  &amp;lt;/output&gt;&lt;br /&gt;  &amp;lt;operation name="lookupPhone"&gt;&lt;br /&gt;      &amp;lt;input message="tns:lookupPhone"&gt;&lt;br /&gt;      &amp;lt;output message="tns:lookupPhoneResponse"&gt;&lt;br /&gt;  &amp;lt;/output&gt;&lt;br /&gt;&amp;lt;/operation&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Figure 3. Sample SOAP payload&lt;/span&gt;&lt;br /&gt;&lt;table bgcolor="#cccccc" border="2" cellpadding="0" cellspacing="0" width="100%"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;pre&gt;&lt;code class="section"&gt;&amp;lt;env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"&lt;br /&gt; xmlns:xsd="http://www.w3.org/2001/XMLSchema"&gt;&lt;br /&gt;&amp;lt;env:Body&gt;&lt;br /&gt;   &amp;lt;ans1:eid xmlns:ans1="http://ws.fusion.com/"&gt;eid&amp;lt;/ans1:eid&gt;&lt;br /&gt;&amp;lt;/env:Body&gt;&lt;br /&gt;&amp;lt;/env:Envelope&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;From the wire format above, once cannot tell is the message is targeted at the &lt;span style="font-style: italic;"&gt;lookupEmail&lt;/span&gt; operation or at the &lt;span style="font-style: italic;"&gt;lookupPhone&lt;/span&gt; operation. In order to route this message, you need extra information - it's the purpose of the SOAPAction header in the list displayed below.&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Figure 4. Sample set of HTTP header&lt;/span&gt;&lt;br /&gt;&lt;table bgcolor="#cccccc" border="2" cellpadding="0" cellspacing="0" width="100%"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;pre&gt;&lt;code class="section"&gt;User-Agent: Oracle HTTPClient Version 10h&lt;br /&gt;SOAPAction: "urn:lookupEmail"&lt;br /&gt;Accept-Encoding: gzip, x-gzip, compress, x-compress&lt;br /&gt;Content-type: text/xml; charset=UTF-8&lt;br /&gt;Content-length: 302&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;The main reason the SOAPAction is used by most Web Services framework is as a performance optimization. It provides a key to lookup the operation where the message should be routed at, without to have to process the SOAP payload (the soap:body).&lt;br /&gt;&lt;br /&gt;To sum up:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;use an empty value if you can.&lt;/li&gt;&lt;li&gt;use it when you are using overloaded methods - the QName of the top-level element of the soap:body can be used to uniquely identify the operation that should process the incoming message.&lt;/li&gt;&lt;li&gt;if you are after the performance boost, use a short value as it will also an impact too. No need to wait for the 69th caracther of the string before to find a charater that can be used to dicriminate from other values. Think tinyurl vs verbose text.&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;Note that this tips is specific to SOAP 1.1 and will not apply moving forward, as the routing attribute will be factored in the addressing header.&lt;/p&gt;&lt;p&gt;Happy Coding !&lt;br /&gt;&lt;/p&gt;&lt;p&gt;-Ecco&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-113652026165103270?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/113652026165103270/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=113652026165103270' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/113652026165103270'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/113652026165103270'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2006/01/web-services-design-tips-soapaction.html' title='Web Services Design Tips - SOAPAction'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-113540907403947698</id><published>2005-12-23T22:58:00.000-08:00</published><updated>2006-10-18T22:07:20.759-07:00</updated><title type='text'>WSDL and Extensibilty</title><content type='html'>If you are curious about any vs. anyType, here is a &lt;a href="http://www-128.ibm.com/developerworks/webservices/library/ws-tip-xsdcaution.html"&gt;recent paper&lt;/a&gt; from Russell Butek that may be helpfull. For me, the common usage of any / anyType remains the way the DataSet are exposed in WSDL, with Microsoft .NET 1.1: &lt;pre style="color:#666666;" style="font-family:courier new;font-size:85%;"&gt;&amp;lt;s:element name="GetAuthorsResponse"&amp;gt;&lt;br /&gt;   &amp;lt;s:complexType&amp;gt;&lt;br /&gt;      &amp;lt;s:sequence&amp;gt;&lt;br /&gt;         &amp;lt;s:element minOccurs="0" maxOccurs="1"&lt;br /&gt;            name="GetAuthorsResult"&amp;gt;&lt;br /&gt;            &amp;lt;s:complexType&amp;gt;&lt;br /&gt;               &amp;lt;s:sequence&amp;gt;&lt;br /&gt;                  &amp;lt;s:element ref="s:schema" /&amp;gt;&lt;br /&gt;                  &amp;lt;s:any /&amp;gt;&lt;br /&gt;•••&lt;br /&gt;&amp;lt;/s:element&amp;gt;&lt;/pre&gt;&lt;br /&gt;&lt;p&gt;A basic rule to keep in mind, when you author your own WSDL files. Uses xsd:anyType where you will otherwise use xsd:int, xsd:string or any other XML type. Uses xsd:any where you will otherwise use a named element (not a type).&lt;/p&gt;&lt;p&gt;And to keep out of trouble, only use xsd:anyType when you want to handle arbitrary XML documents. Refrain yourself from using it when you try to think OO in XML.&lt;/p&gt;&lt;p&gt;Have fun while authoring your Services Interfaces.&lt;/p&gt;&lt;p&gt;Happy Chirstmas,&lt;/p&gt;-Ecco&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-113540907403947698?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/113540907403947698/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=113540907403947698' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/113540907403947698'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/113540907403947698'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2005/12/wsdl-and-extensibilty.html' title='WSDL and Extensibilty'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-113523447566909986</id><published>2005-12-21T22:48:00.000-08:00</published><updated>2006-10-18T22:07:20.689-07:00</updated><title type='text'>Is WS-I BP good for you?</title><content type='html'>As I spend time looking at web services in real life, there is a question that is comming back, all the time:&lt;br /&gt;&lt;em&gt;What is wrong with my WSDL?&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;Today, I am looking at &lt;a href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/odc_2003_ta/html/ODC_landWST2003_ta.asp"&gt;Microsoft Office 2003 Web Services Toolkit&lt;/a&gt;. Why do I get 0 as Search Results with a WSDL that is looking good, and pass the WS-I Basic Profile report without any error?&lt;br /&gt;Here is a screen shoot with the error message. This error is not listed as one of the &lt;a href="http://msdn.microsoft.com/library/en-us/dnxpwst/html/odc_ofwsrt.asp?frame=true#odc_ofwsrt_trouble"&gt;top-5 common problems&lt;/a&gt; [look at the troubleshooting section].&lt;br /&gt;&lt;a title="Photo Sharing" href="http://www.flickr.com/photos/35045136@N00/76163905/"&gt;&lt;img height="508" alt="MO2003WST-SearchNoResults" src="http://static.flickr.com/37/76163905_64d38b7be8_o.png" width="634" /&gt;&lt;/a&gt;.&lt;br /&gt;Using the &lt;a href="http://a9.com/Microsoft%20Office%202003%20Web%20Service%20Toolkit"&gt;A9 search&lt;/a&gt; with image-on was an easy way to locate atricles with the screen that is giving me troubles. For this sample, I am using a &lt;a href="http://soap.systinet.net/demos/FreeDB/wsdl"&gt;WSDL from systinet&lt;/a&gt;.&lt;br /&gt;As you do not have access to this service, hosted by Systinet, you have to work without access to the server. It's as simple as one-two:&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;make a local copy of the WSDL.&lt;/li&gt;&lt;li&gt;on your local copy, remove the 'parts' attribute on all the soap:body elements, inside the binding. &lt;/li&gt;&lt;/ol&gt;&lt;pre&gt;&amp;lt;input&gt;&lt;br /&gt;  &amp;lt;soap:body &lt;span style="color:#ff0000;"&gt;parts='parameters'&lt;/span&gt; use='literal'/&gt;&lt;br /&gt;&amp;lt;/input&gt;&lt;/pre&gt;&lt;p&gt;Note that you have to use the file:// protocole to work with a local file system.&lt;/p&gt;&lt;p&gt;&lt;a title="Photo Sharing" href="http://www.flickr.com/photos/35045136@N00/76176901/"&gt;&lt;img height="508" alt="MO2003WST-SearchWorks" src="http://static.flickr.com/6/76176901_37f04837ef_o.png" width="634" /&gt;&lt;/a&gt;&lt;/p&gt;In conclusion, following the WS-I Profile recomendation is a good start, but is not good enought to ensure that your web services can be consumed by the mass. Once you have identify the set of toolkits most likely to be used by your customers, you have to make sure that your services can be used in those environment. Nothing replace testing.&lt;br /&gt;&lt;br /&gt;-Ecco&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-113523447566909986?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/113523447566909986/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=113523447566909986' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/113523447566909986'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/113523447566909986'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2005/12/is-ws-i-bp-good-for-you.html' title='Is WS-I BP good for you?'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-113337755048014729</id><published>2005-11-30T10:44:00.000-08:00</published><updated>2006-10-18T22:07:20.615-07:00</updated><title type='text'>Looking for a new acronym ?</title><content type='html'>The acronym of the day - SCA.&lt;br /&gt;&lt;br /&gt;If you are curious about the new acronym of the week, don't rely on Google too much. It does not means &lt;a href="http://www.sca-recovery.org/index.htm"&gt;'Sexual Compulsives Anonymous'&lt;/a&gt; in our context. Instead, it means &lt;a href="http://www.oracle.com/technology/tech/webservices/standards/sca/index.html"&gt;'Service Component Architecture'&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-113337755048014729?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/113337755048014729/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=113337755048014729' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/113337755048014729'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/113337755048014729'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2005/11/looking-for-new-acronym.html' title='Looking for a new acronym ?'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-112857926208929974</id><published>2005-10-05T23:12:00.000-07:00</published><updated>2006-10-18T22:07:20.541-07:00</updated><title type='text'>Revolution is around the corner</title><content type='html'>This article is incredible: "&lt;a href="http://www.geocities.com/verdrahciretop/invisibike.html"&gt;Bell Launches Ingenious Bicycle Anti-Theft Product&lt;/a&gt;".&lt;br /&gt;&lt;br /&gt;I had to share this one.&lt;br /&gt;-ecco&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-112857926208929974?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/112857926208929974/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=112857926208929974' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/112857926208929974'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/112857926208929974'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2005/10/revolution-is-around-corner.html' title='Revolution is around the corner'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-112848704470903407</id><published>2005-10-04T21:32:00.000-07:00</published><updated>2006-10-18T22:07:20.467-07:00</updated><title type='text'>Vista Beta 2, take II</title><content type='html'>After spending a few days with my installation, I am starting to find that it was only a beta drop, after all. &lt;br /&gt;I am running into some interesting issues with access priviledge. I have been used to start my process using &lt;em&gt;'sudo'&lt;/em&gt; on Linux, so that I can work around some system checks without to go through a real server strength installation.&lt;br /&gt;For now, I'll give it another shoot, before to go for a clean install and avoid the potential trouble with the Window XP upgrade part.&lt;br /&gt;-ecco&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-112848704470903407?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/112848704470903407/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=112848704470903407' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/112848704470903407'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/112848704470903407'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2005/10/vista-beta-2-take-ii.html' title='Vista Beta 2, take II'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-112823093599774300</id><published>2005-10-01T22:21:00.000-07:00</published><updated>2006-10-18T22:07:20.399-07:00</updated><title type='text'>Vista Beta 2 - Nice look</title><content type='html'>Finally, &lt;br /&gt;&lt;br /&gt;I have found the time to get build 5219 of Windows Vista installed on my laptop. It was a seamless experience, that started on the wrong foot, but with an happy ending. I did not use NFS - still the FAT32 - did not have the 9GB of free disk space required - bye bye Oracle db 9r2.&lt;br /&gt;&lt;br /&gt;The other surprise was with the time it took to finalize the installation, having the same screen asking me not to reboot yet for over 3 hours - good for our front yard, where I have spend most of the afternoon.&lt;br /&gt;&lt;br /&gt;Cisco wireless is working again, and I do not seam to have any problem. I can start to play with the new stuff there !!!&lt;br /&gt;&lt;br /&gt;-ecco&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-112823093599774300?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/112823093599774300/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=112823093599774300' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/112823093599774300'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/112823093599774300'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2005/10/vista-beta-2-nice-look.html' title='Vista Beta 2 - Nice look'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-112788445917734219</id><published>2005-09-27T22:04:00.000-07:00</published><updated>2006-10-18T22:07:20.320-07:00</updated><title type='text'>OOW Demo3 - .NET/J2EE interop by examples</title><content type='html'>Last week, I have been presenting at Oracle Open World on the subject of Web services interoperability between .NET and J2EE, with a focus on Oracle's implementation of JAX-RPC that is available in our latest developer preview.&lt;br /&gt;&lt;br /&gt;Today, I have a very simple example of 'tweaking a local copy of the original WSDL'. &lt;br /&gt;&lt;br /&gt;Here is the WSDL : &lt;a href="http://www.tilisoft.com/ws/LocInfo/ZipCode.asmx?WSDL"&gt;http://www.tilisoft.com/ws/LocInfo/ZipCode.asmx?WSDL&lt;/a&gt; &lt;br /&gt;&lt;br /&gt;C:\ow2005\Demo3&gt;java -jar /oc4j/webservices/lib/wsa.jar genProxy output ./gen_src wsdl http://www.tilisoft.com/ws/LocInfo/ZipCode.asmx?WSDL&lt;br /&gt;SEVERE: WSDL validation failed. The wsdl contains a mixture of styles - "document" and "rpc".  Only "rpc" OR "document" is supported in a wsdl, not both.&lt;br /&gt;&lt;br /&gt;work around:&lt;br /&gt;- make a local copy&lt;br /&gt;- edit the WSDL, and replace the instances of rpc with document.&lt;br /&gt;- re-run the genProxy command&lt;br /&gt;&lt;br /&gt;For some reason, the publisher of this service has been using 'rpc' at the service level, then 'document' at the operation level (or method level in C#).&lt;br /&gt;&lt;pre&gt;&amp;lt;wsdl:binding name="ZipCodeSoap" type="tns:ZipCodeSoap"&gt;&lt;br /&gt;  &amp;lt;soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="rpc" /&gt;&lt;br /&gt;  &amp;lt;wsdl:operation name="GetDistance"&gt;&lt;br /&gt;    &amp;lt;soap:operation soapAction="http://www.tilisoft.com/ws/LocInfo/GetDistance" style="document" /&gt;&lt;/pre&gt;&lt;br /&gt;There is just one line to modify to get going.&lt;br /&gt;&lt;pre&gt;  &amp;lt;soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document" /&gt;&lt;/pre&gt;&lt;br /&gt;Done deal, you can generate the code with the local copy.&lt;br /&gt;&lt;br /&gt;C:\ow2005\Demo3&gt;java -jar /oc4j/webservices/lib/wsa.jar genProxy output ./gen_src wsdl ./etc/ZipCodeV2.wsdl&lt;br /&gt;&lt;br /&gt;To test the generated code, edit &lt;br /&gt;C:\ow2005\Demo3\gen_src\com\tilisoft\www\locinfo\ZipCodeSoapClient.java&lt;br /&gt;&lt;br /&gt;Just add those 3 lines to the main method:&lt;br /&gt;&lt;pre&gt;    // Add your own code here&lt;br /&gt;    Element res = (Element)myPort.getInfo("94403");&lt;br /&gt;&lt;br /&gt;    System.out.println("info for 94403 :");&lt;br /&gt;    ((XMLElement)res).print(System.out);&lt;/pre&gt;&lt;br /&gt;The output will be looking like this (truncated for preserving space here) :&lt;br /&gt;&lt;pre&gt;     [java] calling http://www.tilisoft.com/ws/LocInfo/ZipCode.asmx&lt;br /&gt;     [java] info for 94403 :&lt;br /&gt;     [java] &amp;lt;GetInfoResult xmlns="http://www.tilisoft.com/ws/LocInfo/literalTypes"&gt;&lt;br /&gt;...&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Now, you have access to the raw data from the ADO.NET dataset, and you can start to write your own XSLT to extract the data.&lt;br /&gt;&lt;br /&gt;-ecco&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-112788445917734219?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/112788445917734219/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=112788445917734219' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/112788445917734219'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/112788445917734219'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2005/09/oow-demo3-netj2ee-interop-by-examples.html' title='OOW Demo3 - .NET/J2EE interop by examples'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-112734899490007099</id><published>2005-09-21T17:26:00.000-07:00</published><updated>2006-10-18T22:07:20.241-07:00</updated><title type='text'>Usefull C# code snippet</title><content type='html'>If you are trying to look at the payload, when writing C# code, here is the way I ussually send the request from my C# client through an HTTP proxy. Usually, I am using the one that is embedded in JDeveloper.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;using System.Net; // for proxy setup&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;...&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;&amp;nbsp;&amp;nbsp;IWebProxy proxyObject = new WebProxy("&lt;/span&gt;&lt;a href="http://hostname:8099"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;http://hostname:8099&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;", false);&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;&amp;nbsp;&amp;nbsp;service.Proxy = proxyObject;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;Note: do not use localhost or 127.0.0.1 if you want to hit the network layer.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-112734899490007099?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/112734899490007099/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=112734899490007099' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/112734899490007099'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/112734899490007099'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2005/09/usefull-c-code-snippet.html' title='Usefull C# code snippet'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-112724138708808855</id><published>2005-09-20T11:26:00.000-07:00</published><updated>2006-10-18T22:07:20.167-07:00</updated><title type='text'>When all the stars start to get aligned...</title><content type='html'>Discovered a cool post on WCF position regarding RPC-literal: &lt;a href="http://blogs.msdn.com/richardt/archive/2005/09/08/462484.aspx"&gt;"RPC" vs. Messaging in WCF&lt;/a&gt;.&lt;br /&gt;It looks like the &lt;a href="http://www.google.com/search?hl=en&amp;amp;q=yasser+freedom+of+choice+site%3Amicrosoft.com"&gt;old position&lt;/a&gt;, from the early days of .NET is no longer the norm. The choice is back to the developers. Now, we can rename this post the way it was supposed to be name: '&lt;a href="http://www.cnn.com/2003/ALLPOLITICS/03/11/sprj.irq.fries/" name="rpc_literal"&gt;&lt;/a&gt;RPC/Literal and &lt;a href="http://www.cnn.com/2003/ALLPOLITICS/03/11/sprj.irq.fries/"&gt;French&lt;/a&gt; Choice'.&lt;br /&gt;&lt;br /&gt;The way to go forward is still with the Document-Literal-MSS [Microsoft Secret Sauce] format, a.k.a Wrapped style. The legacy is sutch that you will have interoperability problem if you use this message format with a non-indigo based .NET framework.&lt;br /&gt;&lt;br /&gt;-ecco&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-112724138708808855?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/112724138708808855/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=112724138708808855' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/112724138708808855'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/112724138708808855'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2005/09/when-all-stars-start-to-get-aligned.html' title='When all the stars start to get aligned...'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-112673458070836266</id><published>2005-09-14T14:26:00.000-07:00</published><updated>2006-10-18T22:07:20.079-07:00</updated><title type='text'>Simon Says - Top 10 tips on interop</title><content type='html'>If you don't have the time to watch &lt;a href="http://msdn.microsoft.com/msdntv/episode.aspx?xml=episodes/en/20050210WebServicesSG/manifest.xml"&gt;msdntv&lt;/a&gt;, here they are:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;#10 - no empty array (or arrays with un-initialized elements to be more precise)&lt;br /&gt;Person[] getPeoples() { return new Person[10]; }&lt;/li&gt;&lt;li&gt;#9 - package name (don't use equal test when comparing complexType - result in class cast or compiler error)&lt;/li&gt;&lt;li&gt;#8 - test for null ; don't use ==. instead use isNull()&lt;/li&gt;&lt;li&gt;#7 - no null for Date (System.DateTime does not have a null).&lt;br /&gt;It's supported in indigo but don't use.&lt;/li&gt;&lt;li&gt;#6 - date comparaison (use compareTo)&lt;/li&gt;&lt;li&gt;#5 - use a trace tool (console, proxy)&lt;/li&gt;&lt;li&gt;#4 - code so that you can change port number.&lt;/li&gt;&lt;li&gt;#3 - Unit Test (another good practice)&lt;/li&gt;&lt;li&gt;#2 - use doc/literal (WS-I recommend doc/literal, WS-I allow rpc/literal, niche market)&lt;/li&gt;&lt;li&gt;#1 - use XSD first (but still use your WS platform or toolkit for the WSDL from code).&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;A few comments I have :&lt;/p&gt;&lt;ul&gt;&lt;li&gt;#5 - I'll even go further on this one - &lt;a href="http://www.mindreef.com/products/overview.html"&gt;Mindreef's SOAPscope&lt;/a&gt; rules !!!&lt;/li&gt;&lt;li&gt;#4 - this is just good practice, not an interop tip.&lt;/li&gt;&lt;li&gt;#3 - And make sure that you do not rely on default values in the unit test;&lt;br /&gt;0 + 0 = 0 or 1 - 1 = 0 are not good candidates for unit test.&lt;/li&gt;&lt;li&gt;#2 - ws-i.org does not recommend doc/literal over rpc/literal; Microsoft does.&lt;/li&gt;&lt;li&gt;#1 - what do we do with xsd:dateTime, based on #7 ?&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;-ecco&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/13394094-112673458070836266?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/112673458070836266/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=112673458070836266' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/112673458070836266'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/112673458070836266'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2005/09/simon-says-top-10-tips-on-interop.html' title='Simon Says - Top 10 tips on interop'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-112564414824002325</id><published>2005-09-01T23:55:00.000-07:00</published><updated>2006-10-18T22:07:20.001-07:00</updated><title type='text'>404 - Not Found</title><content type='html'>&lt;a href="http://www.madkane.com/bush_missing.html"&gt;Bush Error 404 - Bush Not Found In Crawford&lt;/a&gt;&lt;br /&gt;If the page does not load for you, hit refresh (or the any key).&lt;br /&gt;&lt;br /&gt;found it on &lt;a href="http://webpages.charter.net/chrisfer/2005/08/404.html"&gt;Chris's Rants&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-112564414824002325?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/112564414824002325/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=112564414824002325' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/112564414824002325'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/112564414824002325'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2005/09/404-not-found.html' title='404 - Not Found'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13394094.post-112564347070867040</id><published>2005-09-01T23:44:00.000-07:00</published><updated>2006-10-18T22:07:19.935-07:00</updated><title type='text'>Back online</title><content type='html'>Almost a month now that the vacations are over and I have finally been able to recover my account information to resume this endavour.&lt;br /&gt;It's amazing to see how much damage a set of little software glitches can do...&lt;br /&gt;&lt;br /&gt;-ecco&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13394094-112564347070867040?l=ws-rx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ws-rx.blogspot.com/feeds/112564347070867040/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13394094&amp;postID=112564347070867040' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/112564347070867040'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13394094/posts/default/112564347070867040'/><link rel='alternate' type='text/html' href='http://ws-rx.blogspot.com/2005/09/back-online.html' title='Back online'/><author><name>Ecco</name><uri>http://www.blogger.com/profile/13944926796673954864</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://static.flickr.com/48/131723975_721117e5a3_m.jpg'/></author><thr:total>0</thr:total></entry></feed>
