<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" gd:etag="W/&quot;DkEGR347fip7ImA9WhVUE0s.&quot;"><id>tag:blogger.com,1999:blog-7536683368061539970</id><updated>2012-05-18T21:10:26.006+03:00</updated><category term="JVM" /><category term="Lion" /><category term="GWT" /><category term="Location" /><category term="E71" /><category term="gwt-comet" /><category term="XMLHttpRequest" /><category term="Java ME" /><category term="LWUIT" /><category term="MS SQL" /><category term="Java" /><category term="NetBeans" /><category term="JDBC" /><category term="OS X" /><category term="SDK" /><category term="keytool" /><category term="SAX" /><category term="PHP" /><category term="JSR-280" /><category term="certificate" /><category term="IE" /><category term="code signing" /><category term="Comet" /><category term="jadtool" /><category term="keystore" /><category term="Offtopic" /><category term=".NET" /><category term="eBook" /><title>j2start.com</title><subtitle type="html">This blog is dedicated to Java and related technologies. Sign your Java ME code here.</subtitle><link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://www.j2start.com/feeds/posts/default" /><link rel="alternate" type="text/html" href="http://www.j2start.com/" /><author><name>Yuri Plaksyuk</name><uri>http://www.blogger.com/profile/07616690366866871099</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://3.bp.blogspot.com/_MEMWFsw3dWY/StLikbk9IsI/AAAAAAAAGFU/_7yTLGFQXjo/S220/Me.jpg" /></author><generator version="7.00" uri="http://www.blogger.com">Blogger</generator><openSearch:totalResults>11</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="http://feeds.feedburner.com/J2startcom" /><feedburner:info uri="j2startcom" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><entry gd:etag="W/&quot;CEAHQHk_cCp7ImA9WhVWFUs.&quot;"><id>tag:blogger.com,1999:blog-7536683368061539970.post-1820909343115352468</id><published>2012-04-28T00:38:00.000+03:00</published><updated>2012-04-28T00:38:51.748+03:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-04-28T00:38:51.748+03:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="certificate" /><category scheme="http://www.blogger.com/atom/ns#" term="Java ME" /><category scheme="http://www.blogger.com/atom/ns#" term="code signing" /><category scheme="http://www.blogger.com/atom/ns#" term="keystore" /><title>New Java code signing certificate</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
Finally we have succeeded to obtain Java code signing certificate for the next year. This is &lt;a href="http://www.thawte.com/" target="_blank"&gt;Thawte&lt;/a&gt; certificate. Its validity &amp;nbsp;period is &lt;b&gt;Apr 27, 2012 - Apr 28, 2013&lt;/b&gt;. This is great news!&lt;br /&gt;
&lt;br /&gt;
Now you can easily sign your Java ME applications and install it to your headsets. We plan to improve our signing procedure by providing OTA deployment directly to your headset.&lt;br /&gt;
&lt;br /&gt;
We also hope you will support this project with your donations, because certificates are quite expensive.&lt;br /&gt;
&lt;br /&gt;
Please, stay in touch with us. Follow us on &lt;a href="http://twitter.com/j2start" target="_blank"&gt;@j2start&lt;/a&gt;. &amp;nbsp;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7536683368061539970-1820909343115352468?l=www.j2start.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/Idm-qhKtCxKlVFvmx3dK4wOjx8M/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Idm-qhKtCxKlVFvmx3dK4wOjx8M/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/Idm-qhKtCxKlVFvmx3dK4wOjx8M/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Idm-qhKtCxKlVFvmx3dK4wOjx8M/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/J2startcom/~4/wLPMwifFp0E" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.j2start.com/feeds/1820909343115352468/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.j2start.com/2012/04/new-java-code-signing-certificate.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7536683368061539970/posts/default/1820909343115352468?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7536683368061539970/posts/default/1820909343115352468?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/J2startcom/~3/wLPMwifFp0E/new-java-code-signing-certificate.html" title="New Java code signing certificate" /><author><name>Yuri Plaksyuk</name><uri>http://www.blogger.com/profile/07616690366866871099</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://3.bp.blogspot.com/_MEMWFsw3dWY/StLikbk9IsI/AAAAAAAAGFU/_7yTLGFQXjo/S220/Me.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://www.j2start.com/2012/04/new-java-code-signing-certificate.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C08FRX0_eyp7ImA9WhVTFE8.&quot;"><id>tag:blogger.com,1999:blog-7536683368061539970.post-5030006044931439513</id><published>2012-02-28T11:36:00.002+02:00</published><updated>2012-02-28T11:36:54.343+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-02-28T11:36:54.343+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="OS X" /><category scheme="http://www.blogger.com/atom/ns#" term="MS SQL" /><category scheme="http://www.blogger.com/atom/ns#" term="JDBC" /><title>MS SQL JDBC under Mac OS X</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
Those who use MS SQL JDBC driver under Mac OS X must know this. There is a bug in Java socket implementation of Java version 1.6.0_29 distribution for Mac OS X, which prevents MS SQL JDBC driver to connect to SQL Server.&lt;br /&gt;
&lt;br /&gt;
Hope this will be fixed in the next release. By now you can use &lt;a href="http://jtds.sourceforge.net/" target="_blank"&gt;jTDS driver&lt;/a&gt; instead. Driver's class name is &lt;i&gt;net.sourceforge.jtds.jdbc.Driver&lt;/i&gt;. Connection URL looks like this:&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: Verdana, sans-serif;"&gt;jdbc:jtds:sqlserver://&lt;i&gt;host&lt;/i&gt;:&lt;i&gt;port&lt;/i&gt;/&lt;i&gt;database&lt;/i&gt;;user=&lt;i&gt;user&lt;/i&gt;;password=&lt;i&gt;password&lt;/i&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
See details &lt;a href="http://stackoverflow.com/questions/8127117/sqljdbc4-hangs-after-update-to-apple-java-for-mac-os-x-10-6-update-6" target="_blank"&gt;here&lt;/a&gt;.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7536683368061539970-5030006044931439513?l=www.j2start.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/hvtYOeoqeC1A0tPbEYCi9sDzupk/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/hvtYOeoqeC1A0tPbEYCi9sDzupk/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/hvtYOeoqeC1A0tPbEYCi9sDzupk/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/hvtYOeoqeC1A0tPbEYCi9sDzupk/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/J2startcom/~4/fwghblsBUis" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.j2start.com/feeds/5030006044931439513/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.j2start.com/2012/02/ms-sql-jdbc-under-mac-os-x.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7536683368061539970/posts/default/5030006044931439513?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7536683368061539970/posts/default/5030006044931439513?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/J2startcom/~3/fwghblsBUis/ms-sql-jdbc-under-mac-os-x.html" title="MS SQL JDBC under Mac OS X" /><author><name>Yuri Plaksyuk</name><uri>http://www.blogger.com/profile/07616690366866871099</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://3.bp.blogspot.com/_MEMWFsw3dWY/StLikbk9IsI/AAAAAAAAGFU/_7yTLGFQXjo/S220/Me.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://www.j2start.com/2012/02/ms-sql-jdbc-under-mac-os-x.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEUMQXg6eyp7ImA9WhVTEUQ.&quot;"><id>tag:blogger.com,1999:blog-7536683368061539970.post-7811374623749309930</id><published>2012-02-25T20:55:00.000+02:00</published><updated>2012-02-25T20:58:00.613+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-02-25T20:58:00.613+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="PHP" /><category scheme="http://www.blogger.com/atom/ns#" term="OS X" /><category scheme="http://www.blogger.com/atom/ns#" term="MS SQL" /><category scheme="http://www.blogger.com/atom/ns#" term="Offtopic" /><category scheme="http://www.blogger.com/atom/ns#" term="Lion" /><title>PHP with MS SQL under OS X (Lion)</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
I faced a problem to connect MS SQL from PHP under OS X (Lion). I didn't think it is a problem, because I'm not the only who needs this. So, googling the Internet gave me the article&amp;nbsp;&lt;a href="http://www.screensugar.co.uk/2010/12/php-with-mssql-on-mac-os-x-snow-leopard/" target="_blank"&gt;PHP with MSSQL on Mac OS X Snow Leopard&lt;/a&gt;. It was my starting point.&lt;br /&gt;
&lt;br /&gt;
In order to complete the task you need to follow these steps. First, you need to prepare your system environment. You need to upgrade your system (OS X Lion) to version 10.7.3. This can be easily done by choosing Apple icon from menu bar and then selecting &lt;b&gt;Software Update...&lt;/b&gt;.&lt;br /&gt;
&lt;br /&gt;
Why you need this? Because Xcode command line tools require system version 10.7.3. Meanwhile, in order to download command line tools you need to become a member of Apple Developers. Don't&amp;nbsp;worry! It's free. Just register yourself at &lt;a href="http://developer.apple.com/"&gt;developer.apple.com&lt;/a&gt;. Then you need to download and install Xcode command line tools from &lt;a href="https://developer.apple.com/downloads/index.action" target="_blank"&gt;this page&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
Unfortunately, latest command line tools do not include autoconf/automake utilities. So, I've been forced to download, compile and install them myself. This is quite easy (when you know how to do this ;-)&lt;br /&gt;
&lt;br /&gt;
I have downloaded the latest sources from&amp;nbsp;&lt;a href="http://ftp.gnu.org/gnu/autoconf/"&gt;http://ftp.gnu.org/gnu/autoconf/&lt;/a&gt;. In my case there was &lt;b&gt;autoconf-2.68.tar.gz&lt;/b&gt;. Then unpack it using Finder and execute these commands in Terminal:&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;$ cd Downloads/autoconf-2.68&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;$ ./configure&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;$ sudo make install&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
The autoconf utilities will be installed in &lt;b&gt;/usr/local/bin&lt;/b&gt; by default, which is pretty good, because allows you distinguish them from system distribution.&lt;br /&gt;
&lt;br /&gt;
Only after these steps you have to perform actions described in article&amp;nbsp;&lt;a href="http://www.screensugar.co.uk/2010/12/php-with-mssql-on-mac-os-x-snow-leopard/" target="_blank"&gt;PHP with MSSQL on Mac OS X Snow Leopard&lt;/a&gt;&amp;nbsp;in order to make PHP be able to connect MS SQL Server.&lt;br /&gt;
&lt;br /&gt;
Good luck!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7536683368061539970-7811374623749309930?l=www.j2start.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/4vxnq5jYi6ZkMhjZwfwnrGjZObo/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/4vxnq5jYi6ZkMhjZwfwnrGjZObo/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/4vxnq5jYi6ZkMhjZwfwnrGjZObo/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/4vxnq5jYi6ZkMhjZwfwnrGjZObo/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/J2startcom/~4/x2v5UN8Xfq0" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.j2start.com/feeds/7811374623749309930/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.j2start.com/2012/02/php-with-ms-sql-under-os-x-lion.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7536683368061539970/posts/default/7811374623749309930?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7536683368061539970/posts/default/7811374623749309930?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/J2startcom/~3/x2v5UN8Xfq0/php-with-ms-sql-under-os-x-lion.html" title="PHP with MS SQL under OS X (Lion)" /><author><name>Yuri Plaksyuk</name><uri>http://www.blogger.com/profile/07616690366866871099</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://3.bp.blogspot.com/_MEMWFsw3dWY/StLikbk9IsI/AAAAAAAAGFU/_7yTLGFQXjo/S220/Me.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://www.j2start.com/2012/02/php-with-ms-sql-under-os-x-lion.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkAFSXo_eip7ImA9WhRWFkw.&quot;"><id>tag:blogger.com,1999:blog-7536683368061539970.post-7216894472082821530</id><published>2012-01-03T21:25:00.000+02:00</published><updated>2012-01-03T21:25:18.442+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-01-03T21:25:18.442+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Java" /><category scheme="http://www.blogger.com/atom/ns#" term=".NET" /><category scheme="http://www.blogger.com/atom/ns#" term="JVM" /><title>Java under .NET</title><content type="html">There is an interesting project - &lt;a href="http://www.ikvm.net/" target="_blank"&gt;IKVM.NET&lt;/a&gt; - which includes JVM implementation in .NET. So, it is very easy both to run Java application under .NET (Mono) environment or to compile Java libraries and applications into .NET executables.&lt;br /&gt;
&lt;br /&gt;
For example, in order to run Java application instead of using:&lt;br /&gt;
&lt;blockquote class="tr_bq"&gt;
java -jar Application.jar&lt;/blockquote&gt;
you have to use:&lt;br /&gt;
&lt;blockquote class="tr_bq"&gt;
ikvm -jar Application.jar&lt;/blockquote&gt;
&lt;br /&gt;
To compile Java library into .NET DLL use:&lt;br /&gt;
&lt;blockquote class="tr_bq"&gt;
ikvmc -target:library Library.jar&lt;/blockquote&gt;
And finally, in order to convert your Java application into .NET executable, run:&lt;br /&gt;
&lt;blockquote class="tr_bq"&gt;
ikvmc - target:exe Application.jar&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7536683368061539970-7216894472082821530?l=www.j2start.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/VqEzW4FpjUK9rehcy_3vngol-AI/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/VqEzW4FpjUK9rehcy_3vngol-AI/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/VqEzW4FpjUK9rehcy_3vngol-AI/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/VqEzW4FpjUK9rehcy_3vngol-AI/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/J2startcom/~4/RurEuj1FTHs" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.j2start.com/feeds/7216894472082821530/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.j2start.com/2012/01/java-under-net.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7536683368061539970/posts/default/7216894472082821530?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7536683368061539970/posts/default/7216894472082821530?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/J2startcom/~3/RurEuj1FTHs/java-under-net.html" title="Java under .NET" /><author><name>Yuri Plaksyuk</name><uri>http://www.blogger.com/profile/07616690366866871099</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://3.bp.blogspot.com/_MEMWFsw3dWY/StLikbk9IsI/AAAAAAAAGFU/_7yTLGFQXjo/S220/Me.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://www.j2start.com/2012/01/java-under-net.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkUDRn4zfCp7ImA9WhRXGEw.&quot;"><id>tag:blogger.com,1999:blog-7536683368061539970.post-9082840427016805671</id><published>2011-12-25T15:04:00.000+02:00</published><updated>2011-12-25T15:04:37.084+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-12-25T15:04:37.084+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="GWT" /><category scheme="http://www.blogger.com/atom/ns#" term="XMLHttpRequest" /><category scheme="http://www.blogger.com/atom/ns#" term="IE" /><category scheme="http://www.blogger.com/atom/ns#" term="gwt-comet" /><category scheme="http://www.blogger.com/atom/ns#" term="Comet" /><title>Custom CometTransport implementation for IE</title><content type="html">In our &lt;a href="http://code.google.com/webtoolkit/" target="_blank"&gt;GWT&lt;/a&gt; web application we use &lt;a href="http://code.google.com/p/gwt-comet/" target="_blank"&gt;gwt-comet&lt;/a&gt; library for Comet support. Unfortunately, it is not reliable under IE. For some reason it gets stuck. So, the solution was to implement custom &lt;i&gt;CometTransport&lt;/i&gt; for IE using &lt;i&gt;XMLHttpRequest&lt;/i&gt; object.&lt;br /&gt;
&lt;br /&gt;
While,&amp;nbsp;&lt;a href="http://code.google.com/p/gwt-comet/" target="_blank"&gt;gwt-comet&lt;/a&gt;&amp;nbsp;contains &lt;i&gt;CometTransport&lt;/i&gt; implementation based on &lt;i&gt;XMLHttpRequest&lt;/i&gt; (&lt;i&gt;HTTPRequestCometTransport&lt;/i&gt;), &lt;i&gt;IEHTMLFileCometTransport&lt;/i&gt; is designed specifically for IE.&amp;nbsp;&lt;i&gt;HTTPRequestCometTransport&lt;/i&gt; doesn't work for IE, because &lt;i&gt;XMLHttpRequest&lt;/i&gt; behavior is different from that expected in&amp;nbsp;&lt;i&gt;HTTPRequestCometTransport&lt;/i&gt;. Particularly,&amp;nbsp;&lt;i&gt;HTTPRequestCometTransport&lt;/i&gt; expects partial content loading and handling through &lt;i&gt;onReadyStateChange&lt;/i&gt; event delivering with &lt;i&gt;readyState&lt;/i&gt; = 3 (LOADING). IE doesn't support this, i.e. it doesn't return partially loaded content, but rather empty string.&lt;br /&gt;
&lt;br /&gt;
Our custom implementation doesn't use partial loading. Once event is sent to the client, the connection is terminated. Then the transport initiates connection again waiting for ongoing messages.&lt;br /&gt;
&lt;br /&gt;
There was also need to patch server side protocol. So, we have forced to override &lt;i&gt;CometServlet&lt;/i&gt; class in order to create custom servlet response object - &lt;i&gt;IERequestCometServletResponse&lt;/i&gt;. Below is a code:&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;IECometTransport.java&lt;/b&gt;&lt;br /&gt;
&lt;pre class="brush:java"&gt;package com.j2start.webapp.client.comet;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;

import com.google.gwt.core.client.JavaScriptException;

import com.google.gwt.dom.client.NativeEvent;
import com.google.gwt.event.dom.client.KeyCodes;
import com.google.gwt.event.dom.client.KeyDownEvent;

import com.google.gwt.http.client.Response;
import com.google.gwt.http.client.RequestException;

import com.google.gwt.regexp.shared.RegExp;
import com.google.gwt.regexp.shared.SplitResult;

import com.google.gwt.user.client.Event;
import com.google.gwt.user.client.Event.NativePreviewEvent;
import com.google.gwt.user.client.Event.NativePreviewHandler;
import com.google.gwt.user.client.rpc.StatusCodeException;

import com.google.gwt.xhr.client.XMLHttpRequest;
import com.google.gwt.xhr.client.ReadyStateChangeHandler;

import net.zschech.gwt.comet.client.impl.RawDataCometTransport;

/**
 * 
 * @author y_plaksyuk
 */
public class IECometTransport extends RawDataCometTransport {
 private static final String SEPARATOR = "\n";
 private static RegExp separator;

 private boolean connected = false;

 static {
  Event.addNativePreviewHandler(new NativePreviewHandler() {
   @Override
   public void onPreviewNativeEvent(NativePreviewEvent e) {
    if (e.getTypeInt() == Event.getTypeInt(KeyDownEvent.getType().getName())) {
     NativeEvent nativeEvent = e.getNativeEvent();
     if (nativeEvent.getKeyCode() == KeyCodes.KEY_ESCAPE) {
      nativeEvent.preventDefault();
     }
    }
   }
  });
  separator = RegExp.compile(SEPARATOR);
 }

 private XMLHttpRequest xmlHttpRequest;

 @Override
 public void connect(int connectionCount) {
  super.connect(connectionCount);

  xmlHttpRequest = XMLHttpRequest.create();
  try {
   xmlHttpRequest.open("GET", getUrl(connectionCount));
   xmlHttpRequest.setRequestHeader("Accept", "application/comet+ie");
   xmlHttpRequest.setOnReadyStateChange(new ReadyStateChangeHandler() {
    @Override
    public void onReadyStateChange(XMLHttpRequest request) {
     if (!disconnecting) {
      if (!connected) {
       onReceiving(Response.SC_OK, "!15000\n"); // TODO: hardcoded default value
       connected = true;
      }

      if (request.getReadyState() == XMLHttpRequest.DONE)
       onLoaded(request.getStatus(), request.getResponseText());
     }
    }
   });
   xmlHttpRequest.send();
  }
  catch (JavaScriptException e) {
   cleanupHttpRequest(false);

   listener.onError(new RequestException(e.getMessage()), false);
  }
 }

 @Override
 public void disconnect() {
  super.disconnect();
  cleanupHttpRequest(true);
 }

 private void onLoaded(int statusCode, String responseText) {
  onReceiving(statusCode, responseText, false);
 }

 private void onReceiving(int statusCode, String responseText) {
  onReceiving(statusCode, responseText, true);
 }

 private void onReceiving(int statusCode, String responseText, boolean connected) {
  if (!connected)
   cleanupHttpRequest(false);

  if (statusCode != Response.SC_OK) {
   if (!connected) {
    super.disconnect();
    listener.onError(new StatusCodeException(statusCode, responseText), connected);
   }
  }
  else {
   List&amp;lt;serializable&amp;gt; messages = new ArrayList&amp;lt;serializable&amp;gt;();

   SplitResult data = separator.split(responseText);
   int length = data.length();
   for (int i = 0; i &amp;lt; length; i++) {
    if (disconnecting) {
     return;
    }

    String message = data.get(i);
    if (!message.isEmpty()) {
     parse(message, messages);
    }
   }

   if (!messages.isEmpty())
    listener.onMessage(messages);

   if (!connected) {
    super.disconnect();
    super.disconnected();
   }
  }
 }

 private void cleanupHttpRequest(boolean abort) {
  if (xmlHttpRequest != null) {
   if (abort)
    xmlHttpRequest.abort();

   xmlHttpRequest.clearOnReadyStateChange();
   xmlHttpRequest = null;
  }

  connected = false;
 }
}&lt;/pre&gt;
&lt;br /&gt;
&lt;b&gt;IERequestCometServletResponse.java&lt;/b&gt;&lt;br /&gt;
&lt;pre class="brush:java"&gt;package com.j2start.webapp.server.comet;

import java.util.List;
import java.io.IOException;
import java.io.Serializable;
import java.io.OutputStream;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.google.gwt.rpc.server.ClientOracle;
import com.google.gwt.user.server.rpc.SerializationPolicy;

import net.zschech.gwt.comet.server.impl.AsyncServlet;
import net.zschech.gwt.comet.server.impl.HTTPRequestCometServletResponse;

/**
 *
 * @author y_plaksyuk
 */
public class IERequestCometServletResponse extends HTTPRequestCometServletResponse {

 public IERequestCometServletResponse(
   HttpServletRequest request,
   HttpServletResponse response,
   SerializationPolicy serializationPolicy,
   ClientOracle clientOracle,
   CometServlet servlet,
   AsyncServlet async,
   int heartbeat) {

  super(request, response, serializationPolicy, clientOracle, servlet, async, heartbeat);
 }

 @Override
 protected void doInitiate(int heartbeat) throws IOException {
  // client will imitate receiving 'initiate' command itself
 }

 @Override
 protected void doTerminate() throws IOException {
  // don't send anything, in some cases write stream is already closed
 }

 ////////////////////////////////////////////////////////////////////////////////////////////////

 @Override
 public synchronized void write(List messages, boolean flush) throws IOException {
  super.write(messages, flush);
  flushAndTerminate();
 }

 @Override
 public synchronized void heartbeat() throws IOException {
  super.heartbeat();
  flushAndTerminate();
 }

 private void flushAndTerminate() throws IOException {
  writer.flush();
  writer.close();

  OutputStream os = getAsyncOutputStream();
  os.flush();
  os.close();

  try {
   terminate();
  }
  catch (IOException ex) {
  }
 }
}&lt;/pre&gt;
&lt;br /&gt;
&lt;b&gt;CometServlet.java&lt;/b&gt;&lt;br /&gt;
&lt;pre class="brush:java"&gt;package com.j2start.webapp.server.comet;

import java.io.IOException;

import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.google.gwt.rpc.server.ClientOracle;
import com.google.gwt.user.server.rpc.SerializationPolicy;

import net.zschech.gwt.comet.server.impl.AsyncServlet;
import net.zschech.gwt.comet.server.impl.CometServletResponseImpl;
import net.zschech.gwt.comet.server.impl.EventSourceCometServletResponse;
import net.zschech.gwt.comet.server.impl.HTTPRequestCometServletResponse;
import net.zschech.gwt.comet.server.impl.IEHTMLFileCometServletResponse;
import net.zschech.gwt.comet.server.impl.OperaEventSourceCometServletResponse;

/**
 *
 * @author y_plaksyuk
 */
public class CometServlet extends net.zschech.gwt.comet.server.CometServlet {
 private transient AsyncServlet async;

 @Override
 public void init() throws ServletException {
  ServletConfig servletConfig = getServletConfig();
  String heartbeatValue = servletConfig.getInitParameter("heartbeat");
  if (heartbeatValue != null)
   setHeartbeat(Integer.parseInt(heartbeatValue));

  async = AsyncServlet.initialize(getServletContext());
 }

 @Override
 protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  try {
   int requestHeartbeat = getHeartbeat();
   String requestedHeartbeat = request.getParameter("heartbeat");
   if (requestedHeartbeat != null) {
    try {
     requestHeartbeat = Integer.parseInt(requestedHeartbeat);
     if (requestHeartbeat &amp;lt;= 0) {
      throw new IOException("invalid heartbeat parameter");
     }
    }
    catch (NumberFormatException ex) {
     throw new IOException("invalid heartbeat parameter");
    }
   }

   ClientOracle clientOracle = getClientOracle(request);
   SerializationPolicy serializationPolicy = clientOracle == null ? createSerializationPolicy() : null;
   CometServletResponseImpl cometServletResponse = createCometServletResponse(request, response, serializationPolicy, clientOracle, requestHeartbeat);
   doCometImpl(cometServletResponse);
  }
  catch (IOException e) {
   CometServletResponseImpl cometServletResponse = createCometServletResponse(request, response, null, null, 0);
   cometServletResponse.sendError(HttpServletResponse.SC_BAD_REQUEST, e.getMessage());
  }
 }

 private CometServletResponseImpl createCometServletResponse(
   HttpServletRequest request,
   HttpServletResponse response,
   SerializationPolicy serializationPolicy,
   ClientOracle clientOracle,
   int requestHeartbeat) {

  String accept = request.getHeader("Accept");
  String userAgent = request.getHeader("User-Agent");
  if ("text/event-stream".equals(accept)) {
   return new EventSourceCometServletResponse(request, response, serializationPolicy,
     clientOracle, this, async, requestHeartbeat);
  }
  else if ("application/comet+ie".equals(accept)) {
   return new IERequestCometServletResponse(request, response, serializationPolicy,
     clientOracle, this, async, requestHeartbeat);
  }
  else if ("application/comet".equals(accept)) {
   return new HTTPRequestCometServletResponse(request, response, serializationPolicy,
     clientOracle, this, async, requestHeartbeat);
  }
  else if (userAgent != null &amp;amp;&amp;amp; userAgent.contains("Opera")) {
   return new OperaEventSourceCometServletResponse(request, response, serializationPolicy,
     clientOracle, this, async, requestHeartbeat);
  }
  else {
   return new IEHTMLFileCometServletResponse(request, response, serializationPolicy,
     clientOracle, this, async, requestHeartbeat);
  }
 }

 private void doCometImpl(CometServletResponseImpl response) throws IOException {
  try {
   // setup the request
   response.initiate();

   // call the application code
   doComet(response);
  }
  catch (IOException e) {
   log("Error calling doComet()", e);
   response.sendError(HttpServletResponse.SC_INTERNAL_SERVER_ERROR, e.getMessage());
  }
  catch (ServletException e) {
   log("Error calling doComet()", e);
   response.sendError(HttpServletResponse.SC_INTERNAL_SERVER_ERROR, e.getMessage());
  }

  try {
   // at this point the application may have spawned threads to process this response
   // so we have to be careful about concurrency from here on
   response.suspend();
  }
  catch (Exception ex) {
   log("Error calling response.suspend(): " + ex.getMessage());
//   response.terminate();
  }
 }
}
&lt;/pre&gt;
&lt;br /&gt;
You also need to update your GWT module XML file:&lt;br /&gt;
&lt;pre class="brush:xml"&gt;&lt;module&gt;
 ...
 &lt;inherits name="net.zschech.gwt.comet.Comet"&gt;&lt;/inherits&gt;
 &lt;replace-with class="com.j2start.webapp.client.comet.IECometTransport"&gt;
  &lt;when-type-is class="net.zschech.gwt.comet.client.impl.CometTransport"&gt;&lt;/when-type-is&gt;
  &lt;any&gt;
   &lt;when-property-is name="user.agent" value="ie6"&gt;&lt;/when-property-is&gt;
   &lt;when-property-is name="user.agent" value="ie8"&gt;&lt;/when-property-is&gt;
  &lt;/any&gt;
 &lt;/replace-with&gt;
&lt;/module&gt;&lt;/pre&gt;
&lt;br /&gt;
And substitute CometServlet with our own implementation in &lt;b&gt;web.xml&lt;/b&gt;:&lt;br /&gt;
&lt;pre class="brush:xml"&gt;&lt;web-app version="3.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemalocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"&gt;
    &lt;session-config&gt;
        &lt;session-timeout&gt;30&lt;/session-timeout&gt;
    &lt;/session-config&gt;
    &lt;welcome-file-list&gt;
        &lt;welcome-file&gt;index.html&lt;/welcome-file&gt;
    &lt;/welcome-file-list&gt;
    &lt;listener&gt;
        &lt;description&gt;Listener for shutting down the comet processor when the ServletContext is destroyed.&lt;/description&gt;
        &lt;listener-class&gt;net.zschech.gwt.comet.server.CometServletContextListener&lt;/listener-class&gt;
    &lt;/listener&gt;
    &lt;listener&gt;
        &lt;description&gt;Listener for invalidating CometSessions when HTTPSessions are invalidated.&lt;/description&gt;
        &lt;listener-class&gt;net.zschech.gwt.comet.server.CometHttpSessionListener&lt;/listener-class&gt;
    &lt;/listener&gt;
    &lt;servlet&gt;
        &lt;servlet-name&gt;cometServlet&lt;/servlet-name&gt;
        &lt;servlet-class&gt;com.j2start.webapp.server.comet.CometServlet&lt;/servlet-class&gt;
    &lt;/servlet&gt;
    &lt;servlet-mapping&gt;
        &lt;servlet-name&gt;cometServlet&lt;/servlet-name&gt;
        &lt;url-pattern&gt;/com.j2start.webapp.Main/comet&lt;/url-pattern&gt;
    &lt;/servlet-mapping&gt;
&lt;/web-app&gt;
&lt;/pre&gt;
&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7536683368061539970-9082840427016805671?l=www.j2start.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/mvg9rkA00Y0NmgCyonEdG9bGF9s/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/mvg9rkA00Y0NmgCyonEdG9bGF9s/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/mvg9rkA00Y0NmgCyonEdG9bGF9s/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/mvg9rkA00Y0NmgCyonEdG9bGF9s/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/J2startcom/~4/A8ZWwYsXU_o" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.j2start.com/feeds/9082840427016805671/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.j2start.com/2011/12/custom-comettransport-implementation.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7536683368061539970/posts/default/9082840427016805671?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7536683368061539970/posts/default/9082840427016805671?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/J2startcom/~3/A8ZWwYsXU_o/custom-comettransport-implementation.html" title="Custom CometTransport implementation for IE" /><author><name>Yuri Plaksyuk</name><uri>http://www.blogger.com/profile/07616690366866871099</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://3.bp.blogspot.com/_MEMWFsw3dWY/StLikbk9IsI/AAAAAAAAGFU/_7yTLGFQXjo/S220/Me.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://www.j2start.com/2011/12/custom-comettransport-implementation.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkUHSHoyfyp7ImA9WhRWF0w.&quot;"><id>tag:blogger.com,1999:blog-7536683368061539970.post-4484582114891027538</id><published>2011-12-19T13:39:00.000+02:00</published><updated>2012-01-04T22:50:39.497+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-01-04T22:50:39.497+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="certificate" /><category scheme="http://www.blogger.com/atom/ns#" term="keytool" /><category scheme="http://www.blogger.com/atom/ns#" term="Java ME" /><category scheme="http://www.blogger.com/atom/ns#" term="code signing" /><category scheme="http://www.blogger.com/atom/ns#" term="jadtool" /><category scheme="http://www.blogger.com/atom/ns#" term="keystore" /><title>Steps to sign your MIDlet</title><content type="html">When you decide to obtain your own certificate to sign your code, you have to make the following steps:&lt;br /&gt;
&lt;br /&gt;
Step 1. Create a keystore:&lt;br /&gt;
&lt;blockquote class="tr_bq"&gt;
&lt;b&gt;keytool&lt;/b&gt; -genkey -keyalg rsa -keystore &lt;i&gt;keystore&lt;/i&gt; -alias &lt;i&gt;alias&lt;/i&gt;&lt;/blockquote&gt;
Step 2. Generate a Certificate Signing Request (CSR) for enrollment process:&lt;br /&gt;
&lt;blockquote class="tr_bq"&gt;
&lt;b&gt;keytool&lt;/b&gt; -certreq -file certreq.csr -keystore &lt;i&gt;keystore&lt;/i&gt; -alias &lt;i&gt;alias&lt;/i&gt;&lt;/blockquote&gt;
Step&amp;nbsp;3: Import digital ID (certificate) into the keystore:&lt;br /&gt;
&lt;blockquote class="tr_bq"&gt;
&lt;b&gt;keytool&lt;/b&gt; -import -trustcacerts -keystore &lt;i&gt;keystore&lt;/i&gt; -alias &lt;i&gt;alias&lt;/i&gt; -file cert.cer&lt;/blockquote&gt;
Once you have the certificate in the keystore, register it in your IDE in order to sign your projects. You may also perform signing manually:&lt;br /&gt;
&lt;blockquote class="tr_bq"&gt;
&lt;b&gt;jadtool&lt;/b&gt; -addcert -alias &lt;i&gt;alias&lt;/i&gt; [ -keystore &lt;i&gt;keystore&lt;/i&gt; ] [ -storepass &lt;i&gt;password&lt;/i&gt; ] -inputjad &lt;i&gt;inputJadFile&lt;/i&gt; -outputjad &lt;i&gt;outputJadFile&lt;/i&gt;&lt;br /&gt;
&lt;b&gt;jadtool&lt;/b&gt;&amp;nbsp;-addjarsig [ -jarfile &lt;i&gt;jarFile&lt;/i&gt; ] -alias &lt;i&gt;alias&lt;/i&gt; [ -keystore &lt;i&gt;keystore&lt;/i&gt; ] -storepass &lt;i&gt;password&lt;/i&gt; -keypass &lt;i&gt;password&lt;/i&gt; -inputjad &lt;i&gt;inputJadFile&lt;/i&gt; -outputjad &lt;i&gt;outputJadFile&lt;/i&gt;&lt;/blockquote&gt;
&lt;br /&gt;
Notice, you may also sign your MIDlet free of charge &lt;a href="http://www.j2start.com/p/sign-your-midlet.html" target=""&gt;here&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7536683368061539970-4484582114891027538?l=www.j2start.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/QTw2_INaPEx9tm5NGuJEEVmALwY/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/QTw2_INaPEx9tm5NGuJEEVmALwY/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/QTw2_INaPEx9tm5NGuJEEVmALwY/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/QTw2_INaPEx9tm5NGuJEEVmALwY/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/J2startcom/~4/x8yNT3RSfwc" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.j2start.com/feeds/4484582114891027538/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.j2start.com/2011/12/steps-to-sign-your-midlet.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7536683368061539970/posts/default/4484582114891027538?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7536683368061539970/posts/default/4484582114891027538?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/J2startcom/~3/x8yNT3RSfwc/steps-to-sign-your-midlet.html" title="Steps to sign your MIDlet" /><author><name>Yuri Plaksyuk</name><uri>http://www.blogger.com/profile/07616690366866871099</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://3.bp.blogspot.com/_MEMWFsw3dWY/StLikbk9IsI/AAAAAAAAGFU/_7yTLGFQXjo/S220/Me.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://www.j2start.com/2011/12/steps-to-sign-your-midlet.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUMAQHozfip7ImA9WhRXEUg.&quot;"><id>tag:blogger.com,1999:blog-7536683368061539970.post-5441512503618471249</id><published>2011-12-17T22:24:00.000+02:00</published><updated>2011-12-17T22:24:01.486+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-12-17T22:24:01.486+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Java ME" /><category scheme="http://www.blogger.com/atom/ns#" term="LWUIT" /><title>Against LWUIT</title><content type="html">In the Oracle's &lt;a href="http://www.oracle.com/us/technologies/java/lwuit-datasheet-167821.pdf" target="_blank"&gt;LWUIT Datasheet&lt;/a&gt; we read that LWUIT provides:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Smart User Interface Technology for Everyone&lt;/li&gt;
&lt;li&gt;Portability and Broad Device Support&lt;/li&gt;
&lt;li&gt;Small Footprint API&lt;/li&gt;
&lt;li&gt;Web Support&lt;/li&gt;
&lt;li&gt;Themes&lt;/li&gt;
&lt;li&gt;... and so on, and so on...&lt;/li&gt;
&lt;/ul&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
An existence of LWUIT conflicts with a Java slogan "Write once, Run everywhere"! Why Java ME developers need to use LWUIT instead of using raw UI API? It looks like LWUIT goes the same way Swing did against native AWT.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
However, in case of Swing there was possible to have a few LAF implementations that make Swing app look natively under host OS. So, app user couldn't see difference. It is not a case for LWUIT. They even do not declare it as a goal. With LWUIT Java ME apps will be like colorful fish in the aquarium...&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
I'd better insist developers to use native UI API and develop techniques to make apps look better and consistent with native headset UI and theme.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7536683368061539970-5441512503618471249?l=www.j2start.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/Od5JoguzktqKF3jx5O_D_20kJws/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Od5JoguzktqKF3jx5O_D_20kJws/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/Od5JoguzktqKF3jx5O_D_20kJws/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Od5JoguzktqKF3jx5O_D_20kJws/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/J2startcom/~4/L_rWLfK_T5A" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.j2start.com/feeds/5441512503618471249/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.j2start.com/2011/12/against-lwuit.html#comment-form" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7536683368061539970/posts/default/5441512503618471249?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7536683368061539970/posts/default/5441512503618471249?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/J2startcom/~3/L_rWLfK_T5A/against-lwuit.html" title="Against LWUIT" /><author><name>Yuri Plaksyuk</name><uri>http://www.blogger.com/profile/07616690366866871099</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://3.bp.blogspot.com/_MEMWFsw3dWY/StLikbk9IsI/AAAAAAAAGFU/_7yTLGFQXjo/S220/Me.jpg" /></author><thr:total>1</thr:total><feedburner:origLink>http://www.j2start.com/2011/12/against-lwuit.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkUAQXw9eyp7ImA9WhRQE0U.&quot;"><id>tag:blogger.com,1999:blog-7536683368061539970.post-1481886499168656987</id><published>2011-12-09T00:37:00.001+02:00</published><updated>2011-12-09T00:44:00.263+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-12-09T00:44:00.263+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Location" /><category scheme="http://www.blogger.com/atom/ns#" term="Java ME" /><title>How to track location</title><content type="html">I would like to publish a sample code for tracking location on Java ME platform.&lt;br /&gt;
&lt;br /&gt;
&lt;pre class="brush:java"&gt;import javax.microedition.location.*;

public class LocationManager implements Runnable, LocationListener {
    private static final double DISTANCE = 100;

    private LocationProvider provider;
    private Location location;
    private Coordinates recentCoordinates;

    private int state = LocationProvider.TEMPORARILY_UNAVAILABLE;

    public LocationManager() {
        Thread thread = new Thread(this);
        thread.start();
    }

    public double getLatitude() {
        return location != null ? location.getQualifiedCoordinates().getLatitude() : 0;
    }

    public double getLongitude() {
        return location != null ? location.getQualifiedCoordinates().getLongitude() : 0;
    }

    ////////////////////////////////////////////////////////////////////////////

    public void locationUpdated(LocationProvider lp, Location location) {
        Coordinates currentCoordinates = location.getQualifiedCoordinates();
        if (recentCoordinates == null || currentCoordinates.distance(recentCoordinates) &amp;gt; DISTANCE) {
            // TODO: handle new location

            recentCoordinates = currentCoordinates;
        }
  
        this.location = location;
    }

    public void providerStateChanged(LocationProvider lp, int state) {
        this.state = state;
    }

    ////////////////////////////////////////////////////////////////////////////

    public void run() {
        try {
            init();
        }
        catch(LocationException e) {
            // TODO: handle me
        }
    }

    ////////////////////////////////////////////////////////////////////////////

    private void init() throws LocationException {
        Criteria criteria = new Criteria();
        criteria.setPreferredPowerConsumption(Criteria.POWER_USAGE_LOW);

        provider = LocationProvider.getInstance(criteria);
        provider.setLocationListener(this, -1, -1, -1);
    }

}&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7536683368061539970-1481886499168656987?l=www.j2start.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/jRlEqRtZm-7M9upghAnc65OuqXA/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/jRlEqRtZm-7M9upghAnc65OuqXA/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/jRlEqRtZm-7M9upghAnc65OuqXA/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/jRlEqRtZm-7M9upghAnc65OuqXA/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/J2startcom/~4/vReAq9m7SV8" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.j2start.com/feeds/1481886499168656987/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.j2start.com/2011/12/how-to-track-location.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7536683368061539970/posts/default/1481886499168656987?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7536683368061539970/posts/default/1481886499168656987?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/J2startcom/~3/vReAq9m7SV8/how-to-track-location.html" title="How to track location" /><author><name>Yuri Plaksyuk</name><uri>http://www.blogger.com/profile/07616690366866871099</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://3.bp.blogspot.com/_MEMWFsw3dWY/StLikbk9IsI/AAAAAAAAGFU/_7yTLGFQXjo/S220/Me.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://www.j2start.com/2011/12/how-to-track-location.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEUGRX8ycSp7ImA9WhRSGEU.&quot;"><id>tag:blogger.com,1999:blog-7536683368061539970.post-5793035001660602931</id><published>2011-11-21T16:32:00.001+02:00</published><updated>2011-11-21T16:37:04.199+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-11-21T16:37:04.199+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Java ME" /><category scheme="http://www.blogger.com/atom/ns#" term="SDK" /><category scheme="http://www.blogger.com/atom/ns#" term="LWUIT" /><category scheme="http://www.blogger.com/atom/ns#" term="NetBeans" /><title>Java ME SDK 3.0.5 is released!</title><content type="html">Java ME SDK 3.0.5 went live! For many months, we have been working hard to fix bugs from previous version, and add a lot of new features demanded by Java ME community. &lt;br /&gt;&lt;ul&gt;
&lt;li&gt;&lt;b&gt;NetBeans Integration&lt;/b&gt; -&amp;nbsp;All Java ME tools are implemented as NetBeans plugins.&amp;nbsp;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Device Manager&lt;/b&gt; -&amp;nbsp;Java ME SDK now supports multiple device managers. You can switch between different versions of device managers.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;LWUIT 1.5 Support&lt;/b&gt; -&amp;nbsp;The Resource Editor is available from the Java ME menu to help you design and organize resources for LWUIT applications.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Network Monitor&lt;/b&gt; -&amp;nbsp;Integrated with NetBeans profiling tools, the Network Monitor now supports WMA, SIP, Bluetooth and OBEX, SATSA APDU and JCRMI, and server sockets.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;CPU Profiler&lt;/b&gt; -&amp;nbsp;Now uses standard NetBeans profiling facilities to view snapshots. Profiling of VM classes can also be toggled on or off.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;WURFL Device Database&lt;/b&gt; -&amp;nbsp;The database has been updated with more than 1000 new devices.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Tracing&lt;/b&gt; - New tracing functionality now includes CLDC VM events, and monitors events such as exceptions, class loading, garbage collection, and methods invocation.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;New or updated JSR support&lt;/b&gt; - Includes support for JSR 234 (Advanced Multimedia Supplements), JSR 253 (Mobile Telephony API), JSR 257 (Contactless Communication API), JSR 258 (Mobile User Interface Customization API), and JSR 293 (XML API for Java ME).&amp;nbsp;&lt;/li&gt;
&lt;/ul&gt;
You can download the new version from this &lt;a href="http://www.oracle.com/technetwork/java/javame/javamobile/download/sdk/index.html"&gt;link&lt;/a&gt;.&lt;div&gt;
&lt;br /&gt;Source:&amp;nbsp;
&lt;a href="http://blogs.oracle.com/javamesdk/entry/java_me_sdk_3_0"&gt;http://blogs.oracle.com/javamesdk/entry/java_me_sdk_3_0&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7536683368061539970-5793035001660602931?l=www.j2start.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/YuafDGtMrIf7WKiblyWHJmH1MHY/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/YuafDGtMrIf7WKiblyWHJmH1MHY/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/YuafDGtMrIf7WKiblyWHJmH1MHY/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/YuafDGtMrIf7WKiblyWHJmH1MHY/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/J2startcom/~4/qKLCxYkfF9c" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.j2start.com/feeds/5793035001660602931/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.j2start.com/2011/11/java-me-sdk-305-is-released.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7536683368061539970/posts/default/5793035001660602931?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7536683368061539970/posts/default/5793035001660602931?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/J2startcom/~3/qKLCxYkfF9c/java-me-sdk-305-is-released.html" title="Java ME SDK 3.0.5 is released!" /><author><name>Yuri Plaksyuk</name><uri>http://www.blogger.com/profile/07616690366866871099</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://3.bp.blogspot.com/_MEMWFsw3dWY/StLikbk9IsI/AAAAAAAAGFU/_7yTLGFQXjo/S220/Me.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://www.j2start.com/2011/11/java-me-sdk-305-is-released.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DE4EQX48fip7ImA9WhRSFk0.&quot;"><id>tag:blogger.com,1999:blog-7536683368061539970.post-2365862057797335258</id><published>2011-11-18T10:53:00.001+02:00</published><updated>2011-11-18T11:01:40.076+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-11-18T11:01:40.076+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Java ME" /><category scheme="http://www.blogger.com/atom/ns#" term="eBook" /><title>Pro Java ME Apps</title><content type="html">&lt;a href="http://img.wowebook.pro/images/32978380.jpg" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://img.wowebook.pro/images/32978380.jpg" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;b&gt;Pro Java ME Apps&lt;/b&gt; gives you, the developer, the know-how required for writing sophisticated Java ME applications and for taking advantage of this huge potential market. Java ME is the largest mobile software platform in the world, supported by over 80% of all phones. You’ll cover what Java ME is and how it compares to other mobile software platforms, how to properly design and structure Java ME applications, how to think like an experienced Java ME developer, what common problems and pitfalls you may run into, how to optimize your code, and many other key topics.&lt;br /&gt;&lt;br /&gt;Unlike other Java ME books out there, which only teach the reader the basics of Java ME by way of a few simple examples, this book presents a broader, eagle-eye picture of a complete Java ME application and what writing one involves. From there, the book presents, explains, and helps you to implement all the essential aspects of Java ME development, from the user interface to client-server communication. As this unfolds, the decisions and reasoning behind the code are also presented.&lt;br /&gt;&lt;br /&gt;The book assumes that the reader is already familiar with Java ME and Java applications in general.&lt;br /&gt;&lt;ul&gt;
&lt;li&gt;Based on and geared towards real-life Java ME scenarios&lt;/li&gt;
&lt;li&gt;Guides the reader through the entire process of developing a high-quality Java ME application&lt;/li&gt;
&lt;li&gt;Explains the decisions made at each step, gives advice and examples of good practices vs. bad practices&lt;/li&gt;
&lt;/ul&gt;
&lt;b&gt;What you’ll learn&lt;/b&gt;&lt;br /&gt;&lt;ul&gt;
&lt;li&gt;What makes mobile software different from desktop software&lt;/li&gt;
&lt;li&gt;How to design and implement your Java ME application&lt;/li&gt;
&lt;li&gt;What the most common problems affecting Java ME development (such as device fragmentation) and how to solve them&lt;/li&gt;
&lt;li&gt;What are the proper Java ME programming techniques and how to think like an experienced Java ME developer&lt;/li&gt;
&lt;li&gt;How to optimize your code&lt;/li&gt;
&lt;li&gt;How to develop store-quality apps&lt;/li&gt;
&lt;/ul&gt;
&lt;b&gt;Who this book is for&lt;/b&gt;&lt;br /&gt;&lt;ul&gt;
&lt;li&gt;Intermediate to advanced Java ME developers looking to learn proper Java ME development.&lt;/li&gt;
&lt;li&gt;Mobile developers looking for a good source of information regarding proper mobile application development&lt;/li&gt;
&lt;/ul&gt;
&lt;b&gt;Table of Contents&lt;/b&gt;&lt;br /&gt;&lt;ol&gt;
&lt;li&gt;Getting Started&lt;/li&gt;
&lt;li&gt;A Java ME Framework&lt;/li&gt;
&lt;li&gt;Defining Our Data&lt;/li&gt;
&lt;li&gt;The Networking Module&lt;/li&gt;
&lt;li&gt;The Persistence Module&lt;/li&gt;
&lt;li&gt;The UI Module&lt;/li&gt;
&lt;li&gt;The Localization Module&lt;/li&gt;
&lt;li&gt;Putting It All Together&lt;/li&gt;
&lt;li&gt;Device Fragmentation&lt;/li&gt;
&lt;li&gt;Optimizing Your Code&lt;/li&gt;
&lt;li&gt;Adding Fine Touches and User Interaction Improvements&lt;/li&gt;
&lt;li&gt;Java ME Application Testing&lt;/li&gt;
&lt;li&gt;Advanced Java ME Graphics&lt;/li&gt;
&lt;li&gt;The Proper Java ME Mindset&lt;/li&gt;
&lt;li&gt;Java ME and the Future&lt;/li&gt;
&lt;li&gt;Final Words&lt;/li&gt;
&lt;/ol&gt;
&lt;b&gt;Download&lt;/b&gt;&lt;div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://docs.google.com/open?id=0B8AM94gagZjCNzM3MDE3NzgtMDIwYS00NDE0LWJiOTYtZDY0YjQ2ZWFmODA3"&gt;Apress - Pro Java ME Apps - May 2011.pdf&lt;/a&gt; (PDF format)&lt;/li&gt;
&lt;li&gt;&lt;a href="https://docs.google.com/open?id=0B8AM94gagZjCNGQ0Y2RmZGEtMjIxYy00NTgxLThhZjktYzkwOTkwODBiY2M1"&gt;Apress - Pro Java ME Apps - May 2011.epub&lt;/a&gt; (ePub format)&lt;/li&gt;
&lt;/ul&gt;
&lt;div&gt;
Source:&amp;nbsp;&lt;a href="http://www.wowebook.pro/book/pro-java-me-apps/"&gt;http://www.wowebook.pro/book/pro-java-me-apps/&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7536683368061539970-2365862057797335258?l=www.j2start.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/hKejG4u7u3Arn8pF8WILercrRKo/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/hKejG4u7u3Arn8pF8WILercrRKo/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/hKejG4u7u3Arn8pF8WILercrRKo/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/hKejG4u7u3Arn8pF8WILercrRKo/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/J2startcom/~4/BLXV1Y1lhYw" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.j2start.com/feeds/2365862057797335258/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.j2start.com/2011/11/pro-java-me-apps.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7536683368061539970/posts/default/2365862057797335258?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7536683368061539970/posts/default/2365862057797335258?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/J2startcom/~3/BLXV1Y1lhYw/pro-java-me-apps.html" title="Pro Java ME Apps" /><author><name>Yuri Plaksyuk</name><uri>http://www.blogger.com/profile/07616690366866871099</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://3.bp.blogspot.com/_MEMWFsw3dWY/StLikbk9IsI/AAAAAAAAGFU/_7yTLGFQXjo/S220/Me.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://www.j2start.com/2011/11/pro-java-me-apps.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CE4DRnY_fip7ImA9WhRQE0U.&quot;"><id>tag:blogger.com,1999:blog-7536683368061539970.post-7309323106351348308</id><published>2011-10-25T22:05:00.000+03:00</published><updated>2011-12-09T00:22:57.846+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-12-09T00:22:57.846+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="JSR-280" /><category scheme="http://www.blogger.com/atom/ns#" term="SAX" /><category scheme="http://www.blogger.com/atom/ns#" term="E71" /><category scheme="http://www.blogger.com/atom/ns#" term="Java ME" /><title>SAXParseException</title><content type="html">I have experienced SAXParseException&amp;nbsp;occurred&amp;nbsp;while parsing a document feed retrieved from &lt;a href="https://docs.google.com/"&gt;https://docs.google.com/&lt;/a&gt;. This happened on Nokia E71 device, while an emulator parsed the feed successfully. There was no any reason to throw this exception, because the feed XML document was well-formatted and valid.&lt;br /&gt;
&lt;br /&gt;
The problem has been solved by ignoring any fatal errors. Here is a code:&lt;br /&gt;
&lt;br /&gt;
&lt;pre class="brush:java"&gt;public class DocsFeed extends DefaultHandler {
    public void startElement(String uri, String localName, String qName, Attributes attrs) {
        ...
    }

    public void endElement(String uri, String localName, String qName) {
        ...
    }

    public void characters(char[] ch, int start, int length) {
        ...
    }

    public void fatalError(SAXParseException ex) {
        /* don't do anything, just ignore it */
    }
}&lt;/pre&gt;
&lt;br /&gt;
This solutions allowed me to successfully parse XML document. Once more notice please that XML document was valid. Probably, this is a bug in SAX parser implementation by Nokia.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7536683368061539970-7309323106351348308?l=www.j2start.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/YfdTA3crq-dGdHuoAvPiOvqTRE8/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/YfdTA3crq-dGdHuoAvPiOvqTRE8/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/YfdTA3crq-dGdHuoAvPiOvqTRE8/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/YfdTA3crq-dGdHuoAvPiOvqTRE8/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/J2startcom/~4/ktC_igzYbJ0" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.j2start.com/feeds/7309323106351348308/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.j2start.com/2011/10/saxparseexception.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7536683368061539970/posts/default/7309323106351348308?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7536683368061539970/posts/default/7309323106351348308?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/J2startcom/~3/ktC_igzYbJ0/saxparseexception.html" title="SAXParseException" /><author><name>Yuri Plaksyuk</name><uri>http://www.blogger.com/profile/07616690366866871099</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://3.bp.blogspot.com/_MEMWFsw3dWY/StLikbk9IsI/AAAAAAAAGFU/_7yTLGFQXjo/S220/Me.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://www.j2start.com/2011/10/saxparseexception.html</feedburner:origLink></entry></feed>

