<?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'><id>tag:blogger.com,1999:blog-8914133</id><updated>2009-07-02T20:55:42.197-03:00</updated><title type='text'>marciowb @ blog</title><subtitle type='html'>technology, programming, news, tips, articles, opinion, digression</subtitle><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8914133/posts/default'/><link rel='alternate' type='text/html' href='http://www.marciowb.net/blog/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/8914133/posts/default?start-index=26&amp;max-results=25'/><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://www.marciowb.net/blog/atom.xml'/><author><name>Marcio Wesley Borges</name><uri>http://www.blogger.com/profile/03981592466934695825</uri><email>marciowb@gmail.com</email></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>57</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-8914133.post-4865917594800345736</id><published>2009-04-04T22:37:00.015-03:00</published><updated>2009-04-06T15:29:52.012-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='tips'/><category scheme='http://www.blogger.com/atom/ns#' term='it'/><category scheme='http://www.blogger.com/atom/ns#' term='web'/><title type='text'>woodstock.xhr.post: Do you see Google? See?!</title><content type='html'>&lt;h1&gt;How to post a &lt;a href="http://www.json.org/"&gt;JSON&lt;/a&gt; data via &lt;a href="http://www.marciowb.net/blog/2009/files/woodstock/jsdocs/woodstock4_3.xhr.html"&gt;woodstock.xhr.post&lt;/a&gt;?&lt;/h1&gt;
&lt;img src="http://upload.wikimedia.org/wikipedia/en/thumb/b/b7/Woodstock_poster.jpg/250px-Woodstock_poster.jpg" alt="Woodstock Festival" title="Yeah! Just and only three days...!" style="float:left"/&gt;
&lt;p&gt;Sometimes simple things may be hard to do... but I'm one of 'the last &lt;a href="https://woodstock.dev.java.net/index.html"&gt;Woodstock&lt;/a&gt; survives&lt;br /&gt;
- No, I wasn't at &lt;a href="http://en.wikipedia.org/wiki/Woodstock_Festival"&gt;Woodstock Festival &lt;/a&gt;- but, I wanted to.&lt;/p&gt;
&lt;p&gt;I learned the &lt;a href="http://webdev2.sun.com/example/faces/index.jsp"&gt;Woodstock JSF Components&lt;/a&gt; (now &lt;a href="https://woodstock.dev.java.net/index.html"&gt;officially abandoned by Sun&lt;/a&gt;) and I'm using it in at least two projects. Damn! I love &lt;a href="http://www.dojotoolkit.org/"&gt;Dojo&lt;/a&gt;! And Woodstock was all built with Dojo. But, now, after a long time learning (reading, trying, testing, experiencing and going mad), after finally to know what and how to do with Woodstock, the project was buried. I'm desolated!
&lt;p&gt;I did a good work using Woodstock, but now I should migrate to &lt;a href="http://www.icefaces.org/"&gt;Icefaces&lt;/a&gt; (acording Sun), but I don't want and I can't rewrite all my work to another technology.&lt;/p&gt;
&lt;p&gt;Several troubles I had using Woodstock and nearly ten times, several troubles I solved with it.&lt;/p&gt;
&lt;h2&gt;AJAX using Woodstock&lt;/h2&gt;
&lt;p&gt;When I need to use AJAX with Woodstock pages, I don't use &lt;a href="https://jsf-extensions.dev.java.net/"&gt;Dynafaces&lt;/a&gt;. Instead, I used submit or refresh standard Woodstock component feature to do a postback or I use AJAX request with servlet.&lt;/p&gt;
&lt;p&gt;To do a AJAX request using the methdo GET is easy and well documented by Woodstock. Bellow, see example showing how to get customer data via AJAX using only the first and last customer names:&lt;/p&gt;
&lt;pre class="code"&gt;&lt;font color="#000000"&gt;&lt;font color="#000000"&gt;   1:&lt;/font&gt;&lt;font color="#006699"&gt;&lt;strong&gt;function&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;getCustomerByNames&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;lastName&lt;font color="#000000"&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/font&gt; firstName&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;   2:&lt;/font&gt;    &lt;font color="#006699"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt; props &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;   3:&lt;/font&gt;        &lt;font color="#02b902"&gt;async&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;:&lt;/strong&gt;&lt;/font&gt; &lt;font color="#cc00cc"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;   4:&lt;/font&gt;
&lt;font color="#990066"&gt;   5:&lt;/font&gt;        &lt;font color="#02b902"&gt;onError&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;:&lt;/strong&gt;&lt;/font&gt; &lt;font color="#006699"&gt;&lt;strong&gt;function&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;xhr&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;   6:&lt;/font&gt;            window&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;alert&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;An&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;error&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;occurs&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;while&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;sending&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;an&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;AJAX&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;request.&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;See:&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;+&lt;/strong&gt;&lt;/font&gt; xhr&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;   7:&lt;/font&gt;        &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;   8:&lt;/font&gt;
&lt;font color="#000000"&gt;   9:&lt;/font&gt;        &lt;font color="#02b902"&gt;onReady&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;:&lt;/strong&gt;&lt;/font&gt; &lt;font color="#006699"&gt;&lt;strong&gt;function&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;xhr&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#990066"&gt;  10:&lt;/font&gt;            &lt;font color="#006699"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt; resp &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#cc00cc"&gt;eval&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;'&lt;/font&gt;&lt;font color="#ff00cc"&gt;(&lt;/font&gt;&lt;font color="#ff00cc"&gt;'&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;+&lt;/strong&gt;&lt;/font&gt; xhr&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;responseText &lt;font color="#000000"&gt;&lt;strong&gt;+&lt;/strong&gt;&lt;/font&gt; &lt;font color="#ff00cc"&gt;'&lt;/font&gt;&lt;font color="#ff00cc"&gt;)&lt;/font&gt;&lt;font color="#ff00cc"&gt;'&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  11:&lt;/font&gt;            window&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;alert&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;Customer&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;is&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;+&lt;/strong&gt;&lt;/font&gt; resp&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;name &lt;font color="#000000"&gt;&lt;strong&gt;+&lt;/strong&gt;&lt;/font&gt; &lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;+&lt;/strong&gt;&lt;/font&gt; resp&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;email &lt;font color="#000000"&gt;&lt;strong&gt;+&lt;/strong&gt;&lt;/font&gt; &lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;  
&lt;font color="#000000"&gt;  12:&lt;/font&gt;        &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  13:&lt;/font&gt;
&lt;font color="#000000"&gt;  14:&lt;/font&gt;        &lt;font color="#02b902"&gt;url&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;:&lt;/strong&gt;&lt;/font&gt; &lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;/AjaxBridge?a=Customer&amp;amp;t=getCustomerByCode&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;
&lt;font color="#990066"&gt;  15:&lt;/font&gt;    &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  16:&lt;/font&gt;
&lt;font color="#000000"&gt;  17:&lt;/font&gt;    props&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;url &lt;font color="#000000"&gt;&lt;strong&gt;+&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;amp;lastName=&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;+&lt;/strong&gt;&lt;/font&gt; lastName&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  18:&lt;/font&gt;    props&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;url &lt;font color="#000000"&gt;&lt;strong&gt;+&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;amp;firstName=&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;+&lt;/strong&gt;&lt;/font&gt; firstName&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  19:&lt;/font&gt;
&lt;font color="#990066"&gt;  20:&lt;/font&gt;    woodstock&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;xhr&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;get&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;props&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  21:&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  22:&lt;/font&gt;
&lt;/font&gt;&lt;/pre&gt;
&lt;p&gt;From the server-side, each AJAX "Agent" is a subclass of:&lt;/p&gt;
&lt;pre class="code"&gt;&lt;font color="#000000"&gt;&lt;font color="#000000"&gt;   1:&lt;/font&gt;&lt;font color="#009966"&gt;&lt;strong&gt;package&lt;/strong&gt;&lt;/font&gt; br.com.trilha21.web.store.ajax;
&lt;font color="#000000"&gt;   2:&lt;/font&gt;
&lt;font color="#000000"&gt;   3:&lt;/font&gt;&lt;font color="#009966"&gt;&lt;strong&gt;import&lt;/strong&gt;&lt;/font&gt; java.io.IOException;
&lt;font color="#000000"&gt;   4:&lt;/font&gt;&lt;font color="#009966"&gt;&lt;strong&gt;import&lt;/strong&gt;&lt;/font&gt; java.io.PrintWriter; 
&lt;font color="#990066"&gt;   5:&lt;/font&gt;&lt;font color="#009966"&gt;&lt;strong&gt;import&lt;/strong&gt;&lt;/font&gt; java.lang.reflect.Method;
&lt;font color="#000000"&gt;   6:&lt;/font&gt;&lt;font color="#009966"&gt;&lt;strong&gt;import&lt;/strong&gt;&lt;/font&gt; java.util.logging.Level;
&lt;font color="#000000"&gt;   7:&lt;/font&gt;&lt;font color="#009966"&gt;&lt;strong&gt;import&lt;/strong&gt;&lt;/font&gt; java.util.logging.Logger;
&lt;font color="#000000"&gt;   8:&lt;/font&gt;&lt;font color="#009966"&gt;&lt;strong&gt;import&lt;/strong&gt;&lt;/font&gt; javax.servlet.ServletException;
&lt;font color="#000000"&gt;   9:&lt;/font&gt;&lt;font color="#009966"&gt;&lt;strong&gt;import&lt;/strong&gt;&lt;/font&gt; javax.servlet.http.HttpServletRequest;
&lt;font color="#990066"&gt;  10:&lt;/font&gt;&lt;font color="#009966"&gt;&lt;strong&gt;import&lt;/strong&gt;&lt;/font&gt; javax.servlet.http.HttpServletResponse;
&lt;font color="#000000"&gt;  11:&lt;/font&gt;&lt;font color="#009966"&gt;&lt;strong&gt;import&lt;/strong&gt;&lt;/font&gt; net.marciowb.poison.web.jsf.JSFUtil;
&lt;font color="#000000"&gt;  12:&lt;/font&gt;&lt;font color="#009966"&gt;&lt;strong&gt;import&lt;/strong&gt;&lt;/font&gt; org.json.JSONException;
&lt;font color="#000000"&gt;  13:&lt;/font&gt;&lt;font color="#009966"&gt;&lt;strong&gt;import&lt;/strong&gt;&lt;/font&gt; org.json.JSONObject;
&lt;font color="#000000"&gt;  14:&lt;/font&gt;
&lt;font color="#990066"&gt;  15:&lt;/font&gt;&lt;font color="#6600cc"&gt;/**&lt;/font&gt;
&lt;font color="#000000"&gt;  16:&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;*&lt;/font&gt;
&lt;font color="#000000"&gt;  17:&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;*&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#02b902"&gt;@author&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;Marcio&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;Wesley&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;Borges&lt;/font&gt;
&lt;font color="#000000"&gt;  18:&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;*/&lt;/font&gt;
&lt;font color="#000000"&gt;  19:&lt;/font&gt;&lt;font color="#006699"&gt;&lt;strong&gt;public&lt;/strong&gt;&lt;/font&gt; &lt;font color="#0099ff"&gt;&lt;strong&gt;class&lt;/strong&gt;&lt;/font&gt; AjaxAgent &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#990066"&gt;  20:&lt;/font&gt;    &lt;font color="#006699"&gt;&lt;strong&gt;private&lt;/strong&gt;&lt;/font&gt; &lt;font color="#006699"&gt;&lt;strong&gt;static&lt;/strong&gt;&lt;/font&gt; &lt;font color="#006699"&gt;&lt;strong&gt;final&lt;/strong&gt;&lt;/font&gt; Logger logger &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; Logger.&lt;font color="#9966ff"&gt;getLogger&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;AjaxAgent.&lt;font color="#0099ff"&gt;&lt;strong&gt;class&lt;/strong&gt;&lt;/font&gt;.&lt;font color="#9966ff"&gt;getName&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  21:&lt;/font&gt;    
&lt;font color="#000000"&gt;  22:&lt;/font&gt;    &lt;font color="#006699"&gt;&lt;strong&gt;final&lt;/strong&gt;&lt;/font&gt; String task;  
&lt;font color="#000000"&gt;  23:&lt;/font&gt;    &lt;font color="#006699"&gt;&lt;strong&gt;protected&lt;/strong&gt;&lt;/font&gt; &lt;font color="#006699"&gt;&lt;strong&gt;final&lt;/strong&gt;&lt;/font&gt; HttpServletRequest request;
&lt;font color="#000000"&gt;  24:&lt;/font&gt;    &lt;font color="#006699"&gt;&lt;strong&gt;protected&lt;/strong&gt;&lt;/font&gt; &lt;font color="#006699"&gt;&lt;strong&gt;final&lt;/strong&gt;&lt;/font&gt; HttpServletResponse response;
&lt;font color="#990066"&gt;  25:&lt;/font&gt;    &lt;font color="#006699"&gt;&lt;strong&gt;protected&lt;/strong&gt;&lt;/font&gt; &lt;font color="#006699"&gt;&lt;strong&gt;final&lt;/strong&gt;&lt;/font&gt; JSONObject mainObj;
&lt;font color="#000000"&gt;  26:&lt;/font&gt;    
&lt;font color="#000000"&gt;  27:&lt;/font&gt;    &lt;font color="#006699"&gt;&lt;strong&gt;protected&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;AjaxAgent&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;HttpServletRequest request, HttpServletResponse response&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#006699"&gt;&lt;strong&gt;throws&lt;/strong&gt;&lt;/font&gt; ServletException, IOException &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  28:&lt;/font&gt;        &lt;font color="#cc00cc"&gt;this&lt;/font&gt;.request &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; request;
&lt;font color="#000000"&gt;  29:&lt;/font&gt;        &lt;font color="#cc00cc"&gt;this&lt;/font&gt;.response &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; response;
&lt;font color="#990066"&gt;  30:&lt;/font&gt;        response.&lt;font color="#9966ff"&gt;setBufferSize&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff0000"&gt;16384&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  31:&lt;/font&gt;        task &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;getParam&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;t&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  32:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;try&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  33:&lt;/font&gt;            mainObj &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#006699"&gt;&lt;strong&gt;new&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;JSONObject&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;        
&lt;font color="#000000"&gt;  34:&lt;/font&gt;            mainObj.&lt;font color="#9966ff"&gt;put&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;agent&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;, &lt;font color="#9966ff"&gt;getClass&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;.&lt;font color="#9966ff"&gt;getSimpleName&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#990066"&gt;  35:&lt;/font&gt;            mainObj.&lt;font color="#9966ff"&gt;put&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;by&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;, task&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  36:&lt;/font&gt;        &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt; &lt;font color="#006699"&gt;&lt;strong&gt;catch&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;JSONException ex&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  37:&lt;/font&gt;            &lt;font color="#006699"&gt;&lt;strong&gt;throw&lt;/strong&gt;&lt;/font&gt; &lt;font color="#006699"&gt;&lt;strong&gt;new&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;ServletException&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;ex&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  38:&lt;/font&gt;        &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  39:&lt;/font&gt;    &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#990066"&gt;  40:&lt;/font&gt;    
&lt;font color="#000000"&gt;  41:&lt;/font&gt;    &lt;font color="#006699"&gt;&lt;strong&gt;public&lt;/strong&gt;&lt;/font&gt; String &lt;font color="#9966ff"&gt;getTask&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  42:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;return&lt;/strong&gt;&lt;/font&gt; task;
&lt;font color="#000000"&gt;  43:&lt;/font&gt;    &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  44:&lt;/font&gt;    
&lt;font color="#990066"&gt;  45:&lt;/font&gt;    &lt;font color="#006699"&gt;&lt;strong&gt;protected&lt;/strong&gt;&lt;/font&gt; &lt;font color="#006699"&gt;&lt;strong&gt;static&lt;/strong&gt;&lt;/font&gt; JSONObject &lt;font color="#9966ff"&gt;toJSONObject&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;Object bean&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  46:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;try&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  47:&lt;/font&gt;            &lt;font color="#006699"&gt;&lt;strong&gt;return&lt;/strong&gt;&lt;/font&gt; JSFUtil.&lt;font color="#9966ff"&gt;buildJSONObject&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;bean&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  48:&lt;/font&gt;        &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt; &lt;font color="#006699"&gt;&lt;strong&gt;catch&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;Exception ex&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  49:&lt;/font&gt;            logger.&lt;font color="#9966ff"&gt;log&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;Level.SEVERE, &lt;font color="#cc00cc"&gt;null&lt;/font&gt;, ex&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#990066"&gt;  50:&lt;/font&gt;        &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  51:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;return&lt;/strong&gt;&lt;/font&gt; &lt;font color="#cc00cc"&gt;null&lt;/font&gt;;
&lt;font color="#000000"&gt;  52:&lt;/font&gt;    &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  53:&lt;/font&gt;    
&lt;font color="#000000"&gt;  54:&lt;/font&gt;    &lt;font color="#006699"&gt;&lt;strong&gt;private&lt;/strong&gt;&lt;/font&gt; &lt;font color="#0099ff"&gt;&lt;strong&gt;void&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;outputJson&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#006699"&gt;&lt;strong&gt;throws&lt;/strong&gt;&lt;/font&gt; IOException, JSONException &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#990066"&gt;  55:&lt;/font&gt;        response.&lt;font color="#9966ff"&gt;setContentType&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;text/json;charset=UTF-8&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  56:&lt;/font&gt;        response.&lt;font color="#9966ff"&gt;setHeader&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;Cache-Control&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;, &lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;no-cache&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;        
&lt;font color="#000000"&gt;  57:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;final&lt;/strong&gt;&lt;/font&gt; PrintWriter writer &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; response.&lt;font color="#9966ff"&gt;getWriter&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  58:&lt;/font&gt;        writer.&lt;font color="#9966ff"&gt;print&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;mainObj.&lt;font color="#9966ff"&gt;toString&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  59:&lt;/font&gt;        writer.&lt;font color="#9966ff"&gt;close&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#990066"&gt;  60:&lt;/font&gt;    &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt; 
&lt;font color="#000000"&gt;  61:&lt;/font&gt;    
&lt;font color="#000000"&gt;  62:&lt;/font&gt;    &lt;font color="#006699"&gt;&lt;strong&gt;protected&lt;/strong&gt;&lt;/font&gt; String &lt;font color="#9966ff"&gt;getParam&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;String name&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  63:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;return&lt;/strong&gt;&lt;/font&gt; request.&lt;font color="#9966ff"&gt;getParameter&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;name&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  64:&lt;/font&gt;    &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#990066"&gt;  65:&lt;/font&gt;
&lt;font color="#000000"&gt;  66:&lt;/font&gt;    &lt;font color="#006699"&gt;&lt;strong&gt;protected&lt;/strong&gt;&lt;/font&gt; Long &lt;font color="#9966ff"&gt;getParamAsLong&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;String name&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  67:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;final&lt;/strong&gt;&lt;/font&gt; String p &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;getParam&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;name&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  68:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;return&lt;/strong&gt;&lt;/font&gt; Long.&lt;font color="#9966ff"&gt;valueOf&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;p&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  69:&lt;/font&gt;    &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#990066"&gt;  70:&lt;/font&gt;
&lt;font color="#000000"&gt;  71:&lt;/font&gt;    &lt;font color="#006699"&gt;&lt;strong&gt;public&lt;/strong&gt;&lt;/font&gt; &lt;font color="#006699"&gt;&lt;strong&gt;final&lt;/strong&gt;&lt;/font&gt; &lt;font color="#0099ff"&gt;&lt;strong&gt;void&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;exec&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#006699"&gt;&lt;strong&gt;throws&lt;/strong&gt;&lt;/font&gt; ServletException, IOException &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  72:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;try&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  73:&lt;/font&gt;            &lt;font color="#006699"&gt;&lt;strong&gt;final&lt;/strong&gt;&lt;/font&gt; Method m &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;getClass&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;.&lt;font color="#9966ff"&gt;getMethod&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;task&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  74:&lt;/font&gt;            &lt;font color="#ff8400"&gt;&lt;/font&gt;
&lt;font color="#990066"&gt;  75:&lt;/font&gt;            m.&lt;font color="#9966ff"&gt;invoke&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#cc00cc"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  76:&lt;/font&gt;            &lt;font color="#9966ff"&gt;outputJson&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  77:&lt;/font&gt;        &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt; &lt;font color="#006699"&gt;&lt;strong&gt;catch&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;NoSuchMethodException ex&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  78:&lt;/font&gt;            response.&lt;font color="#9966ff"&gt;sendError&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt; HttpServletResponse.SC_NOT_IMPLEMENTED &lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  79:&lt;/font&gt;        &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt; &lt;font color="#006699"&gt;&lt;strong&gt;catch&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;Exception ex&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#990066"&gt;  80:&lt;/font&gt;            logger.&lt;font color="#9966ff"&gt;log&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;Level.SEVERE, &lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;Error&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;while&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;executing&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;an&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;AJAX&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;request.&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;, ex&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  81:&lt;/font&gt;            response.&lt;font color="#9966ff"&gt;sendError&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt; HttpServletResponse.SC_INTERNAL_SERVER_ERROR, ex.&lt;font color="#9966ff"&gt;toString&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  82:&lt;/font&gt;        &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  83:&lt;/font&gt;    &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  84:&lt;/font&gt;
&lt;font color="#990066"&gt;  85:&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  86:&lt;/font&gt;
&lt;/font&gt;&lt;/pre&gt;
&lt;p&gt;The servlet to attend AJAX request is like:&lt;/p&gt;
&lt;pre class="code"&gt;&lt;font color="#000000"&gt;&lt;font color="#000000"&gt;   1:&lt;/font&gt;&lt;font color="#009966"&gt;&lt;strong&gt;package&lt;/strong&gt;&lt;/font&gt; br.com.trilha21.web.store.ajax;
&lt;font color="#000000"&gt;   2:&lt;/font&gt;
&lt;font color="#000000"&gt;   3:&lt;/font&gt;&lt;font color="#009966"&gt;&lt;strong&gt;import&lt;/strong&gt;&lt;/font&gt; java.io.IOException;
&lt;font color="#000000"&gt;   4:&lt;/font&gt;&lt;font color="#009966"&gt;&lt;strong&gt;import&lt;/strong&gt;&lt;/font&gt; java.lang.reflect.Constructor;
&lt;font color="#990066"&gt;   5:&lt;/font&gt;&lt;font color="#009966"&gt;&lt;strong&gt;import&lt;/strong&gt;&lt;/font&gt; java.util.Map;
&lt;font color="#000000"&gt;   6:&lt;/font&gt;&lt;font color="#009966"&gt;&lt;strong&gt;import&lt;/strong&gt;&lt;/font&gt; java.util.WeakHashMap;
&lt;font color="#000000"&gt;   7:&lt;/font&gt;&lt;font color="#009966"&gt;&lt;strong&gt;import&lt;/strong&gt;&lt;/font&gt; java.util.logging.Level;
&lt;font color="#000000"&gt;   8:&lt;/font&gt;&lt;font color="#009966"&gt;&lt;strong&gt;import&lt;/strong&gt;&lt;/font&gt; java.util.logging.Logger;
&lt;font color="#000000"&gt;   9:&lt;/font&gt;&lt;font color="#009966"&gt;&lt;strong&gt;import&lt;/strong&gt;&lt;/font&gt; javax.servlet.ServletException;
&lt;font color="#990066"&gt;  10:&lt;/font&gt;&lt;font color="#009966"&gt;&lt;strong&gt;import&lt;/strong&gt;&lt;/font&gt; javax.servlet.http.HttpServlet;
&lt;font color="#000000"&gt;  11:&lt;/font&gt;&lt;font color="#009966"&gt;&lt;strong&gt;import&lt;/strong&gt;&lt;/font&gt; javax.servlet.http.HttpServletRequest;
&lt;font color="#000000"&gt;  12:&lt;/font&gt;&lt;font color="#009966"&gt;&lt;strong&gt;import&lt;/strong&gt;&lt;/font&gt; javax.servlet.http.HttpServletResponse;
&lt;font color="#000000"&gt;  13:&lt;/font&gt;
&lt;font color="#000000"&gt;  14:&lt;/font&gt;&lt;font color="#6600cc"&gt;/**&lt;/font&gt;
&lt;font color="#990066"&gt;  15:&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;*&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#02b902"&gt;@author&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;Marcio&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;Wesley&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;Borges&lt;/font&gt;
&lt;font color="#000000"&gt;  16:&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;*/&lt;/font&gt;
&lt;font color="#000000"&gt;  17:&lt;/font&gt;&lt;font color="#006699"&gt;&lt;strong&gt;public&lt;/strong&gt;&lt;/font&gt; &lt;font color="#0099ff"&gt;&lt;strong&gt;class&lt;/strong&gt;&lt;/font&gt; AjaxBridgeServlet &lt;font color="#006699"&gt;&lt;strong&gt;extends&lt;/strong&gt;&lt;/font&gt; HttpServlet &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  18:&lt;/font&gt;    &lt;font color="#006699"&gt;&lt;strong&gt;private&lt;/strong&gt;&lt;/font&gt; &lt;font color="#006699"&gt;&lt;strong&gt;static&lt;/strong&gt;&lt;/font&gt; &lt;font color="#006699"&gt;&lt;strong&gt;final&lt;/strong&gt;&lt;/font&gt; Logger logger &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; Logger.&lt;font color="#9966ff"&gt;getLogger&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;AjaxBridgeServlet.&lt;font color="#0099ff"&gt;&lt;strong&gt;class&lt;/strong&gt;&lt;/font&gt;.&lt;font color="#9966ff"&gt;getName&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  19:&lt;/font&gt;    
&lt;font color="#990066"&gt;  20:&lt;/font&gt;    &lt;font color="#006699"&gt;&lt;strong&gt;private&lt;/strong&gt;&lt;/font&gt; &lt;font color="#006699"&gt;&lt;strong&gt;static&lt;/strong&gt;&lt;/font&gt; &lt;font color="#006699"&gt;&lt;strong&gt;final&lt;/strong&gt;&lt;/font&gt; String PCKG &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; AjaxBridgeServlet.&lt;font color="#0099ff"&gt;&lt;strong&gt;class&lt;/strong&gt;&lt;/font&gt;.&lt;font color="#9966ff"&gt;getPackage&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;.&lt;font color="#9966ff"&gt;getName&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;+&lt;/strong&gt;&lt;/font&gt; &lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;.agents.&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;;
&lt;font color="#000000"&gt;  21:&lt;/font&gt;    &lt;font color="#006699"&gt;&lt;strong&gt;private&lt;/strong&gt;&lt;/font&gt; &lt;font color="#006699"&gt;&lt;strong&gt;static&lt;/strong&gt;&lt;/font&gt; &lt;font color="#006699"&gt;&lt;strong&gt;final&lt;/strong&gt;&lt;/font&gt; Map&lt;font color="#000000"&gt;&lt;strong&gt;&amp;lt;&lt;/strong&gt;&lt;/font&gt;String, Class&lt;font color="#000000"&gt;&lt;strong&gt;&amp;lt;&lt;/strong&gt;&lt;/font&gt;? &lt;font color="#006699"&gt;&lt;strong&gt;extends&lt;/strong&gt;&lt;/font&gt; AjaxAgent&lt;font color="#000000"&gt;&lt;strong&gt;&amp;gt;&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;&amp;gt;&lt;/strong&gt;&lt;/font&gt; agents &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#006699"&gt;&lt;strong&gt;new&lt;/strong&gt;&lt;/font&gt; WeakHashMap&lt;font color="#000000"&gt;&lt;strong&gt;&amp;lt;&lt;/strong&gt;&lt;/font&gt;String, Class&lt;font color="#000000"&gt;&lt;strong&gt;&amp;lt;&lt;/strong&gt;&lt;/font&gt;? &lt;font color="#006699"&gt;&lt;strong&gt;extends&lt;/strong&gt;&lt;/font&gt; AjaxAgent&lt;font color="#000000"&gt;&lt;strong&gt;&amp;gt;&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;&amp;gt;&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  22:&lt;/font&gt;
&lt;font color="#000000"&gt;  23:&lt;/font&gt;    &lt;font color="#006699"&gt;&lt;strong&gt;private&lt;/strong&gt;&lt;/font&gt; &lt;font color="#006699"&gt;&lt;strong&gt;static&lt;/strong&gt;&lt;/font&gt; &lt;font color="#006699"&gt;&lt;strong&gt;final&lt;/strong&gt;&lt;/font&gt; String AGENT_NAME_SUFIX &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;Agent&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;;
&lt;font color="#000000"&gt;  24:&lt;/font&gt;   
&lt;font color="#990066"&gt;  25:&lt;/font&gt;    &lt;font color="#006699"&gt;&lt;strong&gt;private&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;&amp;lt;&lt;/strong&gt;&lt;/font&gt;T &lt;font color="#006699"&gt;&lt;strong&gt;extends&lt;/strong&gt;&lt;/font&gt; AjaxAgent&lt;font color="#000000"&gt;&lt;strong&gt;&amp;gt;&lt;/strong&gt;&lt;/font&gt; Class&lt;font color="#000000"&gt;&lt;strong&gt;&amp;lt;&lt;/strong&gt;&lt;/font&gt;T&lt;font color="#000000"&gt;&lt;strong&gt;&amp;gt;&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;getAgent&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;String agentName&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  26:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;if&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;!&lt;/strong&gt;&lt;/font&gt;agentName.&lt;font color="#9966ff"&gt;endsWith&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;AGENT_NAME_SUFIX&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  27:&lt;/font&gt;            agentName&lt;font color="#000000"&gt;&lt;strong&gt;+&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt;AGENT_NAME_SUFIX;
&lt;font color="#000000"&gt;  28:&lt;/font&gt;
&lt;font color="#000000"&gt;  29:&lt;/font&gt;        Class&lt;font color="#000000"&gt;&lt;strong&gt;&amp;lt;&lt;/strong&gt;&lt;/font&gt;T&lt;font color="#000000"&gt;&lt;strong&gt;&amp;gt;&lt;/strong&gt;&lt;/font&gt; agentClass &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;Class&lt;font color="#000000"&gt;&lt;strong&gt;&amp;lt;&lt;/strong&gt;&lt;/font&gt;T&lt;font color="#000000"&gt;&lt;strong&gt;&amp;gt;&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;agents.&lt;font color="#9966ff"&gt;get&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;agentName&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#990066"&gt;  30:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;if&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;agentClass&lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt;&lt;font color="#cc00cc"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  31:&lt;/font&gt;            &lt;font color="#006699"&gt;&lt;strong&gt;try&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  32:&lt;/font&gt;                agentClass &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;Class&lt;font color="#000000"&gt;&lt;strong&gt;&amp;lt;&lt;/strong&gt;&lt;/font&gt;T&lt;font color="#000000"&gt;&lt;strong&gt;&amp;gt;&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; Class.&lt;font color="#9966ff"&gt;forName&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt; PCKG &lt;font color="#000000"&gt;&lt;strong&gt;+&lt;/strong&gt;&lt;/font&gt; agentName &lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  33:&lt;/font&gt;            &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt; &lt;font color="#006699"&gt;&lt;strong&gt;catch&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;ClassNotFoundException ex&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  34:&lt;/font&gt;                &lt;font color="#006699"&gt;&lt;strong&gt;return&lt;/strong&gt;&lt;/font&gt; &lt;font color="#cc00cc"&gt;null&lt;/font&gt;;
&lt;font color="#990066"&gt;  35:&lt;/font&gt;            &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  36:&lt;/font&gt;            agents.&lt;font color="#9966ff"&gt;put&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;agentName, agentClass&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  37:&lt;/font&gt;        &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  38:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;return&lt;/strong&gt;&lt;/font&gt; agentClass;
&lt;font color="#000000"&gt;  39:&lt;/font&gt;    &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#990066"&gt;  40:&lt;/font&gt;    
&lt;font color="#000000"&gt;  41:&lt;/font&gt;    &lt;font color="#6600cc"&gt;/**&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;
&lt;font color="#000000"&gt;  42:&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;*&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;Processes&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;requests&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;for&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;both&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;HTTP&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;code&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;gt;&lt;/font&gt;&lt;font color="#6600cc"&gt;GET&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;/&lt;/font&gt;&lt;font color="#0000ff"&gt;code&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;gt;&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;and&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;code&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;gt;&lt;/font&gt;&lt;font color="#6600cc"&gt;POST&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;/&lt;/font&gt;&lt;font color="#0000ff"&gt;code&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;gt;&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;methods&lt;/font&gt;&lt;font color="#6600cc"&gt;.&lt;/font&gt;
&lt;font color="#000000"&gt;  43:&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;*&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#02b902"&gt;@param&lt;/font&gt;&lt;font color="#02b902"&gt; &lt;/font&gt;&lt;font color="#cc6600"&gt;request&lt;/font&gt;&lt;font color="#02b902"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;servlet&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;request&lt;/font&gt;
&lt;font color="#000000"&gt;  44:&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;*&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#02b902"&gt;@param&lt;/font&gt;&lt;font color="#02b902"&gt; &lt;/font&gt;&lt;font color="#cc6600"&gt;response&lt;/font&gt;&lt;font color="#02b902"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;servlet&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;response&lt;/font&gt;
&lt;font color="#990066"&gt;  45:&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;*/&lt;/font&gt;
&lt;font color="#000000"&gt;  46:&lt;/font&gt;    &lt;font color="#006699"&gt;&lt;strong&gt;protected&lt;/strong&gt;&lt;/font&gt; &lt;font color="#0099ff"&gt;&lt;strong&gt;void&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;processRequest&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;HttpServletRequest request, HttpServletResponse response&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  47:&lt;/font&gt;    &lt;font color="#006699"&gt;&lt;strong&gt;throws&lt;/strong&gt;&lt;/font&gt; ServletException, IOException &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  48:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;try&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  49:&lt;/font&gt;&lt;font color="#ff8400"&gt;//&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;response.setContentType(&amp;quot;text/html;charset=UTF-8&amp;quot;);&lt;/font&gt;
&lt;font color="#990066"&gt;  50:&lt;/font&gt;            &lt;font color="#006699"&gt;&lt;strong&gt;final&lt;/strong&gt;&lt;/font&gt; String agentName &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; request.&lt;font color="#9966ff"&gt;getParameter&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;a&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  51:&lt;/font&gt;            &lt;font color="#006699"&gt;&lt;strong&gt;final&lt;/strong&gt;&lt;/font&gt; Class&lt;font color="#000000"&gt;&lt;strong&gt;&amp;lt;&lt;/strong&gt;&lt;/font&gt;? &lt;font color="#006699"&gt;&lt;strong&gt;extends&lt;/strong&gt;&lt;/font&gt; AjaxAgent&lt;font color="#000000"&gt;&lt;strong&gt;&amp;gt;&lt;/strong&gt;&lt;/font&gt; agentClass &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;getAgent&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;agentName&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  52:&lt;/font&gt;            &lt;font color="#006699"&gt;&lt;strong&gt;if&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;agentClass &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#cc00cc"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  53:&lt;/font&gt;                response.&lt;font color="#9966ff"&gt;sendError&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;HttpServletResponse.SC_NOT_IMPLEMENTED&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  54:&lt;/font&gt;                &lt;font color="#006699"&gt;&lt;strong&gt;return&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#990066"&gt;  55:&lt;/font&gt;            &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  56:&lt;/font&gt;
&lt;font color="#000000"&gt;  57:&lt;/font&gt;            &lt;font color="#006699"&gt;&lt;strong&gt;final&lt;/strong&gt;&lt;/font&gt; Constructor agentConstructor &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; agentClass.&lt;font color="#9966ff"&gt;getConstructors&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;[&lt;font color="#ff0000"&gt;0&lt;/font&gt;];
&lt;font color="#000000"&gt;  58:&lt;/font&gt;            &lt;font color="#006699"&gt;&lt;strong&gt;final&lt;/strong&gt;&lt;/font&gt; AjaxAgent agent &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;AjaxAgent&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;agentConstructor.&lt;font color="#9966ff"&gt;newInstance&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;request, response&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  59:&lt;/font&gt;            agent.&lt;font color="#9966ff"&gt;exec&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#990066"&gt;  60:&lt;/font&gt;            &lt;font color="#006699"&gt;&lt;strong&gt;return&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  61:&lt;/font&gt;            
&lt;font color="#000000"&gt;  62:&lt;/font&gt;        &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt; &lt;font color="#006699"&gt;&lt;strong&gt;catch&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;Throwable ex&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  63:&lt;/font&gt;            logger.&lt;font color="#9966ff"&gt;log&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;Level.SEVERE, &lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;Error&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;in&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;AjaxBridgeServlet&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;while&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;processing&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;the&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;request:&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;+&lt;/strong&gt;&lt;/font&gt; request, ex&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  64:&lt;/font&gt;        &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#990066"&gt;  65:&lt;/font&gt;        
&lt;font color="#000000"&gt;  66:&lt;/font&gt;        response.&lt;font color="#9966ff"&gt;sendError&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;HttpServletResponse.SC_INTERNAL_SERVER_ERROR&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  67:&lt;/font&gt;    &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt; 
&lt;font color="#000000"&gt;  68:&lt;/font&gt;
&lt;font color="#000000"&gt;  69:&lt;/font&gt;    &lt;font color="#ff8400"&gt;//&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;&amp;lt;editor-fold&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;defaultstate=&amp;quot;collapsed&amp;quot;&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;desc=&amp;quot;HttpServlet&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;methods.&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;Click&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;on&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;the&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;+&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;sign&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;on&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;the&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;left&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;to&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;edit&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;the&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;code.&amp;quot;&amp;gt;&lt;/font&gt;
&lt;font color="#990066"&gt;  70:&lt;/font&gt;    &lt;font color="#6600cc"&gt;/**&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;
&lt;font color="#000000"&gt;  71:&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;*&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;Handles&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;the&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;HTTP&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;code&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;gt;&lt;/font&gt;&lt;font color="#6600cc"&gt;GET&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;/&lt;/font&gt;&lt;font color="#0000ff"&gt;code&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;gt;&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;method&lt;/font&gt;&lt;font color="#6600cc"&gt;.&lt;/font&gt;
&lt;font color="#000000"&gt;  72:&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;*&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#02b902"&gt;@param&lt;/font&gt;&lt;font color="#02b902"&gt; &lt;/font&gt;&lt;font color="#cc6600"&gt;request&lt;/font&gt;&lt;font color="#02b902"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;servlet&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;request&lt;/font&gt;
&lt;font color="#000000"&gt;  73:&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;*&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#02b902"&gt;@param&lt;/font&gt;&lt;font color="#02b902"&gt; &lt;/font&gt;&lt;font color="#cc6600"&gt;response&lt;/font&gt;&lt;font color="#02b902"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;servlet&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;response&lt;/font&gt;
&lt;font color="#000000"&gt;  74:&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;*/&lt;/font&gt;
&lt;font color="#990066"&gt;  75:&lt;/font&gt;    &lt;font color="#006699"&gt;&lt;strong&gt;protected&lt;/strong&gt;&lt;/font&gt; &lt;font color="#0099ff"&gt;&lt;strong&gt;void&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;doGet&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;HttpServletRequest request, HttpServletResponse response&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  76:&lt;/font&gt;    &lt;font color="#006699"&gt;&lt;strong&gt;throws&lt;/strong&gt;&lt;/font&gt; ServletException, IOException &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  77:&lt;/font&gt;        &lt;font color="#9966ff"&gt;processRequest&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;request, response&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  78:&lt;/font&gt;    &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt; 
&lt;font color="#000000"&gt;  79:&lt;/font&gt;
&lt;font color="#990066"&gt;  80:&lt;/font&gt;    &lt;font color="#6600cc"&gt;/**&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;
&lt;font color="#000000"&gt;  81:&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;*&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;Handles&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;the&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;HTTP&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;code&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;gt;&lt;/font&gt;&lt;font color="#6600cc"&gt;POST&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;/&lt;/font&gt;&lt;font color="#0000ff"&gt;code&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;gt;&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;method&lt;/font&gt;&lt;font color="#6600cc"&gt;.&lt;/font&gt;
&lt;font color="#000000"&gt;  82:&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;*&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#02b902"&gt;@param&lt;/font&gt;&lt;font color="#02b902"&gt; &lt;/font&gt;&lt;font color="#cc6600"&gt;request&lt;/font&gt;&lt;font color="#02b902"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;servlet&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;request&lt;/font&gt;
&lt;font color="#000000"&gt;  83:&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;*&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#02b902"&gt;@param&lt;/font&gt;&lt;font color="#02b902"&gt; &lt;/font&gt;&lt;font color="#cc6600"&gt;response&lt;/font&gt;&lt;font color="#02b902"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;servlet&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;response&lt;/font&gt;
&lt;font color="#000000"&gt;  84:&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;*/&lt;/font&gt;
&lt;font color="#990066"&gt;  85:&lt;/font&gt;    &lt;font color="#006699"&gt;&lt;strong&gt;protected&lt;/strong&gt;&lt;/font&gt; &lt;font color="#0099ff"&gt;&lt;strong&gt;void&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;doPost&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;HttpServletRequest request, HttpServletResponse response&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  86:&lt;/font&gt;    &lt;font color="#006699"&gt;&lt;strong&gt;throws&lt;/strong&gt;&lt;/font&gt; ServletException, IOException &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  87:&lt;/font&gt;        &lt;font color="#9966ff"&gt;processRequest&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;request, response&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  88:&lt;/font&gt;    &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  89:&lt;/font&gt;
&lt;font color="#990066"&gt;  90:&lt;/font&gt;    &lt;font color="#6600cc"&gt;/**&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;
&lt;font color="#000000"&gt;  91:&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;*&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;Returns&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;a&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;short&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;description&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;of&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;the&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;servlet&lt;/font&gt;&lt;font color="#6600cc"&gt;.&lt;/font&gt;
&lt;font color="#000000"&gt;  92:&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;*/&lt;/font&gt;
&lt;font color="#000000"&gt;  93:&lt;/font&gt;    &lt;font color="#006699"&gt;&lt;strong&gt;public&lt;/strong&gt;&lt;/font&gt; String &lt;font color="#9966ff"&gt;getServletInfo&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  94:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;return&lt;/strong&gt;&lt;/font&gt; &lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;Short&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;description&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;;
&lt;font color="#990066"&gt;  95:&lt;/font&gt;    &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff8400"&gt;//&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;&amp;lt;/editor-fold&amp;gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  96:&lt;/font&gt;
&lt;font color="#000000"&gt;  97:&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  98:&lt;/font&gt;
&lt;/font&gt;&lt;/pre&gt;
&lt;p&gt;And, finally, the implementantion of the AJAX Agent (who is attending the AJAX requests) is like:&lt;/p&gt;
&lt;pre class="code"&gt;&lt;font color="#000000"&gt;&lt;font color="#000000"&gt;   1:&lt;/font&gt;&lt;font color="#009966"&gt;&lt;strong&gt;package&lt;/strong&gt;&lt;/font&gt; br.com.trilha21.web.store.ajax.agents;
&lt;font color="#000000"&gt;   2:&lt;/font&gt;
&lt;font color="#000000"&gt;   3:&lt;/font&gt;&lt;font color="#009966"&gt;&lt;strong&gt;import&lt;/strong&gt;&lt;/font&gt; br.com.trilha21.web.store.ajax.AjaxAgent;
&lt;font color="#000000"&gt;   4:&lt;/font&gt;&lt;font color="#009966"&gt;&lt;strong&gt;import&lt;/strong&gt;&lt;/font&gt; br.com.trilha21.web.store.dao.Customer;
&lt;font color="#990066"&gt;   5:&lt;/font&gt;&lt;font color="#009966"&gt;&lt;strong&gt;import&lt;/strong&gt;&lt;/font&gt; br.com.trilha21.web.store.ejb.CustomerLocal;
&lt;font color="#000000"&gt;   6:&lt;/font&gt;&lt;font color="#009966"&gt;&lt;strong&gt;import&lt;/strong&gt;&lt;/font&gt; java.io.IOException;
&lt;font color="#000000"&gt;   7:&lt;/font&gt;&lt;font color="#009966"&gt;&lt;strong&gt;import&lt;/strong&gt;&lt;/font&gt; javax.servlet.ServletException;
&lt;font color="#000000"&gt;   8:&lt;/font&gt;&lt;font color="#009966"&gt;&lt;strong&gt;import&lt;/strong&gt;&lt;/font&gt; javax.servlet.http.HttpServletRequest;
&lt;font color="#000000"&gt;   9:&lt;/font&gt;&lt;font color="#009966"&gt;&lt;strong&gt;import&lt;/strong&gt;&lt;/font&gt; javax.servlet.http.HttpServletResponse;
&lt;font color="#990066"&gt;  10:&lt;/font&gt;&lt;font color="#009966"&gt;&lt;strong&gt;import&lt;/strong&gt;&lt;/font&gt; net.marciowb.poison.ejb.EJBUtil;
&lt;font color="#000000"&gt;  11:&lt;/font&gt;&lt;font color="#009966"&gt;&lt;strong&gt;import&lt;/strong&gt;&lt;/font&gt; org.json.JSONException;
&lt;font color="#000000"&gt;  12:&lt;/font&gt;
&lt;font color="#000000"&gt;  13:&lt;/font&gt;&lt;font color="#6600cc"&gt;/**&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;
&lt;font color="#000000"&gt;  14:&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;*&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#02b902"&gt;@author&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;Marcio&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;Wesley&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;Borges&lt;/font&gt;
&lt;font color="#990066"&gt;  15:&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;*/&lt;/font&gt;
&lt;font color="#000000"&gt;  16:&lt;/font&gt;&lt;font color="#006699"&gt;&lt;strong&gt;public&lt;/strong&gt;&lt;/font&gt; &lt;font color="#006699"&gt;&lt;strong&gt;final&lt;/strong&gt;&lt;/font&gt; &lt;font color="#0099ff"&gt;&lt;strong&gt;class&lt;/strong&gt;&lt;/font&gt; CustomerAgent &lt;font color="#006699"&gt;&lt;strong&gt;extends&lt;/strong&gt;&lt;/font&gt; AjaxAgent &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  17:&lt;/font&gt;    
&lt;font color="#000000"&gt;  18:&lt;/font&gt;    &lt;font color="#006699"&gt;&lt;strong&gt;final&lt;/strong&gt;&lt;/font&gt; CustomerLocal customerBean &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; EJBUtil.&lt;font color="#9966ff"&gt;lookupLocalBean&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;CustomerLocal.&lt;font color="#0099ff"&gt;&lt;strong&gt;class&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  19:&lt;/font&gt;    
&lt;font color="#990066"&gt;  20:&lt;/font&gt;    &lt;font color="#006699"&gt;&lt;strong&gt;public&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;CustomerAgent&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;HttpServletRequest request, HttpServletResponse response&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#006699"&gt;&lt;strong&gt;throws&lt;/strong&gt;&lt;/font&gt; ServletException, IOException &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  21:&lt;/font&gt;        &lt;font color="#cc00cc"&gt;super&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;request,response&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  22:&lt;/font&gt;    &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  23:&lt;/font&gt;    
&lt;font color="#000000"&gt;  24:&lt;/font&gt;    &lt;font color="#006699"&gt;&lt;strong&gt;public&lt;/strong&gt;&lt;/font&gt; &lt;font color="#0099ff"&gt;&lt;strong&gt;void&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;getCustomerByDoc&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#006699"&gt;&lt;strong&gt;throws&lt;/strong&gt;&lt;/font&gt; ServletException, IOException, JSONException &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#990066"&gt;  25:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;final&lt;/strong&gt;&lt;/font&gt; String customerDoc &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;getParam&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;customerDoc&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  26:&lt;/font&gt;        
&lt;font color="#000000"&gt;  27:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;final&lt;/strong&gt;&lt;/font&gt; Customer customer &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; customerBean.&lt;font color="#9966ff"&gt;get&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;customerDoc&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  28:&lt;/font&gt;        mainObj.&lt;font color="#9966ff"&gt;put&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;customer&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;, &lt;font color="#9966ff"&gt;toJSONObject&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;customer&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  29:&lt;/font&gt;    &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#990066"&gt;  30:&lt;/font&gt;    
&lt;font color="#000000"&gt;  31:&lt;/font&gt;    &lt;font color="#006699"&gt;&lt;strong&gt;public&lt;/strong&gt;&lt;/font&gt; &lt;font color="#0099ff"&gt;&lt;strong&gt;void&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;getCustomerByNames&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#006699"&gt;&lt;strong&gt;throws&lt;/strong&gt;&lt;/font&gt; ServletException, IOException, JSONException &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  32:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;final&lt;/strong&gt;&lt;/font&gt; String last &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;getParam&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;lastName&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  33:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;final&lt;/strong&gt;&lt;/font&gt; String first &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;getParam&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;firstName&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  34:&lt;/font&gt;        
&lt;font color="#990066"&gt;  35:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;final&lt;/strong&gt;&lt;/font&gt; Customer customer &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; customerBean.&lt;font color="#9966ff"&gt;getCustomerByNames&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;last,first&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  36:&lt;/font&gt;        mainObj.&lt;font color="#9966ff"&gt;put&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;customer&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;, &lt;font color="#9966ff"&gt;toJSONObject&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;customer&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  37:&lt;/font&gt;    &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  38:&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  39:&lt;/font&gt;
&lt;/font&gt;&lt;/pre&gt;
&lt;p&gt;The code above, works to HTTP requests (via GET method), but it doesn't works to post data (via POST method). To post data using &lt;code&gt;woodstock.xhr&lt;/code&gt;, you must use &lt;code&gt;woodstock.xhr.post&lt;/code&gt; instead of &lt;code&gt;woodstock.xhr.get&lt;/code&gt;&lt;/p&gt;
&lt;h2&gt;Posting: woodstock.xhr.post&lt;/h2&gt;
&lt;p&gt;After quickly googling for "woodstock.xhr.post", I cried, 'cause nothing was returned! So, how to post (and recover) data via "woodstock.xhr.post" stuff?&lt;/p&gt;
&lt;p&gt;Seeing the woodstock JS documentation, you will find the mention to the parameter &lt;code&gt;content&lt;/code&gt;. All post data must be 'posted' via this parameter. So, the idea to pass complex data (as objects with several kinds of properties) is to encode the data in client side and decode in server side. As example, you can pass a object using &lt;a href="http://en.wikipedia.org/wiki/JSON"&gt;JSON&lt;/a&gt; and decoding it using Java &lt;a href="http://www.json.org/java/index.html"&gt;JSON&lt;/a&gt; library at server side.&lt;/p&gt;
&lt;p&gt;Bellow you see (&lt;code&gt;Object.toJSON&lt;/code&gt; is a &lt;a href="http://www.prototypejs.org/api/object"&gt;Prototype&lt;/a&gt; utility method) the equivalent post data of the previous client side code supplied:&lt;/p&gt;
&lt;pre class="code"&gt;&lt;font color="#000000"&gt;&lt;font color="#000000"&gt;   1:&lt;/font&gt;&lt;font color="#006699"&gt;&lt;strong&gt;function&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;getCustomerByNames&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;lastName&lt;font color="#000000"&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/font&gt; firstName&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;   2:&lt;/font&gt;    &lt;font color="#006699"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt; props &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;   3:&lt;/font&gt;        &lt;font color="#02b902"&gt;async&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;:&lt;/strong&gt;&lt;/font&gt; &lt;font color="#cc00cc"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;   4:&lt;/font&gt;
&lt;font color="#990066"&gt;   5:&lt;/font&gt;        &lt;font color="#02b902"&gt;onError&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;:&lt;/strong&gt;&lt;/font&gt; &lt;font color="#006699"&gt;&lt;strong&gt;function&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;xhr&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;   6:&lt;/font&gt;            window&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;alert&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;An&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;error&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;occurs&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;while&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;sending&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;an&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;AJAX&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;request.&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;See:&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;+&lt;/strong&gt;&lt;/font&gt; xhr&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;   7:&lt;/font&gt;        &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;   8:&lt;/font&gt;
&lt;font color="#000000"&gt;   9:&lt;/font&gt;        &lt;font color="#02b902"&gt;onReady&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;:&lt;/strong&gt;&lt;/font&gt; &lt;font color="#006699"&gt;&lt;strong&gt;function&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;xhr&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#990066"&gt;  10:&lt;/font&gt;            &lt;font color="#006699"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt; resp &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#cc00cc"&gt;eval&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;'&lt;/font&gt;&lt;font color="#ff00cc"&gt;(&lt;/font&gt;&lt;font color="#ff00cc"&gt;'&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;+&lt;/strong&gt;&lt;/font&gt; xhr&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;responseText &lt;font color="#000000"&gt;&lt;strong&gt;+&lt;/strong&gt;&lt;/font&gt; &lt;font color="#ff00cc"&gt;'&lt;/font&gt;&lt;font color="#ff00cc"&gt;)&lt;/font&gt;&lt;font color="#ff00cc"&gt;'&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  11:&lt;/font&gt;            window&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;alert&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;Customer&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;is&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;+&lt;/strong&gt;&lt;/font&gt; resp&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;name &lt;font color="#000000"&gt;&lt;strong&gt;+&lt;/strong&gt;&lt;/font&gt; &lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;+&lt;/strong&gt;&lt;/font&gt; resp&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;email &lt;font color="#000000"&gt;&lt;strong&gt;+&lt;/strong&gt;&lt;/font&gt; &lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;  
&lt;font color="#000000"&gt;  12:&lt;/font&gt;        &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  13:&lt;/font&gt;
&lt;font color="#000000"&gt;  14:&lt;/font&gt;        &lt;font color="#02b902"&gt;url&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;:&lt;/strong&gt;&lt;/font&gt; &lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;/AjaxBridge?a=Customer&amp;amp;t=getCustomerByCode&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/font&gt;
&lt;div style="display:block;border: 1px dotted red"&gt;
&lt;font color="#990066"&gt;  15:&lt;/font&gt;        &lt;font color="#02b902"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;:&lt;/strong&gt;&lt;/font&gt; &lt;font color="#0099ff"&gt;&lt;strong&gt;Object&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;toJSON&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  16:&lt;/font&gt;            &lt;font color="#ff00cc"&gt;'&lt;/font&gt;&lt;font color="#ff00cc"&gt;lastName&lt;/font&gt;&lt;font color="#ff00cc"&gt;'&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;:&lt;/strong&gt;&lt;/font&gt; lastName&lt;font color="#000000"&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  17:&lt;/font&gt;            &lt;font color="#ff00cc"&gt;'&lt;/font&gt;&lt;font color="#ff00cc"&gt;firstName&lt;/font&gt;&lt;font color="#ff00cc"&gt;'&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;:&lt;/strong&gt;&lt;/font&gt; firstName
&lt;font color="#000000"&gt;  18:&lt;/font&gt;        &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;
&lt;/div&gt;
&lt;font color="#000000"&gt;  19:&lt;/font&gt;    &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#990066"&gt;  20:&lt;/font&gt;
&lt;font color="#000000"&gt;  21:&lt;/font&gt;    woodstock&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;xhr&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;post&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;props&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  22:&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  23:&lt;/font&gt;
&lt;/font&gt;&lt;/pre&gt;
&lt;p&gt;To read the &lt;code style="color:green"&gt;content&lt;/code&gt; parameter passed above in the servlet, you can do:&lt;/p&gt;
&lt;pre class="code"&gt;&lt;font color="#000000"&gt;&lt;font color="#000000"&gt;   1:&lt;/font&gt;&lt;font color="#006699"&gt;&lt;strong&gt;public&lt;/strong&gt;&lt;/font&gt; &lt;font color="#006699"&gt;&lt;strong&gt;final&lt;/strong&gt;&lt;/font&gt; &lt;font color="#0099ff"&gt;&lt;strong&gt;class&lt;/strong&gt;&lt;/font&gt; CustomerAgent &lt;font color="#006699"&gt;&lt;strong&gt;extends&lt;/strong&gt;&lt;/font&gt; AjaxAgent &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;   2:&lt;/font&gt;    
&lt;font color="#000000"&gt;   3:&lt;/font&gt;    &lt;font color="#006699"&gt;&lt;strong&gt;final&lt;/strong&gt;&lt;/font&gt; CustomerLocal customerBean &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; EJBUtil.&lt;font color="#9966ff"&gt;lookupLocalBean&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;CustomerLocal.&lt;font color="#0099ff"&gt;&lt;strong&gt;class&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;   4:&lt;/font&gt;    
&lt;font color="#990066"&gt;   5:&lt;/font&gt;    &lt;font color="#006699"&gt;&lt;strong&gt;public&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;CustomerAgent&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;HttpServletRequest request, HttpServletResponse response&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#006699"&gt;&lt;strong&gt;throws&lt;/strong&gt;&lt;/font&gt; ServletException, IOException &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;   6:&lt;/font&gt;        &lt;font color="#cc00cc"&gt;super&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;request,response&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;   7:&lt;/font&gt;    &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;   8:&lt;/font&gt;    
&lt;font color="#000000"&gt;   9:&lt;/font&gt;    &lt;font color="#006699"&gt;&lt;strong&gt;public&lt;/strong&gt;&lt;/font&gt; &lt;font color="#0099ff"&gt;&lt;strong&gt;void&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;getCustomerByDoc&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#006699"&gt;&lt;strong&gt;throws&lt;/strong&gt;&lt;/font&gt; ServletException, IOException, JSONException &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#990066"&gt;  10:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;final&lt;/strong&gt;&lt;/font&gt; String customerDoc &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;getParam&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;customerDoc&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  11:&lt;/font&gt;        
&lt;font color="#000000"&gt;  12:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;final&lt;/strong&gt;&lt;/font&gt; Customer customer &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; customerBean.&lt;font color="#9966ff"&gt;get&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;customerDoc&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  13:&lt;/font&gt;        mainObj.&lt;font color="#9966ff"&gt;put&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;customer&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;, &lt;font color="#9966ff"&gt;toJSONObject&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;customer&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  14:&lt;/font&gt;    &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#990066"&gt;  15:&lt;/font&gt;
&lt;div style="border:1px dashed blue"&gt;
&lt;font color="#000000"&gt;  16:&lt;/font&gt;    &lt;font color="#006699"&gt;&lt;strong&gt;public&lt;/strong&gt;&lt;/font&gt; &lt;font color="#0099ff"&gt;&lt;strong&gt;void&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;getCustomerByNames&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#006699"&gt;&lt;strong&gt;throws&lt;/strong&gt;&lt;/font&gt; ServletException, IOException, JSONException &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  17:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;final&lt;/strong&gt;&lt;/font&gt; String data &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; IOUtil.&lt;font color="#9966ff"&gt;readText&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;request.&lt;font color="#9966ff"&gt;getInputStream&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;&lt;font color="#ff8400"&gt;//&lt;/font&gt;&lt;font color="#ff8400"&gt;Reads&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;the&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;'content'&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;parameter&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;-&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;it's&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;equivalent&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;to&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;the&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;post&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;body.&lt;/font&gt;
&lt;font color="#000000"&gt;  18:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;final&lt;/strong&gt;&lt;/font&gt; JSONObject json &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#006699"&gt;&lt;strong&gt;new&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;JSONObject&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;data&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  19:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;final&lt;/strong&gt;&lt;/font&gt; String lastName &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; json.&lt;font color="#9966ff"&gt;getString&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;lastName&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#990066"&gt;  20:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;final&lt;/strong&gt;&lt;/font&gt; String firstName &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; json.&lt;font color="#9966ff"&gt;getString&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;firstName&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  21:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;final&lt;/strong&gt;&lt;/font&gt; Customer customer &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; customerBean.&lt;font color="#9966ff"&gt;getCustomerByNames&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;lastName,firstName&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  22:&lt;/font&gt;        mainObj.&lt;font color="#9966ff"&gt;put&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;customer&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;, &lt;font color="#9966ff"&gt;toJSONObject&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;customer&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  23:&lt;/font&gt;    &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;/div&gt;
&lt;font color="#000000"&gt;  24:&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#990066"&gt;  25:&lt;/font&gt;
&lt;/font&gt;&lt;/pre&gt;
&lt;p&gt;Good Icefaces look! I'll still with Woodstock for now.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8914133-4865917594800345736?l=www.marciowb.net%2Fblog'/&gt;&lt;/div&gt;</content><link rel='related' href='http://www.marciowb.net/blog/2009/files/woodstock/jsdocs/woodstock4_3.xhr.html' title='woodstock.xhr.post: Do you see Google? See?!'/><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/8914133/4865917594800345736/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=8914133&amp;postID=4865917594800345736' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8914133/posts/default/4865917594800345736'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8914133/posts/default/4865917594800345736'/><link rel='alternate' type='text/html' href='http://www.marciowb.net/blog/2009/04/woodstockxhrpost-do-you-see-google-see' title='woodstock.xhr.post: Do you see Google? See?!'/><author><name>Marcio Wesley Borges</name><uri>http://www.blogger.com/profile/03981592466934695825</uri><email>marciowb@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='14949109749659640406'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8914133.post-5835495376167042069</id><published>2009-03-24T17:42:00.004-03:00</published><updated>2009-03-24T17:51:51.380-03:00</updated><title type='text'>Gilmar Mendes em Oferta</title><content type='html'>&lt;p&gt;Hoje li no site da &lt;a href="http://www1.folha.uol.com.br/folha/brasil/ult96u539655.shtml"&gt;Folha a matéria "Estudantes protestam contra Gilmar Mendes em sabatina"&lt;/a&gt;, li e resolvi compartilhar no Google Reader e anotar um comentário &lt;a href="http://www.marciowb.net/blog/2008/07/satyagraha-o-bom-agente-e-o-paciente"&gt;linkando para umas besteiras que escrevi aqui no blog&lt;/a&gt;.&lt;/p&gt;
Neste blog, ao fazer a pesquisa por "Gilmar Mendes", fiquei surpreso ao ver o anúncio abaixo:&lt;br&gt;
&lt;img src="http://www.marciowb.net/blog/2009/03/img/gilmar_mendes_no_ml.jpg" alt="Gilmar Mendes em até 18x sem Juros no Mercado Livre"&gt;&lt;br&gt;
Agora a pergunta: Alguém se interessa em comprar? Quanto vale? Que serventia tem isso?!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8914133-5835495376167042069?l=www.marciowb.net%2Fblog'/&gt;&lt;/div&gt;</content><link rel='related' href='http://www1.folha.uol.com.br/folha/brasil/ult96u539655.shtml' title='Gilmar Mendes em Oferta'/><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/8914133/5835495376167042069/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=8914133&amp;postID=5835495376167042069' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8914133/posts/default/5835495376167042069'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8914133/posts/default/5835495376167042069'/><link rel='alternate' type='text/html' href='http://www.marciowb.net/blog/2009/03/gilmar-mendes-em-oferta' title='Gilmar Mendes em Oferta'/><author><name>Marcio Wesley Borges</name><uri>http://www.blogger.com/profile/03981592466934695825</uri><email>marciowb@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='14949109749659640406'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8914133.post-2636868288204928243</id><published>2009-03-12T19:07:00.008-03:00</published><updated>2009-03-13T10:13:07.682-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='tips'/><category scheme='http://www.blogger.com/atom/ns#' term='it'/><title type='text'>Coding: Avoiding unnecessary locking</title><content type='html'>The code bellow, extracted from &lt;code&gt;java.util.regex.Pattern&lt;/code&gt;, avoids unnecessary locking. Look the statement &lt;code&gt;if (!compiled) {&lt;/code&gt;, it appears twice times because in the first time, we don't need to create a lock point, but if the code isn't "compiled" (&lt;code&gt;!compiled&lt;/code&gt; evaluates true), so it creates a lock point and because the condition of variable &lt;code&gt;compiled&lt;/code&gt; can be changed from the first time that it was evaluated (eg.: now &lt;code&gt;!compiled&lt;/code&gt; can be evaluated to false, because it was "compiled" by another thread, between the first evaluation and the lock point). It avoids unnecessary retention in the case of the first evaluation was &lt;code&gt;false&lt;/code&gt;, because in the entire lifecicly of the object there is only a transition of the variable &lt;code&gt;compiled&lt;/code&gt;, from &lt;code&gt;false&lt;/code&gt; to &lt;code&gt;true&lt;/code&gt;, so only one time in the entire lifecicly, the lock point will be reached. It's a good technique! Think about it!
&lt;pre class="code"&gt;&lt;font color="#000000"&gt;&lt;font color="#000000"&gt;   1:&lt;/font&gt;    &lt;font color="#6600cc"&gt;/**&lt;/font&gt;
&lt;font color="#000000"&gt;   2:&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;*&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;Creates&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;a&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;matcher&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;that&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;will&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;match&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;the&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;given&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;input&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;against&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;this&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;pattern&lt;/font&gt;&lt;font color="#6600cc"&gt;.&lt;/font&gt;
&lt;font color="#000000"&gt;   3:&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;*&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;/&lt;/font&gt;&lt;font color="#0000ff"&gt;p&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;gt;&lt;/font&gt;
&lt;font color="#000000"&gt;   4:&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;*&lt;/font&gt;
&lt;font color="#990066"&gt;   5:&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;*&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#02b902"&gt;@param&lt;/font&gt;&lt;font color="#02b902"&gt; &lt;/font&gt;&lt;font color="#02b902"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;input&lt;/font&gt;
&lt;font color="#000000"&gt;   6:&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;*&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;The&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;character&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;sequence&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;to&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;be&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;matched&lt;/font&gt;
&lt;font color="#000000"&gt;   7:&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;*&lt;/font&gt;
&lt;font color="#000000"&gt;   8:&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;*&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#02b902"&gt;@return&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;A&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;new&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;matcher&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;for&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;this&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;pattern&lt;/font&gt;
&lt;font color="#000000"&gt;   9:&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;*/&lt;/font&gt;
&lt;font color="#990066"&gt;  10:&lt;/font&gt;    &lt;font color="#006699"&gt;&lt;strong&gt;public&lt;/strong&gt;&lt;/font&gt; Matcher &lt;font color="#9966ff"&gt;matcher&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;CharSequence input&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;div style="border:thin solid green"&gt;&lt;font color="#000000"&gt;  11:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;if&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;!&lt;/strong&gt;&lt;/font&gt;compiled&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  12:&lt;/font&gt;            &lt;font color="#006699"&gt;&lt;strong&gt;synchronized&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#cc00cc"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  13:&lt;/font&gt;                &lt;font color="#006699"&gt;&lt;strong&gt;if&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;!&lt;/strong&gt;&lt;/font&gt;compiled&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  14:&lt;/font&gt;                    &lt;font color="#9966ff"&gt;compile&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#990066"&gt;  15:&lt;/font&gt;            &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  16:&lt;/font&gt;        &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;&lt;/div&gt;
&lt;font color="#000000"&gt;  17:&lt;/font&gt;        Matcher m &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#006699"&gt;&lt;strong&gt;new&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;Matcher&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#cc00cc"&gt;this&lt;/font&gt;, input&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  18:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;return&lt;/strong&gt;&lt;/font&gt; m;
&lt;font color="#000000"&gt;  19:&lt;/font&gt;    &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#990066"&gt;  20:&lt;/font&gt;
&lt;/font&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8914133-2636868288204928243?l=www.marciowb.net%2Fblog'/&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/8914133/2636868288204928243/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=8914133&amp;postID=2636868288204928243' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8914133/posts/default/2636868288204928243'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8914133/posts/default/2636868288204928243'/><link rel='alternate' type='text/html' href='http://www.marciowb.net/blog/2009/03/coding-avoiding-unecessary-locking' title='Coding: Avoiding unnecessary locking'/><author><name>Marcio Wesley Borges</name><uri>http://www.blogger.com/profile/03981592466934695825</uri><email>marciowb@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='14949109749659640406'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8914133.post-7574963988772395264</id><published>2009-03-07T00:56:00.002-03:00</published><updated>2009-03-12T19:30:40.906-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tips'/><category scheme='http://www.blogger.com/atom/ns#' term='it'/><title type='text'>Poor Coding</title><content type='html'>It'snt a joke - the source code below was extracted from the website &lt;a href="http://www.mercadolivre.com.br/"&gt;Mercado Livre&lt;/a&gt;.
&lt;pre class="code"&gt;&lt;font color="#000000"&gt;&lt;font color="#000000"&gt;   1:&lt;/font&gt;&lt;font color="#ff8400"&gt;//&lt;/font&gt;&lt;font color="#ff8400"&gt;document.form1.as_observaciones.innerText&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;=&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;'';&lt;/font&gt;
&lt;font color="#000000"&gt;   2:&lt;/font&gt;&lt;font color="#006699"&gt;&lt;strong&gt;if&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;'&lt;/font&gt;&lt;font color="#ff00cc"&gt;N&lt;/font&gt;&lt;font color="#ff00cc"&gt;'&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;'&lt;/font&gt;&lt;font color="#ff00cc"&gt;Y&lt;/font&gt;&lt;font color="#ff00cc"&gt;'&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;   3:&lt;/font&gt;document&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;form1&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;as_retiro&lt;font color="#000000"&gt;&lt;strong&gt;[&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff0000"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;]&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;checked &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#cc00cc"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;   4:&lt;/font&gt;&lt;font color="#006699"&gt;&lt;strong&gt;else&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;document&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;form1&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;as_retiro&lt;font color="#000000"&gt;&lt;strong&gt;[&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff0000"&gt;1&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;]&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;checked &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#cc00cc"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#990066"&gt;   5:&lt;/font&gt;
&lt;/font&gt;&lt;/pre&gt;
Do you believe?!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8914133-7574963988772395264?l=www.marciowb.net%2Fblog'/&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/8914133/7574963988772395264/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=8914133&amp;postID=7574963988772395264' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8914133/posts/default/7574963988772395264'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8914133/posts/default/7574963988772395264'/><link rel='alternate' type='text/html' href='http://www.marciowb.net/blog/2009/03/poor-coding' title='Poor Coding'/><author><name>Marcio Wesley Borges</name><uri>http://www.blogger.com/profile/03981592466934695825</uri><email>marciowb@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='14949109749659640406'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8914133.post-2519620017403611596</id><published>2009-03-06T14:49:00.012-03:00</published><updated>2009-03-06T17:25:46.088-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='electronic'/><category scheme='http://www.blogger.com/atom/ns#' term='tips'/><title type='text'>Instalando permanentemente um GPS Bluetooth no carro</title><content type='html'>&lt;p&gt;Uso muito GPSs em meus testes de desenvolvimento e por isso os tenho por perto para essas horas programadas, mas já não os uso tanto para me localizar, pois aqui no Plano Piloto de Brasília, tudo é de fácil localização. Por isso, não é a todo momento que eu preciso de auxílio de algum sistema de navegação por GPS, mas quando se precisa, muitas vezes não tenho o GPS em mão, naquela hora, naquele momento - mesmo tendo à disposição uma dezena de diferentes modelos... Uma coisa que eu sempre ando, é com meus celulares: &lt;a href="http://pmstrk.mercadolivre.com.br/jm/PmsTrk?tool=5515879&amp;go=http://celulares.mercadolivre.com.br/Nokia-N80_Qshow_30"&gt;Nokia N80&lt;/a&gt; e &lt;a href="http://pmstrk.mercadolivre.com.br/jm/PmsTrk?tool=5515879&amp;go=http://celulares.mercadolivre.com.br/HTC-TOUCH-P3451"&gt;HTC Touch P3451&lt;/a&gt; (Windows Mobile 6), mas eles não tem GPS interno e por isso, preciso de um &lt;a href="http://lista.mercadolivre.com.br/_CustId_28374838"&gt;GPS Bluetooth&lt;/a&gt; para usar com estes celulares. Poderia usar o sistema do Google Maps das células da rede GSM, mas a margem de erro frequentemente é maior que 900 metros e isso nem sempre é tolerável. Também poderia deixar meu &lt;a href="http://pmstrk.mercadolivre.com.br/jm/PmsTrk?tool=5515879&amp;go=http://lista.mercadolivre.com.br/GPS-Garmin-60CSX"&gt;GPS Garmin 60CSX&lt;/a&gt; no carro ou usar um &lt;a href="http://pmstrk.mercadolivre.com.br/jm/PmsTrk?tool=5515879&amp;go=http://lista.mercadolivre.com.br/navegador"&gt;navegador veicular&lt;/a&gt;, mas sempre corro o risco de deixá-los no carro e quando voltar ao veículo, vê-lo arrombado e sem o GPS...&lt;/p&gt;
&lt;p&gt;Para quem não sabe, desde outubro de 2005, tenho trabalhando intensivamente com projetos relacionados a GIS e GPS. Além disso, tenho vendido GPS e componentes eletrônicos. Devido às vendas, já faz tempo que acumulei alguns produtos defeituosos por aqui, principalmente GPS Bluetooth.&lt;/p&gt;
&lt;img src="http://www.marciowb.net/blog/2009/03/img/gps_bluetooth_pcb.jpg" alt="PCI do GPS"&gt;
&lt;p&gt;Testando alguns dos GPS Bluetooth que foram devolvidos pelos clientes e que acumulo por aqui, verifiquei alguns casos onde o GPS Bluetooth funcionava somente quando estava sendo alimentado externamente - nesse caso, constatei que o problema era no minúsculo CI MAX1555 que faz a carga da bateria de íons de lítio e ainda cuida de alimentar o resto do circuito. Resolvi, então, usar um deles no carro, mas não de forma temporária, e, sim, permanente.&lt;/p&gt;
&lt;h3&gt;Instalação Fixa do GPS Bluetooth&lt;/h3&gt;
&lt;p&gt;A idéia é bem simples: utilizo o próprio adaptador veicular que veio com o GPS para alimentá-lo, mas ao invés de ligar no socket (antigo acendedor de cigarros) do alimentador do veículo, ligo o alimentador do GPS à bateria do carro. Fiz isso de modo que somente quando a ignição do veículo estiver acionada é que o GPS é alimentado. Para essa ligação, utilizei o próprio chicote de som do veículo, visto que o chicote já estava lá com tudo pronto e era só conectar os fios nele, sem necessidade de mexer em qualquer outra coisa no resto da parte elétrica do veículo.&lt;/p&gt;
&lt;img src="http://www.marciowb.net/blog/2009/03/img/dc_car_adapter_install.jpg" alt="Instalação do Alimentador Veicular"&gt;
&lt;p&gt;Tive que fazer uma pequena adaptação no GPS Bluetooth para que ele fosse ligado automaticamente assim que fosse alimentado (ignição ativada), mas foi bem simples, só tive que fazer uma ponte no switch de on/off do GPS. Para uma melhor segurança, mas ainda assim possibilitando a recepção, o coloquei sob o painel do veículo de modo que ficasse logo abaixo da parte plástica do painel (parte mais fina onde não há nenhum outro obstáculo acima do GPS exceto o próprio painel).&lt;/p&gt;
&lt;img src="http://www.marciowb.net/blog/2009/03/img/gps_bluetooth_switch_bridge.jpg" alt="Ponte Necessária para Ligar Automaticamente o GPS"&gt;
&lt;p&gt;Testado tudo, funcionou direitinho. O GPS fica totalmente escondido e agora não tenho mais que me preocupar em levar/tirar o GPS para o carro. Além de dar uso para um GPS que ficaria encostado, sem serventia alguma, tido como prejuízo, fiquei feliz por ter um GPS Bluetooth lá no veículo para quando eu precisar.&lt;/p&gt;
&lt;a href="http://www.trilha21.com.br/TrilhaStore/faces/ShowProduct.jsp?id=1000605"&gt;&lt;img style="float:right" src="http://www.marciowb.net/imgs/ml039/holux_m-1000c_box.jpg" alt="Holux M-1000C"&gt;&lt;/a&gt;
&lt;h2&gt;&lt;a href="http://www.trilha21.com.br/TrilhaStore/faces/ShowProduct.jsp?id=1000605"&gt;Holux M-1000C&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;E por falar em &lt;a href="http://www.trilha21.com.br/TrilhaStore/faces/ShowProduct.jsp?id=1000605"&gt;GPS Bluetooth&lt;/a&gt;, se você procura o melhor GPS Bluetooth que há, por um preço bem camarada, com nota fiscal, garantia, tudo certinho, dê uma olhada no &lt;a href="http://www.trilha21.com.br/TrilhaStore/faces/ShowProduct.jsp?id=1000605"&gt;Holux M-1000C&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;O &lt;a href="http://www.trilha21.com.br/TrilhaStore/faces/ShowProduct.jsp?id=1000605"&gt;Holux M-1000&lt;/a&gt; tem características inigualáveis no que tange a sua sensibilidade, precisão e principalmente o cold start - é ultra-rápido. Ele também é um datalogger e grava até 200 mil pontos e sua bateria é recarregável, compatível com a de vários celulares da Nokia e de longa duração. Ele acompanha o software ezTour para Geotag de fotos e download do tracklog.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8914133-2519620017403611596?l=www.marciowb.net%2Fblog'/&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/8914133/2519620017403611596/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=8914133&amp;postID=2519620017403611596' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8914133/posts/default/2519620017403611596'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8914133/posts/default/2519620017403611596'/><link rel='alternate' type='text/html' href='http://www.marciowb.net/blog/2009/03/instalando-permanentemente-um-gps' title='Instalando permanentemente um GPS Bluetooth no carro'/><author><name>Marcio Wesley Borges</name><uri>http://www.blogger.com/profile/03981592466934695825</uri><email>marciowb@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='14949109749659640406'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8914133.post-6633132715595996097</id><published>2009-03-04T23:05:00.028-03:00</published><updated>2009-03-06T20:30:42.618-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tips'/><category scheme='http://www.blogger.com/atom/ns#' term='it'/><category scheme='http://www.blogger.com/atom/ns#' term='web'/><title type='text'>Easy XSS/AJAX using Greasemonkey</title><content type='html'>Did you have tried to use &lt;a href="https://addons.mozilla.org/pt-BR/firefox/addon/748" title="Adds Greasemonkey to your Firefox"&gt;Greasemonkey&lt;/a&gt;? Try it! It's great!
&lt;p&gt;&lt;a href="https://addons.mozilla.org/pt-BR/firefox/addon/748" title="Adds Greasemonkey to your Firefox"&gt;Greasemonkey&lt;/a&gt; is a simple but extremely powerful &lt;a href="https://addons.mozilla.org/pt-BR/firefox/addon/748"&gt;addon to Mozilla Firefox&lt;/a&gt;. There are more than a thousand of &lt;a href="http://userscripts.org/"&gt;user scripts&lt;/a&gt; to it. With Greasemonkey, you can develop your own script to (aka user script) customize, modify, extract data, insert and whatever you need to do with *any* page!&lt;/p&gt;

&lt;h2&gt;Easy &lt;a href="http://en.wikipedia.org/wiki/Cross-site_scripting"&gt;XSS &lt;/a&gt;- Cross-Site Scripting&lt;/h2&gt;
&lt;img src="http://www.marciowb.net/blog/2009/03/img/greasemonkey.jpg" width="240" height="240" style="float:right"&gt;
&lt;p&gt;Recently I need to integrate a website from a customer with external data from another website, but it must occurs when the employee uses the customer website and without more requirements, except: Firefox, Greasemonkey and one little user script to do &lt;a href="http://en.wikipedia.org/wiki/Cross-site_scripting"&gt;XSS&lt;/a&gt;. I need to do &lt;a href="http://en.wikipedia.org/wiki/Cross-site_scripting"&gt;XSS &lt;/a&gt;because some part of the application data is extracted from another website (and domain). If you don't know nothing about what's &lt;a href="http://en.wikipedia.org/wiki/Cross-site_scripting"&gt;XSS&lt;/a&gt; or &lt;a href="http://en.wikipedia.org/wiki/Same_origin_policy#Overcoming_access_restriction"&gt;Same Origin Police&lt;/a&gt;, take a read at &lt;a href="http://en.wikipedia.org/wiki/Same_origin_policy#Overcoming_access_restriction"&gt;Wikipedia&lt;/a&gt; and you'll know that isn't so easy to do XSS...&lt;/p&gt;
&lt;p&gt;Along the rest of this article you will read the acronym XSS, but, please, understand XSS don't as &lt;span style="font-style:italic;"&gt;"injection code"&lt;/span&gt;, but as &lt;span style="font-style:italic;"&gt;"The term "cross-site scripting" originated from the fact that a malicious web site could load another web site into another frame or window, then use Javascript to read/write data on the other web site."&lt;/span&gt; (or something near its).
&lt;p&gt;When I need to do XSS, I have a couple of options, like: &lt;a href="http://diveintogreasemonkey.org/"&gt;Greasemonkey&lt;/a&gt;, &lt;a href="http://seleniumhq.org"&gt;Selenium&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/XUL"&gt;Firefox Chrome&lt;/a&gt;, &lt;a href="http://www.microsoft.com/technet/scriptcenter/hubs/htas.mspx"&gt;HTA&lt;/a&gt;, &lt;a href="http://httpunit.sourceforge.net/"&gt;Httpunit&lt;/a&gt;, customized http clients via TCP sockets, customized browser version, proxy servers, fake dns/ip (eg.: editing system host file to resolve DNS to another IP and changing the &lt;code&gt;document.domain&lt;/code&gt; to correspond to the same base domain) and some hacks. For my last application I choose to use Greasemonkey.&lt;/p&gt;
&lt;p&gt;Greasemonkey has a javascript function called &lt;a class="code" href="http://diveintogreasemonkey.org/api/gm_xmlhttprequest.html"&gt;GM_xmlhttpRequest&lt;/a&gt; to be used for AJAX requests; but it, also, can be used to XSS because it runs as a &lt;a href="https://developer.mozilla.org/en/XUL_Tutorial/The_Chrome_URL"&gt;Mozzilla Chrome&lt;/a&gt; context. It's amazing! 'cause to do XSS nowadays is so difficulty...&lt;/p&gt;
&lt;p&gt;I've created a smaller user script to grease monkey allow me to do AJAX request between diferent domains. See bellow (click to automatically greasemonkey install it):&lt;/p&gt;
&lt;a href="http://www.marciowb.net/blog/2009/files/greasemonkey/unlockxss.user.js" title="Click to download the user script"&gt;&lt;pre class="code"&gt;&lt;font color="#000000"&gt;&lt;font color="#000000"&gt;   1:&lt;/font&gt;&lt;font color="#ff8400"&gt;//&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;==UserScript==&lt;/font&gt;
&lt;font color="#000000"&gt;   2:&lt;/font&gt;&lt;font color="#ff8400"&gt;//&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;@name&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;UnlockXss&lt;/font&gt;
&lt;font color="#000000"&gt;   3:&lt;/font&gt;&lt;font color="#ff8400"&gt;//&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;@namespace&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;net.marciowb.unlock.xss&lt;/font&gt;
&lt;font color="#000000"&gt;   4:&lt;/font&gt;&lt;font color="#ff8400"&gt;//&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;@include&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;http://127.0.0.1:8080/&lt;/font&gt;
&lt;font color="#990066"&gt;   5:&lt;/font&gt;&lt;font color="#ff8400"&gt;//&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;@include&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;http://www.trilha21.com.br/&lt;/font&gt;
&lt;font color="#000000"&gt;   6:&lt;/font&gt;&lt;font color="#ff8400"&gt;//&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;==/UserScript==&lt;/font&gt;
&lt;font color="#000000"&gt;   7:&lt;/font&gt;&lt;font color="#ff8400"&gt;//&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;Copyright&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;Marcio&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;Wesley&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;Borges&amp;lt;marciowb@gmail.com&amp;gt;,&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;Created:&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;2009/03/05&lt;/font&gt;
&lt;font color="#000000"&gt;   8:&lt;/font&gt;
&lt;font color="#000000"&gt;   9:&lt;/font&gt;unsafeWindow&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;xss &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#990066"&gt;  10:&lt;/font&gt;unsafeWindow&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;xss&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;_requests &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#006699"&gt;&lt;strong&gt;new&lt;/strong&gt;&lt;/font&gt; &lt;font color="#0099ff"&gt;&lt;strong&gt;Array&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  11:&lt;/font&gt;
&lt;font color="#000000"&gt;  12:&lt;/font&gt;unsafeWindow&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;xss&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;call &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#006699"&gt;&lt;strong&gt;function&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;req&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  13:&lt;/font&gt;        unsafeWindow&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;xss&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;_requests&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;req&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  14:&lt;/font&gt;        window&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;setTimeout&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt; xssExecutor&lt;font color="#000000"&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/font&gt; &lt;font color="#ff0000"&gt;1&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#990066"&gt;  15:&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  16:&lt;/font&gt;
&lt;font color="#000000"&gt;  17:&lt;/font&gt;&lt;font color="#006699"&gt;&lt;strong&gt;function&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;_xssExecutor&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  18:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt; reqs &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; unsafeWindow&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;xss&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;_requests&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  19:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;if&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;reqs&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;length&lt;font color="#000000"&gt;&lt;strong&gt;&amp;lt;&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff0000"&gt;1&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#990066"&gt;  20:&lt;/font&gt;                &lt;font color="#006699"&gt;&lt;strong&gt;return&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  21:&lt;/font&gt;                        
&lt;font color="#000000"&gt;  22:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt; req &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; reqs&lt;font color="#000000"&gt;&lt;strong&gt;[&lt;/strong&gt;&lt;/font&gt;reqs&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;length&lt;font color="#000000"&gt;&lt;strong&gt;-&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff0000"&gt;1&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;]&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  23:&lt;/font&gt;        reqs&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;pop&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  24:&lt;/font&gt;        
&lt;font color="#990066"&gt;  25:&lt;/font&gt;        &lt;font color="#9966ff"&gt;GM_xmlhttpRequest&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;req&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  26:&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  27:&lt;/font&gt;
&lt;font color="#000000"&gt;  28:&lt;/font&gt;&lt;font color="#006699"&gt;&lt;strong&gt;function&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;xssExecutor&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  29:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;try&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#990066"&gt;  30:&lt;/font&gt;                &lt;font color="#9966ff"&gt;_xssExecutor&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  31:&lt;/font&gt;        &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt; &lt;font color="#006699"&gt;&lt;strong&gt;catch&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;ex&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  32:&lt;/font&gt;                &lt;font color="#9966ff"&gt;GM_log&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;ex&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  33:&lt;/font&gt;        &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;       
&lt;font color="#000000"&gt;  34:&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#990066"&gt;  35:&lt;/font&gt;
&lt;font color="#000000"&gt;  36:&lt;/font&gt;unsafeWindow&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;GM_xmlhttpRequest &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; unsafeWindow&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;xss&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;call&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  37:&lt;/font&gt;
&lt;/font&gt;&lt;/pre&gt;
&lt;/a&gt;
&lt;p&gt;To use it, take a look in the &lt;a href="http://diveintogreasemonkey.org/api/gm_xmlhttprequest.html"&gt;GM_xmlhttpRequest documentation&lt;/a&gt;. The example code, from Greasemonkey website, remains valid and works with the UnlockXss script:&lt;/p&gt;
&lt;pre class="code"&gt;&lt;font color="#000000"&gt;&lt;font color="#000000"&gt;   1:&lt;/font&gt;&lt;font color="#9966ff"&gt;GM_xmlhttpRequest&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;   2:&lt;/font&gt;    &lt;font color="#02b902"&gt;method&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;:&lt;/strong&gt;&lt;/font&gt; &lt;font color="#ff00cc"&gt;'&lt;/font&gt;&lt;font color="#ff00cc"&gt;GET&lt;/font&gt;&lt;font color="#ff00cc"&gt;'&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;   3:&lt;/font&gt;    &lt;font color="#02b902"&gt;url&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;:&lt;/strong&gt;&lt;/font&gt; &lt;font color="#ff00cc"&gt;'&lt;/font&gt;&lt;font color="#ff00cc"&gt;http://greaseblog.blogspot.com/atom.xml&lt;/font&gt;&lt;font color="#ff00cc"&gt;'&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;   4:&lt;/font&gt;    &lt;font color="#02b902"&gt;headers&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;:&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#990066"&gt;   5:&lt;/font&gt;        &lt;font color="#ff00cc"&gt;'&lt;/font&gt;&lt;font color="#ff00cc"&gt;User-agent&lt;/font&gt;&lt;font color="#ff00cc"&gt;'&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;:&lt;/strong&gt;&lt;/font&gt; &lt;font color="#ff00cc"&gt;'&lt;/font&gt;&lt;font color="#ff00cc"&gt;Mozilla/4.0&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;(compatible)&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;Greasemonkey&lt;/font&gt;&lt;font color="#ff00cc"&gt;'&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;   6:&lt;/font&gt;        &lt;font color="#ff00cc"&gt;'&lt;/font&gt;&lt;font color="#ff00cc"&gt;Accept&lt;/font&gt;&lt;font color="#ff00cc"&gt;'&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;:&lt;/strong&gt;&lt;/font&gt; &lt;font color="#ff00cc"&gt;'&lt;/font&gt;&lt;font color="#ff00cc"&gt;application/atom+xml,application/xml,text/xml&lt;/font&gt;&lt;font color="#ff00cc"&gt;'&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;   7:&lt;/font&gt;    &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;   8:&lt;/font&gt;    &lt;font color="#02b902"&gt;onload&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;:&lt;/strong&gt;&lt;/font&gt; &lt;font color="#006699"&gt;&lt;strong&gt;function&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;responseDetails&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;   9:&lt;/font&gt;        &lt;font color="#9966ff"&gt;alert&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;'&lt;/font&gt;&lt;font color="#ff00cc"&gt;Request&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;for&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;Atom&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;feed&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;returned&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;'&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;+&lt;/strong&gt;&lt;/font&gt; responseDetails&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;status &lt;font color="#000000"&gt;&lt;strong&gt;+&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#990066"&gt;  10:&lt;/font&gt;              &lt;font color="#ff00cc"&gt;'&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;'&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;+&lt;/strong&gt;&lt;/font&gt; responseDetails&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;statusText &lt;font color="#000000"&gt;&lt;strong&gt;+&lt;/strong&gt;&lt;/font&gt; &lt;font color="#ff00cc"&gt;'&lt;/font&gt;&lt;font color="#ff00cc"&gt;\n\n&lt;/font&gt;&lt;font color="#ff00cc"&gt;'&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;+&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  11:&lt;/font&gt;              &lt;font color="#ff00cc"&gt;'&lt;/font&gt;&lt;font color="#ff00cc"&gt;Feed&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;data:\n&lt;/font&gt;&lt;font color="#ff00cc"&gt;'&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;+&lt;/strong&gt;&lt;/font&gt; responseDetails&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;responseText&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  12:&lt;/font&gt;    &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  13:&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;/font&gt;&lt;/pre&gt;
&lt;p&gt;Remember: Now, you can embbending &lt;code&gt;GM_xmlhttpRequest&lt;/code&gt; in your code, but, also, you must tell to greasemonkey where you run your user script. Do it, adding an entry as the above &lt;code&gt;@include&lt;/code&gt; for each domain where you want to enable the XSS/Ajax request.&lt;/p&gt;
&lt;h2&gt;Assorted Greasemonkey Tips&lt;/h2&gt;
&lt;p&gt;Do you want compile your Greasemonkey User Script into a XPI extension to Firefox? Okay, you can! See the &lt;a href="http://arantius.com/misc/greasemonkey/script-compiler"&gt;Greasemonkey Compiler&lt;/a&gt;.
&lt;p&gt;Do you need to &lt;a href="http://dustint.com/archives/4"&gt;inject Dojo into a page via Greasemonkey&lt;/a&gt;? Don't know how? Do, it:&lt;/p&gt;
&lt;pre class="code"&gt;&lt;font color="#000000"&gt;&lt;font color="#000000"&gt;   1:&lt;/font&gt;&lt;font color="#ff8400"&gt;//&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;==UserScript==&lt;/font&gt;
&lt;font color="#000000"&gt;   2:&lt;/font&gt;&lt;font color="#ff8400"&gt;//&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;@name&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;ML&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;-&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;Copiar&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;dados&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;da&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;Lista&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;de&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;Envios&lt;/font&gt;
&lt;font color="#000000"&gt;   3:&lt;/font&gt;&lt;font color="#ff8400"&gt;//&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;@namespace&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;net.marciowb.ml.lista.envios&lt;/font&gt;
&lt;font color="#000000"&gt;   4:&lt;/font&gt;&lt;font color="#ff8400"&gt;//&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;@description&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;Copia&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;os&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;dados&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;da&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;lista&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;de&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;envios&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;do&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;ML&lt;/font&gt;
&lt;font color="#990066"&gt;   5:&lt;/font&gt;&lt;font color="#ff8400"&gt;//&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;@include&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;http://www.mercadolivre.com.br/jm/impressionList&lt;/font&gt;
&lt;font color="#000000"&gt;   6:&lt;/font&gt;&lt;font color="#ff8400"&gt;//&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;==/UserScript==&lt;/font&gt;
&lt;font color="#000000"&gt;   7:&lt;/font&gt;
&lt;font color="#000000"&gt;   8:&lt;/font&gt;&lt;font color="#006699"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt; script &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; document&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;createElement&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;script&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;   9:&lt;/font&gt;script&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;id&lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;scriptInjectedDojo&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#990066"&gt;  10:&lt;/font&gt;script&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;src&lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;http://www.trilha21.com.br/Webs/js/dojo/dojo.js&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  11:&lt;/font&gt;document&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;getElementsByTagName&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;head&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;[&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff0000"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;]&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;appendChild&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;script&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  12:&lt;/font&gt;
&lt;font color="#000000"&gt;  13:&lt;/font&gt;&lt;font color="#006699"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt; link &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; document&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;createElement&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;link&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  14:&lt;/font&gt;link&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;id &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;linkInjectedTundra&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt; 
&lt;font color="#990066"&gt;  15:&lt;/font&gt;link&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;rel &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;stylesheet&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  16:&lt;/font&gt;link&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;type&lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;text/css&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  17:&lt;/font&gt;link&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;href&lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;http://www.trilha21.com.br/Webs/js/dijit/themes/tundra/tundra.css&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  18:&lt;/font&gt;document&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;getElementsByTagName&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;head&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;[&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff0000"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;]&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;appendChild&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;link&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  19:&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;
&lt;/font&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8914133-6633132715595996097?l=www.marciowb.net%2Fblog'/&gt;&lt;/div&gt;</content><link rel='related' href='http://diveintogreasemonkey.org/toc/' title='Easy XSS/AJAX using Greasemonkey'/><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/8914133/6633132715595996097/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=8914133&amp;postID=6633132715595996097' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8914133/posts/default/6633132715595996097'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8914133/posts/default/6633132715595996097'/><link rel='alternate' type='text/html' href='http://www.marciowb.net/blog/2009/03/easy-xssajax-using-greasemonkey' title='Easy XSS/AJAX using Greasemonkey'/><author><name>Marcio Wesley Borges</name><uri>http://www.blogger.com/profile/03981592466934695825</uri><email>marciowb@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='14949109749659640406'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8914133.post-8987898218796832666</id><published>2009-02-28T17:31:00.007-03:00</published><updated>2009-02-28T18:58:28.421-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tips'/><category scheme='http://www.blogger.com/atom/ns#' term='it'/><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><title type='text'>An old 'new newbie learning how to hack (again!)</title><content type='html'>I'm trying to crack an application related a consultancy job, but I'm newbie (a long, long, long time ago I knew more, but it was in DOS age) and I haven't many time to learning many things about it. So, after a quickly search, I found &lt;a href="http://www.microsoft.com/whdc/devtools/debugging/default.mspx"&gt;Windbg&lt;/a&gt;, but, sinceraly, it's piece of bullshit. I wasted my entire day trying to break the key checking mechanism using the Windbg, but it doesn't help me much.
&lt;a href="http://www.ollydbg.de/"&gt;&lt;h2&gt;OllyDbg&lt;/h2&gt;
&lt;img src="http://www.marciowb.net/blog/2009/02/imgs/ollydbg_small.jpg" alt="OllyDbg"&gt;&lt;/a&gt;
&lt;p&gt;If you need a good (excelent!!!) software to crack (or to do reverse engineering), try the &lt;a href="http://www.ollydbg.de/"&gt;OllyDbg&lt;/a&gt; - it's fantastic: easy to use, intuitive, useful, and powerful! OllyDbg is shareware, but you can use it without paying nothing, if you want (or need).&lt;/p&gt;
&lt;h3&gt;Using &lt;a title="Win32 Software Development Kit" href="http://www.marciowb.net/blog/2009/files/ollydbg/win32hlp_big.zip"&gt;Win32SDK Help&lt;/a&gt; and Windows Symbols with OllyDbg&lt;/h3&gt;
OllyDbg automatically recognizes symbols and when you want, it launchs the Win32Help to the specific topic of the symbol!
&lt;p&gt;If you need the Win32SDK help files, download it, here: &lt;a title="Win32 Software Development Kit" href="http://www.marciowb.net/blog/2009/files/ollydbg/win32hlp_big.zip"&gt;win32hlp&lt;/a&gt;. If you use the Windows Vista, you need to download the &lt;a title="Windows Help program (WinHlp32.exe) for Windows Vista" href="http://www.microsoft.com/downloads/details.aspx?FamilyId=6EBCFAD9-D3F5-4365-8070-334CD175D4BB&amp;displaylang=en"&gt;Win32Hlp.exe from Microsoft&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Also, the Microsoft Windows Symbolic Information can be found at &lt;a href="http://www.microsoft.com/whdc/devtools/debugging/symbolpkg.mspx"&gt;Download Windows Symbol Packages from Microsofot&lt;/a&gt;.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8914133-8987898218796832666?l=www.marciowb.net%2Fblog'/&gt;&lt;/div&gt;</content><link rel='related' href='http://www.ollydbg.de/' title='An old &apos;new newbie learning how to hack (again!)'/><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/8914133/8987898218796832666/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=8914133&amp;postID=8987898218796832666' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8914133/posts/default/8987898218796832666'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8914133/posts/default/8987898218796832666'/><link rel='alternate' type='text/html' href='http://www.marciowb.net/blog/2009/02/old-new-newbie-learning-how-to-hack' title='An old &apos;new newbie learning how to hack (again!)'/><author><name>Marcio Wesley Borges</name><uri>http://www.blogger.com/profile/03981592466934695825</uri><email>marciowb@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='14949109749659640406'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8914133.post-2992526417090738520</id><published>2009-02-11T15:50:00.010-02:00</published><updated>2009-02-12T00:12:18.361-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='tips'/><category scheme='http://www.blogger.com/atom/ns#' term='it'/><title type='text'>EJB3: Workarounding Non XA Database/JDBC Driver</title><content type='html'>Sometimes we need to access more than one database to do some task. Eg.: Syncing data between two differents databases or when the data is physically sparse. But if you use Session Beans to do the job and your database(s) is a Non-XA (in simple terms: non prepared to work with distribute transaction), you was trapped. The Session EJBs doesn't works with more than a one Non-XA database (or XA defective JDBC driver...) in the same container managed transaction. When the Session Bean tries to open a second non-XA database (resource), the following (see the red contour) error raises:
&lt;pre class="code" style="height:720px"&gt;
init:
deps-module-jar:
deps-ear-jar:
deps-jar:
library-inclusion-in-archive:
library-inclusion-in-manifest:
compile:
compile-test-single:
Testsuite: br.com.trilha21.web.store.IndexPageUITest
        java.rmi.RemoteException: null; nested exception is: 
        javax.transaction.TransactionRolledbackException: CORBA TRANSACTION_ROLLEDBACK 9998 Maybe; nested exception is: 
        org.omg.CORBA.TRANSACTION_ROLLEDBACK: ----------BEGIN server-side stack trace----------
org.omg.CORBA.TRANSACTION_ROLLEDBACK:   vmcid: 0x2000  minor code: 1806 completed: Maybe
        at com.sun.enterprise.iiop.POAProtocolMgr.mapException(POAProtocolMgr.java:231)
        at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1386)
        at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1316)
        at com.sun.ejb.containers.EJBObjectInvocationHandler.invoke(EJBObjectInvocationHandler.java:210)
        at com.sun.ejb.containers.EJBObjectInvocationHandlerDelegate.invoke(EJBObjectInvocationHandlerDelegate.java:117)
        at $Proxy157.forceDeleteCustomer(Unknown Source)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at com.sun.corba.ee.impl.presentation.rmi.ReflectiveTie._invoke(ReflectiveTie.java:154)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatchToServant(CorbaServerRequestDispatcherImpl.java:687)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatch(CorbaServerRequestDispatcherImpl.java:227)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequestRequest(CorbaMessageMediatorImpl.java:1846)
        at com.sun.corba.ee.impl.protocol.SharedCDRClientRequestDispatcherImpl.marshalingComplete(SharedCDRClientRequestDispatcherImpl.java:183)
        at com.sun.corba.ee.impl.protocol.CorbaClientDelegateImpl.invoke(CorbaClientDelegateImpl.java:219)
        at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.privateInvoke(StubInvocationHandlerImpl.java:192)
        at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.invoke(StubInvocationHandlerImpl.java:152)
        at com.sun.corba.ee.impl.presentation.rmi.bcel.BCELStubBase.invoke(BCELStubBase.java:225)
        at net.marciowb.trilha.ejb.__CustomerRemote_Remote_DynamicStub.forceDeleteCustomer(net/marciowb/trilha/ejb/__CustomerRemote_Remote_DynamicStub.java)
        at net.marciowb.trilha.ejb._CustomerRemote_Wrapper.forceDeleteCustomer(net/marciowb/trilha/ejb/_CustomerRemote_Wrapper.java)
        at br.com.trilha21.web.store.ejb.CustomerBean.forceDelete(CustomerBean.java:217)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at com.sun.enterprise.security.application.EJBSecurityManager.runMethod(EJBSecurityManager.java:1067)
        at com.sun.enterprise.security.SecurityUtil.invoke(SecurityUtil.java:176)
        at com.sun.ejb.containers.BaseContainer.invokeTargetBeanMethod(BaseContainer.java:2895)
        at com.sun.ejb.containers.BaseContainer.intercept(BaseContainer.java:3986)
        at com.sun.ejb.containers.EJBObjectInvocationHandler.invoke(EJBObjectInvocationHandler.java:203)
        at com.sun.ejb.containers.EJBObjectInvocationHandlerDelegate.invoke(EJBObjectInvocationHandlerDelegate.java:117)
        at $Proxy128.forceDelete(Unknown Source)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at com.sun.corba.ee.impl.presentation.rmi.ReflectiveTie._invoke(ReflectiveTie.java:154)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatchToServant(CorbaServerRequestDispatcherImpl.java:687)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatch(CorbaServerRequestDispatcherImpl.java:227)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequestRequest(CorbaMessageMediatorImpl.java:1846)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:1706)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleInput(CorbaMessageMediatorImpl.java:1088)
        at com.sun.corba.ee.impl.protocol.giopmsgheaders.RequestMessage_1_2.callback(RequestMessage_1_2.java:223)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:806)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.dispatch(CorbaMessageMediatorImpl.java:563)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.doWork(CorbaMessageMediatorImpl.java:2567)
        at com.sun.corba.ee.impl.orbutil.threadpool.ThreadPoolImpl$WorkerThread.run(ThreadPoolImpl.java:555)
Caused by: javax.ejb.TransactionRolledbackLocalException: Exception thrown from bean; nested exception is: Exception [TOPLINK-4002] (Oracle TopLink Essentials - 2.0.1 (Build b04-fcs (04/11/2008))): oracle.toplink.essentials.exceptions.DatabaseException
&lt;span style="border:1px solid red"&gt;Internal Exception: java.sql.SQLException: Error in allocating a connection. Cause: java.lang.IllegalStateException: Local transaction already has 1 non-XA Resource: cannot add more resources.&lt;/span&gt;
Error Code: 0
        at com.sun.ejb.containers.BaseContainer.checkExceptionClientTx(BaseContainer.java:3728)
        at com.sun.ejb.containers.BaseContainer.postInvokeTx(BaseContainer.java:3576)
        at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1354)
        ... 46 more

----------END server-side stack trace----------  vmcid: 0x2000  minor code: 1806 completed: Maybe)
        java.rmi.RemoteException: null; nested exception is: 
        javax.transaction.TransactionRolledbackException: CORBA TRANSACTION_ROLLEDBACK 9998 Maybe; nested exception is: 
        org.omg.CORBA.TRANSACTION_ROLLEDBACK: ----------BEGIN server-side stack trace----------
org.omg.CORBA.TRANSACTION_ROLLEDBACK:   vmcid: 0x2000  minor code: 1806 completed: Maybe
        at com.sun.enterprise.iiop.POAProtocolMgr.mapException(POAProtocolMgr.java:231)
        at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1386)
        at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1316)
        at com.sun.ejb.containers.EJBObjectInvocationHandler.invoke(EJBObjectInvocationHandler.java:210)
        at com.sun.ejb.containers.EJBObjectInvocationHandlerDelegate.invoke(EJBObjectInvocationHandlerDelegate.java:117)
        at $Proxy157.forceDeleteCustomer(Unknown Source)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at com.sun.corba.ee.impl.presentation.rmi.ReflectiveTie._invoke(ReflectiveTie.java:154)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatchToServant(CorbaServerRequestDispatcherImpl.java:687)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatch(CorbaServerRequestDispatcherImpl.java:227)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequestRequest(CorbaMessageMediatorImpl.java:1846)
        at com.sun.corba.ee.impl.protocol.SharedCDRClientRequestDispatcherImpl.marshalingComplete(SharedCDRClientRequestDispatcherImpl.java:183)
        at com.sun.corba.ee.impl.protocol.CorbaClientDelegateImpl.invoke(CorbaClientDelegateImpl.java:219)
        at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.privateInvoke(StubInvocationHandlerImpl.java:192)
        at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.invoke(StubInvocationHandlerImpl.java:152)
        at com.sun.corba.ee.impl.presentation.rmi.bcel.BCELStubBase.invoke(BCELStubBase.java:225)
        at net.marciowb.trilha.ejb.__CustomerRemote_Remote_DynamicStub.forceDeleteCustomer(net/marciowb/trilha/ejb/__CustomerRemote_Remote_DynamicStub.java)
        at net.marciowb.trilha.ejb._CustomerRemote_Wrapper.forceDeleteCustomer(net/marciowb/trilha/ejb/_CustomerRemote_Wrapper.java)
        at br.com.trilha21.web.store.ejb.CustomerBean.forceDelete(CustomerBean.java:217)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at com.sun.enterprise.security.application.EJBSecurityManager.runMethod(EJBSecurityManager.java:1067)
        at com.sun.enterprise.security.SecurityUtil.invoke(SecurityUtil.java:176)
        at com.sun.ejb.containers.BaseContainer.invokeTargetBeanMethod(BaseContainer.java:2895)
        at com.sun.ejb.containers.BaseContainer.intercept(BaseContainer.java:3986)
        at com.sun.ejb.containers.EJBObjectInvocationHandler.invoke(EJBObjectInvocationHandler.java:203)
        at com.sun.ejb.containers.EJBObjectInvocationHandlerDelegate.invoke(EJBObjectInvocationHandlerDelegate.java:117)
        at $Proxy128.forceDelete(Unknown Source)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at com.sun.corba.ee.impl.presentation.rmi.ReflectiveTie._invoke(ReflectiveTie.java:154)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatchToServant(CorbaServerRequestDispatcherImpl.java:687)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatch(CorbaServerRequestDispatcherImpl.java:227)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequestRequest(CorbaMessageMediatorImpl.java:1846)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:1706)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleInput(CorbaMessageMediatorImpl.java:1088)
        at com.sun.corba.ee.impl.protocol.giopmsgheaders.RequestMessage_1_2.callback(RequestMessage_1_2.java:223)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:806)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.dispatch(CorbaMessageMediatorImpl.java:563)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.doWork(CorbaMessageMediatorImpl.java:2567)
        at com.sun.corba.ee.impl.orbutil.threadpool.ThreadPoolImpl$WorkerThread.run(ThreadPoolImpl.java:555)
Caused by: javax.ejb.TransactionRolledbackLocalException: Exception thrown from bean; nested exception is: java.lang.IllegalArgumentException: NamedQuery of name: Customer.byIdentification not found.
        at com.sun.ejb.containers.BaseContainer.checkExceptionClientTx(BaseContainer.java:3728)
        at com.sun.ejb.containers.BaseContainer.postInvokeTx(BaseContainer.java:3576)
        at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1354)
        ... 46 more

----------END server-side stack trace----------  vmcid: 0x2000  minor code: 1806 completed: Maybe)
Tests run: 2, Failures: 0, Errors: 2, Time elapsed: 20,375 sec

Testcase: testNewCustomer_PersonalAccount(br.com.trilha21.web.store.IndexPageUITest): Caused an ERROR
nested exception is: java.rmi.ServerException: RemoteException occurred in server thread; nested exception is: 
        java.rmi.RemoteException: null; nested exception is: 
        javax.transaction.TransactionRolledbackException: CORBA TRANSACTION_ROLLEDBACK 9998 Maybe; nested exception is: 
        org.omg.CORBA.TRANSACTION_ROLLEDBACK: ----------BEGIN server-side stack trace----------
org.omg.CORBA.TRANSACTION_ROLLEDBACK:   vmcid: 0x2000  minor code: 1806 completed: Maybe
        at com.sun.enterprise.iiop.POAProtocolMgr.mapException(POAProtocolMgr.java:231)
        at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1386)
        at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1316)
        at com.sun.ejb.containers.EJBObjectInvocationHandler.invoke(EJBObjectInvocationHandler.java:210)
        at com.sun.ejb.containers.EJBObjectInvocationHandlerDelegate.invoke(EJBObjectInvocationHandlerDelegate.java:117)
        at $Proxy157.forceDeleteCustomer(Unknown Source)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at com.sun.corba.ee.impl.presentation.rmi.ReflectiveTie._invoke(ReflectiveTie.java:154)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatchToServant(CorbaServerRequestDispatcherImpl.java:687)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatch(CorbaServerRequestDispatcherImpl.java:227)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequestRequest(CorbaMessageMediatorImpl.java:1846)
        at com.sun.corba.ee.impl.protocol.SharedCDRClientRequestDispatcherImpl.marshalingComplete(SharedCDRClientRequestDispatcherImpl.java:183)
        at com.sun.corba.ee.impl.protocol.CorbaClientDelegateImpl.invoke(CorbaClientDelegateImpl.java:219)
        at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.privateInvoke(StubInvocationHandlerImpl.java:192)
        at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.invoke(StubInvocationHandlerImpl.java:152)
        at com.sun.corba.ee.impl.presentation.rmi.bcel.BCELStubBase.invoke(BCELStubBase.java:225)
        at net.marciowb.trilha.ejb.__CustomerRemote_Remote_DynamicStub.forceDeleteCustomer(net/marciowb/trilha/ejb/__CustomerRemote_Remote_DynamicStub.java)
        at net.marciowb.trilha.ejb._CustomerRemote_Wrapper.forceDeleteCustomer(net/marciowb/trilha/ejb/_CustomerRemote_Wrapper.java)
        at br.com.trilha21.web.store.ejb.CustomerBean.forceDelete(CustomerBean.java:217)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at com.sun.enterprise.security.application.EJBSecurityManager.runMethod(EJBSecurityManager.java:1067)
        at com.sun.enterprise.security.SecurityUtil.invoke(SecurityUtil.java:176)
        at com.sun.ejb.containers.BaseContainer.invokeTargetBeanMethod(BaseContainer.java:2895)
        at com.sun.ejb.containers.BaseContainer.intercept(BaseContainer.java:3986)
        at com.sun.ejb.containers.EJBObjectInvocationHandler.invoke(EJBObjectInvocationHandler.java:203)
        at com.sun.ejb.containers.EJBObjectInvocationHandlerDelegate.invoke(EJBObjectInvocationHandlerDelegate.java:117)
        at $Proxy128.forceDelete(Unknown Source)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at com.sun.corba.ee.impl.presentation.rmi.ReflectiveTie._invoke(ReflectiveTie.java:154)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatchToServant(CorbaServerRequestDispatcherImpl.java:687)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatch(CorbaServerRequestDispatcherImpl.java:227)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequestRequest(CorbaMessageMediatorImpl.java:1846)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:1706)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleInput(CorbaMessageMediatorImpl.java:1088)
        at com.sun.corba.ee.impl.protocol.giopmsgheaders.RequestMessage_1_2.callback(RequestMessage_1_2.java:223)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:806)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.dispatch(CorbaMessageMediatorImpl.java:563)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.doWork(CorbaMessageMediatorImpl.java:2567)
        at com.sun.corba.ee.impl.orbutil.threadpool.ThreadPoolImpl$WorkerThread.run(ThreadPoolImpl.java:555)
Caused by: javax.ejb.TransactionRolledbackLocalException: Exception thrown from bean; nested exception is: Exception [TOPLINK-4002] (Oracle TopLink Essentials - 2.0.1 (Build b04-fcs (04/11/2008))): oracle.toplink.essentials.exceptions.DatabaseException
Internal Exception: java.sql.SQLException: Error in allocating a connection. Cause: java.lang.IllegalStateException: Local transaction already has 1 non-XA Resource: cannot add more resources.  
Error Code: 0
        at com.sun.ejb.containers.BaseContainer.checkExceptionClientTx(BaseContainer.java:3728)
        at com.sun.ejb.containers.BaseContainer.postInvokeTx(BaseContainer.java:3576)
        at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1354)
        ... 46 more

----------END server-side stack trace----------  vmcid: 0x2000  minor code: 1806 completed: Maybe
javax.ejb.EJBException: nested exception is: java.rmi.ServerException: RemoteException occurred in server thread; nested exception is: 
        java.rmi.RemoteException: null; nested exception is: 
        javax.transaction.TransactionRolledbackException: CORBA TRANSACTION_ROLLEDBACK 9998 Maybe; nested exception is: 
        org.omg.CORBA.TRANSACTION_ROLLEDBACK: ----------BEGIN server-side stack trace----------
org.omg.CORBA.TRANSACTION_ROLLEDBACK:   vmcid: 0x2000  minor code: 1806 completed: Maybe
        at com.sun.enterprise.iiop.POAProtocolMgr.mapException(POAProtocolMgr.java:231)
        at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1386)
        at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1316)
        at com.sun.ejb.containers.EJBObjectInvocationHandler.invoke(EJBObjectInvocationHandler.java:210)
        at com.sun.ejb.containers.EJBObjectInvocationHandlerDelegate.invoke(EJBObjectInvocationHandlerDelegate.java:117)
        at $Proxy157.forceDeleteCustomer(Unknown Source)
        at com.sun.corba.ee.impl.presentation.rmi.ReflectiveTie._invoke(ReflectiveTie.java:154)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatchToServant(CorbaServerRequestDispatcherImpl.java:687)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatch(CorbaServerRequestDispatcherImpl.java:227)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequestRequest(CorbaMessageMediatorImpl.java:1846)
        at com.sun.corba.ee.impl.protocol.SharedCDRClientRequestDispatcherImpl.marshalingComplete(SharedCDRClientRequestDispatcherImpl.java:183)
        at com.sun.corba.ee.impl.protocol.CorbaClientDelegateImpl.invoke(CorbaClientDelegateImpl.java:219)
        at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.privateInvoke(StubInvocationHandlerImpl.java:192)
        at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.invoke(StubInvocationHandlerImpl.java:152)
        at com.sun.corba.ee.impl.presentation.rmi.bcel.BCELStubBase.invoke(BCELStubBase.java:225)
        at net.marciowb.trilha.ejb.__CustomerRemote_Remote_DynamicStub.forceDeleteCustomer(net/marciowb/trilha/ejb/__CustomerRemote_Remote_DynamicStub.java)
        at net.marciowb.trilha.ejb._CustomerRemote_Wrapper.forceDeleteCustomer(net/marciowb/trilha/ejb/_CustomerRemote_Wrapper.java)
        at br.com.trilha21.web.store.ejb.CustomerBean.forceDelete(CustomerBean.java:217)
        at com.sun.enterprise.security.application.EJBSecurityManager.runMethod(EJBSecurityManager.java:1067)
        at com.sun.enterprise.security.SecurityUtil.invoke(SecurityUtil.java:176)
        at com.sun.ejb.containers.BaseContainer.invokeTargetBeanMethod(BaseContainer.java:2895)
        at com.sun.ejb.containers.BaseContainer.intercept(BaseContainer.java:3986)
        at com.sun.ejb.containers.EJBObjectInvocationHandler.invoke(EJBObjectInvocationHandler.java:203)
        at com.sun.ejb.containers.EJBObjectInvocationHandlerDelegate.invoke(EJBObjectInvocationHandlerDelegate.java:117)
        at $Proxy128.forceDelete(Unknown Source)
        at com.sun.corba.ee.impl.presentation.rmi.ReflectiveTie._invoke(ReflectiveTie.java:154)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatchToServant(CorbaServerRequestDispatcherImpl.java:687)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatch(CorbaServerRequestDispatcherImpl.java:227)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequestRequest(CorbaMessageMediatorImpl.java:1846)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:1706)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleInput(CorbaMessageMediatorImpl.java:1088)
        at com.sun.corba.ee.impl.protocol.giopmsgheaders.RequestMessage_1_2.callback(RequestMessage_1_2.java:223)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:806)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.dispatch(CorbaMessageMediatorImpl.java:563)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.doWork(CorbaMessageMediatorImpl.java:2567)
        at com.sun.corba.ee.impl.orbutil.threadpool.ThreadPoolImpl$WorkerThread.run(ThreadPoolImpl.java:555)
Caused by: javax.ejb.TransactionRolledbackLocalException: Exception thrown from bean; nested exception is: Exception [TOPLINK-4002] (Oracle TopLink Essentials - 2.0.1 (Build b04-fcs (04/11/2008))): oracle.toplink.essentials.exceptions.DatabaseException
Error Code: 0
        at com.sun.ejb.containers.BaseContainer.checkExceptionClientTx(BaseContainer.java:3728)
        at com.sun.ejb.containers.BaseContainer.postInvokeTx(BaseContainer.java:3576)
        at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1354)

----------END server-side stack trace----------  vmcid: 0x2000  minor code: 1806 completed: Maybe
java.rmi.ServerException: RemoteException occurred in server thread; nested exception is: 
        java.rmi.RemoteException: null; nested exception is: 
        javax.transaction.TransactionRolledbackException: CORBA TRANSACTION_ROLLEDBACK 9998 Maybe; nested exception is: 
        org.omg.CORBA.TRANSACTION_ROLLEDBACK: ----------BEGIN server-side stack trace----------
org.omg.CORBA.TRANSACTION_ROLLEDBACK:   vmcid: 0x2000  minor code: 1806 completed: Maybe
        at com.sun.enterprise.iiop.POAProtocolMgr.mapException(POAProtocolMgr.java:231)
        at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1386)
        at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1316)
        at com.sun.ejb.containers.EJBObjectInvocationHandler.invoke(EJBObjectInvocationHandler.java:210)
        at com.sun.ejb.containers.EJBObjectInvocationHandlerDelegate.invoke(EJBObjectInvocationHandlerDelegate.java:117)
        at $Proxy157.forceDeleteCustomer(Unknown Source)
        at com.sun.corba.ee.impl.presentation.rmi.ReflectiveTie._invoke(ReflectiveTie.java:154)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatchToServant(CorbaServerRequestDispatcherImpl.java:687)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatch(CorbaServerRequestDispatcherImpl.java:227)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequestRequest(CorbaMessageMediatorImpl.java:1846)
        at com.sun.corba.ee.impl.protocol.SharedCDRClientRequestDispatcherImpl.marshalingComplete(SharedCDRClientRequestDispatcherImpl.java:183)
        at com.sun.corba.ee.impl.protocol.CorbaClientDelegateImpl.invoke(CorbaClientDelegateImpl.java:219)
        at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.privateInvoke(StubInvocationHandlerImpl.java:192)
        at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.invoke(StubInvocationHandlerImpl.java:152)
        at com.sun.corba.ee.impl.presentation.rmi.bcel.BCELStubBase.invoke(BCELStubBase.java:225)
        at net.marciowb.trilha.ejb.__CustomerRemote_Remote_DynamicStub.forceDeleteCustomer(net/marciowb/trilha/ejb/__CustomerRemote_Remote_DynamicStub.java)
        at net.marciowb.trilha.ejb._CustomerRemote_Wrapper.forceDeleteCustomer(net/marciowb/trilha/ejb/_CustomerRemote_Wrapper.java)
        at br.com.trilha21.web.store.ejb.CustomerBean.forceDelete(CustomerBean.java:217)
        at com.sun.enterprise.security.application.EJBSecurityManager.runMethod(EJBSecurityManager.java:1067)
        at com.sun.enterprise.security.SecurityUtil.invoke(SecurityUtil.java:176)
        at com.sun.ejb.containers.BaseContainer.invokeTargetBeanMethod(BaseContainer.java:2895)
        at com.sun.ejb.containers.BaseContainer.intercept(BaseContainer.java:3986)
        at com.sun.ejb.containers.EJBObjectInvocationHandler.invoke(EJBObjectInvocationHandler.java:203)
        at com.sun.ejb.containers.EJBObjectInvocationHandlerDelegate.invoke(EJBObjectInvocationHandlerDelegate.java:117)
        at $Proxy128.forceDelete(Unknown Source)
        at com.sun.corba.ee.impl.presentation.rmi.ReflectiveTie._invoke(ReflectiveTie.java:154)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatchToServant(CorbaServerRequestDispatcherImpl.java:687)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatch(CorbaServerRequestDispatcherImpl.java:227)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequestRequest(CorbaMessageMediatorImpl.java:1846)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:1706)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleInput(CorbaMessageMediatorImpl.java:1088)
        at com.sun.corba.ee.impl.protocol.giopmsgheaders.RequestMessage_1_2.callback(RequestMessage_1_2.java:223)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:806)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.dispatch(CorbaMessageMediatorImpl.java:563)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.doWork(CorbaMessageMediatorImpl.java:2567)
        at com.sun.corba.ee.impl.orbutil.threadpool.ThreadPoolImpl$WorkerThread.run(ThreadPoolImpl.java:555)
Caused by: javax.ejb.TransactionRolledbackLocalException: Exception thrown from bean; nested exception is: Exception [TOPLINK-4002] (Oracle TopLink Essentials - 2.0.1 (Build b04-fcs (04/11/2008))): oracle.toplink.essentials.exceptions.DatabaseException
Error Code: 0
        at com.sun.ejb.containers.BaseContainer.checkExceptionClientTx(BaseContainer.java:3728)
        at com.sun.ejb.containers.BaseContainer.postInvokeTx(BaseContainer.java:3576)
        at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1354)

----------END server-side stack trace----------  vmcid: 0x2000  minor code: 1806 completed: Maybe
        at com.sun.corba.ee.impl.javax.rmi.CORBA.Util.mapSystemException(Util.java:243)
        at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.privateInvoke(StubInvocationHandlerImpl.java:205)
        at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.invoke(StubInvocationHandlerImpl.java:152)
        at com.sun.corba.ee.impl.presentation.rmi.bcel.BCELStubBase.invoke(BCELStubBase.java:225)
        at br.com.trilha21.web.store.ejb.__CustomerRemote_Remote_DynamicStub.forceDelete(br/com/trilha21/web/store/ejb/__CustomerRemote_Remote_DynamicStub.java)
        at br.com.trilha21.web.store.ejb._CustomerRemote_Wrapper.forceDelete(br/com/trilha21/web/store/ejb/_CustomerRemote_Wrapper.java)
        at br.com.trilha21.web.store.IndexPageUITest.testNewCustomer_PersonalAccount(IndexPageUITest.java:181)
Caused by: java.rmi.RemoteException: null; nested exception is: 
        javax.transaction.TransactionRolledbackException: CORBA TRANSACTION_ROLLEDBACK 9998 Maybe; nested exception is: 
        org.omg.CORBA.TRANSACTION_ROLLEDBACK: ----------BEGIN server-side stack trace----------
org.omg.CORBA.TRANSACTION_ROLLEDBACK:   vmcid: 0x2000  minor code: 1806 completed: Maybe
        at com.sun.enterprise.iiop.POAProtocolMgr.mapException(POAProtocolMgr.java:231)
        at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1386)
        at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1316)
        at com.sun.ejb.containers.EJBObjectInvocationHandler.invoke(EJBObjectInvocationHandler.java:210)
        at com.sun.ejb.containers.EJBObjectInvocationHandlerDelegate.invoke(EJBObjectInvocationHandlerDelegate.java:117)
        at $Proxy157.forceDeleteCustomer(Unknown Source)
        at com.sun.corba.ee.impl.presentation.rmi.ReflectiveTie._invoke(ReflectiveTie.java:154)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatchToServant(CorbaServerRequestDispatcherImpl.java:687)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatch(CorbaServerRequestDispatcherImpl.java:227)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequestRequest(CorbaMessageMediatorImpl.java:1846)
        at com.sun.corba.ee.impl.protocol.SharedCDRClientRequestDispatcherImpl.marshalingComplete(SharedCDRClientRequestDispatcherImpl.java:183)
        at com.sun.corba.ee.impl.protocol.CorbaClientDelegateImpl.invoke(CorbaClientDelegateImpl.java:219)
        at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.privateInvoke(StubInvocationHandlerImpl.java:192)
        at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.invoke(StubInvocationHandlerImpl.java:152)
        at com.sun.corba.ee.impl.presentation.rmi.bcel.BCELStubBase.invoke(BCELStubBase.java:225)
        at net.marciowb.trilha.ejb.__CustomerRemote_Remote_DynamicStub.forceDeleteCustomer(net/marciowb/trilha/ejb/__CustomerRemote_Remote_DynamicStub.java)
        at net.marciowb.trilha.ejb._CustomerRemote_Wrapper.forceDeleteCustomer(net/marciowb/trilha/ejb/_CustomerRemote_Wrapper.java)
        at br.com.trilha21.web.store.ejb.CustomerBean.forceDelete(CustomerBean.java:217)
        at com.sun.enterprise.security.application.EJBSecurityManager.runMethod(EJBSecurityManager.java:1067)
        at com.sun.enterprise.security.SecurityUtil.invoke(SecurityUtil.java:176)
        at com.sun.ejb.containers.BaseContainer.invokeTargetBeanMethod(BaseContainer.java:2895)
        at com.sun.ejb.containers.BaseContainer.intercept(BaseContainer.java:3986)
        at com.sun.ejb.containers.EJBObjectInvocationHandler.invoke(EJBObjectInvocationHandler.java:203)
        at com.sun.ejb.containers.EJBObjectInvocationHandlerDelegate.invoke(EJBObjectInvocationHandlerDelegate.java:117)
        at $Proxy128.forceDelete(Unknown Source)
        at com.sun.corba.ee.impl.presentation.rmi.ReflectiveTie._invoke(ReflectiveTie.java:154)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatchToServant(CorbaServerRequestDispatcherImpl.java:687)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatch(CorbaServerRequestDispatcherImpl.java:227)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequestRequest(CorbaMessageMediatorImpl.java:1846)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:1706)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleInput(CorbaMessageMediatorImpl.java:1088)
        at com.sun.corba.ee.impl.protocol.giopmsgheaders.RequestMessage_1_2.callback(RequestMessage_1_2.java:223)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:806)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.dispatch(CorbaMessageMediatorImpl.java:563)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.doWork(CorbaMessageMediatorImpl.java:2567)
        at com.sun.corba.ee.impl.orbutil.threadpool.ThreadPoolImpl$WorkerThread.run(ThreadPoolImpl.java:555)
Caused by: javax.ejb.TransactionRolledbackLocalException: Exception thrown from bean; nested exception is: Exception [TOPLINK-4002] (Oracle TopLink Essentials - 2.0.1 (Build b04-fcs (04/11/2008))): oracle.toplink.essentials.exceptions.DatabaseException
Error Code: 0
        at com.sun.ejb.containers.BaseContainer.checkExceptionClientTx(BaseContainer.java:3728)
        at com.sun.ejb.containers.BaseContainer.postInvokeTx(BaseContainer.java:3576)
        at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1354)

----------END server-side stack trace----------  vmcid: 0x2000  minor code: 1806 completed: Maybe
        at com.sun.enterprise.iiop.POAProtocolMgr.mapException(POAProtocolMgr.java:251)
        at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1386)
        at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1316)
        at com.sun.ejb.containers.EJBObjectInvocationHandler.invoke(EJBObjectInvocationHandler.java:210)
        at com.sun.ejb.containers.EJBObjectInvocationHandlerDelegate.invoke(EJBObjectInvocationHandlerDelegate.java:117)
        at $Proxy128.forceDelete(Unknown Source)
        at com.sun.corba.ee.impl.presentation.rmi.ReflectiveTie._invoke(ReflectiveTie.java:154)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatchToServant(CorbaServerRequestDispatcherImpl.java:687)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatch(CorbaServerRequestDispatcherImpl.java:227)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequestRequest(CorbaMessageMediatorImpl.java:1846)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:1706)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleInput(CorbaMessageMediatorImpl.java:1088)
        at com.sun.corba.ee.impl.protocol.giopmsgheaders.RequestMessage_1_2.callback(RequestMessage_1_2.java:223)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:806)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.dispatch(CorbaMessageMediatorImpl.java:563)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.doWork(CorbaMessageMediatorImpl.java:2567)
        at com.sun.corba.ee.impl.orbutil.threadpool.ThreadPoolImpl$WorkerThread.run(ThreadPoolImpl.java:555)
Caused by: javax.transaction.TransactionRolledbackException: CORBA TRANSACTION_ROLLEDBACK 9998 Maybe; nested exception is: 
        org.omg.CORBA.TRANSACTION_ROLLEDBACK: ----------BEGIN server-side stack trace----------
org.omg.CORBA.TRANSACTION_ROLLEDBACK:   vmcid: 0x2000  minor code: 1806 completed: Maybe
        at com.sun.enterprise.iiop.POAProtocolMgr.mapException(POAProtocolMgr.java:231)
        at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1386)
        at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1316)
        at com.sun.ejb.containers.EJBObjectInvocationHandler.invoke(EJBObjectInvocationHandler.java:210)
        at com.sun.ejb.containers.EJBObjectInvocationHandlerDelegate.invoke(EJBObjectInvocationHandlerDelegate.java:117)
        at $Proxy157.forceDeleteCustomer(Unknown Source)
        at com.sun.corba.ee.impl.presentation.rmi.ReflectiveTie._invoke(ReflectiveTie.java:154)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatchToServant(CorbaServerRequestDispatcherImpl.java:687)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatch(CorbaServerRequestDispatcherImpl.java:227)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequestRequest(CorbaMessageMediatorImpl.java:1846)
        at com.sun.corba.ee.impl.protocol.SharedCDRClientRequestDispatcherImpl.marshalingComplete(SharedCDRClientRequestDispatcherImpl.java:183)
        at com.sun.corba.ee.impl.protocol.CorbaClientDelegateImpl.invoke(CorbaClientDelegateImpl.java:219)
        at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.privateInvoke(StubInvocationHandlerImpl.java:192)
        at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.invoke(StubInvocationHandlerImpl.java:152)
        at com.sun.corba.ee.impl.presentation.rmi.bcel.BCELStubBase.invoke(BCELStubBase.java:225)
        at net.marciowb.trilha.ejb.__CustomerRemote_Remote_DynamicStub.forceDeleteCustomer(net/marciowb/trilha/ejb/__CustomerRemote_Remote_DynamicStub.java)
        at net.marciowb.trilha.ejb._CustomerRemote_Wrapper.forceDeleteCustomer(net/marciowb/trilha/ejb/_CustomerRemote_Wrapper.java)
        at br.com.trilha21.web.store.ejb.CustomerBean.forceDelete(CustomerBean.java:217)
        at com.sun.enterprise.security.application.EJBSecurityManager.runMethod(EJBSecurityManager.java:1067)
        at com.sun.enterprise.security.SecurityUtil.invoke(SecurityUtil.java:176)
        at com.sun.ejb.containers.BaseContainer.invokeTargetBeanMethod(BaseContainer.java:2895)
        at com.sun.ejb.containers.BaseContainer.intercept(BaseContainer.java:3986)
        at com.sun.ejb.containers.EJBObjectInvocationHandler.invoke(EJBObjectInvocationHandler.java:203)
        at com.sun.ejb.containers.EJBObjectInvocationHandlerDelegate.invoke(EJBObjectInvocationHandlerDelegate.java:117)
        at $Proxy128.forceDelete(Unknown Source)
        at com.sun.corba.ee.impl.presentation.rmi.ReflectiveTie._invoke(ReflectiveTie.java:154)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatchToServant(CorbaServerRequestDispatcherImpl.java:687)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatch(CorbaServerRequestDispatcherImpl.java:227)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequestRequest(CorbaMessageMediatorImpl.java:1846)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:1706)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleInput(CorbaMessageMediatorImpl.java:1088)
        at com.sun.corba.ee.impl.protocol.giopmsgheaders.RequestMessage_1_2.callback(RequestMessage_1_2.java:223)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:806)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.dispatch(CorbaMessageMediatorImpl.java:563)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.doWork(CorbaMessageMediatorImpl.java:2567)
        at com.sun.corba.ee.impl.orbutil.threadpool.ThreadPoolImpl$WorkerThread.run(ThreadPoolImpl.java:555)
Caused by: javax.ejb.TransactionRolledbackLocalException: Exception thrown from bean; nested exception is: Exception [TOPLINK-4002] (Oracle TopLink Essentials - 2.0.1 (Build b04-fcs (04/11/2008))): oracle.toplink.essentials.exceptions.DatabaseException
Error Code: 0
        at com.sun.ejb.containers.BaseContainer.checkExceptionClientTx(BaseContainer.java:3728)
        at com.sun.ejb.containers.BaseContainer.postInvokeTx(BaseContainer.java:3576)
        at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1354)

----------END server-side stack trace----------  vmcid: 0x2000  minor code: 1806 completed: Maybe
        at com.sun.corba.ee.impl.javax.rmi.CORBA.Util.mapSystemException(Util.java:289)
        at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.privateInvoke(StubInvocationHandlerImpl.java:205)
        at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.invoke(StubInvocationHandlerImpl.java:152)
        at com.sun.corba.ee.impl.presentation.rmi.bcel.BCELStubBase.invoke(BCELStubBase.java:225)
        at net.marciowb.trilha.ejb.__CustomerRemote_Remote_DynamicStub.forceDeleteCustomer(net/marciowb/trilha/ejb/__CustomerRemote_Remote_DynamicStub.java)
        at net.marciowb.trilha.ejb._CustomerRemote_Wrapper.forceDeleteCustomer(net/marciowb/trilha/ejb/_CustomerRemote_Wrapper.java)
        at br.com.trilha21.web.store.ejb.CustomerBean.forceDelete(CustomerBean.java:217)
        at com.sun.enterprise.security.application.EJBSecurityManager.runMethod(EJBSecurityManager.java:1067)
        at com.sun.enterprise.security.SecurityUtil.invoke(SecurityUtil.java:176)
        at com.sun.ejb.containers.BaseContainer.invokeTargetBeanMethod(BaseContainer.java:2895)
        at com.sun.ejb.containers.BaseContainer.intercept(BaseContainer.java:3986)
        at com.sun.ejb.containers.EJBObjectInvocationHandler.invoke(EJBObjectInvocationHandler.java:203)
Caused by: org.omg.CORBA.TRANSACTION_ROLLEDBACK: ----------BEGIN server-side stack trace----------
org.omg.CORBA.TRANSACTION_ROLLEDBACK:   vmcid: 0x2000  minor code: 1806 completed: Maybe
        at com.sun.enterprise.iiop.POAProtocolMgr.mapException(POAProtocolMgr.java:231)
        at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1386)
        at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1316)
        at com.sun.ejb.containers.EJBObjectInvocationHandler.invoke(EJBObjectInvocationHandler.java:210)
        at com.sun.ejb.containers.EJBObjectInvocationHandlerDelegate.invoke(EJBObjectInvocationHandlerDelegate.java:117)
        at $Proxy157.forceDeleteCustomer(Unknown Source)
        at com.sun.corba.ee.impl.presentation.rmi.ReflectiveTie._invoke(ReflectiveTie.java:154)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatchToServant(CorbaServerRequestDispatcherImpl.java:687)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatch(CorbaServerRequestDispatcherImpl.java:227)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequestRequest(CorbaMessageMediatorImpl.java:1846)
        at com.sun.corba.ee.impl.protocol.SharedCDRClientRequestDispatcherImpl.marshalingComplete(SharedCDRClientRequestDispatcherImpl.java:183)
        at com.sun.corba.ee.impl.protocol.CorbaClientDelegateImpl.invoke(CorbaClientDelegateImpl.java:219)
        at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.privateInvoke(StubInvocationHandlerImpl.java:192)
        at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.invoke(StubInvocationHandlerImpl.java:152)
        at com.sun.corba.ee.impl.presentation.rmi.bcel.BCELStubBase.invoke(BCELStubBase.java:225)
        at net.marciowb.trilha.ejb.__CustomerRemote_Remote_DynamicStub.forceDeleteCustomer(net/marciowb/trilha/ejb/__CustomerRemote_Remote_DynamicStub.java)
        at net.marciowb.trilha.ejb._CustomerRemote_Wrapper.forceDeleteCustomer(net/marciowb/trilha/ejb/_CustomerRemote_Wrapper.java)
        at br.com.trilha21.web.store.ejb.CustomerBean.forceDelete(CustomerBean.java:217)
        at com.sun.enterprise.security.application.EJBSecurityManager.runMethod(EJBSecurityManager.java:1067)
        at com.sun.enterprise.security.SecurityUtil.invoke(SecurityUtil.java:176)
        at com.sun.ejb.containers.BaseContainer.invokeTargetBeanMethod(BaseContainer.java:2895)
        at com.sun.ejb.containers.BaseContainer.intercept(BaseContainer.java:3986)
        at com.sun.ejb.containers.EJBObjectInvocationHandler.invoke(EJBObjectInvocationHandler.java:203)
        at com.sun.ejb.containers.EJBObjectInvocationHandlerDelegate.invoke(EJBObjectInvocationHandlerDelegate.java:117)
        at $Proxy128.forceDelete(Unknown Source)
        at com.sun.corba.ee.impl.presentation.rmi.ReflectiveTie._invoke(ReflectiveTie.java:154)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatchToServant(CorbaServerRequestDispatcherImpl.java:687)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatch(CorbaServerRequestDispatcherImpl.java:227)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequestRequest(CorbaMessageMediatorImpl.java:1846)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:1706)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleInput(CorbaMessageMediatorImpl.java:1088)
        at com.sun.corba.ee.impl.protocol.giopmsgheaders.RequestMessage_1_2.callback(RequestMessage_1_2.java:223)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:806)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.dispatch(CorbaMessageMediatorImpl.java:563)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.doWork(CorbaMessageMediatorImpl.java:2567)
        at com.sun.corba.ee.impl.orbutil.threadpool.ThreadPoolImpl$WorkerThread.run(ThreadPoolImpl.java:555)
Caused by: javax.ejb.TransactionRolledbackLocalException: Exception thrown from bean; nested exception is: Exception [TOPLINK-4002] (Oracle TopLink Essentials - 2.0.1 (Build b04-fcs (04/11/2008))): oracle.toplink.essentials.exceptions.DatabaseException
Error Code: 0
        at com.sun.ejb.containers.BaseContainer.checkExceptionClientTx(BaseContainer.java:3728)
        at com.sun.ejb.containers.BaseContainer.postInvokeTx(BaseContainer.java:3576)
        at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1354)

----------END server-side stack trace----------  vmcid: 0x2000  minor code: 1806 completed: Maybe
        at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
        at com.sun.corba.ee.impl.protocol.giopmsgheaders.MessageBase.getSystemException(MessageBase.java:913)
        at com.sun.corba.ee.impl.protocol.giopmsgheaders.ReplyMessage_1_2.getSystemException(ReplyMessage_1_2.java:131)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.getSystemExceptionReply(CorbaMessageMediatorImpl.java:685)
        at com.sun.corba.ee.impl.protocol.CorbaClientRequestDispatcherImpl.processResponse(CorbaClientRequestDispatcherImpl.java:472)
        at com.sun.corba.ee.impl.protocol.SharedCDRClientRequestDispatcherImpl.marshalingComplete(SharedCDRClientRequestDispatcherImpl.java:217)
        at com.sun.corba.ee.impl.protocol.CorbaClientDelegateImpl.invoke(CorbaClientDelegateImpl.java:219)
        at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.privateInvoke(StubInvocationHandlerImpl.java:192)
javax.ejb.EJBException: nested exception is: java.rmi.ServerException: RemoteException occurred in server thread; nested exception is: 
        java.rmi.RemoteException: null; nested exception is: 
        javax.transaction.TransactionRolledbackException: CORBA TRANSACTION_ROLLEDBACK 9998 Maybe; nested exception is: 
        org.omg.CORBA.TRANSACTION_ROLLEDBACK: ----------BEGIN server-side stack trace----------
org.omg.CORBA.TRANSACTION_ROLLEDBACK:   vmcid: 0x2000  minor code: 1806 completed: Maybe
        at com.sun.enterprise.iiop.POAProtocolMgr.mapException(POAProtocolMgr.java:231)
        at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1386)
        at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1316)
        at com.sun.ejb.containers.EJBObjectInvocationHandler.invoke(EJBObjectInvocationHandler.java:210)
        at com.sun.ejb.containers.EJBObjectInvocationHandlerDelegate.invoke(EJBObjectInvocationHandlerDelegate.java:117)
        at $Proxy157.forceDeleteCustomer(Unknown Source)
        at com.sun.corba.ee.impl.presentation.rmi.ReflectiveTie._invoke(ReflectiveTie.java:154)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatchToServant(CorbaServerRequestDispatcherImpl.java:687)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatch(CorbaServerRequestDispatcherImpl.java:227)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequestRequest(CorbaMessageMediatorImpl.java:1846)
        at com.sun.corba.ee.impl.protocol.SharedCDRClientRequestDispatcherImpl.marshalingComplete(SharedCDRClientRequestDispatcherImpl.java:183)
        at com.sun.corba.ee.impl.protocol.CorbaClientDelegateImpl.invoke(CorbaClientDelegateImpl.java:219)
        at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.privateInvoke(StubInvocationHandlerImpl.java:192)
        at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.invoke(StubInvocationHandlerImpl.java:152)
        at com.sun.corba.ee.impl.presentation.rmi.bcel.BCELStubBase.invoke(BCELStubBase.java:225)
        at net.marciowb.trilha.ejb.__CustomerRemote_Remote_DynamicStub.forceDeleteCustomer(net/marciowb/trilha/ejb/__CustomerRemote_Remote_DynamicStub.java)
        at net.marciowb.trilha.ejb._CustomerRemote_Wrapper.forceDeleteCustomer(net/marciowb/trilha/ejb/_CustomerRemote_Wrapper.java)
        at br.com.trilha21.web.store.ejb.CustomerBean.forceDelete(CustomerBean.java:217)
        at com.sun.enterprise.security.application.EJBSecurityManager.runMethod(EJBSecurityManager.java:1067)
        at com.sun.enterprise.security.SecurityUtil.invoke(SecurityUtil.java:176)
        at com.sun.ejb.containers.BaseContainer.invokeTargetBeanMethod(BaseContainer.java:2895)
        at com.sun.ejb.containers.BaseContainer.intercept(BaseContainer.java:3986)
        at com.sun.ejb.containers.EJBObjectInvocationHandler.invoke(EJBObjectInvocationHandler.java:203)
        at com.sun.ejb.containers.EJBObjectInvocationHandlerDelegate.invoke(EJBObjectInvocationHandlerDelegate.java:117)
        at $Proxy128.forceDelete(Unknown Source)
        at com.sun.corba.ee.impl.presentation.rmi.ReflectiveTie._invoke(ReflectiveTie.java:154)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatchToServant(CorbaServerRequestDispatcherImpl.java:687)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatch(CorbaServerRequestDispatcherImpl.java:227)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequestRequest(CorbaMessageMediatorImpl.java:1846)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:1706)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleInput(CorbaMessageMediatorImpl.java:1088)
        at com.sun.corba.ee.impl.protocol.giopmsgheaders.RequestMessage_1_2.callback(RequestMessage_1_2.java:223)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:806)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.dispatch(CorbaMessageMediatorImpl.java:563)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.doWork(CorbaMessageMediatorImpl.java:2567)
        at com.sun.corba.ee.impl.orbutil.threadpool.ThreadPoolImpl$WorkerThread.run(ThreadPoolImpl.java:555)
Caused by: javax.ejb.TransactionRolledbackLocalException: Exception thrown from bean; nested exception is: Exception [TOPLINK-4002] (Oracle TopLink Essentials - 2.0.1 (Build b04-fcs (04/11/2008))): oracle.toplink.essentials.exceptions.DatabaseException
Error Code: 0
        at com.sun.ejb.containers.BaseContainer.checkExceptionClientTx(BaseContainer.java:3728)
        at com.sun.ejb.containers.BaseContainer.postInvokeTx(BaseContainer.java:3576)
        at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1354)

----------END server-side stack trace----------  vmcid: 0x2000  minor code: 1806 completed: Maybe
        at br.com.trilha21.web.store.ejb._CustomerRemote_Wrapper.forceDelete(br/com/trilha21/web/store/ejb/_CustomerRemote_Wrapper.java)
        at br.com.trilha21.web.store.IndexPageUITest.testNewCustomer_PersonalAccount(IndexPageUITest.java:181)


Testcase: testNewCustomer_EnterpriseAccount(br.com.trilha21.web.store.IndexPageUITest): Caused an ERROR
nested exception is: java.rmi.ServerException: RemoteException occurred in server thread; nested exception is: 
        java.rmi.RemoteException: null; nested exception is: 
        javax.transaction.TransactionRolledbackException: CORBA TRANSACTION_ROLLEDBACK 9998 Maybe; nested exception is: 
        org.omg.CORBA.TRANSACTION_ROLLEDBACK: ----------BEGIN server-side stack trace----------
org.omg.CORBA.TRANSACTION_ROLLEDBACK:   vmcid: 0x2000  minor code: 1806 completed: Maybe
        at com.sun.enterprise.iiop.POAProtocolMgr.mapException(POAProtocolMgr.java:231)
        at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1386)
        at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1316)
        at com.sun.ejb.containers.EJBObjectInvocationHandler.invoke(EJBObjectInvocationHandler.java:210)
        at com.sun.ejb.containers.EJBObjectInvocationHandlerDelegate.invoke(EJBObjectInvocationHandlerDelegate.java:117)
        at $Proxy157.forceDeleteCustomer(Unknown Source)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at com.sun.corba.ee.impl.presentation.rmi.ReflectiveTie._invoke(ReflectiveTie.java:154)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatchToServant(CorbaServerRequestDispatcherImpl.java:687)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatch(CorbaServerRequestDispatcherImpl.java:227)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequestRequest(CorbaMessageMediatorImpl.java:1846)
        at com.sun.corba.ee.impl.protocol.SharedCDRClientRequestDispatcherImpl.marshalingComplete(SharedCDRClientRequestDispatcherImpl.java:183)
        at com.sun.corba.ee.impl.protocol.CorbaClientDelegateImpl.invoke(CorbaClientDelegateImpl.java:219)
        at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.privateInvoke(StubInvocationHandlerImpl.java:192)
        at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.invoke(StubInvocationHandlerImpl.java:152)
        at com.sun.corba.ee.impl.presentation.rmi.bcel.BCELStubBase.invoke(BCELStubBase.java:225)
        at net.marciowb.trilha.ejb.__CustomerRemote_Remote_DynamicStub.forceDeleteCustomer(net/marciowb/trilha/ejb/__CustomerRemote_Remote_DynamicStub.java)
        at net.marciowb.trilha.ejb._CustomerRemote_Wrapper.forceDeleteCustomer(net/marciowb/trilha/ejb/_CustomerRemote_Wrapper.java)
        at br.com.trilha21.web.store.ejb.CustomerBean.forceDelete(CustomerBean.java:217)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at com.sun.enterprise.security.application.EJBSecurityManager.runMethod(EJBSecurityManager.java:1067)
        at com.sun.enterprise.security.SecurityUtil.invoke(SecurityUtil.java:176)
        at com.sun.ejb.containers.BaseContainer.invokeTargetBeanMethod(BaseContainer.java:2895)
        at com.sun.ejb.containers.BaseContainer.intercept(BaseContainer.java:3986)
        at com.sun.ejb.containers.EJBObjectInvocationHandler.invoke(EJBObjectInvocationHandler.java:203)
        at com.sun.ejb.containers.EJBObjectInvocationHandlerDelegate.invoke(EJBObjectInvocationHandlerDelegate.java:117)
        at $Proxy128.forceDelete(Unknown Source)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at com.sun.corba.ee.impl.presentation.rmi.ReflectiveTie._invoke(ReflectiveTie.java:154)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatchToServant(CorbaServerRequestDispatcherImpl.java:687)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatch(CorbaServerRequestDispatcherImpl.java:227)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequestRequest(CorbaMessageMediatorImpl.java:1846)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:1706)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleInput(CorbaMessageMediatorImpl.java:1088)
        at com.sun.corba.ee.impl.protocol.giopmsgheaders.RequestMessage_1_2.callback(RequestMessage_1_2.java:223)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:806)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.dispatch(CorbaMessageMediatorImpl.java:563)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.doWork(CorbaMessageMediatorImpl.java:2567)
        at com.sun.corba.ee.impl.orbutil.threadpool.ThreadPoolImpl$WorkerThread.run(ThreadPoolImpl.java:555)
Caused by: javax.ejb.TransactionRolledbackLocalException: Exception thrown from bean; nested exception is: java.lang.IllegalArgumentException: NamedQuery of name: Customer.byIdentification not found.
        at com.sun.ejb.containers.BaseContainer.checkExceptionClientTx(BaseContainer.java:3728)
        at com.sun.ejb.containers.BaseContainer.postInvokeTx(BaseContainer.java:3576)
        at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1354)
        ... 46 more

----------END server-side stack trace----------  vmcid: 0x2000  minor code: 1806 completed: Maybe
javax.ejb.EJBException: nested exception is: java.rmi.ServerException: RemoteException occurred in server thread; nested exception is: 
        java.rmi.RemoteException: null; nested exception is: 
        javax.transaction.TransactionRolledbackException: CORBA TRANSACTION_ROLLEDBACK 9998 Maybe; nested exception is: 
        org.omg.CORBA.TRANSACTION_ROLLEDBACK: ----------BEGIN server-side stack trace----------
org.omg.CORBA.TRANSACTION_ROLLEDBACK:   vmcid: 0x2000  minor code: 1806 completed: Maybe
        at com.sun.enterprise.iiop.POAProtocolMgr.mapException(POAProtocolMgr.java:231)
        at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1386)
        at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1316)
        at com.sun.ejb.containers.EJBObjectInvocationHandler.invoke(EJBObjectInvocationHandler.java:210)
        at com.sun.ejb.containers.EJBObjectInvocationHandlerDelegate.invoke(EJBObjectInvocationHandlerDelegate.java:117)
        at $Proxy157.forceDeleteCustomer(Unknown Source)
        at com.sun.corba.ee.impl.presentation.rmi.ReflectiveTie._invoke(ReflectiveTie.java:154)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatchToServant(CorbaServerRequestDispatcherImpl.java:687)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatch(CorbaServerRequestDispatcherImpl.java:227)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequestRequest(CorbaMessageMediatorImpl.java:1846)
        at com.sun.corba.ee.impl.protocol.SharedCDRClientRequestDispatcherImpl.marshalingComplete(SharedCDRClientRequestDispatcherImpl.java:183)
        at com.sun.corba.ee.impl.protocol.CorbaClientDelegateImpl.invoke(CorbaClientDelegateImpl.java:219)
        at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.privateInvoke(StubInvocationHandlerImpl.java:192)
        at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.invoke(StubInvocationHandlerImpl.java:152)
        at com.sun.corba.ee.impl.presentation.rmi.bcel.BCELStubBase.invoke(BCELStubBase.java:225)
        at net.marciowb.trilha.ejb.__CustomerRemote_Remote_DynamicStub.forceDeleteCustomer(net/marciowb/trilha/ejb/__CustomerRemote_Remote_DynamicStub.java)
        at net.marciowb.trilha.ejb._CustomerRemote_Wrapper.forceDeleteCustomer(net/marciowb/trilha/ejb/_CustomerRemote_Wrapper.java)
        at br.com.trilha21.web.store.ejb.CustomerBean.forceDelete(CustomerBean.java:217)
        at com.sun.enterprise.security.application.EJBSecurityManager.runMethod(EJBSecurityManager.java:1067)
        at com.sun.enterprise.security.SecurityUtil.invoke(SecurityUtil.java:176)
        at com.sun.ejb.containers.BaseContainer.invokeTargetBeanMethod(BaseContainer.java:2895)
        at com.sun.ejb.containers.BaseContainer.intercept(BaseContainer.java:3986)
        at com.sun.ejb.containers.EJBObjectInvocationHandler.invoke(EJBObjectInvocationHandler.java:203)
        at com.sun.ejb.containers.EJBObjectInvocationHandlerDelegate.invoke(EJBObjectInvocationHandlerDelegate.java:117)
        at $Proxy128.forceDelete(Unknown Source)
        at com.sun.corba.ee.impl.presentation.rmi.ReflectiveTie._invoke(ReflectiveTie.java:154)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatchToServant(CorbaServerRequestDispatcherImpl.java:687)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatch(CorbaServerRequestDispatcherImpl.java:227)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequestRequest(CorbaMessageMediatorImpl.java:1846)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:1706)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleInput(CorbaMessageMediatorImpl.java:1088)
        at com.sun.corba.ee.impl.protocol.giopmsgheaders.RequestMessage_1_2.callback(RequestMessage_1_2.java:223)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:806)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.dispatch(CorbaMessageMediatorImpl.java:563)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.doWork(CorbaMessageMediatorImpl.java:2567)
        at com.sun.corba.ee.impl.orbutil.threadpool.ThreadPoolImpl$WorkerThread.run(ThreadPoolImpl.java:555)
Caused by: javax.ejb.TransactionRolledbackLocalException: Exception thrown from bean; nested exception is: java.lang.IllegalArgumentException: NamedQuery of name: Customer.byIdentification not found.
        at com.sun.ejb.containers.BaseContainer.checkExceptionClientTx(BaseContainer.java:3728)
        at com.sun.ejb.containers.BaseContainer.postInvokeTx(BaseContainer.java:3576)
        at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1354)

----------END server-side stack trace----------  vmcid: 0x2000  minor code: 1806 completed: Maybe
java.rmi.ServerException: RemoteException occurred in server thread; nested exception is: 
        java.rmi.RemoteException: null; nested exception is: 
        javax.transaction.TransactionRolledbackException: CORBA TRANSACTION_ROLLEDBACK 9998 Maybe; nested exception is: 
        org.omg.CORBA.TRANSACTION_ROLLEDBACK: ----------BEGIN server-side stack trace----------
org.omg.CORBA.TRANSACTION_ROLLEDBACK:   vmcid: 0x2000  minor code: 1806 completed: Maybe
        at com.sun.enterprise.iiop.POAProtocolMgr.mapException(POAProtocolMgr.java:231)
        at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1386)
        at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1316)
        at com.sun.ejb.containers.EJBObjectInvocationHandler.invoke(EJBObjectInvocationHandler.java:210)
        at com.sun.ejb.containers.EJBObjectInvocationHandlerDelegate.invoke(EJBObjectInvocationHandlerDelegate.java:117)
        at $Proxy157.forceDeleteCustomer(Unknown Source)
        at com.sun.corba.ee.impl.presentation.rmi.ReflectiveTie._invoke(ReflectiveTie.java:154)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatchToServant(CorbaServerRequestDispatcherImpl.java:687)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatch(CorbaServerRequestDispatcherImpl.java:227)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequestRequest(CorbaMessageMediatorImpl.java:1846)
        at com.sun.corba.ee.impl.protocol.SharedCDRClientRequestDispatcherImpl.marshalingComplete(SharedCDRClientRequestDispatcherImpl.java:183)
        at com.sun.corba.ee.impl.protocol.CorbaClientDelegateImpl.invoke(CorbaClientDelegateImpl.java:219)
        at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.privateInvoke(StubInvocationHandlerImpl.java:192)
        at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.invoke(StubInvocationHandlerImpl.java:152)
        at com.sun.corba.ee.impl.presentation.rmi.bcel.BCELStubBase.invoke(BCELStubBase.java:225)
        at net.marciowb.trilha.ejb.__CustomerRemote_Remote_DynamicStub.forceDeleteCustomer(net/marciowb/trilha/ejb/__CustomerRemote_Remote_DynamicStub.java)
        at net.marciowb.trilha.ejb._CustomerRemote_Wrapper.forceDeleteCustomer(net/marciowb/trilha/ejb/_CustomerRemote_Wrapper.java)
        at br.com.trilha21.web.store.ejb.CustomerBean.forceDelete(CustomerBean.java:217)
        at com.sun.enterprise.security.application.EJBSecurityManager.runMethod(EJBSecurityManager.java:1067)
        at com.sun.enterprise.security.SecurityUtil.invoke(SecurityUtil.java:176)
        at com.sun.ejb.containers.BaseContainer.invokeTargetBeanMethod(BaseContainer.java:2895)
        at com.sun.ejb.containers.BaseContainer.intercept(BaseContainer.java:3986)
        at com.sun.ejb.containers.EJBObjectInvocationHandler.invoke(EJBObjectInvocationHandler.java:203)
        at com.sun.ejb.containers.EJBObjectInvocationHandlerDelegate.invoke(EJBObjectInvocationHandlerDelegate.java:117)
        at $Proxy128.forceDelete(Unknown Source)
        at com.sun.corba.ee.impl.presentation.rmi.ReflectiveTie._invoke(ReflectiveTie.java:154)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatchToServant(CorbaServerRequestDispatcherImpl.java:687)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatch(CorbaServerRequestDispatcherImpl.java:227)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequestRequest(CorbaMessageMediatorImpl.java:1846)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:1706)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleInput(CorbaMessageMediatorImpl.java:1088)
        at com.sun.corba.ee.impl.protocol.giopmsgheaders.RequestMessage_1_2.callback(RequestMessage_1_2.java:223)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:806)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.dispatch(CorbaMessageMediatorImpl.java:563)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.doWork(CorbaMessageMediatorImpl.java:2567)
        at com.sun.corba.ee.impl.orbutil.threadpool.ThreadPoolImpl$WorkerThread.run(ThreadPoolImpl.java:555)
Caused by: javax.ejb.TransactionRolledbackLocalException: Exception thrown from bean; nested exception is: java.lang.IllegalArgumentException: NamedQuery of name: Customer.byIdentification not found.
        at com.sun.ejb.containers.BaseContainer.checkExceptionClientTx(BaseContainer.java:3728)
        at com.sun.ejb.containers.BaseContainer.postInvokeTx(BaseContainer.java:3576)
        at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1354)

----------END server-side stack trace----------  vmcid: 0x2000  minor code: 1806 completed: Maybe
        at com.sun.corba.ee.impl.javax.rmi.CORBA.Util.mapSystemException(Util.java:243)
        at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.privateInvoke(StubInvocationHandlerImpl.java:205)
        at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.invoke(StubInvocationHandlerImpl.java:152)
        at com.sun.corba.ee.impl.presentation.rmi.bcel.BCELStubBase.invoke(BCELStubBase.java:225)
        at br.com.trilha21.web.store.ejb.__CustomerRemote_Remote_DynamicStub.forceDelete(br/com/trilha21/web/store/ejb/__CustomerRemote_Remote_DynamicStub.java)
        at br.com.trilha21.web.store.ejb._CustomerRemote_Wrapper.forceDelete(br/com/trilha21/web/store/ejb/_CustomerRemote_Wrapper.java)
        at br.com.trilha21.web.store.IndexPageUITest.testNewCustomer_EnterpriseAccount(IndexPageUITest.java:261)
Caused by: java.rmi.RemoteException: null; nested exception is: 
        javax.transaction.TransactionRolledbackException: CORBA TRANSACTION_ROLLEDBACK 9998 Maybe; nested exception is: 
        org.omg.CORBA.TRANSACTION_ROLLEDBACK: ----------BEGIN server-side stack trace----------
org.omg.CORBA.TRANSACTION_ROLLEDBACK:   vmcid: 0x2000  minor code: 1806 completed: Maybe
        at com.sun.enterprise.iiop.POAProtocolMgr.mapException(POAProtocolMgr.java:231)
        at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1386)
        at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1316)
        at com.sun.ejb.containers.EJBObjectInvocationHandler.invoke(EJBObjectInvocationHandler.java:210)
        at com.sun.ejb.containers.EJBObjectInvocationHandlerDelegate.invoke(EJBObjectInvocationHandlerDelegate.java:117)
        at $Proxy157.forceDeleteCustomer(Unknown Source)
        at com.sun.corba.ee.impl.presentation.rmi.ReflectiveTie._invoke(ReflectiveTie.java:154)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatchToServant(CorbaServerRequestDispatcherImpl.java:687)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatch(CorbaServerRequestDispatcherImpl.java:227)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequestRequest(CorbaMessageMediatorImpl.java:1846)
        at com.sun.corba.ee.impl.protocol.SharedCDRClientRequestDispatcherImpl.marshalingComplete(SharedCDRClientRequestDispatcherImpl.java:183)
        at com.sun.corba.ee.impl.protocol.CorbaClientDelegateImpl.invoke(CorbaClientDelegateImpl.java:219)
        at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.privateInvoke(StubInvocationHandlerImpl.java:192)
        at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.invoke(StubInvocationHandlerImpl.java:152)
        at com.sun.corba.ee.impl.presentation.rmi.bcel.BCELStubBase.invoke(BCELStubBase.java:225)
        at net.marciowb.trilha.ejb.__CustomerRemote_Remote_DynamicStub.forceDeleteCustomer(net/marciowb/trilha/ejb/__CustomerRemote_Remote_DynamicStub.java)
        at net.marciowb.trilha.ejb._CustomerRemote_Wrapper.forceDeleteCustomer(net/marciowb/trilha/ejb/_CustomerRemote_Wrapper.java)
        at br.com.trilha21.web.store.ejb.CustomerBean.forceDelete(CustomerBean.java:217)
        at com.sun.enterprise.security.application.EJBSecurityManager.runMethod(EJBSecurityManager.java:1067)
        at com.sun.enterprise.security.SecurityUtil.invoke(SecurityUtil.java:176)
        at com.sun.ejb.containers.BaseContainer.invokeTargetBeanMethod(BaseContainer.java:2895)
        at com.sun.ejb.containers.BaseContainer.intercept(BaseContainer.java:3986)
        at com.sun.ejb.containers.EJBObjectInvocationHandler.invoke(EJBObjectInvocationHandler.java:203)
        at com.sun.ejb.containers.EJBObjectInvocationHandlerDelegate.invoke(EJBObjectInvocationHandlerDelegate.java:117)
        at $Proxy128.forceDelete(Unknown Source)
        at com.sun.corba.ee.impl.presentation.rmi.ReflectiveTie._invoke(ReflectiveTie.java:154)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatchToServant(CorbaServerRequestDispatcherImpl.java:687)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatch(CorbaServerRequestDispatcherImpl.java:227)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequestRequest(CorbaMessageMediatorImpl.java:1846)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:1706)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleInput(CorbaMessageMediatorImpl.java:1088)
        at com.sun.corba.ee.impl.protocol.giopmsgheaders.RequestMessage_1_2.callback(RequestMessage_1_2.java:223)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:806)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.dispatch(CorbaMessageMediatorImpl.java:563)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.doWork(CorbaMessageMediatorImpl.java:2567)
        at com.sun.corba.ee.impl.orbutil.threadpool.ThreadPoolImpl$WorkerThread.run(ThreadPoolImpl.java:555)
Caused by: javax.ejb.TransactionRolledbackLocalException: Exception thrown from bean; nested exception is: java.lang.IllegalArgumentException: NamedQuery of name: Customer.byIdentification not found.
        at com.sun.ejb.containers.BaseContainer.checkExceptionClientTx(BaseContainer.java:3728)
        at com.sun.ejb.containers.BaseContainer.postInvokeTx(BaseContainer.java:3576)
        at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1354)

----------END server-side stack trace----------  vmcid: 0x2000  minor code: 1806 completed: Maybe
        at com.sun.enterprise.iiop.POAProtocolMgr.mapException(POAProtocolMgr.java:251)
        at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1386)
        at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1316)
        at com.sun.ejb.containers.EJBObjectInvocationHandler.invoke(EJBObjectInvocationHandler.java:210)
        at com.sun.ejb.containers.EJBObjectInvocationHandlerDelegate.invoke(EJBObjectInvocationHandlerDelegate.java:117)
        at $Proxy128.forceDelete(Unknown Source)
        at com.sun.corba.ee.impl.presentation.rmi.ReflectiveTie._invoke(ReflectiveTie.java:154)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatchToServant(CorbaServerRequestDispatcherImpl.java:687)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatch(CorbaServerRequestDispatcherImpl.java:227)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequestRequest(CorbaMessageMediatorImpl.java:1846)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:1706)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleInput(CorbaMessageMediatorImpl.java:1088)
        at com.sun.corba.ee.impl.protocol.giopmsgheaders.RequestMessage_1_2.callback(RequestMessage_1_2.java:223)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:806)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.dispatch(CorbaMessageMediatorImpl.java:563)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.doWork(CorbaMessageMediatorImpl.java:2567)
        at com.sun.corba.ee.impl.orbutil.threadpool.ThreadPoolImpl$WorkerThread.run(ThreadPoolImpl.java:555)
Caused by: javax.transaction.TransactionRolledbackException: CORBA TRANSACTION_ROLLEDBACK 9998 Maybe; nested exception is: 
        org.omg.CORBA.TRANSACTION_ROLLEDBACK: ----------BEGIN server-side stack trace----------
org.omg.CORBA.TRANSACTION_ROLLEDBACK:   vmcid: 0x2000  minor code: 1806 completed: Maybe
        at com.sun.enterprise.iiop.POAProtocolMgr.mapException(POAProtocolMgr.java:231)
        at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1386)
        at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1316)
        at com.sun.ejb.containers.EJBObjectInvocationHandler.invoke(EJBObjectInvocationHandler.java:210)
        at com.sun.ejb.containers.EJBObjectInvocationHandlerDelegate.invoke(EJBObjectInvocationHandlerDelegate.java:117)
        at $Proxy157.forceDeleteCustomer(Unknown Source)
        at com.sun.corba.ee.impl.presentation.rmi.ReflectiveTie._invoke(ReflectiveTie.java:154)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatchToServant(CorbaServerRequestDispatcherImpl.java:687)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatch(CorbaServerRequestDispatcherImpl.java:227)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequestRequest(CorbaMessageMediatorImpl.java:1846)
        at com.sun.corba.ee.impl.protocol.SharedCDRClientRequestDispatcherImpl.marshalingComplete(SharedCDRClientRequestDispatcherImpl.java:183)
        at com.sun.corba.ee.impl.protocol.CorbaClientDelegateImpl.invoke(CorbaClientDelegateImpl.java:219)
        at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.privateInvoke(StubInvocationHandlerImpl.java:192)
        at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.invoke(StubInvocationHandlerImpl.java:152)
        at com.sun.corba.ee.impl.presentation.rmi.bcel.BCELStubBase.invoke(BCELStubBase.java:225)
        at net.marciowb.trilha.ejb.__CustomerRemote_Remote_DynamicStub.forceDeleteCustomer(net/marciowb/trilha/ejb/__CustomerRemote_Remote_DynamicStub.java)
        at net.marciowb.trilha.ejb._CustomerRemote_Wrapper.forceDeleteCustomer(net/marciowb/trilha/ejb/_CustomerRemote_Wrapper.java)
        at br.com.trilha21.web.store.ejb.CustomerBean.forceDelete(CustomerBean.java:217)
        at com.sun.enterprise.security.application.EJBSecurityManager.runMethod(EJBSecurityManager.java:1067)
        at com.sun.enterprise.security.SecurityUtil.invoke(SecurityUtil.java:176)
        at com.sun.ejb.containers.BaseContainer.invokeTargetBeanMethod(BaseContainer.java:2895)
        at com.sun.ejb.containers.BaseContainer.intercept(BaseContainer.java:3986)
        at com.sun.ejb.containers.EJBObjectInvocationHandler.invoke(EJBObjectInvocationHandler.java:203)
        at com.sun.ejb.containers.EJBObjectInvocationHandlerDelegate.invoke(EJBObjectInvocationHandlerDelegate.java:117)
        at $Proxy128.forceDelete(Unknown Source)
        at com.sun.corba.ee.impl.presentation.rmi.ReflectiveTie._invoke(ReflectiveTie.java:154)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatchToServant(CorbaServerRequestDispatcherImpl.java:687)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatch(CorbaServerRequestDispatcherImpl.java:227)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequestRequest(CorbaMessageMediatorImpl.java:1846)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:1706)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleInput(CorbaMessageMediatorImpl.java:1088)
        at com.sun.corba.ee.impl.protocol.giopmsgheaders.RequestMessage_1_2.callback(RequestMessage_1_2.java:223)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:806)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.dispatch(CorbaMessageMediatorImpl.java:563)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.doWork(CorbaMessageMediatorImpl.java:2567)
        at com.sun.corba.ee.impl.orbutil.threadpool.ThreadPoolImpl$WorkerThread.run(ThreadPoolImpl.java:555)
Caused by: javax.ejb.TransactionRolledbackLocalException: Exception thrown from bean; nested exception is: java.lang.IllegalArgumentException: NamedQuery of name: Customer.byIdentification not found.
        at com.sun.ejb.containers.BaseContainer.checkExceptionClientTx(BaseContainer.java:3728)
        at com.sun.ejb.containers.BaseContainer.postInvokeTx(BaseContainer.java:3576)
        at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1354)

----------END server-side stack trace----------  vmcid: 0x2000  minor code: 1806 completed: Maybe
        at com.sun.corba.ee.impl.javax.rmi.CORBA.Util.mapSystemException(Util.java:289)
        at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.privateInvoke(StubInvocationHandlerImpl.java:205)
        at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.invoke(StubInvocationHandlerImpl.java:152)
        at com.sun.corba.ee.impl.presentation.rmi.bcel.BCELStubBase.invoke(BCELStubBase.java:225)
        at net.marciowb.trilha.ejb.__CustomerRemote_Remote_DynamicStub.forceDeleteCustomer(net/marciowb/trilha/ejb/__CustomerRemote_Remote_DynamicStub.java)
        at net.marciowb.trilha.ejb._CustomerRemote_Wrapper.forceDeleteCustomer(net/marciowb/trilha/ejb/_CustomerRemote_Wrapper.java)
        at br.com.trilha21.web.store.ejb.CustomerBean.forceDelete(CustomerBean.java:217)
        at com.sun.enterprise.security.application.EJBSecurityManager.runMethod(EJBSecurityManager.java:1067)
        at com.sun.enterprise.security.SecurityUtil.invoke(SecurityUtil.java:176)
        at com.sun.ejb.containers.BaseContainer.invokeTargetBeanMethod(BaseContainer.java:2895)
        at com.sun.ejb.containers.BaseContainer.intercept(BaseContainer.java:3986)
        at com.sun.ejb.containers.EJBObjectInvocationHandler.invoke(EJBObjectInvocationHandler.java:203)
Caused by: org.omg.CORBA.TRANSACTION_ROLLEDBACK: ----------BEGIN server-side stack trace----------
org.omg.CORBA.TRANSACTION_ROLLEDBACK:   vmcid: 0x2000  minor code: 1806 completed: Maybe
        at com.sun.enterprise.iiop.POAProtocolMgr.mapException(POAProtocolMgr.java:231)
        at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1386)
        at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1316)
        at com.sun.ejb.containers.EJBObjectInvocationHandler.invoke(EJBObjectInvocationHandler.java:210)
        at com.sun.ejb.containers.EJBObjectInvocationHandlerDelegate.invoke(EJBObjectInvocationHandlerDelegate.java:117)
        at $Proxy157.forceDeleteCustomer(Unknown Source)
        at com.sun.corba.ee.impl.presentation.rmi.ReflectiveTie._invoke(ReflectiveTie.java:154)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatchToServant(CorbaServerRequestDispatcherImpl.java:687)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatch(CorbaServerRequestDispatcherImpl.java:227)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequestRequest(CorbaMessageMediatorImpl.java:1846)
        at com.sun.corba.ee.impl.protocol.SharedCDRClientRequestDispatcherImpl.marshalingComplete(SharedCDRClientRequestDispatcherImpl.java:183)
        at com.sun.corba.ee.impl.protocol.CorbaClientDelegateImpl.invoke(CorbaClientDelegateImpl.java:219)
        at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.privateInvoke(StubInvocationHandlerImpl.java:192)
        at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.invoke(StubInvocationHandlerImpl.java:152)
        at com.sun.corba.ee.impl.presentation.rmi.bcel.BCELStubBase.invoke(BCELStubBase.java:225)
        at net.marciowb.trilha.ejb.__CustomerRemote_Remote_DynamicStub.forceDeleteCustomer(net/marciowb/trilha/ejb/__CustomerRemote_Remote_DynamicStub.java)
        at net.marciowb.trilha.ejb._CustomerRemote_Wrapper.forceDeleteCustomer(net/marciowb/trilha/ejb/_CustomerRemote_Wrapper.java)
        at br.com.trilha21.web.store.ejb.CustomerBean.forceDelete(CustomerBean.java:217)
        at com.sun.enterprise.security.application.EJBSecurityManager.runMethod(EJBSecurityManager.java:1067)
        at com.sun.enterprise.security.SecurityUtil.invoke(SecurityUtil.java:176)
        at com.sun.ejb.containers.BaseContainer.invokeTargetBeanMethod(BaseContainer.java:2895)
        at com.sun.ejb.containers.BaseContainer.intercept(BaseContainer.java:3986)
        at com.sun.ejb.containers.EJBObjectInvocationHandler.invoke(EJBObjectInvocationHandler.java:203)
        at com.sun.ejb.containers.EJBObjectInvocationHandlerDelegate.invoke(EJBObjectInvocationHandlerDelegate.java:117)
        at $Proxy128.forceDelete(Unknown Source)
        at com.sun.corba.ee.impl.presentation.rmi.ReflectiveTie._invoke(ReflectiveTie.java:154)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatchToServant(CorbaServerRequestDispatcherImpl.java:687)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatch(CorbaServerRequestDispatcherImpl.java:227)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequestRequest(CorbaMessageMediatorImpl.java:1846)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:1706)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleInput(CorbaMessageMediatorImpl.java:1088)
        at com.sun.corba.ee.impl.protocol.giopmsgheaders.RequestMessage_1_2.callback(RequestMessage_1_2.java:223)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:806)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.dispatch(CorbaMessageMediatorImpl.java:563)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.doWork(CorbaMessageMediatorImpl.java:2567)
        at com.sun.corba.ee.impl.orbutil.threadpool.ThreadPoolImpl$WorkerThread.run(ThreadPoolImpl.java:555)
Caused by: javax.ejb.TransactionRolledbackLocalException: Exception thrown from bean; nested exception is: java.lang.IllegalArgumentException: NamedQuery of name: Customer.byIdentification not found.
        at com.sun.ejb.containers.BaseContainer.checkExceptionClientTx(BaseContainer.java:3728)
        at com.sun.ejb.containers.BaseContainer.postInvokeTx(BaseContainer.java:3576)
        at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1354)

----------END server-side stack trace----------  vmcid: 0x2000  minor code: 1806 completed: Maybe
        at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
        at com.sun.corba.ee.impl.protocol.giopmsgheaders.MessageBase.getSystemException(MessageBase.java:913)
        at com.sun.corba.ee.impl.protocol.giopmsgheaders.ReplyMessage_1_2.getSystemException(ReplyMessage_1_2.java:131)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.getSystemExceptionReply(CorbaMessageMediatorImpl.java:685)
        at com.sun.corba.ee.impl.protocol.CorbaClientRequestDispatcherImpl.processResponse(CorbaClientRequestDispatcherImpl.java:472)
        at com.sun.corba.ee.impl.protocol.SharedCDRClientRequestDispatcherImpl.marshalingComplete(SharedCDRClientRequestDispatcherImpl.java:217)
        at com.sun.corba.ee.impl.protocol.CorbaClientDelegateImpl.invoke(CorbaClientDelegateImpl.java:219)
        at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.privateInvoke(StubInvocationHandlerImpl.java:192)
javax.ejb.EJBException: nested exception is: java.rmi.ServerException: RemoteException occurred in server thread; nested exception is: 
        java.rmi.RemoteException: null; nested exception is: 
        javax.transaction.TransactionRolledbackException: CORBA TRANSACTION_ROLLEDBACK 9998 Maybe; nested exception is: 
        org.omg.CORBA.TRANSACTION_ROLLEDBACK: ----------BEGIN server-side stack trace----------
org.omg.CORBA.TRANSACTION_ROLLEDBACK:   vmcid: 0x2000  minor code: 1806 completed: Maybe
        at com.sun.enterprise.iiop.POAProtocolMgr.mapException(POAProtocolMgr.java:231)
        at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1386)
        at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1316)
        at com.sun.ejb.containers.EJBObjectInvocationHandler.invoke(EJBObjectInvocationHandler.java:210)
        at com.sun.ejb.containers.EJBObjectInvocationHandlerDelegate.invoke(EJBObjectInvocationHandlerDelegate.java:117)
        at $Proxy157.forceDeleteCustomer(Unknown Source)
        at com.sun.corba.ee.impl.presentation.rmi.ReflectiveTie._invoke(ReflectiveTie.java:154)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatchToServant(CorbaServerRequestDispatcherImpl.java:687)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatch(CorbaServerRequestDispatcherImpl.java:227)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequestRequest(CorbaMessageMediatorImpl.java:1846)
        at com.sun.corba.ee.impl.protocol.SharedCDRClientRequestDispatcherImpl.marshalingComplete(SharedCDRClientRequestDispatcherImpl.java:183)
        at com.sun.corba.ee.impl.protocol.CorbaClientDelegateImpl.invoke(CorbaClientDelegateImpl.java:219)
        at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.privateInvoke(StubInvocationHandlerImpl.java:192)
        at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.invoke(StubInvocationHandlerImpl.java:152)
        at com.sun.corba.ee.impl.presentation.rmi.bcel.BCELStubBase.invoke(BCELStubBase.java:225)
        at net.marciowb.trilha.ejb.__CustomerRemote_Remote_DynamicStub.forceDeleteCustomer(net/marciowb/trilha/ejb/__CustomerRemote_Remote_DynamicStub.java)
        at net.marciowb.trilha.ejb._CustomerRemote_Wrapper.forceDeleteCustomer(net/marciowb/trilha/ejb/_CustomerRemote_Wrapper.java)
        at br.com.trilha21.web.store.ejb.CustomerBean.forceDelete(CustomerBean.java:217)
        at com.sun.enterprise.security.application.EJBSecurityManager.runMethod(EJBSecurityManager.java:1067)
        at com.sun.enterprise.security.SecurityUtil.invoke(SecurityUtil.java:176)
        at com.sun.ejb.containers.BaseContainer.invokeTargetBeanMethod(BaseContainer.java:2895)
        at com.sun.ejb.containers.BaseContainer.intercept(BaseContainer.java:3986)
        at com.sun.ejb.containers.EJBObjectInvocationHandler.invoke(EJBObjectInvocationHandler.java:203)
        at com.sun.ejb.containers.EJBObjectInvocationHandlerDelegate.invoke(EJBObjectInvocationHandlerDelegate.java:117)
        at $Proxy128.forceDelete(Unknown Source)
        at com.sun.corba.ee.impl.presentation.rmi.ReflectiveTie._invoke(ReflectiveTie.java:154)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatchToServant(CorbaServerRequestDispatcherImpl.java:687)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatch(CorbaServerRequestDispatcherImpl.java:227)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequestRequest(CorbaMessageMediatorImpl.java:1846)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:1706)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleInput(CorbaMessageMediatorImpl.java:1088)
        at com.sun.corba.ee.impl.protocol.giopmsgheaders.RequestMessage_1_2.callback(RequestMessage_1_2.java:223)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:806)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.dispatch(CorbaMessageMediatorImpl.java:563)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.doWork(CorbaMessageMediatorImpl.java:2567)
        at com.sun.corba.ee.impl.orbutil.threadpool.ThreadPoolImpl$WorkerThread.run(ThreadPoolImpl.java:555)
Caused by: javax.ejb.TransactionRolledbackLocalException: Exception thrown from bean; nested exception is: java.lang.IllegalArgumentException: NamedQuery of name: Customer.byIdentification not found.
        at com.sun.ejb.containers.BaseContainer.checkExceptionClientTx(BaseContainer.java:3728)
        at com.sun.ejb.containers.BaseContainer.postInvokeTx(BaseContainer.java:3576)
        at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1354)

----------END server-side stack trace----------  vmcid: 0x2000  minor code: 1806 completed: Maybe
        at br.com.trilha21.web.store.ejb._CustomerRemote_Wrapper.forceDelete(br/com/trilha21/web/store/ejb/_CustomerRemote_Wrapper.java)
        at br.com.trilha21.web.store.IndexPageUITest.testNewCustomer_EnterpriseAccount(IndexPageUITest.java:261)


Test br.com.trilha21.web.store.IndexPageUITest FAILED
F:\devel\projects\trilha21\e-store\TrilhaStoreEApp\TrilhaStore\nbproject\build-impl.xml:883: Some tests failed; see details above.
BUILD FAILED (total time: 23 seconds)
&lt;/pre&gt;
&lt;p&gt;To workaround it, you can annotate the EJB Session (or its specific method) as a non transaction participant. Do it, as:&lt;/p&gt;
&lt;pre class="code"&gt;&lt;font color="#000000"&gt;&lt;font color="#000000"&gt;   1:&lt;/font&gt;&lt;font color="#66ccff"&gt;&lt;strong&gt;@&lt;/strong&gt;&lt;/font&gt;&lt;font color="#66ccff"&gt;&lt;strong&gt;Stateless&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;   2:&lt;/font&gt;&lt;font color="#66ccff"&gt;&lt;strong&gt;@&lt;/strong&gt;&lt;/font&gt;&lt;font color="#66ccff"&gt;&lt;strong&gt;Remote&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;value&lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt;CustomerRemote.&lt;font color="#0099ff"&gt;&lt;strong&gt;class&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;   3:&lt;/font&gt;&lt;font color="#006699"&gt;&lt;strong&gt;public&lt;/strong&gt;&lt;/font&gt; &lt;font color="#0099ff"&gt;&lt;strong&gt;class&lt;/strong&gt;&lt;/font&gt; CustomerBean &lt;font color="#006699"&gt;&lt;strong&gt;extends&lt;/strong&gt;&lt;/font&gt; AbstractBean&lt;font color="#000000"&gt;&lt;strong&gt;&amp;lt;&lt;/strong&gt;&lt;/font&gt;Customer&lt;font color="#000000"&gt;&lt;strong&gt;&amp;gt;&lt;/strong&gt;&lt;/font&gt; &lt;font color="#006699"&gt;&lt;strong&gt;implements&lt;/strong&gt;&lt;/font&gt; CustomerLocal, CustomerRemote, Serializable &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;   4:&lt;/font&gt;
&lt;font color="#990066"&gt;   5:&lt;/font&gt;.....
&lt;font color="#000000"&gt;   6:&lt;/font&gt;    &lt;font color="#006699"&gt;&lt;strong&gt;public&lt;/strong&gt;&lt;/font&gt; Customer &lt;font color="#9966ff"&gt;saveCustomer&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;Customer customer&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;   7:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;if&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;customer.&lt;font color="#9966ff"&gt;getReseller&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt;&lt;font color="#cc00cc"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;   8:&lt;/font&gt;            customer.&lt;font color="#9966ff"&gt;setReseller&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;resellerBean.&lt;font color="#9966ff"&gt;getDefaultReseller&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;   9:&lt;/font&gt;        &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#990066"&gt;  10:&lt;/font&gt;        customer &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;save&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;customer&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  11:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;return&lt;/strong&gt;&lt;/font&gt; customer;
&lt;font color="#000000"&gt;  12:&lt;/font&gt;    &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  13:&lt;/font&gt;
&lt;font color="#000000"&gt;  14:&lt;/font&gt;    &lt;span style="border:1px dotted blue"&gt;&lt;font color="#66ccff"&gt;&lt;strong&gt;@&lt;/strong&gt;&lt;/font&gt;&lt;font color="#66ccff"&gt;&lt;strong&gt;TransactionAttribute&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;TransactionAttributeType.NOT_SUPPORTED&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;/span&gt;
&lt;font color="#990066"&gt;  15:&lt;/font&gt;    &lt;font color="#006699"&gt;&lt;strong&gt;public&lt;/strong&gt;&lt;/font&gt; &lt;font color="#0099ff"&gt;&lt;strong&gt;boolean&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;forceDeleteCustomer&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;String identification&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  16:&lt;/font&gt;        &lt;font color="#0099ff"&gt;&lt;strong&gt;boolean&lt;/strong&gt;&lt;/font&gt; deleted &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#cc00cc"&gt;false&lt;/font&gt;;
&lt;font color="#000000"&gt;  17:&lt;/font&gt;        identification &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; StrUtil.&lt;font color="#9966ff"&gt;getDigits&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;identification&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  18:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;final&lt;/strong&gt;&lt;/font&gt; Customer customer &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;getCustomer&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;identification&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  19:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;if&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;customer&lt;font color="#000000"&gt;&lt;strong&gt;!&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt;&lt;font color="#cc00cc"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#990066"&gt;  20:&lt;/font&gt;            &lt;font color="#9966ff"&gt;delete&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;customer.&lt;font color="#9966ff"&gt;getId&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  21:&lt;/font&gt;            deleted &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#cc00cc"&gt;true&lt;/font&gt;;
&lt;font color="#000000"&gt;  22:&lt;/font&gt;        &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  23:&lt;/font&gt;        
&lt;font color="#000000"&gt;  24:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;final&lt;/strong&gt;&lt;/font&gt; UserAccount user &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; userAccountBean.&lt;font color="#9966ff"&gt;getUserAccount&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;identification&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#990066"&gt;  25:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;if&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;user&lt;font color="#000000"&gt;&lt;strong&gt;!&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt;&lt;font color="#cc00cc"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  26:&lt;/font&gt;            userAccountBean.&lt;font color="#9966ff"&gt;delete&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;user.&lt;font color="#9966ff"&gt;getId&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  27:&lt;/font&gt;            deleted &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#cc00cc"&gt;true&lt;/font&gt;;
&lt;font color="#000000"&gt;  28:&lt;/font&gt;        &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  29:&lt;/font&gt;
&lt;font color="#990066"&gt;  30:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;return&lt;/strong&gt;&lt;/font&gt; deleted;
&lt;font color="#000000"&gt;  31:&lt;/font&gt;    &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  32:&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  33:&lt;/font&gt;
&lt;/font&gt;&lt;/pre&gt;
&lt;p&gt;Some more complicated cases maybe you would have an EJB Session that calls another EJB Session (or another method from itself), but the first Session Bean uses a SGBD and the second uses another SGBD - both aren't XA - and there are several operations to be done for each SGBD, and so, you will need a transaction. If your requirements can tolerate, you can tell to the container to start another transaction to your second EJB. Annotate (see the blue contour) in the second method or EJB:&lt;/p&gt;
&lt;pre class="code"&gt;&lt;font color="#000000"&gt;&lt;font color="#000000"&gt;   1:&lt;/font&gt;
&lt;font color="#000000"&gt;   2:&lt;/font&gt;    &lt;font color="#006699"&gt;&lt;strong&gt;public&lt;/strong&gt;&lt;/font&gt; Customer &lt;font color="#9966ff"&gt;saveCustomer&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;Customer customer&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;   3:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;if&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;customer.&lt;font color="#9966ff"&gt;getReseller&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt;&lt;font color="#cc00cc"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;   4:&lt;/font&gt;            customer.&lt;font color="#9966ff"&gt;setReseller&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;resellerBean.&lt;font color="#9966ff"&gt;getDefaultReseller&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#990066"&gt;   5:&lt;/font&gt;        &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;   6:&lt;/font&gt;        customer &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;save&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;customer&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;   7:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;return&lt;/strong&gt;&lt;/font&gt; customer;
&lt;font color="#000000"&gt;   8:&lt;/font&gt;    &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;   9:&lt;/font&gt;
&lt;font color="#990066"&gt;  10:&lt;/font&gt;    &lt;span style="border:1px solid blue"&gt;&lt;font color="#66ccff"&gt;&lt;strong&gt;@&lt;/strong&gt;&lt;/font&gt;&lt;font color="#66ccff"&gt;&lt;strong&gt;TransactionAttribute&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;TransactionAttributeType.REQUIRES_NEW&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;/span&gt;
&lt;font color="#000000"&gt;  11:&lt;/font&gt;    &lt;font color="#006699"&gt;&lt;strong&gt;public&lt;/strong&gt;&lt;/font&gt; &lt;font color="#0099ff"&gt;&lt;strong&gt;boolean&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;forceDeleteCustomer&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;String identification&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  12:&lt;/font&gt;        &lt;font color="#0099ff"&gt;&lt;strong&gt;boolean&lt;/strong&gt;&lt;/font&gt; deleted &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#cc00cc"&gt;false&lt;/font&gt;;
&lt;font color="#000000"&gt;  13:&lt;/font&gt;        identification &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; StrUtil.&lt;font color="#9966ff"&gt;getDigits&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;identification&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  14:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;final&lt;/strong&gt;&lt;/font&gt; Customer customer &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;getCustomer&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;identification&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#990066"&gt;  15:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;if&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;customer&lt;font color="#000000"&gt;&lt;strong&gt;!&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt;&lt;font color="#cc00cc"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  16:&lt;/font&gt;            &lt;font color="#9966ff"&gt;delete&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;customer.&lt;font color="#9966ff"&gt;getId&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  17:&lt;/font&gt;            deleted &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#cc00cc"&gt;true&lt;/font&gt;;
&lt;font color="#000000"&gt;  18:&lt;/font&gt;        &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  19:&lt;/font&gt;        
&lt;font color="#990066"&gt;  20:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;final&lt;/strong&gt;&lt;/font&gt; UserAccount user &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; userAccountBean.&lt;font color="#9966ff"&gt;getUserAccount&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;identification&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  21:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;if&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;user&lt;font color="#000000"&gt;&lt;strong&gt;!&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt;&lt;font color="#cc00cc"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  22:&lt;/font&gt;            userAccountBean.&lt;font color="#9966ff"&gt;delete&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;user.&lt;font color="#9966ff"&gt;getId&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
&lt;font color="#000000"&gt;  23:&lt;/font&gt;            deleted &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#cc00cc"&gt;true&lt;/font&gt;;
&lt;font color="#000000"&gt;  24:&lt;/font&gt;        &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#990066"&gt;  25:&lt;/font&gt;
&lt;font color="#000000"&gt;  26:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;return&lt;/strong&gt;&lt;/font&gt; deleted;
&lt;font color="#000000"&gt;  27:&lt;/font&gt;    &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  28:&lt;/font&gt;
&lt;/font&gt;&lt;/pre&gt;
&lt;p&gt;And remember, if you don't need any transaction, don't use it.&lt;/p&gt;
&lt;h3&gt;Read more, at:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://java.sun.com/javaee/5/docs/tutorial/doc/bncij.html"&gt;Container-Managed Transactions&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8914133-2992526417090738520?l=www.marciowb.net%2Fblog'/&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/8914133/2992526417090738520/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=8914133&amp;postID=2992526417090738520' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8914133/posts/default/2992526417090738520'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8914133/posts/default/2992526417090738520'/><link rel='alternate' type='text/html' href='http://www.marciowb.net/blog/2009/02/ejb3-workarrounding-non-xa-databasejdbc' title='EJB3: Workarounding Non XA Database/JDBC Driver'/><author><name>Marcio Wesley Borges</name><uri>http://www.blogger.com/profile/03981592466934695825</uri><email>marciowb@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='14949109749659640406'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8914133.post-1998671766744337023</id><published>2009-02-10T16:57:00.006-02:00</published><updated>2009-02-11T08:34:34.742-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='tips'/><category scheme='http://www.blogger.com/atom/ns#' term='it'/><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><title type='text'>Tip: Troubles/Failures when Installing/Uninstalling Applications</title><content type='html'>Today I need to update my Sun JDK to the latest release on my desktop machine running Windows Vista 64, but when I tried to install the JRE I got the error:&lt;br&gt;
&lt;code&gt;Error 1723. A DLL required for this install to complete could not be run.&lt;/code&gt;
&lt;p&gt;I saw in the Event Log that the error was about a non existent file named &lt;code&gt;regutils.dll&lt;/code&gt;. I tried to delete some entries in the &lt;code&gt;Registry&lt;/code&gt;, but it doesn't help me. I tried to uninstall all my JDK/JRE versions, but no success. I tried to use one or two &lt;a href="http://en.wikipedia.org/wiki/Registry_cleaner"&gt;Registry Cleaners&lt;/a&gt;, but, again, no success.&lt;/p&gt;

&lt;h3&gt;Windows Installer CleanUp&lt;/h3&gt;
&lt;a href="http://support.microsoft.com/kb/290301"&gt;&lt;img style="float:right" src="http://www.marciowb.net/blog/2009/02/imgs/windows_installer_clean_up.png" width="402" height="399" alt="Windows Install Clean Up" title="Windows Installer CleanUp"&gt;&lt;/a&gt;
&lt;p&gt;So, after to read, to try and to fret my head - two hours later - I found a &lt;a href="http://support.microsoft.com/kb/290301" title="Windows Installer CleanUp"&gt;small utility&lt;/a&gt; from Microsoft to erase (cleanup) the Windows Installer database for a specific application package.&lt;/p&gt;
&lt;p&gt;If you have some application that doesn't install never or desinstall and nothing else help you, and you are thinking to reinstall your OS, try the &lt;a href="http://support.microsoft.com/kb/290301" style="font-style:italic;" title="Description of the Windows Installer CleanUp Utility"&gt;Windows Install Clean Up&lt;/a&gt; before do it... It is simple to use and works (for me) fine.&lt;/p&gt;
&lt;p&gt;The utility works to 32 and 64 bit OSes. It can be used to remove the installer data about &lt;span style="font-weight:bold;"&gt;any&lt;/span&gt; application that uses Microsoft Installer machinery, including, non Microsoft applications. Read more at the &lt;a href="http://support.microsoft.com/kb/290301"&gt;Microsoft Knowledge Base article: kb290301 - Description of the Windows Installer CleanUp Utility&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Needing more help, read &lt;a href="http://www.jackiestewart.co.uk/files/windows%20installer%20problems.htm"&gt;How to resolve Common "Windows Installer" Problems and Error Codes&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8914133-1998671766744337023?l=www.marciowb.net%2Fblog'/&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/8914133/1998671766744337023/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=8914133&amp;postID=1998671766744337023' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8914133/posts/default/1998671766744337023'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8914133/posts/default/1998671766744337023'/><link rel='alternate' type='text/html' href='http://www.marciowb.net/blog/2009/02/tip-troublesfailures-when' title='Tip: Troubles/Failures when Installing/Uninstalling Applications'/><author><name>Marcio Wesley Borges</name><uri>http://www.blogger.com/profile/03981592466934695825</uri><email>marciowb@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='14949109749659640406'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8914133.post-5460157257894358036</id><published>2009-01-27T15:14:00.009-02:00</published><updated>2009-02-11T08:31:00.858-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='it'/><title type='text'>Lixo: Kubuntu Intrepid 8.10 e KDE 4</title><content type='html'>Até o presente momento, apesar de diversos problemas, tenho optado por usar KDE por causa de sua interface rica (agradável, amigável e para noobs vindos do Windows como eu) e da biblioteca QT. De todas as distribuições que testei ao longo de quase nove anos, período que trabalho com Linux, a que mais me agradou foi a Ubuntu; razão do que, por gostar do KDE, optei por usar sua variante Kubuntu.
&lt;p&gt;Uso o Kubuntu com meu notebook HP Pavilion zv6000. No início tive muitoooosssss problemas para deixar tudo funcionando, mas após a versão 6 do Ubuntu e a melhora do suporte da ATI ao Linux, as coisas melhoraram bastante. Chegou ao ponto de conseguir deixar tudo funcionando 100% (exceto IR).&lt;/p&gt;
&lt;p&gt;Sempre tive resistência às mudanças de versões, pois, prefiro perder meu tempo com outras coisas que ficar me extressando com os problemas advindos dos upgrades de distribuições. No entanto, um dito conhecedor e colaborador do Linux, com o qual trabalhei no MAPA (Min. Agricultura aqui do Brasil), me conveceu de que era muito seguro os upgrades do Ubuntu e que não teria problemas ao fazê-lo - sempre, enfatizando a estabilidade e conservadorismo do Debian; base do Ubuntu. Desde então (creio que a versão do Kubuntu 6), tenho feito os upgrades regularmente.&lt;/p&gt;
&lt;p&gt;A última versão do Kubuntu que instalei, foi a 8.10, AKA: Intrepid. Nessa versão pude ter a péssima experiência de usar o KDE 4.1.X e 4.2. Que porcaria! Lixo! Desgraça! So aborrecimentos, como:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Short cuts globais com diversos problemas ao ponto de não funcionar na prática... além de redesignação de inumeras shortcuts que já estavam estabelecidas anteriormente. E se tentasse redesigná-las, 99.9% das vezes não funcionava...&lt;/li&gt;
&lt;li&gt;Redesign de todo o desktop ao ponto de eu ficar totalmente perdido e sem saber onde fica e como usa um zilhão de coisas - até me fez lembrar a transição Windows XP para Windows Vista, mas acredite: a transição KDE 3 para KDE 4 é muito pior!&lt;/li&gt;
&lt;li&gt;A consagração do Dolphin (que lástima) como gerenciador de arquivos em detrenimento do (bom) Konqueror&lt;/li&gt;
&lt;li&gt;A constante impressão de que todo mudou, que você não sabe de mais nada, que era melhor nem ter feito o upgrade e que tudo ficou pior do que era e a questão que se repete em mente: Por que fizeram isso?!&lt;/li&gt;
&lt;li&gt;Detonaram com o Adept ao ponto de ficar quase imprestável.&lt;/li&gt;
&lt;/ul&gt;
A única coisa que funcionou bem no Kubuntu Intrepid para minha surpresa foi o KDENetworkManager o WiFi do meu notebook. Funcionou de primeira e como nunca antes aconteceu! Fora isso, um completo lixo, perda de tempo e desempenho!
&lt;p&gt;Sim, meu notebook é velho pra caramba! Com o KDE 4 ficou tudo mais lento e consideravelmente irritante para um desenvolvedor impaciente como eu.&lt;/p&gt;

&lt;h2&gt;Downgrade, não, Reinstalação mesmo&lt;/h2&gt;
&lt;p&gt;Após usar a cada do KDE 4 por uns três meses e tentar me enteder com ele, hoje, finalmente, resolvi reinstalar por completo o bom e nem tão velho Kubuntu Hardy 8.04! Ah, que alívio! Mas como nem tudo eram flores, e realmente fiz uma reinstalação do zero, tive que resolver os antigos problemas. Por sorte, alguns deles, cheguei a registrar aqui no blog, mas outros, eram novos.&lt;/p&gt;

&lt;h3&gt;NDISWrapper e Firmware do Wifi do HP Pavilion zv6000&lt;/h3&gt;
&lt;p&gt;Para quem tem um notebook como o meu ou um chipset WiFi como o &lt;i&gt;Broadcom Corporation BCM4306 802.11b/g Wireless LAN Controller (rev 03) de identificador PCI 14E4:4320&lt;/i&gt; ou compatível, deixo aqui a firmware que consegui fazê-lo funcionar. Faço isso, para mim mesmo já que sou extremamente desorganizado e não é a primeira vez que tenho que sair catando uma porção de drivers e sair testando um-por-um. &lt;a href="http://www.marciowb.net/blog/2009/files/sp32158.tar.gz" title="Driver do Controlador de Rede WiFi da Broadcom Corporation BCM4306 802.11b/g Wireless LAN Controller (rev 03) de identificador PCI 14E4:4320"&gt;Download do driver para Windows XP 64 para uso com Ubuntu de 64 bits (e variantes)&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Por algum motivo o KDENetworkManager não funciona adequadamente no Hardy. Por isso, pode ser que você tenha problemas com os programas que fazem uso do NetworkManager, incluindo o Konquero e Firefox.&lt;/p&gt;
&lt;h3&gt;Firefox&lt;/h3&gt;
&lt;p&gt;Por falar em Firefox, já estou usando o Firefox 64 bits com o respectivo plugin do Flash. A versão do Firefox 3.0.X para 32 bits não está estável no Hardy 64 bits. Mas a versão 64 bits do Firefox está funcionando plenamente, inclusive, com a instalação padrão realizada no repositório do Ubuntu. Recomendo também a instalação do pacote &lt;code&gt;ubufox&lt;/code&gt;. A instalação do plugin Flash já pode ser feita diretamente pelo próprio Firefox, coisa que antes não acontecia na versão 64 bits.&lt;/p&gt;
&lt;p&gt;Dessa vez foi mais simples resolver os problemas de acentuação do C-Cedilha. Isso, tanto do KDE, quanto da GTK. De qualque forma, ainda assim foi útil o post &lt;a href="http://www.marciowb.net/blog/2008/07/c-acentuado-vs-c-cedilha-no-firefox32"&gt;&lt;span style="font-style:italic;"&gt;Ć (C Acentuado) vs. Ç (C Cedilha) no Firefox32 rodando num AMD64 com Kubuntu 64 Bits&lt;/span&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Por causa do NetworkManager eu tive um problema com o Firefox. Ele sempre iniciava em modo &lt;span style="font-style:italic;"&gt;"off-line"&lt;/span&gt;. Por isso, após pesquisar, descobri que esse era um problema específico do Firefox 3.0.5 com o Hardy (ao menos foi o que li/entendi) conforme reportado no &lt;a href="https://bugs.launchpad.net/ubuntu/+source/firefox-3.0/+bug/232243"&gt;Bug #232243 do Ubuntu&lt;/a&gt;. De nada adianta desabilitar o item de menu "Work Offline", pois ao reiniciar o Firefox, novamente este se encontraria em modo &lt;span style="font-style:italic;"&gt;offline&lt;/span&gt;. Como eficiente paliativo (workarround), nas configurações do Firefox (na barra de endereços digite: &lt;code&gt;about:config&lt;/code&gt;), procure por &lt;code&gt;toolkit.networkmanager.disable&lt;/code&gt; e atribua-o o valor &lt;code&gt;true&lt;/code&gt; para desabilitar o gerenciador de rede e acabar com o problema para o Firefox.&lt;/p&gt;
&lt;p&gt;Outra novidade é que já é possível rodar o plugin 64 bits com a JVM da SUN no Firefox 64 bit. Para mais informações, vide: &lt;a href="http://ubuntuforums.org/showthread.php?t=1011899"&gt;64 bit Sun Java Browser Plugin&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Até o presente momento, de forma geral, o Firefox 64 Bit está se comportado muito bem e com todos os recursos; sinal de amadurecimento da plataforma 64 bit que até pouco tempo atrás colecionava inúmeros programas dependentes de execução em modo 32 bit.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8914133-5460157257894358036?l=www.marciowb.net%2Fblog'/&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/8914133/5460157257894358036/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=8914133&amp;postID=5460157257894358036' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8914133/posts/default/5460157257894358036'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8914133/posts/default/5460157257894358036'/><link rel='alternate' type='text/html' href='http://www.marciowb.net/blog/2009/01/lixo-kubuntu-intrepid-810-e-kde-4' title='Lixo: Kubuntu Intrepid 8.10 e KDE 4'/><author><name>Marcio Wesley Borges</name><uri>http://www.blogger.com/profile/03981592466934695825</uri><email>marciowb@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='14949109749659640406'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8914133.post-6898264772809616470</id><published>2008-11-19T23:33:00.009-02:00</published><updated>2008-11-21T23:34:45.170-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tips'/><category scheme='http://www.blogger.com/atom/ns#' term='it'/><title type='text'>E-mails com Pedidos do Mercado Livre + GMail * Greasemonkey = Produtividade</title><content type='html'>&lt;p&gt;Já faz algum tempinho que acumulei centenas de vendas no Mercado Livre. Em tempos de gloria, chegava a fazer mais de uma dezena de vendas ao dia e isso trouxe a problemática de atender aos clientes de forma ágil e adequada. E a verdade, é que o simples processo (sem falar nos outros) de enviar o e-mail com os dados do pedido ao cliente, me aborrecia pelo tempo perdido.&lt;/p&gt;
&lt;p&gt;O Paulinho, um amigo, me disse que o bom programador, era antes de tudo, um grande preguiçoso. Eis-me: A preguiça personificada! Raramente repito duas tarefas da mesma forma, sempre dou um jeitinho de melhorar (nos meus critérios) o processo, seja o que for... Obviamente, as vezes, decaio na inprodutividade, no perfeccionismo imperfeito e na tolice aguda! Mas mesmo assim, invento e reinvento! Até, no ápice do sucesso, faço funcionar!&lt;/p&gt;
&lt;p&gt;A questão é que, contrariando qualquer instinto (por mais forte que fosse), resisti a tentação de fazer um script, ou até mesmo, simplesmente criar uma regra/filtro que me ajudasse na simples tarefa de responder com os dados da compra de meus clientes. Visto que me despersuadia:&lt;br&gt;
- "Não seja tolo, Marcio. Vai perder ainda mais tempo com isso."&lt;br&gt;
Sinceramente, nem me reconheço com essa atitude, mas é verdade: resisti!&lt;/p&gt; 
&lt;p&gt;A questão, é que depois de fazer a mesma coisa por mais de 800 vezes (real!! foi mais que isso mesmo!), você pára (logo agora que tentava escrever direito, me tiram o tal do acento... &lt;0) e, após xingar toda seus antepassados - se excomungar -, diz:&lt;br&gt;
Devia ter automatizado isso antes...&lt;/p&gt;
&lt;img src="http://www.marciowb.net/blog/2008/11/imgs/gmail-email-pedidos-ml.jpg" alt="EMail com Pedido do Mercado Livre" width="660" title="Típico e-mail que o vendedor recebe com os dados do ML"/&gt;
&lt;p&gt;Eis, logo eu que atualmente me vejo trabalhando nuns trocentos projetos ao mesmo tempo e tentando ser dono de meu próprio narzi, mas ao contrário, cada vez mais preso... me vejo tomado por uma completa indignação por fazer a mesma tarefa por quase 1000 vezes e digo a mim mesmo:&lt;br&gt;
- basta! Vou automatizar isto!&lt;/p&gt;
&lt;p&gt;Chega o momento de ver o que seria melhor. Com certeza o melhor é criar um sistema, baseado em uma base de dados, que concentre todas as informações de compra, inclusive passadas e que fosse integrada com a "maravilha" do ML... até fiz vários progressos nesse sentido, mas parei no ponto onde precisava alimentar a base com os dados que retirava de 5 (sim, cinco!) diferentes páginas do ML e mantê-los de uma forma racional e principalmente utilizável!&lt;/p&gt;
&lt;p&gt;Optei, então, por me concentrar somente no simples problema de responder ao cliente com os dados de sua compra, como: onde pagar, o quanto pagar, onde fazer etc. Isso poderia simplesmente ser feito com um filtro no GMail, por exemplo e até soluções mais elaboradas via VBA, por exemplo, com o Outlook. Mas queria uma coisa que NÃO funcionasse totalmente por si só, que ainda precisasse de minha leitura prévia (e rápida). Por isso, já que atualmente ando trabalhando tanto com AJAX e naturalmente Javascript (como se nunca o tivesse feito antes [8 anos atrás já usava DHTML e AJAX, sem nem saber que o nome desse tipo de coisa era isso]) que fosse simples e perfeitamente integrado à minha rotina.&lt;/p&gt;
&lt;p&gt;Após estudar as opções, resolvi botar o meu velho entusiamo no Greasemonkey para render algo e fui atrás de alguma alguma API do GMAIL que funcionasse bem com ele. Nessas horas, é ótimo descobrir que você é um tolo nada original, vi que já haviam criado tal API - algo simples, mas que resolve o mínimo. Daí então, foi só botar a mão em XPath, RegEx, DTHML/DOM e, claro, não poderia faltar, o &lt;a href="http://getfirebug.com/"&gt;Firebug&lt;/a&gt;.&lt;/p&gt;
&lt;img src="http://www.marciowb.net/blog/2008/11/imgs/firebug.jpg" width="660" alt="Firebug" title="Usando Firebug para recuperar a HTML do e-mail em composição." /&gt;
&lt;p&gt;E é esse, meu pequeno legado, e sei que não evitará que ainda assim me chamem de pária ou até mesmo lammer, mas eventualmente, inspirará (nem que seja o desprezo) alguém. Não sei quantos programadores vendem no ML, mas deve ter mais alguém; creio.&lt;/p&gt;
&lt;h1&gt;À Programação&lt;/h1&gt;
&lt;p&gt;O Greasemonkey tem uma variável com um objeto mágico chamado de nome &lt;code&gt;window&lt;/code&gt; que encapsula a &lt;code&gt;window&lt;/code&gt; "real". Se quiser acessar o objeto &lt;code&gt;window&lt;/code&gt; real, na verdade, terá que usar &lt;b&gt;&lt;code&gt;unsafeWindow&lt;/code&gt;&lt;/b&gt;. Isso vale para qualquer variável global, pois ela só estará acessível em &lt;code&gt;unsafeWindow&lt;/code&gt;. Isso é causa de muita dor de cabeça para os iniciantes no Greasemonkey. Por exemplo, a instância do &lt;code&gt;console&lt;/code&gt; do &lt;a href="http://getfirebug.com/"&gt;&lt;/a&gt;Firebug só existe em &lt;code&gt;unsafeWindow&lt;/code&gt;.&lt;/p&gt;
&lt;img src="http://www.marciowb.net/blog/2008/11/imgs/dados-pedido-ml.jpg" alt="EMail já preenchido com os dados do pedido" width="658" title="Em dois cliques o preenchimento é completado"/&gt;
&lt;p&gt;O GMail te disponibiliza o objeto &lt;code&gt;unsafeWindow.gmonkey&lt;/code&gt; e é por meio dele que você interage com o DOM do GMail e particularmente, alguns de seus membros. Antes de avançar no uso de &lt;code&gt;unsafeWindow.gmonkey&lt;/code&gt;, você vai precisar informar ao GMail que deseja (sim o suporte ao Greasemonkey, graças a um funcionário da Google, é da própria Google) carregar o módulo do GMonkey. Para mais informações, leia a:&lt;br&gt;
&lt;a href="http://code.google.com/p/gmail-greasemonkey/wiki/GmailGreasemonkey10API"&gt;API reference for version 1.0 of the experimental Gmail Greasemonkey API&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Após se obter acesso à DOM (DHTML) do GMail, o resto é trivial e atualmente, totalmente dependente da estrutura atual do GMail, ou seja, em futuras modificações do GMail, corre-se o risco do código que funcionava antes parar de funcionar.&lt;/p&gt;
&lt;p&gt;Para flexibilizar e facilitar o acesso à DHTML do GMail, preferi o uso conjunto de XPath e RegEx pelo poder inerente dessas linguagens de consultas.&lt;/p&gt;
&lt;p&gt;O funcionamento é basicamente clicar em "Reply" no e-mail que foi recebido do Mercado Livre (com os dados da compra do cliente) e ir até o Greasemonkey e acionar o comando "Preencher Dados de Compra". Com isso, de forma automática e quase mágica, todos os dados, de todos os campos, serão preenchidos, e, inclui, seguintes recursos:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Preenchimento do Nome/Email do destinatário (o cliente);&lt;/li&gt;
&lt;li&gt;Suporte a uma template de resposta HTML onde todos os campos são preenchidos de forma automática. Os dados são obtidos do email original que foi enviado pelo ML;&lt;/li&gt;
&lt;li&gt;Cálculo automático do total da compra e incluindo o frete (padrão) e quantidade adquirida.&lt;/li&gt;
&lt;/ul&gt;
&lt;pre class="code"&gt;&lt;font color="#000000"&gt;&lt;font color="#000000"&gt;   1:&lt;/font&gt;&lt;font color="#ff8400"&gt;//&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;==UserScript==&lt;/font&gt;
&lt;font color="#000000"&gt;   2:&lt;/font&gt;&lt;font color="#ff8400"&gt;//&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;@name&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;GMail&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;-&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;Pedidos&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;do&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;ML&lt;/font&gt;
&lt;font color="#000000"&gt;   3:&lt;/font&gt;&lt;font color="#ff8400"&gt;//&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;@namespace&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;net.marciowb.gmail.ml.pedidos&lt;/font&gt;
&lt;font color="#000000"&gt;   4:&lt;/font&gt;&lt;font color="#ff8400"&gt;//&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;@description&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;Me&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;ajuda&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;a&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;preencher&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;os&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;pedidos&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;do&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;ML&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;-&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;by&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;Marcio&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;Wesley&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;Borges&amp;lt;marciowb@gmail.com&amp;gt;&lt;/font&gt;
&lt;font color="#990066"&gt;   5:&lt;/font&gt;&lt;font color="#ff8400"&gt;//&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;@include&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;http://mail.google.com/mail/*&lt;/font&gt;
&lt;font color="#000000"&gt;   6:&lt;/font&gt;&lt;font color="#ff8400"&gt;//&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;==/UserScript==&lt;/font&gt;
&lt;font color="#000000"&gt;   7:&lt;/font&gt;
&lt;font color="#000000"&gt;   8:&lt;/font&gt;&lt;font color="#006699"&gt;&lt;strong&gt;const&lt;/strong&gt;&lt;/font&gt; GMONKEYVER &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;1.0&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;   9:&lt;/font&gt;&lt;font color="#006699"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt; gmail &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#cc00cc"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#990066"&gt;  10:&lt;/font&gt;&lt;font color="#006699"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt; console &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#cc00cc"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  11:&lt;/font&gt;
&lt;font color="#000000"&gt;  12:&lt;/font&gt;&lt;font color="#006699"&gt;&lt;strong&gt;function&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;evaluateXPath&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;xPath&lt;font color="#000000"&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/font&gt; aNode&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  13:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;if&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;!&lt;/strong&gt;&lt;/font&gt;aNode&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  14:&lt;/font&gt;                aNode&lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt;document&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#990066"&gt;  15:&lt;/font&gt;        &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  16:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt; res &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; aNode&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;ownerDocument&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;evaluate&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;xPath&lt;font color="#000000"&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/font&gt; aNode&lt;font color="#000000"&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/font&gt; &lt;font color="#cc00cc"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/font&gt; XPathResult&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;ANY_TYPE&lt;font color="#000000"&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/font&gt; &lt;font color="#cc00cc"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  17:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;switch&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;res&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;resultType&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  18:&lt;/font&gt;                &lt;font color="#006699"&gt;&lt;strong&gt;case&lt;/strong&gt;&lt;/font&gt; XPathResult&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;STRING_TYPE&lt;font color="#000000"&gt;&lt;strong&gt;:&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  19:&lt;/font&gt;                        &lt;font color="#006699"&gt;&lt;strong&gt;return&lt;/strong&gt;&lt;/font&gt; res&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;stringValue&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#990066"&gt;  20:&lt;/font&gt;                &lt;font color="#006699"&gt;&lt;strong&gt;case&lt;/strong&gt;&lt;/font&gt; XPathResult&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;NUMBER_TYPE&lt;font color="#000000"&gt;&lt;strong&gt;:&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  21:&lt;/font&gt;                        &lt;font color="#006699"&gt;&lt;strong&gt;return&lt;/strong&gt;&lt;/font&gt; res&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;numberValue&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  22:&lt;/font&gt;                &lt;font color="#006699"&gt;&lt;strong&gt;case&lt;/strong&gt;&lt;/font&gt; XPathResult&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;BOOLEAN_TYPE&lt;font color="#000000"&gt;&lt;strong&gt;:&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  23:&lt;/font&gt;                        &lt;font color="#006699"&gt;&lt;strong&gt;return&lt;/strong&gt;&lt;/font&gt; res&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;booleanValue&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  24:&lt;/font&gt;                &lt;font color="#006699"&gt;&lt;strong&gt;default&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;:&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#990066"&gt;  25:&lt;/font&gt;        &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  26:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt; foundNodes &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#006699"&gt;&lt;strong&gt;new&lt;/strong&gt;&lt;/font&gt; &lt;font color="#0099ff"&gt;&lt;strong&gt;Array&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  27:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt; item &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; res&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;iterateNext&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt; 
&lt;font color="#000000"&gt;  28:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;while&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;item&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  29:&lt;/font&gt;                foundNodes&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;item&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#990066"&gt;  30:&lt;/font&gt;                item &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; res&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;iterateNext&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  31:&lt;/font&gt;        &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  32:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;return&lt;/strong&gt;&lt;/font&gt; foundNodes&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  33:&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  34:&lt;/font&gt;
&lt;font color="#990066"&gt;  35:&lt;/font&gt;&lt;font color="#cc0000"&gt;/*&lt;/font&gt;&lt;font color="#cc0000"&gt;*&lt;/font&gt;
&lt;font color="#000000"&gt;  36:&lt;/font&gt;&lt;font color="#cc0000"&gt;*&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;Obt&amp;eacute;m&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;o&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;elemento&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;BODY&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;do&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;e-mail&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;que&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;est&amp;aacute;&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;sendo&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;composto&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;(criado).&lt;/font&gt;
&lt;font color="#000000"&gt;  37:&lt;/font&gt;&lt;font color="#cc0000"&gt;*/&lt;/font&gt;
&lt;font color="#000000"&gt;  38:&lt;/font&gt;&lt;font color="#006699"&gt;&lt;strong&gt;function&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;getComposingMailBody&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  39:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;if&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;!&lt;/strong&gt;&lt;/font&gt;gmail&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#990066"&gt;  40:&lt;/font&gt;                &lt;font color="#006699"&gt;&lt;strong&gt;return&lt;/strong&gt;&lt;/font&gt; &lt;font color="#cc00cc"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  41:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt; el &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; gmail&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;getActiveViewElement&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;  
&lt;font color="#000000"&gt;  42:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;if&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;!&lt;/strong&gt;&lt;/font&gt;el&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  43:&lt;/font&gt;                &lt;font color="#006699"&gt;&lt;strong&gt;return&lt;/strong&gt;&lt;/font&gt; &lt;font color="#cc00cc"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  44:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt; aa&lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;evaluateXPath&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;//iframe[@id!='remote_iframe_0']&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/font&gt; el&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#990066"&gt;  45:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;if&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;!&lt;/strong&gt;&lt;/font&gt;aa &lt;font color="#000000"&gt;&lt;strong&gt;|&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;|&lt;/strong&gt;&lt;/font&gt; aa&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;length&lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff0000"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  46:&lt;/font&gt;                &lt;font color="#006699"&gt;&lt;strong&gt;return&lt;/strong&gt;&lt;/font&gt; &lt;font color="#cc00cc"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  47:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt; doc &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; aa&lt;font color="#000000"&gt;&lt;strong&gt;[&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff0000"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;]&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;contentDocument&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  48:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;if&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;!&lt;/strong&gt;&lt;/font&gt;doc&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  49:&lt;/font&gt;                &lt;font color="#006699"&gt;&lt;strong&gt;return&lt;/strong&gt;&lt;/font&gt; &lt;font color="#cc00cc"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#990066"&gt;  50:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt; body &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; doc&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;body&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  51:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;return&lt;/strong&gt;&lt;/font&gt; body&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  52:&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  53:&lt;/font&gt;
&lt;font color="#000000"&gt;  54:&lt;/font&gt;&lt;font color="#cc0000"&gt;/*&lt;/font&gt;&lt;font color="#cc0000"&gt;*&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;
&lt;font color="#990066"&gt;  55:&lt;/font&gt;&lt;font color="#cc0000"&gt;*&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;Esta&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;fun&amp;ccedil;&amp;atilde;o&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;&amp;eacute;&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;para&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;ser&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;chamada&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;por&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;dadosCompra().&amp;lt;br&amp;gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  56:&lt;/font&gt;&lt;font color="#cc0000"&gt;*&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;@param&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;_gmail&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;&amp;Eacute;&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;fornecido&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;automaticamente&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;pela&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;fun&amp;ccedil;&amp;atilde;o&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;gmonkey.load&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;que&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;chama&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;esta.&lt;/font&gt;
&lt;font color="#000000"&gt;  57:&lt;/font&gt;&lt;font color="#cc0000"&gt;*/&lt;/font&gt;
&lt;font color="#000000"&gt;  58:&lt;/font&gt;&lt;font color="#006699"&gt;&lt;strong&gt;function&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;_dadosCompra&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;_gmail&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  59:&lt;/font&gt;        console &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; unsafeWindow&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;console&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#990066"&gt;  60:&lt;/font&gt;        gmail &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; _gmail&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  61:&lt;/font&gt;        
&lt;font color="#000000"&gt;  62:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt; bodyElem &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;getComposingMailBody&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  63:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;if&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;bodyElem&lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt;&lt;font color="#cc00cc"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  64:&lt;/font&gt;                window&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;alert&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;Antes,&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;eacute;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;necess&amp;aacute;rio&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;que&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;d&amp;ecirc;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;um&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;reply&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;no&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;e-mail&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;com&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;os&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;dados&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;da&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;compra&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;do&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;Mercado&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;Livre&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#990066"&gt;  65:&lt;/font&gt;                &lt;font color="#006699"&gt;&lt;strong&gt;return&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  66:&lt;/font&gt;        &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  67:&lt;/font&gt;        
&lt;font color="#000000"&gt;  68:&lt;/font&gt;        
&lt;font color="#000000"&gt;  69:&lt;/font&gt;        &lt;font color="#ff8400"&gt;//&lt;/font&gt;&lt;font color="#ff8400"&gt;Tenta&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;obter&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;o&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;&amp;quot;quoted&amp;quot;&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;mail&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;que&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;est&amp;aacute;&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;sendo&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;respondido&lt;/font&gt;
&lt;font color="#990066"&gt;  70:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt; aQuoted&lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;evaluateXPath&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;//div[@class='gmail_quote']&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/font&gt; bodyElem&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  71:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;if&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;!&lt;/strong&gt;&lt;/font&gt;aQuoted &lt;font color="#000000"&gt;&lt;strong&gt;|&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;|&lt;/strong&gt;&lt;/font&gt; aQuoted&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;length&lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff0000"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  72:&lt;/font&gt;                window&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;alert&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;N&amp;atilde;o&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;se&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;deve&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;apagar&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;o&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;quoted&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;mail&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;ainda.&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  73:&lt;/font&gt;                &lt;font color="#006699"&gt;&lt;strong&gt;return&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  74:&lt;/font&gt;        &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#990066"&gt;  75:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt; quotedMailBody &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; aQuoted&lt;font color="#000000"&gt;&lt;strong&gt;[&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff0000"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;]&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;innerHTML&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  76:&lt;/font&gt;                
&lt;font color="#000000"&gt;  77:&lt;/font&gt;        &lt;font color="#ff8400"&gt;//&lt;/font&gt;&lt;font color="#ff8400"&gt;Obt&amp;eacute;m&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;o&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;c&amp;oacute;digo&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;do&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;an&amp;uacute;ncio&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;e&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;nome&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;do&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;produto&lt;/font&gt;
&lt;font color="#000000"&gt;  78:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt; rgx &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#0000ff"&gt;/;id=(\d*)[^&amp;gt;]*&amp;gt;([^&amp;lt;]*)/&lt;/font&gt;
&lt;font color="#000000"&gt;  79:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt; m &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; rgx&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;exec&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;quotedMailBody&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#990066"&gt;  80:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;if&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;!&lt;/strong&gt;&lt;/font&gt;m &lt;font color="#000000"&gt;&lt;strong&gt;|&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;|&lt;/strong&gt;&lt;/font&gt; m&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;length&lt;font color="#000000"&gt;&lt;strong&gt;&amp;lt;&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff0000"&gt;3&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  81:&lt;/font&gt;                window&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;alert&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;Isto&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;s&amp;oacute;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;funciona&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;para&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;os&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;e-mails&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;de&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;compra&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;do&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;Mercado&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;Livre.&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  82:&lt;/font&gt;                &lt;font color="#006699"&gt;&lt;strong&gt;return&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  83:&lt;/font&gt;        &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  84:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt; codAnuncio &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; m&lt;font color="#000000"&gt;&lt;strong&gt;[&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff0000"&gt;1&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;]&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#990066"&gt;  85:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt; nomeAnuncio &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; m&lt;font color="#000000"&gt;&lt;strong&gt;[&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff0000"&gt;2&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;]&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  86:&lt;/font&gt;        
&lt;font color="#000000"&gt;  87:&lt;/font&gt;        &lt;font color="#ff8400"&gt;//&lt;/font&gt;&lt;font color="#ff8400"&gt;Obt&amp;eacute;m&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;o&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;nome&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;do&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;comprador&lt;/font&gt;
&lt;font color="#000000"&gt;  88:&lt;/font&gt;        rgx &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#0000ff"&gt;/Nome:\s*&amp;lt;b\b[^&amp;gt;]*&amp;gt;(.*)&amp;lt;\/&lt;/font&gt;b&lt;font color="#000000"&gt;&lt;strong&gt;&amp;gt;&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;/&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  89:&lt;/font&gt;        m &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; rgx&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;exec&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;quotedMailBody&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#990066"&gt;  90:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt; nomeComprador &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; m&lt;font color="#000000"&gt;&lt;strong&gt;[&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff0000"&gt;1&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;]&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  91:&lt;/font&gt;        
&lt;font color="#000000"&gt;  92:&lt;/font&gt;        &lt;font color="#ff8400"&gt;//&lt;/font&gt;&lt;font color="#ff8400"&gt;Obt&amp;eacute;m&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;o&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;c&amp;oacute;digo,&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;apelido&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;e&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;pontua&amp;ccedil;&amp;atilde;o&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;do&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;comprador&lt;/font&gt;
&lt;font color="#000000"&gt;  93:&lt;/font&gt;        rgx &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;/&lt;/strong&gt;&lt;/font&gt;Apelido&lt;font color="#000000"&gt;&lt;strong&gt;:&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;*&lt;/strong&gt;&lt;/font&gt;id&lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;\d&lt;font color="#000000"&gt;&lt;strong&gt;*&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;.*[^&amp;gt;]&amp;gt;(.*)&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;\((\d*)\)/&lt;/font&gt;
&lt;font color="#000000"&gt;  94:&lt;/font&gt;        m &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; rgx&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;exec&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;quotedMailBody&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#990066"&gt;  95:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt; codComprador &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; m&lt;font color="#000000"&gt;&lt;strong&gt;[&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff0000"&gt;1&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;]&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  96:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt; apelidoComprador &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; m&lt;font color="#000000"&gt;&lt;strong&gt;[&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff0000"&gt;2&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;]&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  97:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt; pontuacaoComprador &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; m&lt;font color="#000000"&gt;&lt;strong&gt;[&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff0000"&gt;3&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;]&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt;  98:&lt;/font&gt;        
&lt;font color="#000000"&gt;  99:&lt;/font&gt;        &lt;font color="#ff8400"&gt;//&lt;/font&gt;&lt;font color="#ff8400"&gt;Obt&amp;eacute;m&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;a&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;quantidade&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;de&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;produtos&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;comprados&lt;/font&gt;
&lt;font color="#990066"&gt; 100:&lt;/font&gt;        rgx &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#0000ff"&gt;/Quantidade:\s*(\d*)/&lt;/font&gt;
&lt;font color="#000000"&gt; 101:&lt;/font&gt;        m &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; rgx&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;exec&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;quotedMailBody&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt; 102:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt; quantidade &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; m&lt;font color="#000000"&gt;&lt;strong&gt;[&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff0000"&gt;1&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;]&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt; 103:&lt;/font&gt;        
&lt;font color="#000000"&gt; 104:&lt;/font&gt;        &lt;font color="#ff8400"&gt;//&lt;/font&gt;&lt;font color="#ff8400"&gt;Obt&amp;eacute;m&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;o&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;pre&amp;ccedil;o&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;pelo&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;qual&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;o&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;cliente&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;comprou&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;o&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;produto&lt;/font&gt;
&lt;font color="#990066"&gt; 105:&lt;/font&gt;        rgx &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#0000ff"&gt;/Pre&amp;ccedil;o:\s*([^&amp;lt;]*)/&lt;/font&gt;
&lt;font color="#000000"&gt; 106:&lt;/font&gt;        m &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; rgx&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;exec&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;quotedMailBody&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt; 107:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt; descPreco &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; m&lt;font color="#000000"&gt;&lt;strong&gt;[&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff0000"&gt;1&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;]&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;R$&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;unit.&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt; 108:&lt;/font&gt;        
&lt;font color="#000000"&gt; 109:&lt;/font&gt;        &lt;font color="#ff8400"&gt;//&lt;/font&gt;&lt;font color="#ff8400"&gt;Obt&amp;eacute;m&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;o&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;e-mail&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;do&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;comprador&lt;/font&gt;
&lt;font color="#990066"&gt; 110:&lt;/font&gt;        rgx &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#0000ff"&gt;/E-mail:[^&amp;gt;]*&amp;gt;([^&amp;lt;]*)/&lt;/font&gt;i
&lt;font color="#000000"&gt; 111:&lt;/font&gt;        m &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; rgx&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;exec&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;quotedMailBody&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt; 112:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt; emailComprador &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; m&lt;font color="#000000"&gt;&lt;strong&gt;[&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff0000"&gt;1&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;]&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt; 113:&lt;/font&gt;        
&lt;font color="#000000"&gt; 114:&lt;/font&gt;        &lt;font color="#ff8400"&gt;//&lt;/font&gt;&lt;font color="#ff8400"&gt;Obt&amp;eacute;m&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;o&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;telefone&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;do&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;comprador&lt;/font&gt;
&lt;font color="#990066"&gt; 115:&lt;/font&gt;        rgx &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#0000ff"&gt;/Telefone:\s*([^&amp;lt;]*)/&lt;/font&gt;
&lt;font color="#000000"&gt; 116:&lt;/font&gt;        m &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; rgx&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;exec&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;quotedMailBody&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt; 117:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt; telefoneComprador &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; m&lt;font color="#000000"&gt;&lt;strong&gt;[&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff0000"&gt;1&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;]&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt; 118:&lt;/font&gt;        
&lt;font color="#000000"&gt; 119:&lt;/font&gt;        &lt;font color="#ff8400"&gt;//&lt;/font&gt;&lt;font color="#ff8400"&gt;Obt&amp;eacute;m&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;a&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;cidade&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;do&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;comprador&lt;/font&gt;
&lt;font color="#990066"&gt; 120:&lt;/font&gt;        rgx &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#0000ff"&gt;/Cidade:\s*([^&amp;lt;]*)/&lt;/font&gt;
&lt;font color="#000000"&gt; 121:&lt;/font&gt;        m &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; rgx&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;exec&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;quotedMailBody&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt; 122:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt; cidadeComprador &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; m&lt;font color="#000000"&gt;&lt;strong&gt;[&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff0000"&gt;1&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;]&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt; 123:&lt;/font&gt;        
&lt;font color="#000000"&gt; 124:&lt;/font&gt;        &lt;font color="#ff8400"&gt;//&lt;/font&gt;&lt;font color="#ff8400"&gt;Obt&amp;eacute;m&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;o&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;estado&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;do&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;comprador&lt;/font&gt;
&lt;font color="#990066"&gt; 125:&lt;/font&gt;        rgx &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#0000ff"&gt;/Estado:\s*([^&amp;lt;]*)/&lt;/font&gt;
&lt;font color="#000000"&gt; 126:&lt;/font&gt;        m &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; rgx&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;exec&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;quotedMailBody&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt; 127:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt; estadoComprador &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; m&lt;font color="#000000"&gt;&lt;strong&gt;[&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff0000"&gt;1&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;]&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt; 128:&lt;/font&gt;        
&lt;font color="#000000"&gt; 129:&lt;/font&gt;        &lt;font color="#ff8400"&gt;//&lt;/font&gt;&lt;font color="#ff8400"&gt;Obt&amp;eacute;m&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;o&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;pa&amp;iacute;s&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;do&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;comprador&lt;/font&gt;
&lt;font color="#990066"&gt; 130:&lt;/font&gt;        rgx &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#0000ff"&gt;/Pa&amp;iacute;s:\s*([^&amp;lt;]*)/&lt;/font&gt;
&lt;font color="#000000"&gt; 131:&lt;/font&gt;        m &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; rgx&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;exec&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;quotedMailBody&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt; 132:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt; paisComprador &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; m&lt;font color="#000000"&gt;&lt;strong&gt;[&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff0000"&gt;1&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;]&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt; 133:&lt;/font&gt;
&lt;font color="#000000"&gt; 134:&lt;/font&gt;        &lt;font color="#ff8400"&gt;//&lt;/font&gt;&lt;font color="#ff8400"&gt;////////////////////////////////////&lt;/font&gt;&lt;font color="#ff8400"&gt;  &lt;/font&gt;
&lt;font color="#990066"&gt; 135:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt; VLR_MIN &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#ff0000"&gt;4&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt; &lt;font color="#ff8400"&gt;//&lt;/font&gt;&lt;font color="#ff8400"&gt;Valor&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;m&amp;iacute;nimo&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;da&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;compra.&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;Isto&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;&amp;eacute;&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;realizado&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;por&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;seguran&amp;ccedil;a&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;nossa&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;e&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;o&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;objetivo&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;&amp;eacute;&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;evitar&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;que&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;um&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;erro&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;qualquer&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;nos&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;cause&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;preju&amp;iacute;zo.&lt;/font&gt;
&lt;font color="#000000"&gt; 136:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt; TIP_FRETE &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;Frete&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;por&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;SEDEX&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt; 137:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt; VLR_FRETE &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;23.00&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt; 138:&lt;/font&gt;        
&lt;font color="#000000"&gt; 139:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt; vlrTotal &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#0099ff"&gt;&lt;strong&gt;Number&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;descPreco&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;*&lt;/strong&gt;&lt;/font&gt; &lt;font color="#0099ff"&gt;&lt;strong&gt;Number&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;quantidade&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;+&lt;/strong&gt;&lt;/font&gt; &lt;font color="#0099ff"&gt;&lt;strong&gt;Number&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;VLR_FRETE&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#990066"&gt; 140:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;if&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;vlrTotal&lt;font color="#000000"&gt;&lt;strong&gt;&amp;lt;&lt;/strong&gt;&lt;/font&gt;VLR_MIN&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt; 141:&lt;/font&gt;                window&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;alert&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;Erro:&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;o&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;valor&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;total&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;da&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;compra&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;est&amp;aacute;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;sendo&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;computado&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;como:&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;+&lt;/strong&gt;&lt;/font&gt; vlrTotal&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt; 142:&lt;/font&gt;                &lt;font color="#006699"&gt;&lt;strong&gt;return&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt; 143:&lt;/font&gt;        &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt; 144:&lt;/font&gt;        
&lt;font color="#990066"&gt; 145:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt; TEMPLATE &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#ff00cc"&gt;'&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;lt;div&amp;gt;Oi,&amp;lt;br&amp;gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;lt;br&amp;gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;amp;nbsp;&amp;amp;nbsp;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;Td&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;blz?&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;span&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;style=&amp;quot;color:&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;rgb(0,&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;102,&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;0);&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;Eacute;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;o&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;seguinte,&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;informa&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;a&amp;iacute;:&amp;lt;br&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;style=&amp;quot;font-family:&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;courier&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;new,monospace;&amp;quot;&amp;gt;&amp;lt;span&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;style=&amp;quot;font-family:&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;courier&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;new,monospace;&amp;quot;&amp;gt;Nome:&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;@NOME_COMPRADOR&amp;lt;/span&amp;gt;&amp;lt;br&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;style=&amp;quot;font-family:&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;courier&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;new,monospace;&amp;quot;&amp;gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;lt;span&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;style=&amp;quot;font-family:&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;courier&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;new,monospace;&amp;quot;&amp;gt;Endere&amp;ccedil;o:&amp;lt;/span&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;br&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;style=&amp;quot;font-family:&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;courier&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;new,monospace;&amp;quot;&amp;gt;&amp;lt;span&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;style=&amp;quot;color:&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;rgb(0,&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;102,&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;0);&amp;quot;&amp;gt;&amp;lt;span&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;style=&amp;quot;font-family:&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;courier&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;new,monospace;&amp;quot;&amp;gt;Bairro:&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;lt;/span&amp;gt;&amp;lt;br&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;style=&amp;quot;font-family:&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;courier&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;new,monospace;&amp;quot;&amp;gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;lt;span&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;style=&amp;quot;font-family:&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;courier&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;new,monospace;&amp;quot;&amp;gt;Cidade/Estado:&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;@CIDADE_COMPRADOR-@ESTADO_COMPRADOR&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;lt;/span&amp;gt;&amp;lt;br&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;style=&amp;quot;font-family:&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;courier&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;new,monospace;&amp;quot;&amp;gt;&amp;lt;span&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;style=&amp;quot;font-family:&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;courier&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;new,monospace;&amp;quot;&amp;gt;CEP:&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;lt;/span&amp;gt;&amp;lt;br&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;style=&amp;quot;font-family:&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;courier&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;new,monospace;&amp;quot;&amp;gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;lt;span&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;style=&amp;quot;font-family:&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;courier&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;new,monospace;&amp;quot;&amp;gt;APELIDO:&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;@APELIDO_COMPRADOR&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;lt;/span&amp;gt;&amp;lt;br&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;style=&amp;quot;font-family:&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;courier&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;new,monospace;&amp;quot;&amp;gt;&amp;lt;span&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;style=&amp;quot;font-family:&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;courier&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;new,monospace;&amp;quot;&amp;gt;CPF:&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;lt;/span&amp;gt;&amp;lt;br&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;style=&amp;quot;font-family:&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;courier&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;new,monospace;&amp;quot;&amp;gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;lt;span&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;style=&amp;quot;font-family:&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;courier&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;new,monospace;&amp;quot;&amp;gt;TEL:&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;@TELEFONE_COMPRADOR&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;lt;/span&amp;gt;&amp;lt;br&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;style=&amp;quot;font-family:&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;courier&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;new,monospace;&amp;quot;&amp;gt;&amp;lt;span&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;style=&amp;quot;font-family:&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;courier&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;new,monospace;&amp;quot;&amp;gt;E-MAIL:&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;@EMAIL_COMPRADOR&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;lt;/span&amp;gt;&amp;lt;br&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;style=&amp;quot;font-family:&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;courier&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;new,monospace;&amp;quot;&amp;gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;lt;span&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;style=&amp;quot;font-family:&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;courier&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;new,monospace;&amp;quot;&amp;gt;FORMA&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;DE&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;PAGAMENTO:&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;E&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;se&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;tu&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;tiv&amp;eacute;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;uma&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;companhia,&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;diz,&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;tamb&amp;eacute;m:&amp;lt;br&amp;gt;&amp;lt;span&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;style=&amp;quot;font-family:&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;courier&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;new,monospace;&amp;quot;&amp;gt;Nome&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;da&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;Empresa:&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;lt;/span&amp;gt;&amp;lt;br&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;style=&amp;quot;font-family:&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;courier&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;new,monospace;&amp;quot;&amp;gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;lt;span&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;style=&amp;quot;font-family:&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;courier&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;new,monospace;&amp;quot;&amp;gt;CNPJ:&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;lt;/span&amp;gt;&amp;lt;br&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;style=&amp;quot;font-family:&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;courier&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;new,monospace;&amp;quot;&amp;gt;&amp;lt;span&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;style=&amp;quot;font-family:&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;courier&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;new,monospace;&amp;quot;&amp;gt;Inscri&amp;ccedil;&amp;atilde;o&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;Estadual:&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&amp;lt;b&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;style=&amp;quot;color:&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;rgb(0,&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;102,&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;0);&amp;quot;&amp;gt;Importante:&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;lt;/b&amp;gt;&amp;lt;span&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;style=&amp;quot;color:&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;rgb(0,&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;102,&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;0);&amp;quot;&amp;gt;&amp;lt;br&amp;gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;Nessa,&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;voc&amp;ecirc;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;t&amp;aacute;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;levando:&amp;lt;pre&amp;gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;lt;br&amp;gt;&amp;lt;table&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;border=&amp;quot;1&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;cellspacing=&amp;quot;0&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;cols=&amp;quot;3&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;style=&amp;quot;font-family:&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;courier&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;new,monospace;font-size:9pt&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;rules=&amp;quot;groups&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;width=&amp;quot;100%&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;frame=&amp;quot;void&amp;quot;&amp;gt;&amp;lt;tbody&amp;gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;lt;tr&amp;gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;lt;td&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;width=&amp;quot;35&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;align=&amp;quot;right&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Qnt.&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;lt;td&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;align=&amp;quot;right&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;width=&amp;quot;94&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Valor&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;lt;td&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;align=&amp;quot;left&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Descri&amp;ccedil;&amp;atilde;o&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;lt;/tr&amp;gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;lt;tr&amp;gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;lt;td&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;width=&amp;quot;35&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;align=&amp;quot;right&amp;quot;&amp;gt;@QNT_PRODUTO&amp;lt;/td&amp;gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;lt;td&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;align=&amp;quot;right&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;gt;@VALOR_PRODUTO&amp;lt;/td&amp;gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;lt;td&amp;gt;@NOME_PRODUTO&amp;lt;/td&amp;gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;lt;/tr&amp;gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;lt;tr&amp;gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;lt;td&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;width=&amp;quot;35&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;align=&amp;quot;right&amp;quot;&amp;gt;@QNT_FRETE&amp;lt;/td&amp;gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;lt;td&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;align=&amp;quot;right&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;gt;@VALOR_FRETE&amp;lt;/td&amp;gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;lt;td&amp;gt;@TIPO_FRETE&amp;lt;/td&amp;gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;lt;/tr&amp;gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;lt;tr&amp;gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;lt;td&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;bgcolor=&amp;quot;#e6e6e6&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;align=&amp;quot;right&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;height=&amp;quot;16&amp;quot;&amp;gt;&amp;lt;b&amp;gt;@QNT_TOTAL&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;lt;td&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;bgcolor=&amp;quot;#e6e6e6&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;align=&amp;quot;right&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;gt;&amp;lt;b&amp;gt;@VALOR_TOTAL&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;lt;td&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;bgcolor=&amp;quot;#e6e6e6&amp;quot;&amp;gt;&amp;lt;font&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;size=&amp;quot;2&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Total&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/td&amp;gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;lt;/tr&amp;gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;lt;/tbody&amp;gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;lt;/table&amp;gt;&amp;lt;font&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;face=&amp;quot;monospace&amp;quot;&amp;gt;&amp;lt;br&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/pre&amp;gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;amp;nbsp;&amp;amp;nbsp;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;Eacute;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;isso,&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;a&amp;iacute;.&amp;lt;br&amp;gt;Valeu&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;brother,&amp;lt;br&amp;gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;Ful.&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;de&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;Talz&lt;/font&gt;&lt;font color="#ff00cc"&gt;'&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt; 146:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt; emailBody &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; TEMPLATE
&lt;font color="#000000"&gt; 147:&lt;/font&gt;                &lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;@NOME_PRODUTO&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;nomeAnuncio&lt;font color="#000000"&gt;&lt;strong&gt;+&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;#&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;+&lt;/strong&gt;&lt;/font&gt;codAnuncio&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt; 148:&lt;/font&gt;                &lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;@VALOR_PRODUTO&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/font&gt; descPreco&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt; 149:&lt;/font&gt;                &lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;@QNT_PRODUTO&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/font&gt; quantidade&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#990066"&gt; 150:&lt;/font&gt;                &lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;@QNT_FRETE&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/font&gt; &lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;1&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt; 151:&lt;/font&gt;                &lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;@VALOR_FRETE&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/font&gt; VLR_FRETE&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt; 152:&lt;/font&gt;                &lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;@TIPO_FRETE&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/font&gt; TIP_FRETE&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt; 153:&lt;/font&gt;                &lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;@QNT_TOTAL&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#0099ff"&gt;&lt;strong&gt;Number&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;quantidade&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;+&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff0000"&gt;1&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt; 154:&lt;/font&gt;                &lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;@VALOR_TOTAL&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/font&gt; vlrTotal&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#990066"&gt; 155:&lt;/font&gt;                &lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;@EMAIL_COMPRADOR&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/font&gt; emailComprador&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt; 156:&lt;/font&gt;                &lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;@TELEFONE_COMPRADOR&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/font&gt; telefoneComprador&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt; 157:&lt;/font&gt;                &lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;@APELIDO_COMPRADOR&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/font&gt; apelidoComprador&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt; 158:&lt;/font&gt;                &lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;@CIDADE_COMPRADOR&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/font&gt; cidadeComprador&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt; 159:&lt;/font&gt;                &lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;@ESTADO_COMPRADOR&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/font&gt; estadoComprador&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#990066"&gt; 160:&lt;/font&gt;                &lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;@NOME_COMPRADOR&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/font&gt; nomeComprador&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt; 161:&lt;/font&gt;                
&lt;font color="#000000"&gt; 162:&lt;/font&gt;        bodyElem&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;innerHTML &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; emailBody&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt; 163:&lt;/font&gt;        
&lt;font color="#000000"&gt; 164:&lt;/font&gt;        &lt;font color="#ff8400"&gt;//&lt;/font&gt;&lt;font color="#ff8400"&gt;Tenta&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;obter&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;o&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;campo&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;de&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;listagens&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;dos&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;e-mails&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;dos&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;destinat&amp;aacute;rios&lt;/font&gt;
&lt;font color="#990066"&gt; 165:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt; el &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; gmail&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;getActiveViewElement&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt; 166:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt; aTos&lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;evaluateXPath&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;'&lt;/font&gt;&lt;font color="#ff00cc"&gt;//textarea[@name=&amp;quot;to&amp;quot;]&lt;/font&gt;&lt;font color="#ff00cc"&gt;'&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/font&gt; el&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt; 167:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;if&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;!&lt;/strong&gt;&lt;/font&gt;aTos &lt;font color="#000000"&gt;&lt;strong&gt;|&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;|&lt;/strong&gt;&lt;/font&gt; aTos&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;length&lt;font color="#000000"&gt;&lt;strong&gt;&amp;lt;&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff0000"&gt;1&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt; 168:&lt;/font&gt;                window&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;alert&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;Erro:&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;n&amp;atilde;o&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;foi&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;poss&amp;iacute;vel&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;determinar&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;onde&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;est&amp;aacute;&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;o&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;campo&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;relativo&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;aos&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;emails&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;do&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;destinat&amp;aacute;rio.&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;Isso&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;pode&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;ocorrer&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;no&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;caso&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;do&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;GMail&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;mudar&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;sua&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;estrutura&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;DHTML.&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt; 169:&lt;/font&gt;                &lt;font color="#006699"&gt;&lt;strong&gt;return&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#990066"&gt; 170:&lt;/font&gt;        &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt; 171:&lt;/font&gt;        &lt;font color="#006699"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/font&gt; to &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; aTos&lt;font color="#000000"&gt;&lt;strong&gt;[&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff0000"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;]&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt; 172:&lt;/font&gt;        to&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;value &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; nomeComprador &lt;font color="#000000"&gt;&lt;strong&gt;+&lt;/strong&gt;&lt;/font&gt; &lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;+&lt;/strong&gt;&lt;/font&gt; emailComprador &lt;font color="#000000"&gt;&lt;strong&gt;+&lt;/strong&gt;&lt;/font&gt; &lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt; 173:&lt;/font&gt;        
&lt;font color="#000000"&gt; 174:&lt;/font&gt;        console&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;log&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;Viva&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;Java!&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;Viva&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;a&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;Liberdade!&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;Reviva&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;a&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;SUN!&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#990066"&gt; 175:&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt; 176:&lt;/font&gt;
&lt;font color="#000000"&gt; 177:&lt;/font&gt;&lt;font color="#006699"&gt;&lt;strong&gt;function&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;dadosCompra&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt; 178:&lt;/font&gt;        unsafeWindow&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;gmonkey&lt;font color="#000000"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;load&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;GMONKEYVER&lt;font color="#000000"&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/font&gt; _dadosCompra&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#000000"&gt; 179:&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#990066"&gt; 180:&lt;/font&gt;
&lt;font color="#000000"&gt; 181:&lt;/font&gt;&lt;font color="#9966ff"&gt;GM_registerMenuCommand&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;'&lt;/font&gt;&lt;font color="#ff00cc"&gt;Preencher&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;Dados&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;de&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;Compra&lt;/font&gt;&lt;font color="#ff00cc"&gt;'&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/font&gt; dadosCompra&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/font&gt; 
&lt;font color="#000000"&gt; 182:&lt;/font&gt;
&lt;/font&gt;&lt;/pre&gt;
&lt;p&gt;Caso alguém queira o script acima para o Greasemonkey, pode pegá-lo aqui:&lt;br&gt;
&lt;a href="http://www.marciowb.net/blog/2008/11/files/gmail_-_pedidos_do_ml.user.js" title="Preenchimento automático de e-mail com os dados da compra do cliente"&gt;Preenchimento automático de e-mail com os dados da compra do cliente do Mercado Livre.&lt;/a&gt;&lt;/p&gt;
&lt;h3&gt;Referências&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://diveintogreasemonkey.org/toc/"&gt;Dive Into Greasemonkey&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://googlesystem.blogspot.com/2007/11/gmail-api-for-greasemonkey.html"&gt;Gmail API for Greasemonkey&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://code.google.com/p/gmail-greasemonkey/wiki/GmailGreasemonkey10API"&gt;gmail-greasemonkey: Gmail Greasemonkey Scripts&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://developer.mozilla.org/En/DOM/Document.evaluate"&gt;Gecko DOM Reference: document.evaluate&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://wiki.tcl.tk/989"&gt;Regular Expression Examples: Negated string: Donal Fellows&lt;/a&gt; (Special Thanks! I was breaking my head.. before to find your snippet regex)&lt;/li&gt;
&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8914133-6898264772809616470?l=www.marciowb.net%2Fblog'/&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/8914133/6898264772809616470/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=8914133&amp;postID=6898264772809616470' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8914133/posts/default/6898264772809616470'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8914133/posts/default/6898264772809616470'/><link rel='alternate' type='text/html' href='http://www.marciowb.net/blog/2008/11/e-mails-com-pedidos-do-mercado-livre' title='E-mails com Pedidos do Mercado Livre + GMail * Greasemonkey = Produtividade'/><author><name>Marcio Wesley Borges</name><uri>http://www.blogger.com/profile/03981592466934695825</uri><email>marciowb@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='14949109749659640406'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8914133.post-8122376607814088430</id><published>2008-11-13T20:29:00.003-02:00</published><updated>2009-03-24T20:31:32.318-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='music'/><title type='text'>Gotan Project - La Viguela</title><content type='html'>&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/HtmygppNjyQ&amp;hl=en&amp;fs=1"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/HtmygppNjyQ&amp;hl=en&amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;
&lt;pre&gt;
aquí me pongo a cantar
al compás de la vigüela
que al hombre que lo desvela
una pena extraordinaria
como el ave solitaria
con el cantar se consuela

vengan santos milagrosos
vengan todos en mi ayuda
que la lengua se me añuda
y se me turba la vista
pido a mi dios que me asista
y en esta ocasión me ayuda

aquí me pongo a cantar
al compás de la vigüela
que al hombre que lo desvela
una pena extraordinaria
como el ave solitaria
con el cantar se consuela
&lt;/pre&gt;

Gracias Daniel por la letra!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8914133-8122376607814088430?l=www.marciowb.net%2Fblog'/&gt;&lt;/div&gt;</content><link rel='related' href='http://www.youtube.com/watch?v=AtK-r0QE4w8' title='Gotan Project - La Viguela'/><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/8914133/8122376607814088430/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=8914133&amp;postID=8122376607814088430' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8914133/posts/default/8122376607814088430'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8914133/posts/default/8122376607814088430'/><link rel='alternate' type='text/html' href='http://www.marciowb.net/blog/2008/11/gotan-project-la-viguela' title='Gotan Project - La Viguela'/><author><name>Marcio Wesley Borges</name><uri>http://www.blogger.com/profile/03981592466934695825</uri><email>marciowb@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='14949109749659640406'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8914133.post-6975924299254492662</id><published>2008-10-03T08:14:00.013-03:00</published><updated>2008-10-04T14:16:16.212-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tips'/><category scheme='http://www.blogger.com/atom/ns#' term='it'/><title type='text'>NoSerialMouse: Ao Plugar Dispositivo Serial, Windows fica "maluco" e reconhece como Mouse</title><content type='html'>&lt;p&gt;Algumas vezes quando se pluga algum dispositivo serial - e isso vale para dispositivos seriais que funcionam via USB, ou seja, aqueles que criam uma porta COM virtual no computador -, o Windows aparentemente fica maluco, um monte de coisas começam a acontecer na tela e se tem a impressão de que alguém ou alguma coisa tomou o controle do computador. Isso pode acontecer com qualquer dispositivo serial, apesar de frequentemente acontecer mais com certos tipos, como: qualquer GPS NMEA 0183, seja plugado na USB ou na porta serial.&lt;/p&gt;

&lt;p&gt;O problema acontece porque ao se plugar o dispositivo, o Windows verifica que ele é serial e durante um pequeno período de tempo ele amostrará os dados que estão sendo transmitidos pelo dispositivo, por coincidência, no momento da amostragem o Windows poderá detectar alguma sequência de dados que caracterize um Mouse, nesse caso, graças a magia do plug-and-play, ele irá automaticamente adicionar um Mouse de acordo com o dispositivo que ele (o Windows) pensa se tratar à lista de dispositivos do computador. Após isso, ocorre o comportamente aparentemente aleatório e inesperado na tela.&lt;/p&gt;

&lt;p&gt;Para resolver esse problema, é bastante simples: basta desativar o Mouse que foi criado no Gerenciador de Dispositivos. No caso do meu GPS, o WIndows o reconheceu como sendo o "Microsoft Serial Ballpoint" - então, foi só desativá-lo para resolver o problema.&lt;/p&gt;

No vídeo abaixo, mostro como reconhecer esse falso Mouse e como desabilitá-lo:
&lt;object width="425" height="350"&gt; &lt;param name="movie" value="http://www.youtube.com/v/BemuMFAjEGQ"&gt; &lt;/param&gt; &lt;embed src="http://www.youtube.com/v/BemuMFAjEGQ" type="application/x-shockwave-flash" width="425" height="350"&gt; &lt;/embed&gt; &lt;/object&gt;

&lt;p&gt;Apesar do procedimento acima ser simples, nem sempre é fácil executá-lo pois o ponteiro do mouse fica pulando na tela e clicando em tudo que é lugar, então, até que se possa executar todos os passos e desativar o "falso mouse", muito trabalho será necessário. Pensando nisso, resolvi pesquisar melhores soluções para o problema, já que muita gente passa e passará por isso. Veja o que encontrei:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://support.microsoft.com/default.aspx?scid=kb;en-us;q283063"&gt;Serial Device May Be Detected as a Serial Mouse in Windows 2000&lt;/a&gt; - A Microsoft reconhece o problema e apesar do artigo ao lado mencionar o Windows 2000, na verdade ocorre em todas as versões do Windows, inclusive o Vista.&lt;br&gt;
No &lt;a href="http://support.microsoft.com/default.aspx?scid=kb;en-us;q283063"&gt;artigo 283063&lt;/a&gt; há informação detalhada de como resolver o problema.&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.pcmaritime.co.uk/leisure/support/jumpingmouse.html"&gt;"Jumping Mouse" bug in Windows 2000/XP&lt;/a&gt; - Informam uma solução alternativa, mas só vale para versões do Windows anteriores ao Vista.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;&lt;a title="Download Gratuito do NoSerialMouse" href="http://www.marciowb.net/soft/pro/3/f/NoSerialMouse.exe"&gt;NoSerialMouse&lt;/a&gt;&lt;/h2&gt;
&lt;a title="Download Gratuito do NoSerialMouse" href="http://www.marciowb.net/soft/pro/3/f/NoSerialMouse.exe"&gt;&lt;img alt="NoSerialMouse" style="float:right" src="http://www.marciowb.net/soft/pro/3/i/NoSerialMouse.jpg" width=251 height=305&gt;&lt;/a&gt;
&lt;p&gt;Pensando no bem coletivo e aproveitando um pequeno programinha que fiz anteriormente, acabei por automatizar a solução descrita pelo &lt;a href="http://support.microsoft.com/default.aspx?scid=kb;en-us;q283063"&gt;artigo 283063&lt;/a&gt; da Microsoft. A idéia foi criar algo bem simples, mas que fosse eficaz. Você deixa ele rodando antes de plugar o dispositivo e quando o dispositivo é plugado, ele automaticamente desativa o mecanismo que faria o Windows reconhecê-lo como um Mouse. O programa funciona particularmente bem com dispositivos USB e foi testado no Windows XP, Vista 64 e 2000. O NoSerialMouse pode listar todas as portas COM do computador ou somente as COM que estejam efetivamente disponíveis.&lt;/p&gt;

&lt;p&gt;O &lt;a title="Download Gratuito do NoSerialMouse" href="http://www.marciowb.net/soft/pro/3/f/NoSerialMouse.exe"&gt;NoSerialMouse&lt;/a&gt; é gratuito. No entanto, pode ser que alguém se interesse pelos fontes, já que o mecanismo de reconhecimento das portas seriais é particularmente sofisticado e reconhece com excelente precisão os mais diversos tipos de portas seriais - onde, inclusive, outros mecanismos de enumeração do hardware, falham (isso vale para Win2k, XP, Vista32/64). Os fontes do programa estão em Delphi 6 (com código e comentários em inglês) e posso, eventualmente, responder alguma questão por e-mail. Para adquirir os fontes, acesse:&lt;/p&gt;

Referências:
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://support.microsoft.com/default.aspx?scid=kb;en-us;q283063"&gt;Serial Device May Be Detected as a Serial Mouse in Windows 2000&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.pcmaritime.co.uk/leisure/support/jumpingmouse.html"&gt;"Jumping Mouse" bug in Windows 2000/XP&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://vlaurie.com/computers2/Articles/bootini.htm"&gt;How to Use and Edit Boot.ini in Windows XP&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8914133-6975924299254492662?l=www.marciowb.net%2Fblog'/&gt;&lt;/div&gt;</content><link rel='related' href='http://www.youtube.com/watch?v=BemuMFAjEGQ' title='NoSerialMouse: Ao Plugar Dispositivo Serial, Windows fica &quot;maluco&quot; e reconhece como Mouse'/><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/8914133/6975924299254492662/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=8914133&amp;postID=6975924299254492662' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8914133/posts/default/6975924299254492662'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8914133/posts/default/6975924299254492662'/><link rel='alternate' type='text/html' href='http://www.marciowb.net/blog/2008/10/rapidinha-dispositivo-serial-windows' title='NoSerialMouse: Ao Plugar Dispositivo Serial, Windows fica &quot;maluco&quot; e reconhece como Mouse'/><author><name>Marcio Wesley Borges</name><uri>http://www.blogger.com/profile/03981592466934695825</uri><email>marciowb@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='14949109749659640406'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8914133.post-1092370230096717421</id><published>2008-09-22T12:23:00.011-03:00</published><updated>2008-11-21T23:35:06.934-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='politics'/><title type='text'>Sobre: "PF não consegue decifrar criptografia dos arquivos de Daniel Dantas" da Folha Online</title><content type='html'>Saiu na Folha Online:&lt;br&gt;
&lt;i&gt;
22/09/2008 - 04h56&lt;br&gt;
PF não consegue decifrar criptografia dos arquivos de Daniel Dantas&lt;br&gt;
da Folha Online&lt;br&gt;
&lt;p&gt;Hoje na Folha Dois meses e meio depois de apreender cinco discos rígidos no apartamento do banqueiro Daniel Dantas, durante a Operação Satiagraha, a Polícia Federal ainda não conseguiu decifrar a criptografia que protege os dados, informa nesta segunda-feira reportagem de Rubens Valente e Mario Cesar Carvalho, publicada pela Folha ...&lt;/p&gt;
&lt;p&gt;Segundo a reportagem, até a última sexta-feira a polícia não havia conseguido desvendar as senhas.&lt;/p&gt;
&lt;p&gt;Numa análise inicial, peritos da Polícia Federal disseram que precisariam de um ano para quebrar os códigos. Um dos peritos disse que nunca havia visto um sistema de proteção tão sofisticado no Brasil. O delegado Protógenes Queiroz, que coordenou a Satiagraha, diz que os HDs "guardam segredos da República".&lt;/p&gt;
&lt;p&gt;Os cinco discos rígidos são unidades externas de memória, e estavam guardados dentro de um armário no apartamento do banqueiro em Ipanema, na zona sul do Rio.&lt;/p&gt;
&lt;p&gt;O impasse levou os investigadores da PF a estudar uma alternativa jurídica para o rompimento do sigilo. Em conjunto com o juiz federal Fausto De Sanctis, informado há mais de um mês sobre os problemas nos HDs, os policiais discutem a possibilidade de obrigar, por ordem judicial, a empresa norte-americana que criou o software a fornecer as chaves eletrônicas que abrem os arquivos. É também aguardada a chegada de um grupo de peritos da PF de Brasília.&lt;/p&gt;
&lt;/i&gt;

&lt;h1&gt;Minha opinião&lt;/h1&gt;
&lt;p&gt;A ridícula atitude da PF demonstra que esta está cercada de brutamontes sem cérebros, ou de nem tão brutamontes assim, mas de barriga grande. Provavelmente, a última vez que esses caras estudaram, foi quando sentaram a bunda para passarem nesses concursos de peritos da PF. Hoje com um salário gordo, se ocupam em engordar a pança e ostentar o status de perito da PF.&lt;/p&gt;
&lt;p&gt;Para quem entende o mínimo de criptografia - coisa que parece não ser o caso dos incompetentes peritos da PF - sabe que os melhores algoritmos criptográficos, são aqueles que todos tem conhecimento, mas que é impossível revertê-los sem a(s) chave(s) apropriada(s)... Ou seja, mesmo que a empresa revelasse a criptografia utilizada, precisariam que o próprio Dantas informasse a chave criptográfica... Coisa que a não ser que ele queira, é impossível pela lei brasileira, já que não se pode obrigá-lo a revelar. Basta lembrar que de acordo com a Carta, ninguém é obrigado a produzir prova contra si mesmo. Dito isso, é lamentável ver publicado na imprensa uma notícia como essa, pois mostra alguns atributos de uma polícia mal preparada, como: ignorância, incompetência técnica, incompetência administrativa, incompetência da assessoria de imprensa, ingenuidade e por último, até desespero.&lt;/p&gt;
&lt;p&gt;Quero saber como a PF pretende obrigar uma empresa especializada em segurança eletrônica, que provavelmente vive disso, e que está fora da jurisdição brasileira, a revelar seu ganha pão. Vão ligar para os caras lá nos EUA e pedir:&lt;br&gt;
- Por favor, quebrem essa criptografia que desenvolveram, pois nós da PF do Brasil, não conseguimos...&lt;/p&gt;
&lt;p&gt;Para quem não sabe, os EUA até - sob pena de prisão - impedem a exportação de qualquer mecanismo criptográfico que seja considerado forte. Quanto mais a revelação ou quebra do algoritmo em si. Daí, deduz-se: ou o algoritmo não é forte o bastante, e por isso foi exportado, ou não saiu dos EUA. Se for o caso do algoritmo não ser tão forte ao ponto de que sua saída dos EUA tenha sido permitida, significaria que um departamento de inteligência competente, deveria ser capaz de quebrá-la. Já pensaram em pedir ajudar para algum &lt;i&gt;hacker&lt;/i&gt;, um autêntico code-breaker? Senão, quem sabe, um competente cripto-analista. Acho que teriam mais sucesso que simplesmente tentar a força bruta...&lt;/p&gt;
&lt;p&gt;A total falta de respeito à instituição privada no Brasil, à propriedade intelectual e aos diretos básicos de uma democrácia, em um sistema capitalista, é vergonhosa! Imaginem que uma grande empresa no Brasil tivesse desenvolvido um novo sistema criptográfico, algo inovador, eficaz e que isso fosse sua única e principal fonte de negócio; digamos que ela ganhasse um bom dinheiro com isso, vendendo principalmente para grandes empresas que desejam preservar sua informação - coisa até incentivada pela ABIN. Como ficaria a situação dessa empresa, seus sócios, empregados e todos os seus clientes? Pois neste momento a PF alega intensionar obrigar uma empresa de outro país a quebrar o código criptográfico - seu negócio, fruto de investimento de capital financeiro e intelectual e fonte de renda - em favor de obterem acesso aos dados que desejam no computador de um empresário? Quem estará a salvo da PF em nosso país se nem mesmo as fontes mais altas dos poderes executivos, legislativos e judiciário, estão? Se a empresa fosse brasileira, todos os seus clientes, seus sócios e empregados, estariam agora esmurrando em paredes, já que pela bestialidade característica da conjunção judiciário/polícia, provavelmente obrigariam a empresa a quebrar a criptografia que desenvolveram e a revelar, automaticamente, os segredos de inúmeros terceiros, por que a PF é incompetente o suficiente para não conseguir fazer isso por conta própria. E, pior, se não fosse possível quebrar a criptografia (o próprio engenho criptográfico de um bom algoritmo, em geral, não permite), de nada adiantaria chegar ao excelentíssimo juiz e tentar explicar, pois esse último, rapidamente expediria a ordem de prisão contra os responsáveis pela empresa, sob alegação de descumprimento de mandado judicial.&lt;/p&gt;
&lt;p&gt;Depois dessa e de muitas outras manifestações de desrespeito com a propriedade intelectual privada e às regras de um sistema capitalista saudável, que empresa séria irá investir em segurança da informação neste país? Ou a empresa se dobra ao governo e trabalha a margem da legalidade, ou não trabalha. O que será que andam fazendo lá na Módulo neste momento? Isso me faz perguntar como chegaram até aqui... Pensem, bem: se vocês estão trabalhando corretamente, um dia pode ser a hora de vocês. Coisa arriscada, essa de se trabalhar honestamente neste país.&lt;/p&gt;
&lt;p&gt;Não sou a favor da impunidade, não. Sou, sim, a favor do cumprimento da lei, da moral e da justiça. Se a lei e a moral estiverem caducas, então que as corrigimos - eu mesmo tenho algumas propostas a fazer. O que não pode é a polícia burra, num senso muito estúpido de cumprimento do dever, passar por cima de tudo e de todos, com o objetivo final de se fazer justiça, mas infringindo a lei em seus meios. Ou será que pensam serem "vingadores"? Estará a PF se rebeliando contra o estado de direito democrático brasileiro? Ou são mero produto da idiotia coletiva desta nação?&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8914133-1092370230096717421?l=www.marciowb.net%2Fblog'/&gt;&lt;/div&gt;</content><link rel='related' href='http://www1.folha.uol.com.br/folha/brasil/ult96u447378.shtml' title='Sobre: &quot;PF não consegue decifrar criptografia dos arquivos de Daniel Dantas&quot; da Folha Online'/><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/8914133/1092370230096717421/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=8914133&amp;postID=1092370230096717421' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8914133/posts/default/1092370230096717421'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8914133/posts/default/1092370230096717421'/><link rel='alternate' type='text/html' href='http://www.marciowb.net/blog/2008/09/sobre-pf-no-consegue-decifrar' title='Sobre: &quot;PF não consegue decifrar criptografia dos arquivos de Daniel Dantas&quot; da Folha Online'/><author><name>Marcio Wesley Borges</name><uri>http://www.blogger.com/profile/03981592466934695825</uri><email>marciowb@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='14949109749659640406'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8914133.post-437139522673819762</id><published>2008-09-19T20:26:00.003-03:00</published><updated>2008-09-19T20:54:49.748-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='music'/><title type='text'>Pink Floyd - Time</title><content type='html'>&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/BfBoUQxA7o0&amp;hl=en&amp;fs=1&amp;color1=0x3a3a3a&amp;color2=0x999999"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/BfBoUQxA7o0&amp;hl=en&amp;fs=1&amp;color1=0x3a3a3a&amp;color2=0x999999" type="application/x-shockwave-flash" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;
&lt;pre&gt;
Ticking away the moments that make up a dull day
You fritter and waste the hours in an off hand way
Kicking around on a piece of ground in your home town
Waiting for someone or something to show you the way

Tired of lying in the sunshine staying home to watch the rain
You are young and life is long and there is time to kill today
And then one day you find ten years have got behind you
No one told you when to run, you missed the starting gun

And you run and you run to catch up with the sun, but its sinking
And racing around to come up behind you again
The sun is the same in the relative way, but youre older
Shorter of breath and one day closer to death

Every year is getting shorter, never seem to find the time
Plans that either come to naught or half a page of scribbled lines
Hanging on in quiet desperation is the english way
The time is gone, the song is over, thought Id something more to say
&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8914133-437139522673819762?l=www.marciowb.net%2Fblog'/&gt;&lt;/div&gt;</content><link rel='related' href='http://www.youtube.com/watch?v=NNHuGEuR4KY&amp;feature=related' title='Pink Floyd - Time'/><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/8914133/437139522673819762/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=8914133&amp;postID=437139522673819762' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8914133/posts/default/437139522673819762'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8914133/posts/default/437139522673819762'/><link rel='alternate' type='text/html' href='http://www.marciowb.net/blog/2008/09/pink-floyd-time' title='Pink Floyd - Time'/><author><name>Marcio Wesley Borges</name><uri>http://www.blogger.com/profile/03981592466934695825</uri><email>marciowb@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='14949109749659640406'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8914133.post-5292934503706584479</id><published>2008-09-06T21:25:00.008-03:00</published><updated>2008-09-08T09:15:56.796-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='religione'/><title type='text'>Meu interesse na cultura judaica</title><content type='html'>Acho interessante a cultura e influência judaica no mundo ocidental moderno, apesar dessa influência remontar a pré-burguesia e ao início do catolicismo.&lt;br&gt;
Isto é o rascunho, do que um dia espero ser um estudo, provavelmente muito superficial, dos judeus e suas participações na humanidade.&lt;br&gt;
Tenho apreço por vários judeus - sejam judeus por religião, ou mais comumente, por herança. Exemplo: Prof. Einstein, Chomsky, Isaac Asimov, só para citar alguns que li.&lt;br&gt;
Considero um absurdo se autodeclararem o povo de Deus ou rotularem a área onde atualmente é Israel, como "A Terra Prometida", ou qualquer coisa que cause segregação de outras etnias ou culturas. Pois apesar de ter sido educado religiosamente como católico, não o sou e realmente não concordo com muito do que está na Biblia, principalmente "fatos" ou "profécias" do Antigo Testamento, e, claro, muito menos gosto da cultura que a mim me impregna. Para mim, muito se trata de guerra, ira, vingança, medo, terror e ignorância. Mas não sou ateu! Assim como não o era  Einstein. Acredito em algo maior que a mera insignificância humana. A manifestação da criação é suficiente para me calar quanto a qualquer indagação do "Criador". Num sentido, posso me declarar agnóstico - não sou teólogo; meu lunatismo passa longe dessas aventuras. Sou humanista e assim como alguns antigos, acredito na bondade humana, não absoluta, mas ela existe.&lt;br&gt;
Covardia, não se paga com covardia ou pior, mentiras. Costumeiramente vejo na televisão notícias do tipo: Palestinos disparam míssil contra território israelense. Aqui, se pode ver no mínimo uma grande e tendencioso (senão, muito ignorante) mentira, se algum dia os palestinos tiveram acesso a mísseis, isso foi a muito, muito tempo, mas há muito, muito, muito tempo não é possível eles terem acesso a este tipo de arma, pois custam caro, o território deles está cercado, inclusive por mar, e os únicos por lá que usam míssil com frequência, são os israelenses. Os palestinos, usam foguetes caseiros, coisa do tipo: "faça você mesmo em sua casa".&lt;br&gt;
Bem, espero desenvolver isso para além do rancor e tanto quanto possível, para a razão. Em relação a Israel, até Einstein errava... e olha que ele esteve diretamente envolvido na criação do estado sionista ;). Obviamente o admiro muito (não seja tolo de pensar que é pelo que menciono logo atrás).&lt;br&gt;
&lt;p&gt;Isto aqui é meu blog, meu espaço, eu escrevo o que quero e quando quero. Fique longe daqui, vá procurar seu lugar, este já é meu. Isto não democrácia, isto é anarquia!&lt;/p&gt;
&lt;h2&gt;Inimigo Meu (adoro esse filme)!&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.beth-shalom.com.br/artigos/oqueemidia.html"&gt;Beth-Shalom&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8914133-5292934503706584479?l=www.marciowb.net%2Fblog'/&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8914133/posts/default/5292934503706584479'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8914133/posts/default/5292934503706584479'/><link rel='alternate' type='text/html' href='http://www.marciowb.net/blog/2008/09/meu-interesse-na-cultura-judia' title='Meu interesse na cultura judaica'/><author><name>Marcio Wesley Borges</name><uri>http://www.blogger.com/profile/03981592466934695825</uri><email>marciowb@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='14949109749659640406'/></author></entry><entry><id>tag:blogger.com,1999:blog-8914133.post-211403792519755996</id><published>2008-08-07T18:58:00.016-03:00</published><updated>2008-11-21T23:37:09.790-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='it'/><title type='text'>Quickly: Using H2 Database with Glassfish and Toplink</title><content type='html'>&lt;h2&gt;For Glassfish: Configuring sun-resources.xml&lt;/h2&gt;
&lt;p&gt;To use &lt;a href="http://www.h2database.com/html/quickstart.html" title="H2Database official website"&gt;H2 Database&lt;/a&gt; with Glassfish (or Sun AS), you must edit the &lt;code class="file"&gt;sun-resources.xml&lt;/code&gt; file and configure a &lt;i&gt;JDBC Resource&lt;/i&gt; and a &lt;i&gt;JDBC Connection Pool&lt;/i&gt; using respectively the tags &lt;code&gt;jdbc-resource&lt;/code&gt; and &lt;code&gt;jdbc-connection-pool&lt;/code&gt;. Take care with the attribute &lt;code&gt;datasource-classname&lt;/code&gt; of &lt;code&gt;jdbc-connection-pool&lt;/code&gt;, because you must configure its value to &lt;code class="param"&gt;org.h2.jdbcx.JdbcDataSource&lt;/code&gt;. If you configure this parameter with other value, like &lt;code&gt;org.h2.Driver&lt;/code&gt; (it isn't a &lt;code&gt;javax.sql.Datasource&lt;/code&gt;!), you get the error:&lt;/p&gt;
&lt;pre class="code"&gt;
Caused by: Exception [TOPLINK-4002] (Oracle TopLink Essentials - 2.0.1 (Build b04-fcs (04/11/2008))): oracle.toplink.essentials.exceptions.DatabaseException
Internal Exception: java.sql.SQLException: &lt;span style="border:1px dotted red"&gt;Error in allocating a connection. Cause: org.h2.Driver cannot be cast to javax.sql.DataSource&lt;/span&gt;
Error Code: 0
        at oracle.toplink.essentials.exceptions.DatabaseException.sqlException(DatabaseException.java:305)
        at oracle.toplink.essentials.jndi.JNDIConnector.connect(JNDIConnector.java:150)
        at oracle.toplink.essentials.sessions.DatasourceLogin.connectToDatasource(DatasourceLogin.java:184)
        at oracle.toplink.essentials.internal.sessions.DatabaseSessionImpl.loginAndDetectDatasource(DatabaseSessionImpl.java:582)
        at oracle.toplink.essentials.ejb.cmp3.EntityManagerFactoryProvider.login(EntityManagerFactoryProvider.java:280)
        at oracle.toplink.essentials.internal.ejb.cmp3.EntityManagerSetupImpl.deploy(EntityManagerSetupImpl.java:229)
&lt;/pre&gt;

So, after configure the &lt;code class="file"&gt;sun-resources.xml&lt;/code&gt;, I have:&lt;br&gt;
&lt;pre class="code"&gt;&lt;font color="#000000"&gt;&lt;font color="#0099ff"&gt;&lt;strong&gt;&amp;lt;?&lt;/strong&gt;&lt;/font&gt;&lt;font color="#0099ff"&gt;&lt;strong&gt;xml&lt;/strong&gt;&lt;/font&gt;&lt;font color="#0099ff"&gt;&lt;strong&gt; &lt;/strong&gt;&lt;/font&gt;&lt;font color="#0099ff"&gt;&lt;strong&gt;version=&amp;quot;1.0&amp;quot;&lt;/strong&gt;&lt;/font&gt;&lt;font color="#0099ff"&gt;&lt;strong&gt; &lt;/strong&gt;&lt;/font&gt;&lt;font color="#0099ff"&gt;&lt;strong&gt;encoding=&amp;quot;UTF-8&amp;quot;?&lt;/strong&gt;&lt;/font&gt;&lt;font color="#0099ff"&gt;&lt;strong&gt;&amp;gt;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#009966"&gt;&lt;strong&gt;&amp;lt;!&lt;/strong&gt;&lt;/font&gt;&lt;font color="#009966"&gt;&lt;strong&gt;DOCTYPE&lt;/strong&gt;&lt;/font&gt;&lt;font color="#009966"&gt;&lt;strong&gt; &lt;/strong&gt;&lt;/font&gt;&lt;font color="#009966"&gt;&lt;strong&gt;resources&lt;/strong&gt;&lt;/font&gt;&lt;font color="#009966"&gt;&lt;strong&gt; &lt;/strong&gt;&lt;/font&gt;&lt;font color="#009966"&gt;&lt;strong&gt;PUBLIC&lt;/strong&gt;&lt;/font&gt;&lt;font color="#009966"&gt;&lt;strong&gt; &lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;-//Sun&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;Microsystems,&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;Inc.//DTD&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;Application&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;Server&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;9.0&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;Resource&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;Definitions&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;//EN&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#009966"&gt;&lt;strong&gt; &lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;http://www.sun.com/software/appserver/dtds/sun-resources_1_3.dtd&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#009966"&gt;&lt;strong&gt;&amp;gt;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#0000ff"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;resources&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;gt;&lt;/font&gt;
  &lt;font color="#0000ff"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;jdbc-resource&lt;/font&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;enabled&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;true&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;jndi-name&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;jdbc/TrilhaH2&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;object-type&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;user&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;pool-name&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;trilhaH2Pool&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#0000ff"&gt;/&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;gt;&lt;/font&gt;
  &lt;font color="#0000ff"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;jdbc-connection-pool&lt;/font&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;allow-non-component-callers&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;false&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;associate-with-thread&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;false&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;connection-creation-retry-attempts&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;0&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;connection-creation-retry-interval-in-seconds&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;10&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;connection-leak-reclaim&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;false&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;connection-leak-timeout-in-seconds&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;0&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;connection-validation-method&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;auto-commit&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;span style="border:1px dotted blue"&gt;&lt;font color="#0000ff"&gt;datasource-classname&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;org.h2.jdbcx.JdbcDataSource&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;/span&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;fail-all-connections&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;false&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;idle-timeout-in-seconds&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;300&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;is-connection-validation-required&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;false&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;is-isolation-level-guaranteed&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;true&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;lazy-connection-association&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;false&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;lazy-connection-enlistment&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;false&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;match-connections&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;false&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;max-connection-usage-count&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;0&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;max-pool-size&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;32&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;max-wait-time-in-millis&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;60000&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;name&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;trilhaH2Pool&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;non-transactional-connections&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;false&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;pool-resize-quantity&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;2&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;res-type&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;javax.sql.DataSource&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;statement-timeout-in-seconds&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;-1&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;steady-pool-size&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;8&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;validate-atmost-once-period-in-seconds&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;0&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;wrap-jdbc-objects&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;false&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;gt;&lt;/font&gt;
    &lt;font color="#0000ff"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;property&lt;/font&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;name&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;User&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;value&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#0000ff"&gt;/&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;gt;&lt;/font&gt;
    &lt;font color="#0000ff"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;property&lt;/font&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;name&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;Password&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;value&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#0000ff"&gt;/&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;gt;&lt;/font&gt;
    &lt;font color="#0000ff"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;property&lt;/font&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;name&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;URL&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;value&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;jdbc:h2:tcp://localhost//store/h2/trilha&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#0000ff"&gt;/&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;gt;&lt;/font&gt;
    &lt;span style="border:1px solid blue"&gt;&lt;font color="#0000ff"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;property&lt;/font&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;name&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;driverClass&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;value&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;org.h2.Driver&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#0000ff"&gt;/&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;gt;&lt;/font&gt;&lt;/span&gt;
  &lt;font color="#0000ff"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;/&lt;/font&gt;&lt;font color="#0000ff"&gt;jdbc-connection-pool&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;gt;&lt;/font&gt;
&lt;font color="#0000ff"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;/&lt;/font&gt;&lt;font color="#0000ff"&gt;resources&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;gt;&lt;/font&gt;

&lt;/font&gt;&lt;/pre&gt;

&lt;h2&gt;H2Platform: H2 Specific Behavior to Toplink&lt;/h2&gt;
&lt;p&gt;To use H2 Database with Toplink, may be do you want to instruct the Toplink to take full use of H2 SQL/JDBC features. If yes, take a look at &lt;a href="http://h2database.googlecode.com/svn/trunk/h2/src/tools/oracle/toplink/essentials/platform/database/H2Platform.java.txt"&gt;H2Platform&lt;/a&gt; java source code and read its instructions. And after compile it and place it into the JAR, configure your &lt;code class="code"&gt;persistence.xml&lt;/code&gt; including the property:&lt;br&gt;
&lt;code&gt;&lt;font color="#000000"&gt;&lt;font color="#0000ff"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;property&lt;/font&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;name&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;toplink.target-database&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;value&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;oracle.toplink.essentials.platform.database.H2Platform&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#0000ff"&gt;/&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;gt;&lt;/font&gt;
&lt;/font&gt;&lt;/code&gt;.&lt;br&gt;
Note: The old property &lt;code&gt;toplink.platform.class.name&lt;/code&gt; is deprecated - instead, use &lt;code&gt;toplink.target-database&lt;/code&gt;.&lt;br&gt;

&lt;h2&gt;&lt;span style="color:red"&gt;Warning:&lt;/span&gt; &lt;code&gt;H2Platform&lt;/code&gt; is inaccurate&lt;/h2&gt;
&lt;p&gt;The &lt;code&gt;H2Platform&lt;/code&gt; class (from the &lt;code class="file"&gt;h2-2008-07-28.zip&lt;/code&gt;)has a poor and inaccurate implementation. If you want to use &lt;code&gt;IDENTITY&lt;/code&gt; data type to (duh!) alto-increment a primary key field, with the &lt;code&gt;H2Platform&lt;/code&gt;, it doesn't work! Instead you are obligated to use &lt;code&gt;SEQUENCE&lt;/code&gt;. By default, Toplink expected a SEQUENCE with a increment of &lt;code class="value"&gt;50&lt;/code&gt;.&lt;/p&gt;
Eg., if you have an annotated field like this:&lt;br&gt;
&lt;pre class="code"&gt;&lt;font color="#000000"&gt;    &lt;font color="#66ccff"&gt;&lt;strong&gt;@&lt;/strong&gt;&lt;/font&gt;&lt;font color="#66ccff"&gt;&lt;strong&gt;Id&lt;/strong&gt;&lt;/font&gt;
    &lt;font color="#66ccff"&gt;&lt;strong&gt;@&lt;/strong&gt;&lt;/font&gt;&lt;font color="#66ccff"&gt;&lt;strong&gt;GeneratedValue&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;strategy&lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt;GenerationType.IDENTITY&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;
    &lt;font color="#66ccff"&gt;&lt;strong&gt;@&lt;/strong&gt;&lt;/font&gt;&lt;font color="#66ccff"&gt;&lt;strong&gt;Column&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;name &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;TERMINALHISTORY_ID&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;, nullable &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#cc00cc"&gt;false&lt;/font&gt;, insertable &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#cc00cc"&gt;true&lt;/font&gt;, updatable &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#cc00cc"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;
    &lt;font color="#006699"&gt;&lt;strong&gt;private&lt;/strong&gt;&lt;/font&gt; Long id;

&lt;/font&gt;&lt;/pre&gt;&lt;br&gt;
The &lt;code&gt;H2Platform&lt;/code&gt; supplied by H2, fails and you should be use the following (exactly) sequence:&lt;br&gt;
&lt;pre class="code"&gt;&lt;font color="#000000"&gt;&lt;font color="#006699"&gt;&lt;strong&gt;CREATE&lt;/strong&gt;&lt;/font&gt; SEQUENCE SEQ_GEN_SEQUENCE start &lt;font color="#006699"&gt;&lt;strong&gt;with&lt;/strong&gt;&lt;/font&gt; &lt;font color="#ff0000"&gt;0&lt;/font&gt; INCREMENT &lt;font color="#006699"&gt;&lt;strong&gt;BY&lt;/strong&gt;&lt;/font&gt; &lt;font color="#ff0000"&gt;50&lt;/font&gt;;
&lt;/font&gt;&lt;/pre&gt;&lt;br&gt;
If you set the &lt;i&gt;increment size&lt;/i&gt; to a value less than the expected by Toplink (50), do you get the warning:&lt;br&gt;
&lt;code&gt;The sequence named [SEQ_GEN_SEQUENCE] is setup incorrectly.  Its increment does not match its pre-allocation size.&lt;/code&gt;&lt;br&gt;
I saw into the &lt;code&gt;H2Platform&lt;/code&gt; source code and found this (negligent) method:&lt;br&gt;
&lt;pre class="code"&gt;&lt;font color="#000000"&gt;    &lt;font color="#006699"&gt;&lt;strong&gt;public&lt;/strong&gt;&lt;/font&gt; ValueReadQuery &lt;font color="#9966ff"&gt;buildSelectQueryForNativeSequence&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;String seqName, Integer size&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
        &lt;font color="#006699"&gt;&lt;strong&gt;return&lt;/strong&gt;&lt;/font&gt; &lt;font color="#006699"&gt;&lt;strong&gt;new&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;ValueReadQuery&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;CALL&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;NEXT&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;VALUE&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;FOR&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;+&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;getQualifiedSequenceName&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;seqName&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
        &lt;font color="#ff8400"&gt;//&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;return&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;new&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;ValueReadQuery(&amp;quot;SELECT&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;+&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;getQualifiedSequenceName(seqName)&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;+&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;&amp;quot;.NEXTVAL&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;FROM&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;DUAL&amp;quot;);&lt;/font&gt;
    &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;

&lt;/font&gt;&lt;/pre&gt;&lt;br&gt;
See? It ignores the Toplink parameter: &lt;code&gt;size&lt;/code&gt;.

&lt;h3&gt;A few better &lt;code&gt;H2Platform&lt;/code&gt;&lt;/h3&gt;
If you want to use the native H2 support to IDENTITY with Toplink, you must use better &lt;code&gt;H2Platform&lt;/code&gt; implementation. You can use this:&lt;br&gt;
&lt;pre class="code"&gt;&lt;font color="#000000"&gt;&lt;font color="#cc0000"&gt;/*&lt;/font&gt;
&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;*&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;The&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;contents&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;of&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;this&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;file&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;are&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;subject&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;to&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;the&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;terms&lt;/font&gt;
&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;*&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;of&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;the&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;Common&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;Development&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;and&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;Distribution&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;License&lt;/font&gt;
&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;*&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;(the&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;&amp;quot;License&amp;quot;).&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;You&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;may&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;not&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;use&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;this&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;file&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;except&lt;/font&gt;
&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;*&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;in&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;compliance&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;with&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;the&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;License.&lt;/font&gt;
&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;*&lt;/font&gt;
&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;*&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;You&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;can&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;obtain&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;a&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;copy&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;of&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;the&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;license&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;at&lt;/font&gt;
&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;*&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;glassfish/bootstrap/legal/CDDLv1.0.txt&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;or&lt;/font&gt;
&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;*&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;https://glassfish.dev.java.net/public/CDDLv1.0.html.&lt;/font&gt;
&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;*&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;See&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;the&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;License&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;for&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;the&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;specific&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;language&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;governing&lt;/font&gt;
&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;*&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;permissions&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;and&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;limitations&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;under&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;the&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;License.&lt;/font&gt;
&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;*&lt;/font&gt;
&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;*&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;When&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;distributing&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;Covered&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;Code,&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;include&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;this&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;CDDL&lt;/font&gt;
&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;*&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;HEADER&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;in&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;each&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;file&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;and&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;include&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;the&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;License&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;file&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;at&lt;/font&gt;
&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;*&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;glassfish/bootstrap/legal/CDDLv1.0.txt.&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;If&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;applicable,&lt;/font&gt;
&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;*&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;add&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;the&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;following&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;below&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;this&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;CDDL&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;HEADER,&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;with&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;the&lt;/font&gt;
&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;*&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;fields&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;enclosed&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;by&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;brackets&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;&amp;quot;[]&amp;quot;&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;replaced&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;with&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;your&lt;/font&gt;
&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;*&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;own&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;identifying&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;information:&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;Portions&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;Copyright&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;[yyyy]&lt;/font&gt;
&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;*&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;[name&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;of&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;copyright&lt;/font&gt;&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;owner]&lt;/font&gt;
&lt;font color="#cc0000"&gt; &lt;/font&gt;&lt;font color="#cc0000"&gt;*/&lt;/font&gt;
&lt;font color="#ff8400"&gt;//&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;Copyright&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;(c)&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;1998,&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;2006,&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;Oracle.&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;All&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;rights&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;reserved.&lt;/font&gt;
&lt;font color="#009966"&gt;&lt;strong&gt;package&lt;/strong&gt;&lt;/font&gt; net.marciowb.trilha.dao;

&lt;font color="#009966"&gt;&lt;strong&gt;import&lt;/strong&gt;&lt;/font&gt; java.util.*;
&lt;font color="#009966"&gt;&lt;strong&gt;import&lt;/strong&gt;&lt;/font&gt; oracle.toplink.essentials.queryframework.*;
&lt;font color="#009966"&gt;&lt;strong&gt;import&lt;/strong&gt;&lt;/font&gt; oracle.toplink.essentials.expressions.*;
&lt;font color="#009966"&gt;&lt;strong&gt;import&lt;/strong&gt;&lt;/font&gt; oracle.toplink.essentials.internal.databaseaccess.*;

&lt;font color="#6600cc"&gt;/**&lt;/font&gt;
&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;*&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;This&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;platform&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;provides&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;H2&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;specific&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;behaviour&lt;/font&gt;&lt;font color="#6600cc"&gt;.&lt;/font&gt;
&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;*&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;Use&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;the&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;following&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;setting&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;to&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;enable&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;this&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;platform&lt;/font&gt;&lt;font color="#6600cc"&gt;:&lt;/font&gt;
&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;*&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;pre&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;gt;&lt;/font&gt;
&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;*&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;&amp;amp;&lt;/font&gt;&lt;font color="#6600cc"&gt;lt&lt;/font&gt;&lt;font color="#6600cc"&gt;;&lt;/font&gt;&lt;font color="#6600cc"&gt;property&lt;/font&gt;
&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;*&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;name&lt;/font&gt;&lt;font color="#6600cc"&gt;=&lt;/font&gt;&lt;font color="#6600cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#6600cc"&gt;toplink&lt;/font&gt;&lt;font color="#6600cc"&gt;.&lt;/font&gt;&lt;font color="#6600cc"&gt;platform&lt;/font&gt;&lt;font color="#6600cc"&gt;.&lt;/font&gt;&lt;font color="#6600cc"&gt;class&lt;/font&gt;&lt;font color="#6600cc"&gt;.&lt;/font&gt;&lt;font color="#6600cc"&gt;name&lt;/font&gt;&lt;font color="#6600cc"&gt;&amp;quot;&lt;/font&gt;
&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;*&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;value&lt;/font&gt;&lt;font color="#6600cc"&gt;=&lt;/font&gt;&lt;font color="#6600cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#6600cc"&gt;oracle&lt;/font&gt;&lt;font color="#6600cc"&gt;.&lt;/font&gt;&lt;font color="#6600cc"&gt;toplink&lt;/font&gt;&lt;font color="#6600cc"&gt;.&lt;/font&gt;&lt;font color="#6600cc"&gt;essentials&lt;/font&gt;&lt;font color="#6600cc"&gt;.&lt;/font&gt;&lt;font color="#6600cc"&gt;platform&lt;/font&gt;&lt;font color="#6600cc"&gt;.&lt;/font&gt;&lt;font color="#6600cc"&gt;database&lt;/font&gt;&lt;font color="#6600cc"&gt;.&lt;/font&gt;&lt;font color="#6600cc"&gt;H2Platform&lt;/font&gt;&lt;font color="#6600cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#6600cc"&gt;/&lt;/font&gt;&lt;font color="#6600cc"&gt;&amp;gt;&lt;/font&gt;
&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;*&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;/&lt;/font&gt;&lt;font color="#0000ff"&gt;pre&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;gt;&lt;/font&gt;
&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;*&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;See&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;also&lt;/font&gt;&lt;font color="#6600cc"&gt;:&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;https&lt;/font&gt;&lt;font color="#6600cc"&gt;:&lt;/font&gt;&lt;font color="#6600cc"&gt;/&lt;/font&gt;&lt;font color="#6600cc"&gt;/&lt;/font&gt;&lt;font color="#6600cc"&gt;glassfish&lt;/font&gt;&lt;font color="#6600cc"&gt;.&lt;/font&gt;&lt;font color="#6600cc"&gt;dev&lt;/font&gt;&lt;font color="#6600cc"&gt;.&lt;/font&gt;&lt;font color="#6600cc"&gt;java&lt;/font&gt;&lt;font color="#6600cc"&gt;.&lt;/font&gt;&lt;font color="#6600cc"&gt;net&lt;/font&gt;&lt;font color="#6600cc"&gt;/&lt;/font&gt;&lt;font color="#6600cc"&gt;issues&lt;/font&gt;&lt;font color="#6600cc"&gt;/&lt;/font&gt;&lt;font color="#6600cc"&gt;show_bug&lt;/font&gt;&lt;font color="#6600cc"&gt;.&lt;/font&gt;&lt;font color="#6600cc"&gt;cgi&lt;/font&gt;&lt;font color="#6600cc"&gt;?&lt;/font&gt;&lt;font color="#6600cc"&gt;id&lt;/font&gt;&lt;font color="#6600cc"&gt;=&lt;/font&gt;&lt;font color="#6600cc"&gt;4042&lt;/font&gt;
&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;*&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#02b902"&gt;@author&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;Originally&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;H2&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;Team&lt;/font&gt;
&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;*&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#02b902"&gt;@author&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;2008&lt;/font&gt;&lt;font color="#6600cc"&gt;-&lt;/font&gt;&lt;font color="#6600cc"&gt;08&lt;/font&gt;&lt;font color="#6600cc"&gt;-&lt;/font&gt;&lt;font color="#6600cc"&gt;09&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;00h07&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;BSB&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;Marcio&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;Wesley&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;Borges&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;Brasilia&lt;/font&gt;&lt;font color="#6600cc"&gt;-&lt;/font&gt;&lt;font color="#6600cc"&gt;DF&lt;/font&gt;&lt;font color="#6600cc"&gt;,&lt;/font&gt;&lt;font color="#6600cc"&gt;Brazil&lt;/font&gt;
&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;*/&lt;/font&gt;
&lt;font color="#006699"&gt;&lt;strong&gt;public&lt;/strong&gt;&lt;/font&gt; &lt;font color="#0099ff"&gt;&lt;strong&gt;class&lt;/strong&gt;&lt;/font&gt; H2Platform &lt;font color="#006699"&gt;&lt;strong&gt;extends&lt;/strong&gt;&lt;/font&gt; DatabasePlatform &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
    &lt;font color="#006699"&gt;&lt;strong&gt;public&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;H2Platform&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
    &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;

    &lt;font color="#006699"&gt;&lt;strong&gt;protected&lt;/strong&gt;&lt;/font&gt; Hashtable &lt;font color="#9966ff"&gt;buildFieldTypes&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
        Hashtable fieldTypeMapping;

        fieldTypeMapping &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#cc00cc"&gt;super&lt;/font&gt;.&lt;font color="#9966ff"&gt;buildFieldTypes&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
        fieldTypeMapping.&lt;font color="#9966ff"&gt;put&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;Boolean.&lt;font color="#0099ff"&gt;&lt;strong&gt;class&lt;/strong&gt;&lt;/font&gt;, &lt;font color="#006699"&gt;&lt;strong&gt;new&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;FieldTypeDefinition&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;TINYINT&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;, &lt;font color="#cc00cc"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
        fieldTypeMapping.&lt;font color="#9966ff"&gt;put&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;Integer.&lt;font color="#0099ff"&gt;&lt;strong&gt;class&lt;/strong&gt;&lt;/font&gt;, &lt;font color="#006699"&gt;&lt;strong&gt;new&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;FieldTypeDefinition&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;INTEGER&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;, &lt;font color="#cc00cc"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
        fieldTypeMapping.&lt;font color="#9966ff"&gt;put&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;Long.&lt;font color="#0099ff"&gt;&lt;strong&gt;class&lt;/strong&gt;&lt;/font&gt;, &lt;font color="#006699"&gt;&lt;strong&gt;new&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;FieldTypeDefinition&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;NUMERIC&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;, &lt;font color="#ff0000"&gt;19&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
        fieldTypeMapping.&lt;font color="#9966ff"&gt;put&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;Float.&lt;font color="#0099ff"&gt;&lt;strong&gt;class&lt;/strong&gt;&lt;/font&gt;, &lt;font color="#006699"&gt;&lt;strong&gt;new&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;FieldTypeDefinition&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;REAL&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;, &lt;font color="#cc00cc"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
        fieldTypeMapping.&lt;font color="#9966ff"&gt;put&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;Double.&lt;font color="#0099ff"&gt;&lt;strong&gt;class&lt;/strong&gt;&lt;/font&gt;, &lt;font color="#006699"&gt;&lt;strong&gt;new&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;FieldTypeDefinition&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;REAL&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;, &lt;font color="#cc00cc"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
        fieldTypeMapping.&lt;font color="#9966ff"&gt;put&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;Short.&lt;font color="#0099ff"&gt;&lt;strong&gt;class&lt;/strong&gt;&lt;/font&gt;, &lt;font color="#006699"&gt;&lt;strong&gt;new&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;FieldTypeDefinition&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;SMALLINT&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;, &lt;font color="#cc00cc"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
        fieldTypeMapping.&lt;font color="#9966ff"&gt;put&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;Byte.&lt;font color="#0099ff"&gt;&lt;strong&gt;class&lt;/strong&gt;&lt;/font&gt;, &lt;font color="#006699"&gt;&lt;strong&gt;new&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;FieldTypeDefinition&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;SMALLINT&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;, &lt;font color="#cc00cc"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
        fieldTypeMapping.&lt;font color="#9966ff"&gt;put&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;java.math.BigInteger.&lt;font color="#0099ff"&gt;&lt;strong&gt;class&lt;/strong&gt;&lt;/font&gt;, &lt;font color="#006699"&gt;&lt;strong&gt;new&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;FieldTypeDefinition&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;NUMERIC&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;, &lt;font color="#ff0000"&gt;38&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
        fieldTypeMapping.&lt;font color="#9966ff"&gt;put&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;java.math.BigDecimal.&lt;font color="#0099ff"&gt;&lt;strong&gt;class&lt;/strong&gt;&lt;/font&gt;, &lt;font color="#006699"&gt;&lt;strong&gt;new&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;FieldTypeDefinition&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;NUMERIC&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;, &lt;font color="#ff0000"&gt;38&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;.&lt;font color="#9966ff"&gt;setLimits&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff0000"&gt;38&lt;/font&gt;, &lt;font color="#000000"&gt;&lt;strong&gt;-&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff0000"&gt;19&lt;/font&gt;, &lt;font color="#ff0000"&gt;19&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
        fieldTypeMapping.&lt;font color="#9966ff"&gt;put&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;Number.&lt;font color="#0099ff"&gt;&lt;strong&gt;class&lt;/strong&gt;&lt;/font&gt;, &lt;font color="#006699"&gt;&lt;strong&gt;new&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;FieldTypeDefinition&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;NUMERIC&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;, &lt;font color="#ff0000"&gt;38&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;.&lt;font color="#9966ff"&gt;setLimits&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff0000"&gt;38&lt;/font&gt;, &lt;font color="#000000"&gt;&lt;strong&gt;-&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff0000"&gt;19&lt;/font&gt;, &lt;font color="#ff0000"&gt;19&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
        fieldTypeMapping.&lt;font color="#9966ff"&gt;put&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;Byte[].&lt;font color="#0099ff"&gt;&lt;strong&gt;class&lt;/strong&gt;&lt;/font&gt;, &lt;font color="#006699"&gt;&lt;strong&gt;new&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;FieldTypeDefinition&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;BINARY&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;, &lt;font color="#cc00cc"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
        fieldTypeMapping.&lt;font color="#9966ff"&gt;put&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;Character[].&lt;font color="#0099ff"&gt;&lt;strong&gt;class&lt;/strong&gt;&lt;/font&gt;, &lt;font color="#006699"&gt;&lt;strong&gt;new&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;FieldTypeDefinition&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;LONGVARCHAR&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;, &lt;font color="#cc00cc"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
        fieldTypeMapping.&lt;font color="#9966ff"&gt;put&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#0099ff"&gt;&lt;strong&gt;byte&lt;/strong&gt;&lt;/font&gt;[].&lt;font color="#0099ff"&gt;&lt;strong&gt;class&lt;/strong&gt;&lt;/font&gt;, &lt;font color="#006699"&gt;&lt;strong&gt;new&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;FieldTypeDefinition&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;BINARY&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;, &lt;font color="#cc00cc"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
        fieldTypeMapping.&lt;font color="#9966ff"&gt;put&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#0099ff"&gt;&lt;strong&gt;char&lt;/strong&gt;&lt;/font&gt;[].&lt;font color="#0099ff"&gt;&lt;strong&gt;class&lt;/strong&gt;&lt;/font&gt;, &lt;font color="#006699"&gt;&lt;strong&gt;new&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;FieldTypeDefinition&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;LONGVARCHAR&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;, &lt;font color="#cc00cc"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
        fieldTypeMapping.&lt;font color="#9966ff"&gt;put&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;java.sql.Blob.&lt;font color="#0099ff"&gt;&lt;strong&gt;class&lt;/strong&gt;&lt;/font&gt;, &lt;font color="#006699"&gt;&lt;strong&gt;new&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;FieldTypeDefinition&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;BINARY&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;, &lt;font color="#cc00cc"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
        fieldTypeMapping.&lt;font color="#9966ff"&gt;put&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;java.sql.Clob.&lt;font color="#0099ff"&gt;&lt;strong&gt;class&lt;/strong&gt;&lt;/font&gt;, &lt;font color="#006699"&gt;&lt;strong&gt;new&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;FieldTypeDefinition&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;LONGVARCHAR&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;, &lt;font color="#cc00cc"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
        fieldTypeMapping.&lt;font color="#9966ff"&gt;put&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;java.sql.Date.&lt;font color="#0099ff"&gt;&lt;strong&gt;class&lt;/strong&gt;&lt;/font&gt;, &lt;font color="#006699"&gt;&lt;strong&gt;new&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;FieldTypeDefinition&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;DATE&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;, &lt;font color="#cc00cc"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
        fieldTypeMapping.&lt;font color="#9966ff"&gt;put&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;java.sql.Time.&lt;font color="#0099ff"&gt;&lt;strong&gt;class&lt;/strong&gt;&lt;/font&gt;, &lt;font color="#006699"&gt;&lt;strong&gt;new&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;FieldTypeDefinition&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;TIME&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;, &lt;font color="#cc00cc"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
        fieldTypeMapping.&lt;font color="#9966ff"&gt;put&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;java.sql.Timestamp.&lt;font color="#0099ff"&gt;&lt;strong&gt;class&lt;/strong&gt;&lt;/font&gt;, &lt;font color="#006699"&gt;&lt;strong&gt;new&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;FieldTypeDefinition&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;TIMESTAMP&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;, &lt;font color="#cc00cc"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;

        &lt;font color="#006699"&gt;&lt;strong&gt;return&lt;/strong&gt;&lt;/font&gt; fieldTypeMapping;
    &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;


    &lt;font color="#ff8400"&gt;//&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;public&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;boolean&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;isHSQL()&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;{&lt;/font&gt;
    &lt;font color="#ff8400"&gt;//&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;return&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;true;&lt;/font&gt;
    &lt;font color="#ff8400"&gt;//&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;}&lt;/font&gt;

    &lt;font color="#006699"&gt;&lt;strong&gt;public&lt;/strong&gt;&lt;/font&gt; &lt;font color="#0099ff"&gt;&lt;strong&gt;boolean&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;isH2&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
        &lt;font color="#006699"&gt;&lt;strong&gt;return&lt;/strong&gt;&lt;/font&gt; &lt;font color="#cc00cc"&gt;true&lt;/font&gt;;
    &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;

    &lt;font color="#006699"&gt;&lt;strong&gt;public&lt;/strong&gt;&lt;/font&gt; &lt;font color="#0099ff"&gt;&lt;strong&gt;boolean&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;supportsForeignKeyConstraints&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
        &lt;font color="#006699"&gt;&lt;strong&gt;return&lt;/strong&gt;&lt;/font&gt; &lt;font color="#cc00cc"&gt;true&lt;/font&gt;;
    &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;

    &lt;font color="#006699"&gt;&lt;strong&gt;public&lt;/strong&gt;&lt;/font&gt; ValueReadQuery &lt;font color="#9966ff"&gt;buildSelectQueryForNativeSequence&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;String seqName, Integer size&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
        &lt;font color="#006699"&gt;&lt;strong&gt;return&lt;/strong&gt;&lt;/font&gt; &lt;font color="#006699"&gt;&lt;strong&gt;new&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;ValueReadQuery&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;CALL&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;NEXT&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;VALUE&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;FOR&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;+&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;getQualifiedSequenceName&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;seqName&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
        &lt;font color="#ff8400"&gt;//&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;return&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;new&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;ValueReadQuery(&amp;quot;SELECT&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;+&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;getQualifiedSequenceName(seqName)&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;+&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;&amp;quot;.NEXTVAL&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;FROM&lt;/font&gt;&lt;font color="#ff8400"&gt; &lt;/font&gt;&lt;font color="#ff8400"&gt;DUAL&amp;quot;);&lt;/font&gt;
    &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;

    &lt;font color="#006699"&gt;&lt;strong&gt;public&lt;/strong&gt;&lt;/font&gt; &lt;font color="#0099ff"&gt;&lt;strong&gt;boolean&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;supportsNativeSequenceNumbers&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
        &lt;font color="#006699"&gt;&lt;strong&gt;return&lt;/strong&gt;&lt;/font&gt; &lt;font color="#cc00cc"&gt;true&lt;/font&gt;;
    &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;

    &lt;font color="#006699"&gt;&lt;strong&gt;protected&lt;/strong&gt;&lt;/font&gt; String &lt;font color="#9966ff"&gt;getQualifiedSequenceName&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;String seqName&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
        &lt;font color="#006699"&gt;&lt;strong&gt;if&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#9966ff"&gt;getTableQualifier&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;.&lt;font color="#9966ff"&gt;equals&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
            &lt;font color="#006699"&gt;&lt;strong&gt;return&lt;/strong&gt;&lt;/font&gt; seqName;
        &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt; &lt;font color="#006699"&gt;&lt;strong&gt;else&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
            &lt;font color="#006699"&gt;&lt;strong&gt;return&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;getTableQualifier&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;+&lt;/strong&gt;&lt;/font&gt; &lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;.&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;+&lt;/strong&gt;&lt;/font&gt; seqName;
        &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;
    &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;

    &lt;font color="#006699"&gt;&lt;strong&gt;public&lt;/strong&gt;&lt;/font&gt; &lt;font color="#0099ff"&gt;&lt;strong&gt;boolean&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;supportsSelectForUpdateNoWait&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
        &lt;font color="#006699"&gt;&lt;strong&gt;return&lt;/strong&gt;&lt;/font&gt; &lt;font color="#cc00cc"&gt;true&lt;/font&gt;;
    &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;

    &lt;font color="#006699"&gt;&lt;strong&gt;protected&lt;/strong&gt;&lt;/font&gt; ExpressionOperator &lt;font color="#9966ff"&gt;todayOperator&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
        &lt;font color="#006699"&gt;&lt;strong&gt;return&lt;/strong&gt;&lt;/font&gt; ExpressionOperator.&lt;font color="#9966ff"&gt;simpleFunctionNoParentheses&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;ExpressionOperator.Today, &lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;SYSDATE&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
    &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;

    &lt;font color="#006699"&gt;&lt;strong&gt;protected&lt;/strong&gt;&lt;/font&gt; &lt;font color="#0099ff"&gt;&lt;strong&gt;void&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;initializePlatformOperators&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
        &lt;font color="#cc00cc"&gt;super&lt;/font&gt;.&lt;font color="#9966ff"&gt;initializePlatformOperators&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
        &lt;font color="#9966ff"&gt;addOperator&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;ExpressionOperator.&lt;font color="#9966ff"&gt;simpleMath&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;ExpressionOperator.Concat, &lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;||&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
    &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;

    &lt;font color="#006699"&gt;&lt;strong&gt;public&lt;/strong&gt;&lt;/font&gt; &lt;font color="#0099ff"&gt;&lt;strong&gt;boolean&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;shouldUseJDBCOuterJoinSyntax&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
        &lt;font color="#006699"&gt;&lt;strong&gt;return&lt;/strong&gt;&lt;/font&gt; &lt;font color="#cc00cc"&gt;false&lt;/font&gt;;
    &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;

    &lt;div style="border:1px solid green"&gt;&lt;font color="#6600cc"&gt;/**&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#02b902"&gt;@return&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;code&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;gt;&lt;/font&gt;&lt;font color="#6600cc"&gt;true&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;/&lt;/font&gt;&lt;font color="#0000ff"&gt;code&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;gt;&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;=&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;Of&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;course&lt;/font&gt;&lt;font color="#6600cc"&gt;!&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;*/&lt;/font&gt;
    &lt;font color="#006699"&gt;&lt;strong&gt;public&lt;/strong&gt;&lt;/font&gt; &lt;font color="#0099ff"&gt;&lt;strong&gt;boolean&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;supportsIdentity&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
        &lt;font color="#006699"&gt;&lt;strong&gt;return&lt;/strong&gt;&lt;/font&gt; &lt;font color="#cc00cc"&gt;true&lt;/font&gt;;
    &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;

    &lt;font color="#6600cc"&gt;/**&lt;/font&gt;
&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;*&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;Now&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;we&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;implement&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;the&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;another&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;missing&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;method&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;to&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;support&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;
&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;*&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;IDENTITY&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;data&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;type&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;field&lt;/font&gt;&lt;font color="#6600cc"&gt;.&lt;/font&gt;
&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;*&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#02b902"&gt;@return&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;What&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;it&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;was&lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;lacking&lt;/font&gt;&lt;font color="#6600cc"&gt;.&lt;/font&gt;
&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt; &lt;/font&gt;&lt;font color="#6600cc"&gt;*/&lt;/font&gt;
    &lt;font color="#006699"&gt;&lt;strong&gt;public&lt;/strong&gt;&lt;/font&gt; ValueReadQuery &lt;font color="#9966ff"&gt;buildSelectQueryForIdentity&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt; &lt;font color="#000000"&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/font&gt;
        ValueReadQuery selectQuery &lt;font color="#000000"&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/font&gt; &lt;font color="#006699"&gt;&lt;strong&gt;new&lt;/strong&gt;&lt;/font&gt; &lt;font color="#9966ff"&gt;ValueReadQuery&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
        selectQuery.&lt;font color="#9966ff"&gt;setSQLString&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;SELECT&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;IDENTITY()&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/font&gt;;
        &lt;font color="#006699"&gt;&lt;strong&gt;return&lt;/strong&gt;&lt;/font&gt; selectQuery;
    &lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;&lt;/div&gt;
&lt;font color="#000000"&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/font&gt;

&lt;/font&gt;&lt;/pre&gt;&lt;br&gt;
To use it, remember to config correctly your &lt;code&gt;persistence.xml&lt;/code&gt; supplying the expected property, like this:&lt;br&gt;
&lt;pre class="code"&gt;&lt;font color="#000000"&gt;&lt;font color="#0099ff"&gt;&lt;strong&gt;&amp;lt;?&lt;/strong&gt;&lt;/font&gt;&lt;font color="#0099ff"&gt;&lt;strong&gt;xml&lt;/strong&gt;&lt;/font&gt;&lt;font color="#0099ff"&gt;&lt;strong&gt; &lt;/strong&gt;&lt;/font&gt;&lt;font color="#0099ff"&gt;&lt;strong&gt;version=&amp;quot;1.0&amp;quot;&lt;/strong&gt;&lt;/font&gt;&lt;font color="#0099ff"&gt;&lt;strong&gt; &lt;/strong&gt;&lt;/font&gt;&lt;font color="#0099ff"&gt;&lt;strong&gt;encoding=&amp;quot;UTF-8&amp;quot;?&lt;/strong&gt;&lt;/font&gt;&lt;font color="#0099ff"&gt;&lt;strong&gt;&amp;gt;&lt;/strong&gt;&lt;/font&gt;
&lt;font color="#0000ff"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;persistence&lt;/font&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;version&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;1.0&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;xmlns&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;http://java.sun.com/xml/ns/persistence&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;font color="#02b902"&gt;xmlns&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;:&lt;/strong&gt;&lt;/font&gt;&lt;font color="#0000ff"&gt;xsi&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;http://www.w3.org/2001/XMLSchema-instance&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;font color="#02b902"&gt;xsi&lt;/font&gt;&lt;font color="#000000"&gt;&lt;strong&gt;:&lt;/strong&gt;&lt;/font&gt;&lt;font color="#0000ff"&gt;schemaLocation&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;http://java.sun.com/xml/ns/persistence&lt;/font&gt;&lt;font color="#ff00cc"&gt; &lt;/font&gt;&lt;font color="#ff00cc"&gt;http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;gt;&lt;/font&gt;
  &lt;font color="#0000ff"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;persistence-unit&lt;/font&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;name&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;TrilhaPU&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;transaction-type&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;RESOURCE_LOCAL&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;gt;&lt;/font&gt;
    &lt;font color="#0000ff"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;provider&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;gt;&lt;/font&gt;oracle.toplink.essentials.PersistenceProvider&lt;font color="#0000ff"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;/&lt;/font&gt;&lt;font color="#0000ff"&gt;provider&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;gt;&lt;/font&gt;
    &lt;font color="#0000ff"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;class&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;gt;&lt;/font&gt;net.marciowb.trilha.dao.Fleet&lt;font color="#0000ff"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;/&lt;/font&gt;&lt;font color="#0000ff"&gt;class&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;gt;&lt;/font&gt;
    &lt;font color="#0000ff"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;class&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;gt;&lt;/font&gt;net.marciowb.trilha.dao.Organization&lt;font color="#0000ff"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;/&lt;/font&gt;&lt;font color="#0000ff"&gt;class&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;gt;&lt;/font&gt;
    &lt;font color="#0000ff"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;class&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;gt;&lt;/font&gt;net.marciowb.trilha.dao.Terminal&lt;font color="#0000ff"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;/&lt;/font&gt;&lt;font color="#0000ff"&gt;class&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;gt;&lt;/font&gt;
    &lt;font color="#0000ff"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;class&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;gt;&lt;/font&gt;net.marciowb.trilha.dao.TerminalConfiguration&lt;font color="#0000ff"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;/&lt;/font&gt;&lt;font color="#0000ff"&gt;class&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;gt;&lt;/font&gt;
    &lt;font color="#0000ff"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;class&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;gt;&lt;/font&gt;net.marciowb.trilha.dao.TerminalHistory&lt;font color="#0000ff"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;/&lt;/font&gt;&lt;font color="#0000ff"&gt;class&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;gt;&lt;/font&gt;
    &lt;font color="#0000ff"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;class&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;gt;&lt;/font&gt;net.marciowb.trilha.dao.UserAccount&lt;font color="#0000ff"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;/&lt;/font&gt;&lt;font color="#0000ff"&gt;class&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;gt;&lt;/font&gt;
    &lt;font color="#0000ff"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;class&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;gt;&lt;/font&gt;net.marciowb.trilha.dao.Vehicle&lt;font color="#0000ff"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;/&lt;/font&gt;&lt;font color="#0000ff"&gt;class&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;gt;&lt;/font&gt;
    &lt;font color="#0000ff"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;properties&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;gt;&lt;/font&gt;
      &lt;font color="#0000ff"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;property&lt;/font&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;name&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;toplink.jdbc.user&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;value&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#0000ff"&gt;/&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;gt;&lt;/font&gt;
      &lt;font color="#0000ff"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;property&lt;/font&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;name&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;toplink.jdbc.password&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;value&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#0000ff"&gt;/&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;gt;&lt;/font&gt;
      &lt;font color="#0000ff"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;property&lt;/font&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;font color="#0000ff"&gt;name&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00cc"&gt;toplink.jdbc.url&lt;/font&gt;&lt;font color="#ff00cc"&gt;&amp