<?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>Blog4Java &#187; Personal</title>
	<atom:link href="http://malsolo.com/blog4java/?cat=1&#038;feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://malsolo.com/blog4java</link>
	<description>A personal and Java blog, likely only for me</description>
	<lastBuildDate>Tue, 31 Mar 2015 15:52:42 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=4.1.1</generator>
	<item>
		<title>Webinar Confirmation: Java, Ubuntu and browsers hell</title>
		<link>http://malsolo.com/blog4java/?p=812</link>
		<comments>http://malsolo.com/blog4java/?p=812#comments</comments>
		<pubDate>Tue, 24 Mar 2015 09:19:29 +0000</pubDate>
		<dc:creator><![CDATA[Javier (@jbbarquero)]]></dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Personal]]></category>
		<category><![CDATA[Chrome]]></category>
		<category><![CDATA[Java Plug-in]]></category>
		<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://malsolo.com/blog4java/?p=812</guid>
		<description><![CDATA[Hello Javier, Your registration is confirmed for the webinar&#8230; We are looking forward to having you join us. To help maximize your webinar experience we recommend that you join a test meeting before the session to check your system and &#8230; <a href="http://malsolo.com/blog4java/?p=812">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p><em>Hello Javier,</p>
<p>Your registration is confirmed for the webinar&#8230; We are looking forward to having you join us.</p>
<p><img src="http://malsolo.com/blog4java/wp-includes/images/smilies/icon_biggrin.gif" alt=":D" class="wp-smiley" /></p>
<p>To help maximize your webinar experience we recommend that you join a test meeting before the session to check your system and browser compatibility at <u>http://www.webex.com/test-meeting.html</u>.</em></p>
<p>Let&#8217;s try&#8230;</p>
<div id="attachment_816" style="width: 969px" class="wp-caption alignnone"><a href="http://malsolo.com/blog4java/wp-content/uploads/2015/03/Screenshot-from-2015-03-24-094340.png"><img src="http://malsolo.com/blog4java/wp-content/uploads/2015/03/Screenshot-from-2015-03-24-094340.png" alt="Java is not working." width="959" height="511" class="size-full wp-image-816" /></a><p class="wp-caption-text">Java is not working.</p></div>
<p>Dammit!</p>
<p>Now I have to waste half an hour for discovering the problem and solve it.</p>
<p>Let&#8217;s see, <a href="https://java.com/en/download/faq/chrome.xml" title="How do I use Java with the Google Chrome browser?" target="_blank">How do I use Java with the Google Chrome browser?</a></p>
<p><em><strong>Chrome and Linux</strong><br />
Starting with Chrome version 35, NPAPI (Netscape Plug-in API) support was removed for the Linux platform. For more information, see Chrome and NPAPI (<a href="http://blog.chromium.org/2013/09/saying-goodbye-to-our-old-friend-npapi.html" title="Saying Goodbye to Our Old Friend NPAPI" target="_blank">blog.chromium.org</a>).</p>
<p><u>Firefox is the recommended browser for Java on Linux.</u></em></p>
<p>No problem, let&#8217;s use Firefox. But&#8230;</p>
<div id="attachment_814" style="width: 761px" class="wp-caption alignnone"><a href="http://malsolo.com/blog4java/wp-content/uploads/2015/03/Screenshot-from-2015-03-24-094112.png"><img src="http://malsolo.com/blog4java/wp-content/uploads/2015/03/Screenshot-from-2015-03-24-094112.png" alt="Expired or not-yet-valid certificate" width="751" height="364" class="size-full wp-image-814" /></a><p class="wp-caption-text">Java Security</p></div>
<p>Sometimes I miss Windows and its closed environment.</p>
<p>Don&#8217;t give up. In the error page, the details shows the Java Console:</p>
<div id="attachment_818" style="width: 529px" class="wp-caption alignnone"><a href="http://malsolo.com/blog4java/wp-content/uploads/2015/03/Screenshot-from-2015-03-24-094812.png"><img src="http://malsolo.com/blog4java/wp-content/uploads/2015/03/Screenshot-from-2015-03-24-094812.png" alt="Java Console screenshot" width="519" height="434" class="size-full wp-image-818" /></a><p class="wp-caption-text">Java Plug-in 11.40.2.25</p></div>
<p>And the <a href="http://java.com/en/download/help/jcp_security.xml" title="How do I control when an untrusted applet or application runs in my web browser? " target="_blank">more information</a> link leads to the instructions to handle the Java Security via the Control Panel. Including a link to the configuration of the <a href="http://java.com/en/download/faq/exception_sitelist.xml" title="How can I configure the Exception Site List? " target="_blank">Exception Site List</a>.</p>
<p>But&#8230;</p>
<p><em><strong>Find the Java Control Panel</strong><br />
» <a href="http://java.com/en/download/help/win_controlpanel.xml" title="Where is the Java Control Panel on Windows? " target="_blank">Windows</a><br />
» <a href="http://java.com/en/download/help/mac_controlpanel.xml" title="Where is the Java Control Panel on my Mac? " target="_blank">Mac OS X</a></em> </p>
<p><strong>Where is the Java Control Panel on Linux?!!!</strong> <img src="http://malsolo.com/blog4java/wp-includes/images/smilies/icon_neutral.gif" alt=":|" class="wp-smiley" /></p>
<p><u>Keep calm and open the Terminal</u>:</p>
<p></p><pre class="crayon-plain-tag">$ whereis java
java: /usr/bin/java
$ ls -la /usr/bin/java
lrwxrwxrwx 1 root root 22 may  8  2014 /usr/bin/java -> /etc/alternatives/java
$ cd /usr/lib/jvm/java-8-oracle/jre/bin
$ ls
ControlPanel  javaws.real  keytool  policytool   servertool
java          jcontrol     orbd     rmid         tnameserv
javaws        jjs          pack200  rmiregistry  unpack200
$ ./ControlPanel</pre><p></p>
<p>Now, you can follow the instructions:</p>
<div id="attachment_821" style="width: 637px" class="wp-caption alignnone"><a href="http://malsolo.com/blog4java/wp-content/uploads/2015/03/Screenshot-from-2015-03-24-095904.png"><img src="http://malsolo.com/blog4java/wp-content/uploads/2015/03/Screenshot-from-2015-03-24-095904.png" alt="Java Control Panel" width="627" height="641" class="size-full wp-image-821" /></a><p class="wp-caption-text">Java Control Panel</p></div>
<p>Go to the Security tab:</p>
<div id="attachment_822" style="width: 637px" class="wp-caption alignnone"><a href="http://malsolo.com/blog4java/wp-content/uploads/2015/03/Screenshot-from-2015-03-24-095934.png"><img src="http://malsolo.com/blog4java/wp-content/uploads/2015/03/Screenshot-from-2015-03-24-095934.png" alt="Java Control Panel: Security tab" width="627" height="641" class="size-full wp-image-822" /></a><p class="wp-caption-text">Java Control Panel: Security tab</p></div>
<p>Press Edit <u>S</u>ite List&#8230;</p>
<div id="attachment_823" style="width: 560px" class="wp-caption alignnone"><a href="http://malsolo.com/blog4java/wp-content/uploads/2015/03/Screenshot-from-2015-03-24-100040.png"><img src="http://malsolo.com/blog4java/wp-content/uploads/2015/03/Screenshot-from-2015-03-24-100040.png" alt="Exception Site List" width="550" height="379" class="size-full wp-image-823" /></a><p class="wp-caption-text">Exception Site List</p></div>
<p>Add the location:</p>
<div id="attachment_824" style="width: 560px" class="wp-caption alignnone"><a href="http://malsolo.com/blog4java/wp-content/uploads/2015/03/Screenshot-from-2015-03-24-100150.png"><img src="http://malsolo.com/blog4java/wp-content/uploads/2015/03/Screenshot-from-2015-03-24-100150.png" alt="Exception Site List: add URL" width="550" height="379" class="size-full wp-image-824" /></a><p class="wp-caption-text">Exception Site List: add URL</p></div>
<p>Ok. Ok.</p>
<p>Now re-try:</p>
<div id="attachment_825" style="width: 604px" class="wp-caption alignnone"><a href="http://malsolo.com/blog4java/wp-content/uploads/2015/03/Screenshot-from-2015-03-24-100356.png"><img src="http://malsolo.com/blog4java/wp-content/uploads/2015/03/Screenshot-from-2015-03-24-100356.png" alt="I&#039;m really tired" width="594" height="463" class="size-full wp-image-825" /></a><p class="wp-caption-text">I&#8217;m really tired</p></div>
<p>I&#8217;ve spent too much time with you, so <em>I accept the risk</em> <img src="http://malsolo.com/blog4java/wp-includes/images/smilies/icon_sad.gif" alt=":(" class="wp-smiley" /></p>
<div id="attachment_826" style="width: 630px" class="wp-caption alignnone"><a href="http://malsolo.com/blog4java/wp-content/uploads/2015/03/Screenshot-from-2015-03-24-100624.png"><img src="http://malsolo.com/blog4java/wp-content/uploads/2015/03/Screenshot-from-2015-03-24-100624-1024x576.png" alt="Horray!" width="620" height="349" class="size-large wp-image-826" /></a><p class="wp-caption-text">Horray!</p></div>
<p>Piece of cake.</p>
<p>It&#8217;s been fun and annoying at the same time.</p>
]]></content:encoded>
			<wfw:commentRss>http://malsolo.com/blog4java/?feed=rss2&#038;p=812</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>10 useful tools for me as Java EE developer</title>
		<link>http://malsolo.com/blog4java/?p=428</link>
		<comments>http://malsolo.com/blog4java/?p=428#comments</comments>
		<pubDate>Fri, 05 Sep 2014 08:10:18 +0000</pubDate>
		<dc:creator><![CDATA[Javier (@jbbarquero)]]></dc:creator>
				<category><![CDATA[Personal]]></category>

		<guid isPermaLink="false">http://malsolo.com/blog4java/?p=428</guid>
		<description><![CDATA[Yes, I love trivial things in my computers as terminal appearance, desktop backgrounds (from time to time I look for wallpapers at Wallbase.cc) and some programs as Rainmeter or Fences (on Windows) See an example: But now let&#8217;s see what &#8230; <a href="http://malsolo.com/blog4java/?p=428">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>Yes, I love trivial things in my computers as terminal appearance, desktop backgrounds (from time to time I look for wallpapers at <a href="http://wallbase.cc/" title="Wallbase" target="_blank">Wallbase.cc</a>) and some programs as <a href="http://rainmeter.net/" title="Rainmeter" target="_blank">Rainmeter</a> or <a href="www.stardock.com/products/fences" title="Fences" target="_blank">Fences</a> (on Windows)</p>
<p>See an example:<br />
<div id="attachment_429" style="width: 310px" class="wp-caption alignnone"><a href="http://malsolo.com/blog4java/wp-content/uploads/2014/09/Terminal-as-console-2.jpg"><img src="http://malsolo.com/blog4java/wp-content/uploads/2014/09/Terminal-as-console-2-300x168.jpg" alt="Terminal img" width="300" height="168" class="size-medium wp-image-429" /></a><p class="wp-caption-text">Terminal kermit-green and black on Ubuntu</p></div></p>
<p>But now let&#8217;s see what tools I want to have installed in any computer I use for my daily work as Java EE developer, regardless the particular project.</p>
<p>As a side note, I alternate Operating Systems whenever I can. Windows is the prefered for most of the companies. I like Ubuntu and I love my Mac Book Pro, so I make the effort of using all of them. Besides, it allows me to test if my applications are really <a href="http://en.wikipedia.org/wiki/Write_once,_run_anywhere" title="Write Once, Run Anywhere" target="_blank">WORA</a>.</p>
<ul>
<li>A Java IDE: <a href="https://www.eclipse.org/" title="Eclise" target="_blank">Eclipse</a> (<a href="http://spring.io/tools/sts" title="STS" target="_blank">Spring Tool Suite</a>), <a href="https://netbeans.org/" title="NetBeans" target="_blank">NetBeans</a> or <a href="http://www.jetbrains.com/idea/" title="IntelliJ IDEA" target="_blank">IntelliJ IDEA</a>. Now I&#8217;m trying all of them just for fun.</li>
<li>Text editor: <a href="http://www.sublimetext.com/" title="Sublime Text" target="_blank">Sublime Text</a> is my choice, but in Windows I used to love <a href="http://www.ultraedit.com/" title="UltraEdit" target="_blank">UltraEdit</a> and I use a lot <a href="http://notepad-plus-plus.org/" title="Notepad++" target="_blank">Notepad++</a>.</li>
<li>A web browser, mainly <a href="https://www.google.com/chrome/browser/" title="Chrome" target="_blank">Chrome</a>. I use <a href="https://www.mozilla.org/en-US/firefox/new/" title="Firefox" target="_blank">Firefox</a> a lot too, and from time to time, my beloved <a href="http://www.opera.com/" title="Opera" target="_blank">Opera</a>. There&#8217;s also time for <strong>IE</strong> on Windows and <strong>Safari</strong> on OS X.</li>
<li>A password manager: <a href="http://keepass.info/" title="KeePass" target="_blank">KeePass</a> or <a href="https://agilebits.com/onepassword" title="1Password" target="_blank">1Password</a> on OS X.</li>
<li>I love to use the <strong>terminal</strong>. On Windows I use <a href="http://sourceforge.net/projects/console/files/" title="Console 2" target="_blank">Console 2</a>.</li>
<li><a href="http://www.oracle.com/technetwork/java/index.html" title="Java" target="_blank">Java</a></li>
<li><a href="http://spring.io/" title="Spring" target="_blank">Spring Framework</a></li>
<li><a href="http://maven.apache.org/" title="Maven" target="_blank">Maven</a></li>
<li><a href="http://git-scm.com/" title="Git" target="_blank">Git</a>. I love <a href="https://github.com/jbbarquero" title="GitHub" target="_blank">GitHub</a>.</li>
<li><a href="https://www.youtube.com/" title="YouTube" target="_blank">YouTube</a>. It provides me tutorials, music and some fun when I need a little rest.</li>
</ul>
<p>I also have to mention <a href="www.google.com" title="Google" target="_blank">Google</a> and <a href="http://stackoverflow.com/" title="stackoverflow" target="_blank">stackoverflow</a>, nowadays I can&#8217;t imagine to work without them.</p>
<p>And what about application servers? Since I want to title the POST <em>“10 tools…”</em> they fall from the list. But to talk about a little bit of them, in each project I have to use the application server in which the application will be deployed, but I always use <a href="http://tomcat.apache.org/" title="Tomcat" target="_blank">Tomcat</a> for local tests. For anything beyond servlets and JSPs I use open source projects (<a href="http://activemq.apache.org/" title="ActiveMQ" target="_blank">ActiveMQ</a> if I need JMS, for instance). There is always a targeted server in development environment, so I&#8217;ve never used <a href="https://glassfish.java.net/" title="GlassFish" target="_blank">GlassFish</a> or <a href="http://tomee.apache.org/apache-tomee.html" title="Apache TomEE" target="_blank">TomEE</a>, but I want to try <a href="http://wildfly.org/" title="WildFly" target="_blank">WildFly</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://malsolo.com/blog4java/?feed=rss2&#038;p=428</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tomcat and JSTL: sometimes I feel tired</title>
		<link>http://malsolo.com/blog4java/?p=318</link>
		<comments>http://malsolo.com/blog4java/?p=318#comments</comments>
		<pubDate>Wed, 13 Aug 2014 11:45:13 +0000</pubDate>
		<dc:creator><![CDATA[Javier (@jbbarquero)]]></dc:creator>
				<category><![CDATA[Personal]]></category>

		<guid isPermaLink="false">http://malsolo.com/blog4java/?p=318</guid>
		<description><![CDATA[Bazinga! tomcat 7 org.apache.jasper.JasperException: The absolute uri: http://java.sun.com/jsp/jstl/core cannot be resolved in either web.xml or the jar files deployed with this application You can dive into our beloved stackoverflow.com to find out that Tomcat doesn&#8217;t include JSTL,not even in Tomcat &#8230; <a href="http://malsolo.com/blog4java/?p=318">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p><strong>Bazinga!</strong></p>
<p><font color="red">tomcat 7 org.apache.jasper.JasperException: The absolute uri: http://java.sun.com/jsp/jstl/core cannot be resolved in either web.xml or the jar files deployed with this application</font></p>
<p>You can dive into our beloved <a href="http://stackoverflow.com/" title="Stackoverflow" target="_blank">stackoverflow.com</a> to find out that <a href="http://tomcat.apache.org/whichversion.html" title="Apache Tomcat" target="_blank">Tomcat</a> doesn&#8217;t include JSTL,not even in Tomcat 8, in spite that they have an <a href="https://tomcat.apache.org/taglibs/standard/" title="Apache Taglibs" target="_blank">implementation of the JSP Standard Tag Library (JSTL)</a> specification, versions 1.0, 1.1 and 1.2.</p>
<p>Of course, I have the correct taglib in the JSPs (note the /jsp within the URI):</p><pre class="crayon-plain-tag">&lt;%@ taglib uri=&quot;http://java.sun.com/jsp/jstl/core&quot; prefix=&quot;c&quot; %&gt;</pre><p></p>
<p>I don&#8217;t want to include the JSTL jar included in the war, because it works in <a href="https://glassfish.java.net/" title="GlassFish - World's first Java EE 7 Application Server" target="_blank">GlassFish</a> (time to move to this server, or even try <a href="http://wildfly.org/" title="The new and improved JBoss Application Server!" target="_blank">WildFly</a>). Find <a href="http://stackoverflow.com/a/10674054/825336" title="Tomcat 7 and JSTL at Stackoverflow" target="_blank">here</a> some interesting instructions if it is not your case.</p>
<p>Thus, it&#8217;s time to copy the JSTL.jar (<a href="http://mvnrepository.com/artifact/jstl/jstl/1.2" title="jstl.jstl.1.2" target="_blank">available</a> <a href="http://mvnrepository.com/artifact/javax.servlet.jsp.jstl/jstl/1.2" title="javax.servlet.jsp.jstl.jstl.1.2" target="_blank">almost</a> <a href="http://mvnrepository.com/artifact/javax.servlet/jstl/1.2" title="javax.servlet.jstl.1.2" target="_blank">anywhere</a>)</p>
<p>In NetBeans, you can go to Services (Window -> Services), find the Servers entry, right click in Apache Tomcat 8.0.3.0 to see its properties. This is the long way to discover where Tomcat is installed. In my case: <em><strong>/usr/local/apache-tomcat-8.0.3</strong></em>.</p>
<p>So I copied one of the available maven dependencies that I used to have and after restarting Tomcat, everything went OK.</p>
<p></p><pre class="crayon-plain-tag">$ cd /usr/local/apache-tomcat-8.0.3
$ sudo cp ~/.m2/repository/javax/servlet/jstl/1.2/jstl-1.2.jar .</pre><p></p>
]]></content:encoded>
			<wfw:commentRss>http://malsolo.com/blog4java/?feed=rss2&#038;p=318</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Spring logging with SLF4J and Logback</title>
		<link>http://malsolo.com/blog4java/?p=309</link>
		<comments>http://malsolo.com/blog4java/?p=309#comments</comments>
		<pubDate>Tue, 12 Aug 2014 12:30:26 +0000</pubDate>
		<dc:creator><![CDATA[Javier (@jbbarquero)]]></dc:creator>
				<category><![CDATA[Personal]]></category>

		<guid isPermaLink="false">http://malsolo.com/blog4java/?p=309</guid>
		<description><![CDATA[As you already know, Spring framework uses Commons Logging (JCL, the J stands for Jakarta, the former house for Apache Java solutions) as the framework for logging, mainly for historical reasons and backward compatibility. But it&#8217;s possible to use another &#8230; <a href="http://malsolo.com/blog4java/?p=309">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>As you already know, <a href="http://projects.spring.io/spring-framework/" title="Spring Framework" target="_blank">Spring framework</a> uses <a href="http://commons.apache.org/proper/commons-logging/" title="Apache Commons Logging" target="_blank">Commons Logging</a> (JCL, the J stands for <a href="http://jakarta.apache.org/" title="2011/12/21 - Jakarta has been retired." target="_blank">Jakarta</a>, the former house for Apache Java solutions) as the framework for logging, mainly for historical reasons and backward compatibility.</p>
<p>But it&#8217;s possible to use another framework easily thanks to the existing binding process for most of the popular frameworks.</p>
<h3>Log4J</h3>
<p>If you want to use the classic and popular framework it&#8217;s very easy, since <a href="http://logging.apache.org/log4j/1.2/" title="Apache log4j 1.2" target="_blank">Log4J</a> can be used directly with JCL (I&#8217;d rather commons-logging, BTW)</p>
<p>Just add the dependency, no need of excluding anything from Spring. For instance, in a maven project:</p><pre class="crayon-plain-tag">&lt;dependencies&gt;
        &lt;dependency&gt;
            &lt;groupId&gt;org.springframework&lt;/groupId&gt;
            &lt;artifactId&gt;spring-context&lt;/artifactId&gt;
            &lt;version&gt;4.0.6.RELEASE&lt;/version&gt;
        &lt;/dependency&gt;
        &lt;dependency&gt;
            &lt;groupId&gt;log4j&lt;/groupId&gt;
            &lt;artifactId&gt;log4j&lt;/artifactId&gt;
            &lt;version&gt;1.2.17&lt;/version&gt;
        &lt;/dependency&gt;</pre><p></p>
<p>Don&#8217;t forget to put a configuration file ( log4j.properties or log4j.xml) in the <a href="https://github.com/jbbarquero/spring-mvc-sample/blob/master/src/main/resources/log4j.xml" title="log4j.xml sample" target="_blank">root of the classpath</a>.</p>
<h3>SLF4J with Logback</h3>
<p>These two frameworks have became my favourite ones for Java logging. </p>
<p>However, in order to use them, you have to make a little bit more changes.</p>
<ol>
<li>Exclude CL from Spring</li>
<li><a href="http://www.slf4j.org/legacy.html" title="Bridging legacy APIs" target="_blank">Bridging legacy logging APIs</a>, that is, <a href="http://www.slf4j.org/manual.html#summary" title="SLF4J Executive summary" target="_blank">redirect</a> log4j and java.util.logging calls to SLF4J.</li>
<li>Include the <a href="http://www.slf4j.org/manual.html#swapping" title="Binding SLF4J with a logging framework at deployment time" target="_blank">SLF4J API dependency</a></li>
<li>Include the <a href="http://logback.qos.ch/manual/index.html" title="Logback" target="_blank">Logback dependency</a></li>
</ol>
<p>Since Logback implements SLF4J natively, there is no need of further binding.</p><pre class="crayon-plain-tag">&lt;dependency&gt;
            &lt;groupId&gt;org.springframework&lt;/groupId&gt;
            &lt;artifactId&gt;spring-context&lt;/artifactId&gt;
            &lt;version&gt;4.0.6.RELEASE&lt;/version&gt;
            &lt;exclusions&gt;
                &lt;exclusion&gt;
                    &lt;groupId&gt;commons-logging&lt;/groupId&gt;
                    &lt;artifactId&gt;commons-logging&lt;/artifactId&gt;
                &lt;/exclusion&gt;
            &lt;/exclusions&gt;
        &lt;/dependency&gt;
        &lt;dependency&gt;
            &lt;groupId&gt;org.slf4j&lt;/groupId&gt;
            &lt;artifactId&gt;jcl-over-slf4j&lt;/artifactId&gt;
            &lt;version&gt;1.7.7&lt;/version&gt;
        &lt;/dependency&gt;
        &lt;dependency&gt;
            &lt;groupId&gt;org.slf4j&lt;/groupId&gt;
            &lt;artifactId&gt;log4j-over-slf4j&lt;/artifactId&gt;
            &lt;version&gt;1.7.7&lt;/version&gt;
        &lt;/dependency&gt;
        &lt;dependency&gt;
            &lt;groupId&gt;org.slf4j&lt;/groupId&gt;
            &lt;artifactId&gt;slf4j-api&lt;/artifactId&gt;
            &lt;version&gt;1.7.7&lt;/version&gt;
        &lt;/dependency&gt;
        &lt;dependency&gt;
            &lt;groupId&gt;ch.qos.logback&lt;/groupId&gt;
            &lt;artifactId&gt;logback-classic&lt;/artifactId&gt;
            &lt;version&gt;1.1.2&lt;/version&gt;
        &lt;/dependency&gt;</pre><p></p>
<p>Finally, you can configure logback with a logback.groovy in the classpath, a logback-test.xml in the classpath, a <a href="https://github.com/jbbarquero/spring-core-sample/blob/master/src/main/resources/logback.xml" title="logback.xml" target="_blank">logback.xml in the classpath</a> or using the <a href="http://logback.qos.ch/manual/configuration.html#auto_configuration" title="Configuration in logback" target="_blank">BasicConfigurator</a>.</p>
<p><a href="http://docs.spring.io/spring/docs/current/spring-framework-reference/htmlsingle/#overview-logging-slf4j" title="Using SLF4J with Spring" target="_blank">Spring provides instructions</a> to use SLF4J with Log4J and there is a great explanation for the bindings at <a href="http://blog.espenberntsen.net/2010/06/06/slf4j-logging-with-log4j-and-jcl/" title="SLF4J logging with Log4J and JCL" target="_blank">SLF4J logging with Log4J and JCL</a></p>
]]></content:encoded>
			<wfw:commentRss>http://malsolo.com/blog4java/?feed=rss2&#038;p=309</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Einundvierzig</title>
		<link>http://malsolo.com/blog4java/?p=306</link>
		<comments>http://malsolo.com/blog4java/?p=306#comments</comments>
		<pubDate>Tue, 12 Aug 2014 11:38:35 +0000</pubDate>
		<dc:creator><![CDATA[Javier (@jbbarquero)]]></dc:creator>
				<category><![CDATA[Personal]]></category>

		<guid isPermaLink="false">http://malsolo.com/blog4java/?p=306</guid>
		<description><![CDATA[Google and Chrome are the best ever, they congratulate me on my birthday:]]></description>
				<content:encoded><![CDATA[<p>Google and Chrome are the best ever, they congratulate me on my birthday:</p>
<div id="attachment_307" style="width: 310px" class="wp-caption alignnone"><a href="http://malsolo.com/blog4java/wp-content/uploads/2014/08/Greetings-from-Chrome-2014-08-12-084018.png"><img src="http://malsolo.com/blog4java/wp-content/uploads/2014/08/Greetings-from-Chrome-2014-08-12-084018-300x231.png" alt="I&#039;m 41 years old" width="300" height="231" class="size-medium wp-image-307" /></a><p class="wp-caption-text">Happy Birthday, Javier!</p></div>
]]></content:encoded>
			<wfw:commentRss>http://malsolo.com/blog4java/?feed=rss2&#038;p=306</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>My favourite Spring Books</title>
		<link>http://malsolo.com/blog4java/?p=206</link>
		<comments>http://malsolo.com/blog4java/?p=206#comments</comments>
		<pubDate>Fri, 25 Jul 2014 07:55:54 +0000</pubDate>
		<dc:creator><![CDATA[Javier (@jbbarquero)]]></dc:creator>
				<category><![CDATA[Personal]]></category>

		<guid isPermaLink="false">http://malsolo.com/blog4java/?p=206</guid>
		<description><![CDATA[There are a lot of books about Spring framework and its related projects, and I own almost all of them. The books about specific projects are generally well written and they’re really useful. I enjoyed a lot reading them. The &#8230; <a href="http://malsolo.com/blog4java/?p=206">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>There are a lot of books about Spring framework and its related projects, and I own almost all of them. The books about specific projects are generally well written and they’re really useful. I enjoyed a lot reading them. The generic books are the ones you need to learn the framework itself and they also provide a good short introduction for some of the other projects.</p>
<p>Now I want to highlight three of the books because they are my reference reading when I work with Spring, and I’ve been using Spring since 2006, being 1.2.8 the first release I work with. Since then, I use the framework on a daily basis.</p>
<h3><a href="http://www.manning.com/walls5/" title="Spring in Action, Fourth Edition" target="_blank">Spring in action</a></h3>
<p>I own the first and the (upcoming) fourth editions. It’s a very funny and well explained book that provides the basic knowledge about the framework itself and their main concepts: dependency injection and bean factory, including simple but representative samples.</p>
<p>It’s the <u>recommended</u> book if you want to learn <u>from the square one</u> the Spring framework ecosystem.</p>
<h3><a href="http://www.apress.com/9781430261513" title="Pro Spring 4th Edition" target="_blank">Pro Spring</a></h3>
<p>I own the second edition (aka Pro Spring 3) and the upcoming third edition.</p>
<p>It’s a very useful step by step explanation of all the Spring concepts, including a sample project that worth it.</p>
<p>It has the best explanation of concepts like AOP and data access. Besides, it has a chapter for MyBatis that I haven’t found elsewhere.</p>
<p>I <u>recommend</u> it if you want a <u>deep knowledge</u> of the framework and if you have enough time to devote to reading it.</p>
<h3><a href="http://www.apress.com/9781430259084" title="Spring Recipes A Problem-Solution Approach  3rd Edition" target="_blank">Spring recipes: A Problem-Solution Approach</a></h3>
<p><strong>It&#8217;s my favourite Spring book</strong>.</p>
<p>I own the three editions of the book and I love its approach to the framework.</p>
<p>It’s not a book no to read from the beginning to the end, instead, the best way to read it is to use the index and find the topic for what you want to use Spring.</p>
<p>Just read a single chapter and you will know how to use the Spring for a particular problem that you have to face.</p>
<p>But the best is that every chapter introduces the way that you would use Java if you haven’t had Spring framework. You can learn Java by reading this books (for instance, I used this book to learn JMX)</p>
<p>It&#8217;s the recommended book to be used during the build of a real system for addressing the topics or problems that you have when you&#8217;re developing.</p>
]]></content:encoded>
			<wfw:commentRss>http://malsolo.com/blog4java/?feed=rss2&#038;p=206</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Improving Java EE skills (including Spring)</title>
		<link>http://malsolo.com/blog4java/?p=79</link>
		<comments>http://malsolo.com/blog4java/?p=79#comments</comments>
		<pubDate>Fri, 18 Jul 2014 08:28:22 +0000</pubDate>
		<dc:creator><![CDATA[Javier (@jbbarquero)]]></dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Personal]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Springsource]]></category>
		<category><![CDATA[Concurrency]]></category>
		<category><![CDATA[Java EE]]></category>
		<category><![CDATA[Spring Framework]]></category>

		<guid isPermaLink="false">http://malsolo.com/blog4java/?p=79</guid>
		<description><![CDATA[A friend of mine has requested me some help for improving his skills in Java EE and Spring Framework. An exciting question, indeed. The general context He&#8217;s working for a company since 2008. To work for a company for a &#8230; <a href="http://malsolo.com/blog4java/?p=79">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>A friend of mine has requested me some help for improving his skills in Java EE and Spring Framework.</p>
<p>An exciting question, indeed.</p>
<h4>The general context</h4>
<p>He&#8217;s working for a company since 2008. To work for a company for a long time has a lot of pros, but a couple of drawbacks, being one of them a little bit worrying: the chance of obsolescence.</p>
<p>If you&#8217;re using the same environment along the years, let&#8217;s say <a href="http://www-01.ibm.com/software/websphere/solutions/" title="IBM WebSphere" target="_blank">IBM products</a>, you&#8217;ll loose the chance to discover other approaches, for instance <a href="http://www.oracle.com/us/products/middleware/cloud-app-foundation/weblogic/suite/overview/index.html" title="Oracle WebLogic" target="_blank">Oracle solutions</a>, or even better, <a href="http://projects.apache.org/" title="The Apache Software Foundation Projects" target="_blank">open source projects</a>.</p>
<p>Even worst, if the company are not willing to upgrade their products (that is very reasonable if there are budget concerns) or their libraries (that is really unwise, or the direct consequence that you don&#8217;t have a good testing process) suddenly you find yourself that you&#8217;re out of the market.</p>
<p>This is not really a problem as long as your current technology is the best technology for your needs, but sooner or later you have to face to the <a href="http://en.wikipedia.org/wiki/Technical_debt" title="Technical debt from Wikipedia" target="_blank">technical debt</a> (a really <a href="http://martinfowler.com/bliki/TechnicalDebt.html" title="Martin Fowler's TechnicalDebt" target="_blank">interesting topic</a> that <a href="http://blog.codinghorror.com/paying-down-your-technical-debt/" title="Paying Down Your Technical Debt" target="_blank">you should care about</a>). This day will happen when you&#8217;re spending more time in fixing issues than in adding new features to your software.</p>
<p>The problem continues if you try to reinventing the wheel or if you don&#8217;t realize that the plane is already invented. It&#8217;s 21st century, you can fly with the appropriate machine.</p>
<h4>The particular concern</h4>
<p>As I said at the beginning of this entry, he is a <a href="http://www.oracle.com/technetwork/java/javaee/overview/index.html" title="Java EE Overview" target="_blank">Java EE</a> developer that uses <a href="https://spring.io/" title="Spring" target="_blank">Spring Framework</a> in his daily work. But he still has to program for <a href="http://www-01.ibm.com/support/docview.wss?uid=swg21570083" title="End of Support for WebSphere Application Server 6.1" target="_blank">WebSphere Application Server 6.1</a> (a.k.a. WAS 6.1, that is <a href="http://en.wikipedia.org/wiki/Java_EE_version_history#J2EE_1.4_.28November_11.2C_2003.29" title="Wikipedia J2EE 1.4" target="_blank">Java EE 1.4</a> compliance using <a href="http://www.oracle.com/technetwork/java/eol-135779.html" title="Oracle Java SE Support Roadmap" target="_blank">Java 5 SE</a>) using <a href="http://docs.spring.io/spring/docs/3.0.x/spring-framework-reference/html/" title="Spring Framework 3.0 Reference Documentation" target="_blank">Spring framework 3</a> (<a href="https://spring.io/blog/2007/11/19/spring-framework-2-5-released" title="Spring Framework 2.5 released" target="_blank">2.5</a> for some projects)</p>
<p>At the time of this writing, <a href="http://www.oracle.com/us/corporate/press/1957557" title="Oracle Press Release Java EE 7" target="_blank">Java EE 7</a> is already released and the current version of <a href="http://projects.spring.io/spring-framework/" title="Spring Framework" target="_blank">Spring Framework is 4.0.6</a>. Not mentioning that Java 8<a href="http://www.oracle.com/us/corporate/press/2172618" title="Oracle Announces Java 8" target="_blank"></a> is now with us.</p>
<p>Thus, he wants to get up to date for improving the way he writes code that will be profitable for the company he works for.</p>
<p>I appreciate his request, because I&#8217;ll have to review what I really know.</p>
<p>Well. Enough introduction. In coming posts I will write about my particular thoughts of what you can do to know Java a little better.</p>
<p>Next, a summary of the topics that I want to talk about:</p>
<h4>Suggested topics</h4>
<ul>
<li><a href="http://www.oracle.com/technetwork/java/javase/overview/index.html" title="Java SE at a Glance" target="_blank">Java SE</a></li>
<p>The Java EE platform is built on top of the Java SE platform. The Java EE platform provides a particular API for server programming. So,it&#8217;s very reasonable to have a good knowledge of Java SE.</p>
<p>In particular, I assume that you have basic knowledge of Java.</p>
<p>But if you want to improve, you need to know the new features that have been published during the last years:</p>
<ul>
<li><a href="http://docs.oracle.com/javase/1.5.0/docs/relnotes/features.html#lang" title="New Features and Enhancements J2SE 5.0" target="_blank">Java 5</a></li>
<p><a href="http://docs.oracle.com/javase/1.5.0/docs/guide/language/generics.html" title="Generics" target="_blank">Generics</a>, <a href="http://docs.oracle.com/javase/1.5.0/docs/guide/language/foreach.html" title="The For-Each Loop" target="_blank">enhanced loops</a>, <a href="http://docs.oracle.com/javase/1.5.0/docs/guide/language/autoboxing.html" title="Autoboxing" target="_blank">autoboxing</a>, <a href="http://docs.oracle.com/javase/1.5.0/docs/guide/language/enums.html" title="Enums" target="_blank">enums</a> (I love them), <a href="http://docs.oracle.com/javase/1.5.0/docs/guide/language/varargs.html" title="Varargs" target="_blank">varargs</a>, <a href="http://docs.oracle.com/javase/1.5.0/docs/guide/language/static-import.html" title="Static Import" target="_blank">static import</a>, and maybe the most important: <a href="http://docs.oracle.com/javase/1.5.0/docs/guide/language/annotations.html" title="Annotations" target="_blank">annotations</a> (they change our life as Java developers)</p>
<li><a href="http://www.oracle.com/technetwork/java/javase/features-141434.html" title="Highlights of Technology Changes in Java SE 6" target="_blank">Java 6</a></li>
<p><a href="http://www.onjava.com/pub/a/onjava/2006/08/02/jjdbc-4-enhancements-in-java-se-6.html" title="JDBC 4.0 Enhancements in Java SE 6" target="_blank">JDBC 4.0</a>, Support for the Web Services stack and XML processing, and <a href="http://www.oracle.com/technetwork/articles/javase/beta2-135158.html" title="What's New in Java SE 6" target="_blank">many more</a>. </p>
<li><a href="http://www.oracle.com/technetwork/java/javase/jdk7-relnotes-418459.html" title="Java SE 7 Features and Enhancements" target="_blank">Java 7</a></li>
<p>A quite <a href="http://radar.oreilly.com/2011/09/java7-features.html" title="A look at Java 7's new features" target="_blank">handy features for developing</a> like <a href="http://docs.oracle.com/javase/7/docs/technotes/guides/language/strings-switch.html" title="Strings in switch Statements" target="_blank">Strings in switch statements</a>, <a href="http://docs.oracle.com/javase/7/docs/technotes/guides/language/binary-literals.html" title="Binary Literals" target="_blank">Binary integral literals</a> and <a href="http://docs.oracle.com/javase/7/docs/technotes/guides/language/underscores-literals.html" title="Underscores in Numeric Literals" target="_blank">underscores in numeric literals</a>, <a href="http://docs.oracle.com/javase/7/docs/technotes/guides/language/catch-multiple.html" title="Catching Multiple Exception Types and Rethrowing Exceptions with Improved Type Checking" target="_blank">Multi-catch and more precise rethrow</a>, <a href="http://docs.oracle.com/javase/7/docs/technotes/guides/language/type-inference-generic-instance-creation.html" title="Type Inference for Generic Instance Creation" target="_blank">diamond operator</a>, <a href="http://docs.oracle.com/javase/7/docs/technotes/guides/language/try-with-resources.html" title="The try-with-resources Statement" target="_blank">try-with-resources</a>, <a href="http://docs.oracle.com/javase/7/docs/technotes/guides/language/non-reifiable-varargs.html" title="Improved Compiler Warnings and Errors When Using Non-Reifiable Formal Parameters with Varargs Methods" target="_blank">Simplified varargs method invocation</a>.</p>
</ul>
<p>As Java 8 has been released very recently, you can skip it for a little while.</p>
<li><a href="http://docs.oracle.com/javase/tutorial/essential/concurrency/" title="Java Concurrency" target="_blank">Java Concurrency</a></li>
<p>Why a specific section for Java SE Concurrency?</p>
<p>Because in Java SE 5 everything changed. Concurrency in Java was improved in a way that provides a more natural approach to multi-threading (I had great joy with two of the enhancement of Java 5: <a href="http://docs.oracle.com/javase/1.5.0/docs/guide/language/generics.html" title="Java Generics" target="_blank">Generics </a>and <a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/util/concurrent/Callable.html" title="Java Callable" target="_blank">Callable</a>) and at the same time it avoids the long-term errors that the concurrency library had: the method <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Thread.html#stop--" title="Java Thread stop" target="_blank">Thread.stop()</a> (actually, it already exists, and <a href="http://docs.oracle.com/javase/8/docs/technotes/guides/concurrency/threadPrimitiveDeprecation.html" title="Why is Thread.stop deprecated?" target="_blank">I don&#8217;t know why</a>)</p>
<p>Not only you need to try not using Thread.start() anymore, try ExceutorService instead, you also need to know about Future and the new way to synchronize threads for understanding new features for concurrency of Java EE 7.</p>
<p>Besides, it&#8217;s really an improvement to know about <a href="http://docs.oracle.com/javase/tutorial/essential/concurrency/executors.html" title="Executors" target="_blank">Executor Framework</a> in Java.</p>
<p>There are a couple of good Java Concurrency tutorials:</p>
<ul>
<li><a href="http://www.vogella.com/tutorials/JavaConcurrency/article.html" title="Vogella's concurrency" target="_blank">Vogella&#8217;s Java concurrency (multi-threading) &#8211; Tutorial</a></li>
<li><a href="http://tutorials.jenkov.com/java-concurrency/index.html" title="Jenkov's Concurrency" target="_blank">Jenkov&#8217;s Java Concurrency / Multithreading Tutorial</a> and <a href="http://tutorials.jenkov.com/java-util-concurrent/index.html" title="Jenkov's concurrency utilities" target="_blank">Java Concurrency Utilities</a></li>
</ul>
<li><a href="http://www.oracle.com/technetwork/java/javaee/overview/index.html" title="Java EE at a Glance" target="_blank">Java EE 7</a></li>
<p>In spite of there are only a few <a href="http://www.oracle.com/technetwork/java/javaee/overview/compatibility-jsp-136984.html" title="Java EE Compatibility" target="_blank">Java EE 7 compatible servers</a>, it&#8217;s time to know about the <a href="http://www.infoworld.com/slideshow/105268/11-hot-improvements-java-ee-7-220465" title="11 hot improvements to Java EE 7" target="_blank">exciting new features</a> that will allow you to create better and faster applications:</p>
<ul>
<li>HTML5 (<a href="http://docs.oracle.com/javaee/7/tutorial/doc/websocket.htm#GKJIQ5" title="Java API for WebSocket" target="_blank">WebSockets</a> and <a href="http://docs.oracle.com/javaee/7/tutorial/doc/jsonp.htm#GLRBB" title="JSON Processing" target="_blank">JSON</a>)</li>
<li><a href="http://docs.oracle.com/javaee/7/tutorial/doc/partmessaging.htm#GFIRP3" title="Messaging" target="_blank">Simplified JMS 2.0 API</a></li>
<li><a href="http://docs.oracle.com/javaee/7/tutorial/doc/batch-processing.htm#GKJIQ6" title="Batch Processing" target="_blank">Batch applications</a></li>
<li><a href="http://docs.oracle.com/javaee/7/tutorial/doc/concurrency-utilities.htm" title="Concurrency Utilities for Java EE" target="_blank">Concurrency utilities</a> (at last <a href="https://jcp.org/en/jsr/detail?id=236" title="JSR 236: Concurrency Utilities for Java EE" target="_blank">JSR 236</a> is finished)</li>
<li><a href="http://docs.oracle.com/javaee/7/tutorial/doc/partcdi.htm#GJBNR" title="Contexts and Dependency Injection for Java EE" target="_blank">Context Dependency Injection</a> (CDI. Yeah, introduced in Java EE 6, it has been enhanced to compete with Spring&#8217;s @Autowired)</li>
<li>Java API for RESTful Web Services (JAX-RS) 2.0 (<a href="http://docs.oracle.com/javaee/7/tutorial/doc/jaxrs.htm#GIEPU" title="RESTful" target="_blank">webservices</a>, <a href="http://docs.oracle.com/javaee/7/tutorial/doc/jaxrs-client.htm#BABEIGIH" title="Accesing REST" target="_blank">clients</a> and <a href="http://docs.oracle.com/javaee/7/tutorial/doc/jaxrs-advanced.htm#GJJXE" title="JAX-RS: Advanced Topics and an Example" target="_blank">more</a>)</li>
<li><a href="http://docs.oracle.com/javaee/7/tutorial/doc/servlets.htm#BNAFD" title="Java Servlet TEchnology" target="_blank">Servlet 3.1</a></li>
</ul>
<li><a href="https://spring.io/projects" title="Spring projects" target="_blank">Spring Projects</a></li>
<p>I want to create particular blog entries for each Spring project that I&#8217;ve worked with, but in the meantime, the best way to getting started would be to take a look to the <a href="https://spring.io/guides" title="Spring guides" target="_blank">guides</a> that they provide.</p>
<li>Other technologies good to know</li>
<p>Since you&#8217;re using Java for writing programs to build solutions for business, it&#8217;s good to know the new environments that provides modern approaches for the current challenges.</p>
<p>You have to take a look to <a href="http://en.wikipedia.org/wiki/NoSQL" title="NoSQL from Wikipedia" target="_blank">NoSQL</a>, being <a href="http://www.mongodb.org/" title="mongoDB" target="_blank">MongoDB</a> the most popular, with good <a href="http://docs.mongodb.org/manual/" title="The MongoDB 2.6 Manual" target="_blank">documentation</a>, including <a href="http://docs.mongodb.org/ecosystem/drivers/java/" title="Java MongoDB Driver" target="_blank">programming with Java</a>.</p>
<p>The next step should be <a href="http://en.wikipedia.org/wiki/Big_data" title="Big data from Wikipedia" target="_blank">Big Data</a>. <a href="http://hadoop.apache.org/" title="Apache Hadoop" target="_blank">Hadoop</a> is the project that you have to pay attention for, but it&#8217;s so big, with several related projects, and so complex, that I still haven&#8217;t found a good introductory tutorial.</p>
<p>Finally, <a href="http://en.wikipedia.org/wiki/Asynchronous_I/O" title="Asynchronous I/O from Wikipedia" target="_blank">Asynchronous I/O</a>, that is the new solution for a problem that has been created by the new economy based on the internet of the things, that is, the need of handle scaling transactions from hundreds, thousands, even millions of users and the requirement of high-performance, high-speed for these operations.</p>
<p>There are several new frameworks that are worth it: <a href="http://akka.io/" title="Akka" target="_blank">Akka</a>, <a href="http://malsolo.com/blog4java/?p=35" title="Getting started with Vert.x" target="_blank">Vert.x</a>, <a href="https://github.com/reactor/reactor" title="Reactor" target="_blank">Reactor</a> (<a href="https://spring.io/blog/2013/05/13/reactor-a-foundation-for-asynchronous-applications-on-the-jvm" title="Reactor" target="_blank">a foundational framework</a> for <a href="https://spring.io/blog/2013/07/18/reactor-1-0-0-m1-a-foundation-for-asynchronous-fast-data-applications-on-the-jvm" title="Reactor 1.0.0.M1" target="_blank">asynchronous applications on the JVM</a>, <a href="https://spring.io/blog/2014/05/06/reactor-1-1-0-release-now-available" title="Reactor 1.1.0" target="_blank">by Spring</a>, but it&#8217;s not part of the portfolio) and <a href="http://nodejs.org/" title="Node.js" target="_blank">Node.js</a> (yes, it&#8217;s JavaScript)</p>
</ul>
<p>That&#8217;s all for now. I hope my colleague finds this entry interesting and I wish it is the first of a series of articles.</p>
<p>Let&#8217;s see.</p>
]]></content:encoded>
			<wfw:commentRss>http://malsolo.com/blog4java/?feed=rss2&#038;p=79</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Website updated: at last</title>
		<link>http://malsolo.com/blog4java/?p=30</link>
		<comments>http://malsolo.com/blog4java/?p=30#comments</comments>
		<pubDate>Mon, 07 Jul 2014 12:52:12 +0000</pubDate>
		<dc:creator><![CDATA[Javier (@jbbarquero)]]></dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Personal]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[Grunt]]></category>
		<category><![CDATA[Javier]]></category>
		<category><![CDATA[Node.js]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[Yeoman]]></category>

		<guid isPermaLink="false">http://malsolo.com/blog4java/?p=30</guid>
		<description><![CDATA[I always wanted to have my own website but I don&#8217;t have enough skills as web developer to create one from scratch. I&#8217;m a Java EE developer, so I have to work with HTML/CSS/JavaScript/JQuery on a regular basis. But I&#8217;m &#8230; <a href="http://malsolo.com/blog4java/?p=30">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>I always wanted to have my own website but I don&#8217;t have enough skills as web developer to create one from scratch.</p>
<p>I&#8217;m a Java EE developer, so I have to work with HTML/CSS/JavaScript/JQuery on a regular basis. But I&#8217;m not a web designer. Actually, I&#8217;m really bad at designing.</p>
<p>But I love programming and one day I discovered <a href="http://yeoman.io/" title="Yeoman" target="_blank">Yeoman</a> (the web&#8217;s scaffolding tool for modern webapps, as they claim)</p>
<p>The problem here is the usual when you discover a new tool, suddenly you need to know a lot of related stuff. That is, <a href="http://nodejs.org/" title="Node.js" target="_blank">Node.js</a>, <a href="https://www.npmjs.org/" title="NPM" target="_blank">NPM</a>, <a href="http://gruntjs.com/" title="Grunt" target="_blank">Grunt</a>, <a href="http://bower.io/" title="Bower" target="_blank">Bower</a>, and a lot of intimidating names.</p>
<p>Youtube to the rescue. Find this video <a href="https://www.youtube.com/watch?v=gKiaLSJW5xI" title="&quot;Yeoman tutorial - Master Front-End Workflow with Yeomaman, Grunt and Bower&quot;" target="_blank">&#8220;Yeoman tutorial &#8211; Master Front-End Workflow with Yeomaman, Grunt and Bower&#8221;</a> and you will have your website up and running in a few minutes.</p>
<p>That&#8217;s not totally true. I&#8217;ve had to download <a href="https://www.npmjs.org/package/jpegtran-bin" title="jpegtran-bin" target="_blank">jpegtran-bin</a> and I&#8217;ve spent a lot of time with minor details with some layouts.</p>
<p>Well, it&#8217;s been funny to work as web developer by editing my HTML files, testing them locally (with the server created by <strong><em>grunt server</em></strong>) and then uploading the files to the server (after creating a minified site with <strong><em>grunt build</em></strong>)</p>
<p>And here it is: <a href="http://malsolo.com" title="Malsolo website" target="_blank">Malsolo website</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://malsolo.com/blog4java/?feed=rss2&#038;p=30</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>About: malsolo and blog4Java</title>
		<link>http://malsolo.com/blog4java/?p=8</link>
		<comments>http://malsolo.com/blog4java/?p=8#comments</comments>
		<pubDate>Tue, 28 Jun 2011 22:30:35 +0000</pubDate>
		<dc:creator><![CDATA[Javier (@jbbarquero)]]></dc:creator>
				<category><![CDATA[Personal]]></category>
		<category><![CDATA[Javier]]></category>

		<guid isPermaLink="false">http://malsolo.com.vm-host.net/wordpress/?p=8</guid>
		<description><![CDATA[About the site name What does &#8216;malsolo&#8217; mean? Malsolo is a name that is the composition of two Spanish words: &#8220;mal&#8221; and &#8220;solo&#8221;. They mean bad and alone respectively. So, the meaning is more or less &#8220;it&#8217;s bad to be &#8230; <a href="http://malsolo.com/blog4java/?p=8">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<h2>About the site name</h2>
<p>What does &#8216;malsolo&#8217; mean?</p>
<p>Malsolo is a name that is the composition of two Spanish words: &#8220;mal&#8221; and &#8220;solo&#8221;. They mean bad and alone respectively. So, the meaning is more or less &#8220;it&#8217;s bad to be alone&#8221;.</p>
<p>Actually, the real story for the name is that I like a lot Star Wars, I mean the first three movies, specially the return of the Jedi, and I chose &#8220;Jansolo&#8221; as a user account for hotmail. Well, jansolo69, since the original was not available. &#8220;Jansolo&#8221; it&#8217;s more or less the Spanish pronunciation for Han Solo. I presume you know <a href="http://en.wikipedia.org/wiki/Han_solo">who is <strong>Solo </strong>in the saga</a>.</p>
<p>On the other hand, I like as well the movie &#8220;<a href="http://en.wikipedia.org/wiki/Serenity_(film)">Serenity</a>&#8220;, and the &#8220;<a href="http://en.wikipedia.org/wiki/Firefly_(TV_series)">Firefly</a>&#8221; TV series. The main character was Malcom Reynolds, or <strong><a href="http://en.wikipedia.org/wiki/Malcom_Reynolds">Mal</a></strong>.</p>
<p>Well, it isn&#8217;t so misterious at the end.</p>
<h2>About the blog name</h2>
<p>I&#8217;m a Java EE programmer (another day I&#8217;ll dedicate a moment to explain what&#8217;s that) There are a lot of programs, libraries, apis and frameworks involved, but one of the most famous, and one of the most recommended, is <em>log for Java</em> or <strong><em><a href="http://logging.apache.org/log4j/">log4J</a></em></strong>.</p>
<p>It&#8217;s a simple, powerfull and easy configurable library for creating logs within your Java program. Logs is one of the foundation of any program development, no matter which language you use to do so.</p>
<p>Again, I pretend to be funny with the name, because my first goal with this blog is to put down in words my experiences with the Java language programming.</p>
<p>Let&#8217;s see in next posts.</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://malsolo.com/blog4java/?feed=rss2&#038;p=8</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Here I am</title>
		<link>http://malsolo.com/blog4java/?p=5</link>
		<comments>http://malsolo.com/blog4java/?p=5#comments</comments>
		<pubDate>Tue, 28 Jun 2011 22:29:23 +0000</pubDate>
		<dc:creator><![CDATA[Javier (@jbbarquero)]]></dc:creator>
				<category><![CDATA[Personal]]></category>
		<category><![CDATA[Javier]]></category>

		<guid isPermaLink="false">http://malsolo.com.vm-host.net/wordpress/?p=5</guid>
		<description><![CDATA[Yes. This is actually my first post, not the one automatically created by WordPress. Sooner or later I&#8217;ll start real blogging! &#160;]]></description>
				<content:encoded><![CDATA[<p>Yes. This is actually my first post, not the one automatically created by WordPress.</p>
<p>Sooner or later I&#8217;ll start real blogging!</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://malsolo.com/blog4java/?feed=rss2&#038;p=5</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
