<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>MATOOSFE BLOG</title>
	<atom:link href="http://matoosfe.com/blog/?feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://matoosfe.com/blog</link>
	<description>Blog relationed with java technology</description>
	<lastBuildDate>Tue, 01 May 2012 23:43:33 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Problemas versiones Jasper vs IReport</title>
		<link>http://matoosfe.com/blog/?p=159</link>
		<comments>http://matoosfe.com/blog/?p=159#comments</comments>
		<pubDate>Tue, 01 May 2012 23:43:33 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[ireport]]></category>
		<category><![CDATA[jasper]]></category>
		<category><![CDATA[matoosfe]]></category>

		<guid isPermaLink="false">http://matoosfe.com/blog/?p=159</guid>
		<description><![CDATA[Cuando se esté trabajando con reportes con el diseñador de iReport y JasperReport se debe asegurar que la versión con la cual se compile los reportes debe ser la misma de la librería cargada en su proyecto web; es decir, si se creo los reportes con la versión 3.7.4 de iReport se tiene que cargar [...]]]></description>
			<content:encoded><![CDATA[<p>Cuando se esté trabajando con reportes con el diseñador de <em><strong>iReport</strong></em> y <em><strong>JasperReport</strong></em> se debe asegurar que la versión con la cual se compile los reportes debe ser la misma de la librería cargada en su proyecto web; es decir, si se creo los reportes con la versión <em><strong>3.7.4 de iReport</strong></em> se tiene que cargar la librería <em><strong>3.7.4  de JasperReport </strong></em>para evitar que se produzca  la siguiente error:</p>
<p style="text-align: center;"><span style="color: #3366ff;"><em><strong>net.sf.jasperreports.engine.JRRuntimeException: Unknown hyperlink target 0</strong></em></span></p>
]]></content:encoded>
			<wfw:commentRss>http://matoosfe.com/blog/?feed=rss2&amp;p=159</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Manejo de Exceptions</title>
		<link>http://matoosfe.com/blog/?p=125</link>
		<comments>http://matoosfe.com/blog/?p=125#comments</comments>
		<pubDate>Mon, 09 Apr 2012 15:22:07 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[exceptions]]></category>
		<category><![CDATA[jse]]></category>
		<category><![CDATA[utilidades]]></category>

		<guid isPermaLink="false">http://matoosfe.com/blog/?p=125</guid>
		<description><![CDATA[Una exception es un indicador de un problema(error) que ocurre durante la ejecución de un programa, interrumpiendo el flujo normal de ejecución del mismo. El manejo de exceptions permite crear aplicaciones que permitan controlar estos errores, permitiendo en muchos de los casos que la aplicación continué funcionando a pesar de que se haya producido una [...]]]></description>
			<content:encoded><![CDATA[<p>Una exception es un indicador de un problema(error) que ocurre durante la ejecución de un programa, interrumpiendo el flujo normal de ejecución del mismo. El manejo de exceptions permite crear aplicaciones que permitan controlar estos errores, permitiendo en muchos de los casos que la aplicación continué funcionando a pesar de que se haya producido una exception.</p>
<p>Se debe tener en cuenta que existen varios tipos de error entre los cuales podemos citar:</p>
<ul>
<li><em><strong>Checked Exceptions.</strong></em>- Son el tipo de exceptions que pueden ser controladas y anticipadas. En el api de java existen un conjunto de clases que para poder utilizarse se debe controlar las exceptions, nos referimos a estas.</li>
<li><em><strong>Error.</strong></em>-  Son exceptions provocadas por condiciones externas en las cuales la aplicación no puede anticiparse y recuperarse de ella. Por ejemplo : apagones, daños de hardware.</li>
<li><em><strong>Runtime Exceptions.-</strong></em> Son exceptions provocadas por inconsistencias en código en la aplicación conocidos como bugs</li>
</ul>
<p>Existen varias formas de controlar una exception,  para poder ejemplificarlas junto con su utilización se basará en una aplicación de operaciones aritméticas con enteros en donde se pasarán dos argumentos a varios métodos. Los detalles se muestran a continuación:</p>
<p>Se definió dos clases: una clase llamada <em><strong>AritmeticaPrimitivos.java</strong></em> la cual tiene las cuatro operaciones aritméticas fundamentales: <em><strong>suma, resta, multiplicación y división </strong></em>pero sin ningún control de errores y otra clase llamada <em><strong>TestAritmeticaPrimitivos.java</strong></em> la cual permitirá probar las operaciones en primera instancia.</p>
<p><strong>AritmeticaPrimitivos.java</strong></p>
<div class="codecolorer-container java vibrant" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;height:300px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br />28<br />29<br />30<br />31<br />32<br />33<br />34<br />35<br />36<br />37<br />38<br />39<br />40<br />41<br />42<br />43<br />44<br />45<br />46<br />47<br />48<br />49<br />50<br />51<br /></div></td><td><div class="java codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #000000; font-weight: bold;">package</span> <span style="color: #006699;">com.matoosfe.sysinv.exception</span><span style="color: #339933;">;</span><br />
<span style="color: #008000; font-style: italic; font-weight: bold;">/**<br />
* Clase que permite realizar un conjunto<br />
* de operaciones matemáticas<br />
* @author martosfre<br />
* @see www.matoosfe.com<br />
* 09/04/2012<br />
*/</span><br />
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">class</span> AritmeticaPrimitivos <span style="color: #009900;">&#123;</span><br />
<span style="color: #000000; font-weight: bold;">private</span> <span style="color: #000066; font-weight: bold;">int</span> resultado<span style="color: #339933;">;</span><br />
<span style="color: #008000; font-style: italic; font-weight: bold;">/**<br />
* Método para sumar dos números enteros<br />
* @param a<br />
* @param b<br />
* @return<br />
*/</span><br />
&nbsp; <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">int</span> sumar<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">int</span> a, <span style="color: #000066; font-weight: bold;">int</span> b<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp;resultado <span style="color: #339933;">=</span> &nbsp;a <span style="color: #339933;">+</span> b<span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp;<span style="color: #000000; font-weight: bold;">return</span> resultado<span style="color: #339933;">;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span><br />
<span style="color: #008000; font-style: italic; font-weight: bold;">/**<br />
* Método para restar dos números enteros<br />
* @param a<br />
* @param b<br />
* @return<br />
*/</span><br />
&nbsp; <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">int</span> restar<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">int</span> a, <span style="color: #000066; font-weight: bold;">int</span> b<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp;resultado <span style="color: #339933;">=</span> &nbsp;a <span style="color: #339933;">-</span> b<span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp;<span style="color: #000000; font-weight: bold;">return</span> resultado<span style="color: #339933;">;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span><br />
<span style="color: #008000; font-style: italic; font-weight: bold;">/**<br />
* Método para multiplicar dos números enteros<br />
* @param a<br />
* @param b<br />
* @return<br />
*/</span><br />
&nbsp; <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">int</span> multiplicar<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">int</span> a, <span style="color: #000066; font-weight: bold;">int</span> b<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; resultado <span style="color: #339933;">=</span> &nbsp;a <span style="color: #339933;">*</span> b<span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">return</span> resultado<span style="color: #339933;">;</span><br />
&nbsp;<span style="color: #009900;">&#125;</span><br />
<span style="color: #008000; font-style: italic; font-weight: bold;">/**<br />
* Método para dividir dos números enteros.<br />
* @param a<br />
* @param b<br />
* @return<br />
*/</span><br />
&nbsp; <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">int</span> dividir<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">int</span> a, <span style="color: #000066; font-weight: bold;">int</span> b<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp;resultado <span style="color: #339933;">=</span> &nbsp;a <span style="color: #339933;">/</span> b<span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp;<span style="color: #000000; font-weight: bold;">return</span> resultado<span style="color: #339933;">;</span><br />
&nbsp;<span style="color: #009900;">&#125;</span><br />
<span style="color: #009900;">&#125;</span></div></td></tr></tbody></table></div>
<p><em><strong>TestAritmeticaPrimitivos.java</strong></em></p>
<p><em><strong><br />
</strong></em></p>
<div class="codecolorer-container java vibrant" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br /></div></td><td><div class="java codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #000000; font-weight: bold;">package</span> <span style="color: #006699;">com.matoosfe.sysinv.exception</span><span style="color: #339933;">;</span><br />
<span style="color: #008000; font-style: italic; font-weight: bold;">/**<br />
* Clase para probar las diferentes operaciones<br />
* aritméticas de primitivos<br />
* @author martosfre<br />
* @see www.matoosfe.com<br />
* 09/04/2012<br />
*/</span><br />
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">class</span> TestAritmeticaPrimitivos <span style="color: #009900;">&#123;</span><br />
&nbsp; <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000066; font-weight: bold;">void</span> main<span style="color: #009900;">&#40;</span><a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Astring+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">String</span></a><span style="color: #009900;">&#91;</span><span style="color: #009900;">&#93;</span> args<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp;<span style="color: #000066; font-weight: bold;">int</span> numeroA <span style="color: #339933;">=</span> <span style="color: #cc66cc;">30</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp;<span style="color: #000066; font-weight: bold;">int</span> numeroB <span style="color: #339933;">=</span> <span style="color: #cc66cc;">17</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp;AritmeticaPrimitivos ariPri <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> AritmeticaPrimitivos<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp;<a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Asystem+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">System</span></a>.<span style="color: #006633;">out</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Resultado Suma:&quot;</span> <span style="color: #339933;">+</span> ariPri.<span style="color: #006633;">sumar</span><span style="color: #009900;">&#40;</span>numeroA, numeroB<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp;<a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Asystem+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">System</span></a>.<span style="color: #006633;">out</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Resultado Resta:&quot;</span> <span style="color: #339933;">+</span> ariPri.<span style="color: #006633;">restar</span><span style="color: #009900;">&#40;</span>numeroA, numeroB<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp;<a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Asystem+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">System</span></a>.<span style="color: #006633;">out</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Resultado Multiplicación:&quot;</span> <span style="color: #339933;">+</span> ariPri.<span style="color: #006633;">multiplicar</span><span style="color: #009900;">&#40;</span>numeroA, numeroB<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp;<a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Asystem+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">System</span></a>.<span style="color: #006633;">out</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Resultado División:&quot;</span> <span style="color: #339933;">+</span> ariPri.<span style="color: #006633;">dividir</span><span style="color: #009900;">&#40;</span>numeroA, numeroB<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span><br />
<span style="color: #009900;">&#125;</span></div></td></tr></tbody></table></div>
<p>Una vez definido las clases y realizada la ejecución con valores mayores a 0, en este caso <em><strong>30, 17 </strong></em> se obtiene los resultados sin ningún problema, como se muestra en la figura a continuación:</p>
<p style="text-align: center;"><em><strong><a href="http://matoosfe.com/blog/wp-content/uploads/2012/04/corridaExceptionBien.png" class="gallery_colorbox"><img class="size-medium wp-image-141  aligncenter" style="border: 1px solid black;" title="corridaExceptionBien" src="http://matoosfe.com/blog/wp-content/uploads/2012/04/corridaExceptionBien-300x90.png"  alt="" width="300" height="91" /></a></strong></em><em><strong>Figura 1.1: Corrida Satisfactoria</strong></em></p>
<p>Pero que pasaría si se ingresa en el segundo valor en vez de <em><strong>30 </strong></em>el número <em><strong>0</strong> </em>, en ese caso la aplicación se detendrá su ejecución debido a que no existe la <em><strong>división para cero</strong></em> provocando la exception <em><strong>ArithmeticException</strong></em> como se muestra en la figura a continuación:</p>
<p style="text-align: center;"><a href="http://matoosfe.com/blog/wp-content/uploads/2012/04/corridaExceptionError.png" class="gallery_colorbox"><img class="size-medium wp-image-143  aligncenter" style="border: 1px solid black;" title="corridaExceptionError" src="http://matoosfe.com/blog/wp-content/uploads/2012/04/corridaExceptionError-300x91.png"  alt="" width="300" height="91" /></a><em><strong>Figura 1.2: Corrida Error<br />
</strong></em></p>
<p>Para evitar esto se debe controlar las exceptions con alguno de las formas que describiremos en el siguiente bloque:</p>
<p><strong>Bloque try/catch/finally.- </strong>Utilizado para controlar las exceptions en nivel primario; es decir, los métodos que directamente interaccionen con la aplicación (clases colocadas en la capa de vista) deberían utilizar esta forma de Control ya que son los que emitirán el mensaje al usuario final. Este forma de control tiene tres bloques:</p>
<ul>
<li><em><strong>try</strong></em>.- Aquí se colocará todos el código que podría provocar un error incluido la llamada a otros métodos. Solo puede existir un bloque try.</li>
<li><em><strong>catch</strong></em>.- Este bloque se utiliza para controlar las diferentes exceptions que podrían presentarse en el bloque try. Pudiendo colocar tantos catch como errores se necesiten controlar o un solo catch con la clase principal <em><strong>Exception.</strong></em></li>
<li><em><strong>finally.-</strong></em> Este bloque es opcional y se utiliza en la mayoría de los casos para ejecutar algún proceso como generación de log, liberación de recursos debido a que es un bloque <em><strong>que se ejecuta existe o no error.</strong></em></li>
</ul>
<p>Para mostrar este tipo de control se ha creado un método nuevo llamado<em><strong> dividirTryCatch(int a, int b):</strong></em></p>
<div class="codecolorer-container java vibrant" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br /></div></td><td><div class="java codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #008000; font-style: italic; font-weight: bold;">/**<br />
* Método para divir dos números enteros<br />
* utilizando el control de errores a travéz<br />
* del bloque try/catch<br />
* @param a<br />
* @param b<br />
* @return<br />
*/</span><br />
&nbsp; <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">int</span> dividirTryCatch<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">int</span> a, <span style="color: #000066; font-weight: bold;">int</span> b<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">try</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; resultado <span style="color: #339933;">=</span> &nbsp;a <span style="color: #339933;">/</span> b<span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span> <span style="color: #000000; font-weight: bold;">catch</span> <span style="color: #009900;">&#40;</span><a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Aarithmeticexception+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">ArithmeticException</span></a> e<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Asystem+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">System</span></a>.<span style="color: #006633;">err</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Error:No existe la división para cero&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><span style="color: #000000; font-weight: bold;">finally</span><span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Asystem+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">System</span></a>.<span style="color: #006633;">out</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Proceso controlado correctamene&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp;<span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp;<span style="color: #000000; font-weight: bold;">return</span> resultado<span style="color: #339933;">;</span><br />
<span style="color: #009900;">&#125;</span></div></td></tr></tbody></table></div>
<p>Para poder ejecutarle se deberá realizar un cambio en la clase <em><strong>TestAritmeticaPrimitivos</strong><strong>.java</strong></em> llamando al método creado.</p>
<div class="codecolorer-container java vibrant" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br /></div></td><td><div class="java codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #000000; font-weight: bold;">package</span> <span style="color: #006699;">com.matoosfe.sysinv.exception</span><span style="color: #339933;">;</span><br />
<span style="color: #008000; font-style: italic; font-weight: bold;">/**<br />
* Clase para probar las diferentes operaciones<br />
* aritméticas de primitivos<br />
* @author martosfre<br />
* @see www.matoosfe.com<br />
* 09/04/2012<br />
*/</span><br />
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">class</span> TestAritmeticaPrimitivos <span style="color: #009900;">&#123;</span><br />
&nbsp; <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000066; font-weight: bold;">void</span> main<span style="color: #009900;">&#40;</span><a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Astring+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">String</span></a><span style="color: #009900;">&#91;</span><span style="color: #009900;">&#93;</span> args<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">int</span> numeroA <span style="color: #339933;">=</span> <span style="color: #cc66cc;">30</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">int</span> numeroB <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; AritmeticaPrimitivos ariPri <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> AritmeticaPrimitivos<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <br />
&nbsp; &nbsp; &nbsp; <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Asystem+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">System</span></a>.<span style="color: #006633;">out</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Resultado Suma:&quot;</span> <span style="color: #339933;">+</span> ariPri.<span style="color: #006633;">sumar</span><span style="color: #009900;">&#40;</span>numeroA, numeroB<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Asystem+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">System</span></a>.<span style="color: #006633;">out</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Resultado Resta:&quot;</span> <span style="color: #339933;">+</span> ariPri.<span style="color: #006633;">restar</span><span style="color: #009900;">&#40;</span>numeroA, numeroB<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Asystem+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">System</span></a>.<span style="color: #006633;">out</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Resultado Multiplicación:&quot;</span> <span style="color: #339933;">+</span> ariPri.<span style="color: #006633;">multiplicar</span><span style="color: #009900;">&#40;</span>numeroA, numeroB<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Asystem+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">System</span></a>.<span style="color: #006633;">out</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Resultado División:&quot;</span> <span style="color: #339933;">+</span> ariPri<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; .<span style="color: #006633;">dividirTryCatch</span><span style="color: #009900;">&#40;</span>numeroA, numeroB<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span><br />
<span style="color: #009900;">&#125;</span></div></td></tr></tbody></table></div>
<p>Posterior a esto la aplicación se ejecutará con el control respectivo, como se muestra en la figura a continuación:</p>
<p style="text-align: center;"><a href="http://matoosfe.com/blog/wp-content/uploads/2012/04/corridaExceptionTryCatch.png" class="gallery_colorbox"><img class="aligncenter size-medium wp-image-147" style="border: 1px solid black;" title="corridaExceptionTryCatch" src="http://matoosfe.com/blog/wp-content/uploads/2012/04/corridaExceptionTryCatch-300x96.png"  alt="" width="300" height="96" /></a><em><strong>Figura 1.3: Corrida Satisfactoria Try/Catch<br />
</strong></em></p>
<p><strong>Sentencia Throws</strong>.- Debido a que los métodos pueden tener una jerarquía de llamado; es decir, son llamados desde otros métodos y asi sucesivamente existe la posibilidad de pasar el manejo del error al método principal que está llamando al método secundario evitando de esta manera redundar el control de las exceptions. Para esto se utiliza la sentencia <em><strong>throws</strong></em> para <em><strong>pasar el control del error a un método superior o primario.</strong></em></p>
<p><strong>Sentencia Throw</strong>.- Este sentencia es utilizadas para lanzar una exception ya sea personalizada o de Java en caso de presentarse algún resultado que dentro de la lógica de aplicación de negocio representa un error. Se diferencia de las demás porque forma parte de la lógica de programación que permite anticiparse al error, va siempre acompañada por la sentencia <em><strong>throws.</strong></em></p>
<p>Para mostrar las dos formas de controlar una exception ya sea con la sentencia <em><strong>throws </strong></em>y <em><strong>throw </strong></em>se ha modificado el método <em><strong>dividir</strong></em> incluyendo un control que verifique el número ingresado como dividendo no sea cero, caso contrario se lanzará la exception <em><strong>ArithmeticException </strong></em>la cual deberá ser controlada por un try/catch en el método principal en este caso en el main.</p>
<div class="codecolorer-container java vibrant" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br /></div></td><td><div class="java codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #008000; font-style: italic; font-weight: bold;">/**<br />
* Método para dividir dos números enteros.<br />
* @param a<br />
* @param b<br />
* @return<br />
*/</span><br />
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">int</span> dividir<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">int</span> a, <span style="color: #000066; font-weight: bold;">int</span> b<span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">throws</span> <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Aarithmeticexception+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">ArithmeticException</span></a><span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp;<span style="color: #000000; font-weight: bold;">if</span><span style="color: #009900;">&#40;</span>b <span style="color: #339933;">==</span> <span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp;<span style="color: #000000; font-weight: bold;">throw</span> <span style="color: #000000; font-weight: bold;">new</span> <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Aarithmeticexception+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">ArithmeticException</span></a><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Error:No existe la división para cero&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp;<span style="color: #009900;">&#125;</span><span style="color: #000000; font-weight: bold;">else</span><span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; resultado <span style="color: #339933;">=</span> &nbsp;a <span style="color: #339933;">/</span> b<span style="color: #339933;">;</span><br />
&nbsp;<span style="color: #009900;">&#125;</span><br />
&nbsp;<span style="color: #000000; font-weight: bold;">return</span> resultado<span style="color: #339933;">;</span><br />
<span style="color: #009900;">&#125;</span></div></td></tr></tbody></table></div>
<p>Para poder ejecutarle se deberá realizar un cambio en la clase <em><strong>TestAritmeticaPrimitivos</strong><strong>.java</strong></em> llamando al método creado y incluyendo el bloque try/catch</p>
<div class="codecolorer-container java vibrant" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;height:300px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br /></div></td><td><div class="java codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #000000; font-weight: bold;">package</span> <span style="color: #006699;">com.matoosfe.sysinv.exception</span><span style="color: #339933;">;</span><br />
<span style="color: #008000; font-style: italic; font-weight: bold;">/**<br />
* Clase para probar las diferentes operaciones<br />
* aritméticas de primitivos<br />
* @author martosfre<br />
* @see www.matoosfe.com<br />
* 09/04/2012<br />
*/</span><br />
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">class</span> TestAritmeticaPrimitivos <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp;<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000066; font-weight: bold;">void</span> main<span style="color: #009900;">&#40;</span><a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Astring+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">String</span></a><span style="color: #009900;">&#91;</span><span style="color: #009900;">&#93;</span> args<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">int</span> numeroA <span style="color: #339933;">=</span> <span style="color: #cc66cc;">30</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">int</span> numeroB <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">try</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;AritmeticaPrimitivos ariPri <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> AritmeticaPrimitivos<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Asystem+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">System</span></a>.<span style="color: #006633;">out</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Resultado Suma:&quot;</span> <span style="color: #339933;">+</span> ariPri.<span style="color: #006633;">sumar</span><span style="color: #009900;">&#40;</span>numeroA, numeroB<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Asystem+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">System</span></a>.<span style="color: #006633;">out</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Resultado Resta:&quot;</span> <span style="color: #339933;">+</span> ariPri.<span style="color: #006633;">restar</span><span style="color: #009900;">&#40;</span>numeroA, numeroB<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Asystem+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">System</span></a>.<span style="color: #006633;">out</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Resultado Multiplicación:&quot;</span> <span style="color: #339933;">+</span> ariPri.<span style="color: #006633;">multiplicar</span><span style="color: #009900;">&#40;</span>numeroA, numeroB<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Asystem+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">System</span></a>.<span style="color: #006633;">out</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Resultado División:&quot;</span> <span style="color: #339933;">+</span> ariPri<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; .<span style="color: #006633;">dividir</span><span style="color: #009900;">&#40;</span>numeroA, numeroB<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span style="color: #009900;">&#125;</span> <span style="color: #000000; font-weight: bold;">catch</span> <span style="color: #009900;">&#40;</span><a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Aarithmeticexception+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">ArithmeticException</span></a> e<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Asystem+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">System</span></a>.<span style="color: #006633;">err</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span>e.<span style="color: #006633;">getMessage</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span style="color: #009900;">&#125;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span><br />
<span style="color: #009900;">&#125;</span></div></td></tr></tbody></table></div>
<p>Posterior a esto la aplicación se ejecutará con el control respectivo, como se muestra en la figura a continuación:</p>
<p style="text-align: center;"><a href="http://matoosfe.com/blog/wp-content/uploads/2012/04/corridaExceptionThrowsThrow.png" class="gallery_colorbox"><img class="aligncenter size-medium wp-image-151" style="border: 1px solid black;" title="corridaExceptionThrowsThrow" src="http://matoosfe.com/blog/wp-content/uploads/2012/04/corridaExceptionThrowsThrow-300x111.png"  alt="" width="300" height="111" /></a><em><strong>Figura 1.4: Corrida Satisfactoria Throws/Throw</strong></em></p>
]]></content:encoded>
			<wfw:commentRss>http://matoosfe.com/blog/?feed=rss2&amp;p=125</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Split con .</title>
		<link>http://matoosfe.com/blog/?p=120</link>
		<comments>http://matoosfe.com/blog/?p=120#comments</comments>
		<pubDate>Sat, 07 Apr 2012 00:16:09 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[jse]]></category>
		<category><![CDATA[utilidades]]></category>

		<guid isPermaLink="false">http://matoosfe.com/blog/?p=120</guid>
		<description><![CDATA[Estimados amig@s
Al utilizar el método split sobre una cadena para obtener el conjunto de valores por una ocurrencia me tope con el problema que al utilizar el caracter  &#8220;.&#8221; no funcionaba.  Al analizar el método se comprobó que debido a que el método utiliza una expresión regular regex para buscar la ocurrencia no se podia [...]]]></description>
			<content:encoded><![CDATA[<p>Estimados amig@s</p>
<p>Al utilizar el método <strong>split</strong> sobre una cadena para obtener el conjunto de valores por una ocurrencia me tope con el problema que al utilizar el caracter  &#8220;.&#8221; no funcionaba.  Al analizar el método se comprobó que debido a que el método utiliza una expresión regular <em><strong>regex</strong></em> para buscar la ocurrencia no se podia hacerlo normalmente por que el . es utilizado como un delimitador; se tuvo que añadir el caracter de escape \\</p>
<p><em><strong>Forma Normal &#8211; Incorrecta</strong></em></p>
<div class="codecolorer-container java vibrant" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br /></div></td><td><div class="java codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Astring+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">String</span></a> cadena <span style="color: #339933;">=</span> <span style="color: #0000ff;">&quot;1.1.1&quot;</span><span style="color: #339933;">;</span><br />
<br />
<a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Astring+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">String</span></a> <span style="color: #009900;">&#91;</span><span style="color: #009900;">&#93;</span> secuencia <span style="color: #339933;">=</span> cadena.<span style="color: #006633;">split</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;.&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">//No obtiene nada</span></div></td></tr></tbody></table></div>
<p><em><strong>Forma Correcta</strong></em></p>
<div class="codecolorer-container java vibrant" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br /></div></td><td><div class="java codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Astring+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">String</span></a> cadena <span style="color: #339933;">=</span> <span style="color: #0000ff;">&quot;1.1.1&quot;</span><span style="color: #339933;">;</span><br />
<br />
<a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Astring+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">String</span></a> <span style="color: #009900;">&#91;</span><span style="color: #009900;">&#93;</span> secuencia <span style="color: #339933;">=</span> cadena.<span style="color: #006633;">split</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;<span style="color: #000099; font-weight: bold;">\\</span>.&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">//No obtiene nada</span></div></td></tr></tbody></table></div>
]]></content:encoded>
			<wfw:commentRss>http://matoosfe.com/blog/?feed=rss2&amp;p=120</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Dependencia Proyectos GWT</title>
		<link>http://matoosfe.com/blog/?p=118</link>
		<comments>http://matoosfe.com/blog/?p=118#comments</comments>
		<pubDate>Tue, 14 Sep 2010 21:30:39 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[JavaWeb]]></category>
		<category><![CDATA[gwt]]></category>
		<category><![CDATA[web]]></category>
		<category><![CDATA[xml]]></category>

		<guid isPermaLink="false">http://matoosfe.com/blog/?p=118</guid>
		<description><![CDATA[Cuando se está realizando proyectos con GWT (Google Web Toolkit) muchas veces es necesario integrarlo con otros proyectos que estén en otras tecnologías a lo cual si se utiliza los IDE&#8217;s ya sea en Eclipse, JDeveloper se presenta el siguiente problema en cuanto a la utilización del parser de XML. El problema es el siguiente:
1234&#91;ERROR&#93; [...]]]></description>
			<content:encoded><![CDATA[<p>Cuando se está realizando proyectos con <strong>GWT (Google Web Toolkit)</strong> muchas veces es necesario integrarlo con otros proyectos que estén en otras tecnologías a lo cual si se utiliza los IDE&#8217;s ya sea en Eclipse, JDeveloper se presenta el siguiente problema en cuanto a la utilización del parser de XML. El problema es el siguiente:</p>
<div class="codecolorer-container java vibrant" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br /></div></td><td><div class="java codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #009900;">&#91;</span>ERROR<span style="color: #009900;">&#93;</span> Failure <span style="color: #000000; font-weight: bold;">while</span> parsing XML<br />
org.<span style="color: #006633;">xml</span>.<span style="color: #006633;">sax</span>.<span style="color: #006633;">SAXNotRecognizedException</span><span style="color: #339933;">:</span> http<span style="color: #339933;">:</span><span style="color: #666666; font-style: italic;">//apache.org/xml/features/nonvalidating/load-external-dtd</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; at oracle.<span style="color: #006633;">xml</span>.<span style="color: #006633;">jaxp</span>.<span style="color: #006633;">JXSAXParserFactory</span>.<span style="color: #006633;">setFeature</span> <br />
......</div></td></tr></tbody></table></div>
<p>Para corregirlo se debe cargar los jars de los proyectos en cuestión no referenciar los proyectos directamente desde el IDE o en su defecto configurar la salida de los otros proyectos al WEB-INF/classes del proyecto de GWT.</p>
<p>Saludos</p>
]]></content:encoded>
			<wfw:commentRss>http://matoosfe.com/blog/?feed=rss2&amp;p=118</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

