<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-734049252784438644</id><updated>2011-11-24T04:23:22.405-08:00</updated><category term='ORA-01157'/><category term='Visual Library'/><category term='centos'/><category term='java'/><category term='time synchronization'/><category term='subarray'/><category term='Linux'/><category term='Antix IceWM Volume keys'/><category term='algorithm'/><category term='Oracle'/><category term='ntp'/><category term='ORA-01110'/><category term='maximum sum'/><title type='text'>Héctor Suárez Barenca's Blog</title><subtitle type='html'>Todos somos ignorantes, sólo que no todos ignoramos lo mismo.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://barenka.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/734049252784438644/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://barenka.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Hector Suarez Barenca</name><uri>http://www.blogger.com/profile/07718757012406615489</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='27' src='http://3.bp.blogspot.com/_UVURCtBXPg8/St5giEYqCxI/AAAAAAAAAMI/ysh2sjx8ySw/S220/barenca.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>11</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-734049252784438644.post-6378575186166629172</id><published>2011-02-03T16:45:00.000-08:00</published><updated>2011-02-03T17:17:04.155-08:00</updated><title type='text'>List to Tree (using whitespaces to indent) with Groovy</title><content type='html'>Supose you have a structure like this:&lt;br /&gt;&lt;table border="1"&gt;&lt;br /&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;id&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&lt;b&gt;name&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&lt;b&gt;father&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;&lt;tr&gt;&lt;td&gt;1&lt;/td&gt;&lt;td&gt;N1&lt;/td&gt;&lt;td&gt;null&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;&lt;tr&gt;&lt;td&gt;11&lt;/td&gt;&lt;td&gt;N11&lt;/td&gt;&lt;td&gt;1&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;&lt;tr&gt;&lt;td&gt;12&lt;/td&gt;&lt;td&gt;N12&lt;/td&gt;&lt;td&gt;1&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;&lt;tr&gt;&lt;td&gt;121&lt;/td&gt;&lt;td&gt;N121&lt;/td&gt;&lt;td&gt;12&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;&lt;tr&gt;&lt;td&gt;122&lt;/td&gt;&lt;td&gt;N122&lt;/td&gt;&lt;td&gt;12&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;&lt;tr&gt;&lt;td&gt;13&lt;/td&gt;&lt;td&gt;N13&lt;/td&gt;&lt;td&gt;1&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;&lt;tr&gt;&lt;td&gt;131&lt;/td&gt;&lt;td&gt;N131&lt;/td&gt;&lt;td&gt;13&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;&lt;tr&gt;&lt;td&gt;1311&lt;/td&gt;&lt;td&gt;N1311&lt;/td&gt;&lt;td&gt;131&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;&lt;tr&gt;&lt;td&gt;13111&lt;/td&gt;&lt;td&gt;N13111&lt;/td&gt;&lt;td&gt;1311&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;&lt;tr&gt;&lt;td&gt;14&lt;/td&gt;&lt;td&gt;N14&lt;/td&gt;&lt;td&gt;1&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;&lt;tr&gt;&lt;td&gt;2&lt;/td&gt;&lt;td&gt;N2&lt;/td&gt;&lt;td&gt;null&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;public class Node {&lt;br /&gt;    def id&lt;br /&gt;    def name&lt;br /&gt;    def father&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;public class NodePrinter {&lt;br /&gt;    private void printLeftPad(def source,int pad)&lt;br /&gt;    {&lt;br /&gt;        for(int i=0;i&amp;lt;pad;i++) print " ";&lt;br /&gt;        println source;&lt;br /&gt;    }&lt;br /&gt;    &lt;br /&gt;    public int indent(List items,int index,int pad)&lt;br /&gt;    {&lt;br /&gt;        printLeftPad("${items.get(index).name}",pad);&lt;br /&gt;&lt;br /&gt;        def current= items.get(index);&lt;br /&gt;        int i=index+1;&lt;br /&gt;        for(;i&amp;lt;items.size();i++)&lt;br /&gt;        {&lt;br /&gt;            if( items.get(i).father==current.id )&lt;br /&gt;            {&lt;br /&gt;                printLeftPad("{",pad);&lt;br /&gt;                i=indent(items,i,pad+4);&lt;br /&gt;                printLeftPad("}",pad);&lt;br /&gt;            }&lt;br /&gt;            else&lt;br /&gt;            {&lt;br /&gt;                if( current.father==items.get(i).father )&lt;br /&gt;                {&lt;br /&gt;                    printLeftPad("${items.get(i).name}",pad);&lt;br /&gt;                    current=items.get(i);&lt;br /&gt;                }&lt;br /&gt;                else&lt;br /&gt;                {&lt;br /&gt;                    return i-1;&lt;br /&gt;                }&lt;br /&gt;            }&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;        return i;&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;def nodes=[ new Node(id:1,name:'N1',father:null),&lt;br /&gt;            new Node(id:11,name:'N11',father:1),&lt;br /&gt;            new Node(id:12,name:'N12',father:1),&lt;br /&gt;            new Node(id:121,name:'N121',father:12),&lt;br /&gt;            new Node(id:122,name:'N122',father:12),&lt;br /&gt;            new Node(id:13,name:'N13',father:1),&lt;br /&gt;            new Node(id:131,name:'N131',father:13),&lt;br /&gt;            new Node(id:1311,name:'N1311',father:131),&lt;br /&gt;            new Node(id:13111,name:'N13111',father:1311),&lt;br /&gt;            new Node(id:14,name:'N14',father:1),&lt;br /&gt;            new Node(id:2,name:'N2',father:null)&lt;br /&gt;          ];&lt;br /&gt;          &lt;br /&gt;def printer=new NodePrinter();&lt;br /&gt;printer.indent(nodes,0,4);&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;This will give us the following result:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;    N1&lt;br /&gt;    {&lt;br /&gt;        N11&lt;br /&gt;        N12&lt;br /&gt;        {&lt;br /&gt;            N121&lt;br /&gt;            N122&lt;br /&gt;        }&lt;br /&gt;        N13&lt;br /&gt;        {&lt;br /&gt;            N131&lt;br /&gt;            {&lt;br /&gt;                N1311&lt;br /&gt;                {&lt;br /&gt;                    N13111&lt;br /&gt;                }&lt;br /&gt;            }&lt;br /&gt;        }&lt;br /&gt;        N14&lt;br /&gt;    }&lt;br /&gt;    N2&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Enjoy it!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/734049252784438644-6378575186166629172?l=barenka.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barenka.blogspot.com/feeds/6378575186166629172/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=734049252784438644&amp;postID=6378575186166629172' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/734049252784438644/posts/default/6378575186166629172'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/734049252784438644/posts/default/6378575186166629172'/><link rel='alternate' type='text/html' href='http://barenka.blogspot.com/2011/02/list-to-tree-using-whitespaces-to.html' title='List to Tree (using whitespaces to indent) with Groovy'/><author><name>Hector Suarez Barenca</name><uri>http://www.blogger.com/profile/07718757012406615489</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='27' src='http://3.bp.blogspot.com/_UVURCtBXPg8/St5giEYqCxI/AAAAAAAAAMI/ysh2sjx8ySw/S220/barenca.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-734049252784438644.post-6343555055428874183</id><published>2009-10-20T06:39:00.001-07:00</published><updated>2009-10-20T07:42:18.015-07:00</updated><title type='text'>Source code formatter library for Java</title><content type='html'>&lt;p&gt;Recently I was looking for a Java Library that could be include in an applet (with no any dependencies), after looking for awhile I could not find any library (there are a few out there but all of them have dependencies with other libraries). &lt;/p&gt;&lt;p&gt;I found a C++ program named Artistic Style (&lt;a href="http://astyle.sourceforge.net/"&gt;http://astyle.sourceforge.net/&lt;/a&gt;) , so I decided to migrate the source code from C++ to Java, and the &lt;strong&gt;jastyle&lt;/strong&gt; project arises (&lt;a href="http://sourceforge.net/projects/jastyle/"&gt;http://sourceforge.net/projects/jastyle/&lt;/a&gt;).&lt;/p&gt;&lt;p&gt;There are two ways in which &lt;strong&gt;jastyle&lt;/strong&gt; could be used, as a library or as a console application. See how easy is to format Java source code with &lt;strong&gt;jastyle&lt;/strong&gt;.&lt;/p&gt;&lt;p&gt;First, go to (&lt;a href="http://sourceforge.net/projects/jastyle/"&gt;http://sourceforge.net/projects/jastyle/&lt;/a&gt;) and download the lastest&lt;em&gt; jastyle.jar&lt;/em&gt; , then choose the Java source file that you want to give format. The options will be shown if you just type:&lt;br /&gt;&lt;/p&gt;&lt;p align="center"&gt;&lt;em&gt;java -jar jastyle.jar &lt;/em&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Now let's see how It works with an unformatted java source code:&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style="font-family:courier new;font-size:78%;"&gt;&lt;br /&gt;package net.barenca.test;&lt;br /&gt;&lt;br /&gt;import java.io.BufferedInputStream;&lt;br /&gt;import java.io.FileInputStream;&lt;br /&gt;import java.sql.Connection;&lt;br /&gt;import java.sql.DriverManager;&lt;br /&gt;import java.sql.PreparedStatement;&lt;br /&gt;import java.util.Date;&lt;br /&gt;import java.util.Random;&lt;br /&gt;&lt;br /&gt;import oracle.jdbc.OracleDriver;&lt;br /&gt;&lt;br /&gt;public class OracleBlobTest{&lt;br /&gt;public static void main(String[] args) throws Exception&lt;br /&gt;{&lt;br /&gt;String filename="/home/barenca/Documents/LDAP.pdf";&lt;br /&gt;FileInputStream fis = new FileInputStream(filename);&lt;br /&gt;BufferedInputStream inputStream = new BufferedInputStream(fis);&lt;br /&gt;&lt;br /&gt;  int length = inputStream.available();&lt;br /&gt;  DriverManager.registerDriver(new OracleDriver());&lt;br /&gt;String url="jdbc:oracle:thin:@192.168.1.253:1521:devdb";&lt;br /&gt;  Connection conn = DriverManager.getConnection(url&lt;br /&gt;          , "prueba",&lt;br /&gt;          "prueba");&lt;br /&gt;  String insert = "insert into test_blob(id,content)values(?,?)";&lt;br /&gt;&lt;br /&gt;PreparedStatement pst = conn.prepareStatement(insert);&lt;br /&gt;int x = new Random(new Date().getTime()).nextInt(100000);&lt;br /&gt;&lt;br /&gt;pst.setInt(1, x);&lt;br /&gt;pst.setBinaryStream(2, inputStream, length);&lt;br /&gt;pst.execute();&lt;br /&gt;pst.close();&lt;br /&gt;&lt;br /&gt;  conn.close();&lt;br /&gt;  inputStream.close();&lt;br /&gt;}}&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;And after &lt;em&gt;&lt;strong&gt;java -jar jastyle.jar --style=java OracleBlobTest.java&lt;/strong&gt;&lt;/em&gt; this is the result:&lt;/p&gt;&lt;br /&gt;&lt;pre style="font-family:courier new;font-size:78%;"&gt;&lt;br /&gt;package net.barenca.test;&lt;br /&gt;import java.io.BufferedInputStream;&lt;br /&gt;import java.io.FileInputStream;&lt;br /&gt;import java.sql.Connection;&lt;br /&gt;import java.sql.DriverManager;&lt;br /&gt;import java.sql.PreparedStatement;&lt;br /&gt;import java.util.Date;&lt;br /&gt;import java.util.Random;&lt;br /&gt;import oracle.jdbc.OracleDriver;&lt;br /&gt;public class OracleBlobTest {&lt;br /&gt;public static void main(String[] args) throws Exception {&lt;br /&gt;       String filename ="/home/barenca/Documents/LDAP.pdf";&lt;br /&gt;       FileInputStream fis = new FileInputStream(filename);&lt;br /&gt;       BufferedInputStream inputStream = new BufferedInputStream(fis);&lt;br /&gt;       int length = inputStream.available();&lt;br /&gt;       DriverManager.registerDriver(new OracleDriver());&lt;br /&gt;       String url ="jdbc:oracle:thin:@192.168.1.253:1521:devdb";&lt;br /&gt;       Connection conn = DriverManager.getConnection(url&lt;br /&gt;                         , "prueba","prueba");&lt;br /&gt;       String insert = "insert into test_blob(id,content)values(?,?)";&lt;br /&gt;       PreparedStatement pst = conn.prepareStatement(insert);&lt;br /&gt;       int x = new Random(new Date().getTime()).nextInt(100000);&lt;br /&gt;       pst.setInt(1, x);&lt;br /&gt;       pst.setBinaryStream(2, inputStream, length);&lt;br /&gt;       pst.execute();&lt;br /&gt;       pst.close();&lt;br /&gt;       conn.close();&lt;br /&gt;       inputStream.close();&lt;br /&gt;   }&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;p&gt;I think is not perfect, but It helps a lot :) .&lt;/p&gt;&lt;p&gt;Now, as a library :&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;pre style="font-family:courier new;font-size:78%;"&gt;&lt;br /&gt;import java.io.Reader;&lt;br /&gt;import java.io.FileReader;&lt;br /&gt;import java.io.BufferedReader;&lt;br /&gt;import net.barenca.jastyle.ASFormatter;&lt;br /&gt;import net.barenca.jastyle.FormatterHelper;&lt;br /&gt;&lt;br /&gt;public static void main(String[] args) throws Exception&lt;br /&gt;{&lt;br /&gt;&lt;br /&gt; ASFormatter formatter = new ASFormatter();&lt;br /&gt; formatter.setJavaStyle();&lt;br /&gt; Reader in = new BufferedReader(new FileReader("OracleBlobTest.java"));&lt;br /&gt;&lt;br /&gt; String formatted = FormatterHelper.format(in,formatter);&lt;br /&gt;&lt;br /&gt; // and that's it!&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;The best thing is that this library does not need any additional jar library!!!.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;I hope you enjoy it!.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Best regards.&lt;/p&gt;&lt;p&gt;Héctor.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/734049252784438644-6343555055428874183?l=barenka.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barenka.blogspot.com/feeds/6343555055428874183/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=734049252784438644&amp;postID=6343555055428874183' title='2 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/734049252784438644/posts/default/6343555055428874183'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/734049252784438644/posts/default/6343555055428874183'/><link rel='alternate' type='text/html' href='http://barenka.blogspot.com/2009/10/source-code-formatter-library-for-java.html' title='Source code formatter library for Java'/><author><name>Hector Suarez Barenca</name><uri>http://www.blogger.com/profile/07718757012406615489</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='27' src='http://3.bp.blogspot.com/_UVURCtBXPg8/St5giEYqCxI/AAAAAAAAAMI/ysh2sjx8ySw/S220/barenca.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-734049252784438644.post-8800267667992269592</id><published>2009-10-15T08:37:00.000-07:00</published><updated>2009-10-15T09:10:27.715-07:00</updated><title type='text'>Mapping Windows Key (Super) in Ubuntu</title><content type='html'>&lt;p&gt;Probably one of the functions that a Windows user is accustom to is the mapping of the &lt;strong&gt;Windows key&lt;/strong&gt; + &lt;strong&gt;E&lt;/strong&gt; (this opens the Explorer -not the Internet Explorer), this combination of key mapping is not enabled by default in Ubuntu (I have tested it in Ubuntu 9.04, XUbuntu 8.10 and 9.04).&lt;/p&gt;&lt;p&gt;So, let me show you how easy is to map the windows key + E in order to have the same behavior in Ubuntu as Windows does it.&lt;/p&gt;&lt;p&gt;First go to option menu System --&gt;Preferences--&gt;Keyboard and then choose the tab "Layouts" and then "Layout options", and go to the &lt;strong&gt;Alt/Win key behavior&lt;/strong&gt; subtree, open it and click on the radio button &lt;strong&gt;Supper key is mapped to Win keys&lt;/strong&gt; and then click on close (or accept) and click on the another close button.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_UVURCtBXPg8/StdGQVSeU9I/AAAAAAAAAL4/dQdNhjzEcQM/s1600-h/opciones-distribucion.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 285px;" src="http://1.bp.blogspot.com/_UVURCtBXPg8/StdGQVSeU9I/AAAAAAAAAL4/dQdNhjzEcQM/s320/opciones-distribucion.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5392856325205939154" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Second, go to System --&gt; Preferences --&gt; Keyboard Shortcuts and look for the &lt;strong&gt;Desktop section&lt;/strong&gt; and click on the &lt;strong&gt;Home folder&lt;/strong&gt; row, now press at the same time the two keys &lt;strong&gt;Windows&lt;/strong&gt; +&lt;strong&gt; E&lt;/strong&gt; (like in Windows - &lt;em&gt;plus symbol should not be pressed&lt;/em&gt;), once you have done it, the combination of keys (the shortcut) to open Nautilus is ready!, accept the change.&lt;/p&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_UVURCtBXPg8/StdGQkyXx8I/AAAAAAAAAMA/ewbzQ79M5qo/s1600-h/Keyboard-mapping.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 202px;" src="http://3.bp.blogspot.com/_UVURCtBXPg8/StdGQkyXx8I/AAAAAAAAAMA/ewbzQ79M5qo/s320/Keyboard-mapping.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5392856329366259650" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;p&gt;Now continue mapping the keys you are accustom to. I hope this short description is useful for you.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Best regards.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/734049252784438644-8800267667992269592?l=barenka.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barenka.blogspot.com/feeds/8800267667992269592/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=734049252784438644&amp;postID=8800267667992269592' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/734049252784438644/posts/default/8800267667992269592'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/734049252784438644/posts/default/8800267667992269592'/><link rel='alternate' type='text/html' href='http://barenka.blogspot.com/2009/10/mapping-windows-key-super-in-ubuntu.html' title='Mapping Windows Key (Super) in Ubuntu'/><author><name>Hector Suarez Barenca</name><uri>http://www.blogger.com/profile/07718757012406615489</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='27' src='http://3.bp.blogspot.com/_UVURCtBXPg8/St5giEYqCxI/AAAAAAAAAMI/ysh2sjx8ySw/S220/barenca.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_UVURCtBXPg8/StdGQVSeU9I/AAAAAAAAAL4/dQdNhjzEcQM/s72-c/opciones-distribucion.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-734049252784438644.post-6272129668866489584</id><published>2009-06-22T08:50:00.000-07:00</published><updated>2009-06-22T09:06:19.333-07:00</updated><title type='text'>Error: No JDK found on PATH, Please correct the SetJavaHome directive or add the directive</title><content type='html'>If you have seen the following error while trying to execute Oracle SQL Developer:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Error: No JDK found on PATH&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Please correct the SetJavaHome directive or add the directive&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;in &lt;span style="color: rgb(204, 204, 255);"&gt;/home/barenca/bin/sqldeveloper&lt;/span&gt;/sqldeveloper/bin/sqldeveloper.conf or&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;sqldeveloper-Linux.conf&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;to point to the JDK installation.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;You just need to indicate the J2SDK path in the file &lt;span style="font-style: italic;"&gt;sqldeveloper/bin/sqldeveloper.conf&lt;/span&gt; and that's it!.&lt;br /&gt;&lt;br /&gt;Edit the file ./&lt;span style="font-weight: bold;"&gt;sqldeveloper/bin/sqldeveloper.conf&lt;/span&gt; and add the path of your j2sdk installation (in Linux/unix &lt;span style="font-style: italic;"&gt;which java&lt;/span&gt; and then follow the symbolic links):&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; font-weight: bold;"&gt;SetJavaHome /usr/lib/jvm/java-6-sun&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;And that's it!, enjoy it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/734049252784438644-6272129668866489584?l=barenka.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barenka.blogspot.com/feeds/6272129668866489584/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=734049252784438644&amp;postID=6272129668866489584' title='5 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/734049252784438644/posts/default/6272129668866489584'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/734049252784438644/posts/default/6272129668866489584'/><link rel='alternate' type='text/html' href='http://barenka.blogspot.com/2009/06/error-no-jdk-found-on-path-please.html' title='Error: No JDK found on PATH, Please correct the SetJavaHome directive or add the directive'/><author><name>Hector Suarez Barenca</name><uri>http://www.blogger.com/profile/07718757012406615489</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='27' src='http://3.bp.blogspot.com/_UVURCtBXPg8/St5giEYqCxI/AAAAAAAAAMI/ysh2sjx8ySw/S220/barenca.jpg'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-734049252784438644.post-3058857813299099744</id><published>2009-06-18T11:33:00.000-07:00</published><updated>2009-06-18T11:48:37.923-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Antix IceWM Volume keys'/><title type='text'>Sound Volume keys in IceWM (tested with Latitude D620)</title><content type='html'>Some days ago I took sometime and I installed Antix 8, not everything is according with the features I was waiting for, but It is OK.&lt;br /&gt;&lt;br /&gt;One thing It was missing was the configuration for the Sound Volume keys, so this is what I did for enabling the keys on my Laptop.&lt;br /&gt;&lt;br /&gt;Go to the &lt;span style="font-style: italic; font-weight: bold;"&gt;Antix Control Center&lt;/span&gt;, click on &lt;span style="font-style: italic; font-weight: bold;"&gt;Edit IceWM settings&lt;/span&gt;, click on &lt;span style="font-style: italic; font-weight: bold;"&gt;keys&lt;/span&gt; tab and append the following to the file:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;key "XF86AudioLowerVolume"      amixer -q set Master playback 5-&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;key "XF86AudioRaiseVolume"      amixer -q set Master playback 5+&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;key "XF86AudioMute"             amixer sset Master toggle&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Then save the file.&lt;br /&gt;&lt;br /&gt;Now click on the &lt;span style="font-style: italic; font-weight: bold;"&gt;statup&lt;/span&gt; tab and append the following lines:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;xmodmap -e 'keycode 176 = XF86AudioRaiseVolume'&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;xmodmap -e 'keycode 174 = XF86AudioLowerVolume'&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;xmodmap -e 'keycode 160 = XF86AudioMute' &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Then save the file.&lt;br /&gt;&lt;br /&gt;Close the session and It's done!.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/734049252784438644-3058857813299099744?l=barenka.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barenka.blogspot.com/feeds/3058857813299099744/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=734049252784438644&amp;postID=3058857813299099744' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/734049252784438644/posts/default/3058857813299099744'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/734049252784438644/posts/default/3058857813299099744'/><link rel='alternate' type='text/html' href='http://barenka.blogspot.com/2009/06/sound-volume-keys-in-icewm-tested-with.html' title='Sound Volume keys in IceWM (tested with Latitude D620)'/><author><name>Hector Suarez Barenca</name><uri>http://www.blogger.com/profile/07718757012406615489</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='27' src='http://3.bp.blogspot.com/_UVURCtBXPg8/St5giEYqCxI/AAAAAAAAAMI/ysh2sjx8ySw/S220/barenca.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-734049252784438644.post-5897092648555566537</id><published>2008-12-23T17:53:00.000-08:00</published><updated>2008-12-23T18:09:29.296-08:00</updated><title type='text'>Static IP on Xubuntu 8.10 (Intrepid Ibex)</title><content type='html'>&lt;span style="font-weight: bold;"&gt;1)&lt;/span&gt; Remove the network manager (this will remove the applet), go to the &lt;span style="font-style: italic;"&gt;"install and Remove applications"&lt;/span&gt; available in the option menu &lt;span style="font-style: italic;"&gt;System&lt;/span&gt;, find the &lt;span style="font-style: italic;"&gt;Network Manager&lt;/span&gt; and remove.&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;2)&lt;/span&gt; Edit &lt;span style="font-weight: bold;"&gt;/etc/network/interfaces&lt;/span&gt; according to your needs. In my case my ethernet card is eth0 and my static IP will be 192.168.1.253&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;barenca@development:~$ &lt;span style="font-weight: bold;"&gt;sudo vi /etc/network/interfaces&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;auto lo eth0&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;iface lo inet loopback&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;iface eth0 inet static&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;   address 192.168.1.253&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;   netmask 255.255.255.0&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;   network 192.168.1.0&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;   broadcast 192.168.1.255&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;   gateway 192.168.1.1&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;3)&lt;/span&gt; Add your DNS in the file /etc/resolv.conf&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;barenca@development:~$ &lt;/span&gt;&lt;span style="font-weight: bold;"&gt;sudo vi /etc/resolv.conf&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;# Generated by NetworkManager&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;nameserver 200.33.146.241&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;nameserver 200.33.146.249&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;4)&lt;/span&gt; Restart the service&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;barenca@development:~$&lt;/span&gt; &lt;span style="font-weight: bold;font-family:courier new;" &gt;sudo /etc/init.d/networking restart&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;5)&lt;/span&gt; Test your connection. If no connection, do not worry, just restart and that's it!.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/734049252784438644-5897092648555566537?l=barenka.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barenka.blogspot.com/feeds/5897092648555566537/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=734049252784438644&amp;postID=5897092648555566537' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/734049252784438644/posts/default/5897092648555566537'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/734049252784438644/posts/default/5897092648555566537'/><link rel='alternate' type='text/html' href='http://barenka.blogspot.com/2008/12/static-ip-on-xubuntu-810-intrepid-ibex.html' title='Static IP on Xubuntu 8.10 (Intrepid Ibex)'/><author><name>Hector Suarez Barenca</name><uri>http://www.blogger.com/profile/07718757012406615489</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='27' src='http://3.bp.blogspot.com/_UVURCtBXPg8/St5giEYqCxI/AAAAAAAAAMI/ysh2sjx8ySw/S220/barenca.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-734049252784438644.post-1197879768477874078</id><published>2008-09-05T09:57:00.000-07:00</published><updated>2008-10-25T03:16:49.493-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Visual Library'/><title type='text'>Netbeans Visual Library and a Multiline Label Widget</title><content type='html'>Some days ago I was trying to find a solution for a multiline label widget for the netbeans visual library, I tried some solutions (out of the box) like QLabel and others found on the web, without any success, after 2 weeks of frustrating research, I decided to continue with other features of my system, and then later on, I returned to this issue again and give it a try.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;The problem:&lt;/span&gt;&lt;br /&gt;I needed a Widget that supported Multiline label, auto-fit on resize, and drag and drop action, the first approach was to include QLabel within a ComponentWidget, It did not work for me,  and then, I tried with a JTextArea in this way:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;public class MultilineLabelWidget&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;    extends ComponentWidget&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;{&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;    public MultilineLabelWidget( Scene scene, String text )&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;    {&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;        super( scene, new JTextArea( text ) );&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;        JTextArea jText = (JTextArea) this.getComponent();&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;        jText.setOpaque( false );&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;        jText.setEditable( false );&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;        jText.setLineWrap( true );&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;        jText.setWrapStyleWord( true );&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;        jText.setHighlighter( null );&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;        jText.setBorder( BorderFactory.createEmptyBorder() );&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;        &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;        this.getActions().addAction( ActionFactory.createResizeAction() );&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;        this.getActions().addAction( ActionFactory.createMoveAction() );&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;        this.setBorder( org.netbeans.api.visual.border.BorderFactory.createLineBorder( 8 ) );&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;    }&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;}&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;and It partially worked!!, the problem is that JTextArea is painted after the widget, so the MoveAction will not work! out-of-the-box, ummm, I tried another solution, not extending the ComponentWidget but creating an in-line ComponentWidget and trying to catch the Mouse Events and redirect the calls to its Action in the Widget, like this:&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;JTextArea jText = new JTextArea( hm );&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;        jText.setOpaque( false );&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;        jText.setEditable( false );&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;        jText.setLineWrap( true );&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;        jText.setWrapStyleWord( true );&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;        jText.setBorder( BorderFactory.createEmptyBorder() );&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;        final ComponentWidget widget = new ComponentWidget(scene,jText);&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;        widget.getActions().addAction( ActionFactory.createResizeAction() );&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;        widget.getActions().addAction( ActionFactory.createMoveAction() );&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;        jText.addMouseMotionListener( new MouseMotionListener(){&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;            @Override&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;            public void mouseDragged( MouseEvent event )&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;            {&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;                widget.getActions().mouseDragged( widget, new WidgetAction.WidgetMouseEvent(new Date().getTime(),event) );                &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;            }&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;            @Override&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;            public void mouseMoved( MouseEvent event )&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;            {&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;                widget.getActions().mouseMoved( widget, new WidgetAction.WidgetMouseEvent(new Date().getTime(),event) );                &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;            }} );&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;        &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;        jText.addMouseListener( new MouseListener(){&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;            @Override&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;            public void mouseClicked( MouseEvent event )&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;            {&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;                widget.getActions().mouseClicked( widget, new WidgetAction.WidgetMouseEvent(new Date().getTime(),event) );&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;            }&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;            @Override&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;            public void mouseEntered( MouseEvent event )&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;            {&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;                widget.getActions().mouseEntered( widget, new WidgetAction.WidgetMouseEvent(new Date().getTime(),event) );&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;            }&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;            @Override&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;            public void mouseExited( MouseEvent event )&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;            {&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;                widget.getActions().mouseExited( widget, new WidgetAction.WidgetMouseEvent(new Date().getTime(),event) );&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;            }&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;            @Override&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;            public void mousePressed( MouseEvent event )&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;            {&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;                widget.getActions().mousePressed( widget, new WidgetAction.WidgetMouseEvent(new Date().getTime(),event) );&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;            }&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;            &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;            @Override&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;            public void mouseReleased( MouseEvent event )&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;            {&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;                widget.getActions().mouseReleased( widget, new WidgetAction.WidgetMouseEvent(new Date().getTime(),event) );&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;            }} );&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;        jText.setHighlighter( null );&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;        widget.setBorder( org.netbeans.api.visual.border.BorderFactory.createLineBorder( 8 ) );&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;It worked better than the previous solution!, BUT!!!!!!!!!, It just worked when I moved the mouse pointer slowly (of course, first click and then drag), but every time I moved the mouse pointer as I usually do, the component was not repainted (It did not followed the mouse pointer), and at the moment I released the left button on the mouse, the widget was painted!, frustrating for me because I think It should be easy to do it! &lt;span style="font-style: italic; color: rgb(204, 102, 0);"&gt;(please developer of Visual Library, include a Multiline Label Widget Out-of-the-box)&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;The solution&lt;/span&gt;&lt;br /&gt;Finally, I found a code on the net (It references to com.exalto.UI) and adapted it to fit within the Visual Library Widget, so the result It is this:&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;package test.designer.widget;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;import java.awt.Graphics2D;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;import java.awt.Insets;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;import java.awt.Rectangle;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;import java.awt.font.LineBreakMeasurer;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;import java.awt.font.TextAttribute;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;import java.awt.font.TextLayout;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;import java.text.AttributedCharacterIterator;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;import java.text.AttributedString;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;import org.netbeans.api.visual.widget.LabelWidget;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;import org.netbeans.api.visual.widget.Scene;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;public class MultilineLabelWidget&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;    extends LabelWidget&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;{&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;     private boolean justify;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;    public &lt;/span&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;MultilineLabelWidget&lt;/span&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;( Scene scene, String label )&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;    {&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;        super( scene );&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;        this.setLabel( label );&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;        this.setJustified( true );&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;    }&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;    @Override&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;    protected void paintWidget()&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;    {&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;        paintOrGetSize( this.getGraphics() );&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;    }&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;    private void paintOrGetSize( Graphics2D gr )&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;    {&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;        float width = (float) ( this.getBounds() != null ? this.getBounds().getWidth() : this.getPreferredSize()&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;            .getWidth() );&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;        Insets insets = this.getBorder().getInsets();&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;        float rwidth = width - ( insets.left + insets.right );// + margin.left + margin.right;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;        Rectangle rec = this.calculateClientArea();&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;        gr.setFont( getFont() );&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;float x = 0.0F;//+ margin.left;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;        float y = (float) rec.getY();//+ margin.top;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;        if ( rwidth &gt; 0 &amp;amp;&amp;amp; this.getLabel() != null &amp;amp;&amp;amp; this.getLabel().length() &gt; 0 )&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;        {&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;            AttributedString as = new AttributedString( this.getLabel() );&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;            as.addAttribute( TextAttribute.FONT, getFont() );&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;            AttributedCharacterIterator aci = as.getIterator();&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;            LineBreakMeasurer lbm = new LineBreakMeasurer( aci, gr.getFontRenderContext() );&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;            &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;            while ( lbm.getPosition() &lt; aci.getEndIndex() )&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;            {&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;                TextLayout textLayout = lbm.nextLayout( rwidth );&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;                if ( gr != null &amp;amp;&amp;amp; isJustified() &amp;amp;&amp;amp; textLayout.getVisibleAdvance() &gt; 0.80 * rwidth )&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;                {&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;                    textLayout = textLayout.getJustifiedLayout( rwidth );&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;                }&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;                if ( gr != null )&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;                {&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;                    textLayout.draw( gr, x, y + textLayout.getAscent() );&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;                }&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;                y += textLayout.getDescent() + textLayout.getLeading() + textLayout.getAscent();&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;                &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;            }&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;        }&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;    }&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;    public boolean isJustified()&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;    {&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;        return justify;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;    }&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;    public void setJustified( boolean justify )&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;    {&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;        boolean old = this.justify;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;        this.justify = justify;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;        if ( old != this.justify )&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;        {&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;            repaint();&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;        }&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;    }&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);font-family:courier new;" &gt;}&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;It worked for me, It worked for my purposes, I hope It works for you.&lt;br /&gt;Please modify it, improve the code, see if It works for you, and feedback to me.&lt;br /&gt;&lt;br /&gt;Thanks a lot.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;References:&lt;/span&gt;&lt;br /&gt;http://graph.netbeans.org/servlets/ReadMsg?listName=users&amp;amp;msgNo=1295&lt;br /&gt;http://graph.netbeans.org/servlets/ReadMsg?list=users&amp;amp;msgNo=726&lt;br /&gt;http://www.koders.com/java/fid9BE9B31AC9BED01828448BF91A61AFA5AE431E16.aspx&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/734049252784438644-1197879768477874078?l=barenka.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barenka.blogspot.com/feeds/1197879768477874078/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=734049252784438644&amp;postID=1197879768477874078' title='9 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/734049252784438644/posts/default/1197879768477874078'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/734049252784438644/posts/default/1197879768477874078'/><link rel='alternate' type='text/html' href='http://barenka.blogspot.com/2008/09/visual-library-and-multiline-label.html' title='Netbeans Visual Library and a Multiline Label Widget'/><author><name>Hector Suarez Barenca</name><uri>http://www.blogger.com/profile/07718757012406615489</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='27' src='http://3.bp.blogspot.com/_UVURCtBXPg8/St5giEYqCxI/AAAAAAAAAMI/ysh2sjx8ySw/S220/barenca.jpg'/></author><thr:total>9</thr:total></entry><entry><id>tag:blogger.com,1999:blog-734049252784438644.post-5715698975006067763</id><published>2008-09-03T12:24:00.000-07:00</published><updated>2008-09-03T12:54:08.490-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><title type='text'>Fast delete of files or directories in Linux using find</title><content type='html'>&lt;pre&gt;&lt;span style="font-size:130%;"&gt;Let's suppose you have an structure like this:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:130%;"  &gt;mx.com.CVS&lt;/span&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:130%;"  &gt;mx.com.dtc.ayde&lt;/span&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:130%;"  &gt;mx.com.dtc.ayde.applet&lt;/span&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:130%;"  &gt;mx.com.dtc.ayde.applet.CVS&lt;/span&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:130%;"  &gt;mx.com.dtc.ayde.busquedas&lt;/span&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:130%;"  &gt;mx.com.dtc.ayde.busquedas.CVS&lt;/span&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:130%;"  &gt;mx.com.dtc.ayde.client&lt;/span&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;and you want to delete those directories with the name CVS, so, go to the root&lt;br /&gt;directory of those you want to delete (in this case&lt;br /&gt;/ ), and execute the following:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:130%;"  &gt;find . -type d -name CVS -exec rm -rf {} . \;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;br /&gt;or&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:130%;"  &gt;find . -type f -name *.db  -exec cp {} . \;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;br /&gt;for files that end with extension &lt;/span&gt;&lt;span style=";font-family:courier new;font-size:130%;"  &gt;db&lt;/span&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;br /&gt;the &lt;/span&gt;&lt;span style="font-weight: bold;font-family:courier new;font-size:130%;"  &gt;.&lt;/span&gt;&lt;span style="font-size:130%;"&gt; and &lt;/span&gt;&lt;span style="font-weight: bold;font-family:courier new;font-size:130%;"  &gt;\;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; are very important!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Regards,&lt;br /&gt;&lt;br /&gt;Barenca&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/734049252784438644-5715698975006067763?l=barenka.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barenka.blogspot.com/feeds/5715698975006067763/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=734049252784438644&amp;postID=5715698975006067763' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/734049252784438644/posts/default/5715698975006067763'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/734049252784438644/posts/default/5715698975006067763'/><link rel='alternate' type='text/html' href='http://barenka.blogspot.com/2008/09/fast-delete-of-files-or-directories-in.html' title='Fast delete of files or directories in Linux using find'/><author><name>Hector Suarez Barenca</name><uri>http://www.blogger.com/profile/07718757012406615489</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='27' src='http://3.bp.blogspot.com/_UVURCtBXPg8/St5giEYqCxI/AAAAAAAAAMI/ysh2sjx8ySw/S220/barenca.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-734049252784438644.post-6740085629653925097</id><published>2008-08-14T10:52:00.000-07:00</published><updated>2008-08-14T10:55:21.161-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='time synchronization'/><category scheme='http://www.blogger.com/atom/ns#' term='ntp'/><category scheme='http://www.blogger.com/atom/ns#' term='centos'/><title type='text'>Remote time synchronization using NTP on CentOS</title><content type='html'>If you want to know how to configure the Network Time Protocol service on CentOS, here you have:&lt;br /&gt;&lt;span style="font-family:Courier New;"&gt;&lt;br /&gt;&lt;br /&gt;#&lt;b&gt; chkconfig ntpd on&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;#&lt;b&gt; ntpdate pool.ntp.org&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;#&lt;b&gt; /etc/init.d/ntpd start&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;If you have not installed ntp, then before the previous lines install it with:&lt;br /&gt;&lt;br /&gt;#&lt;b&gt; yum install ntp&lt;br /&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Best regards,&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/734049252784438644-6740085629653925097?l=barenka.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barenka.blogspot.com/feeds/6740085629653925097/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=734049252784438644&amp;postID=6740085629653925097' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/734049252784438644/posts/default/6740085629653925097'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/734049252784438644/posts/default/6740085629653925097'/><link rel='alternate' type='text/html' href='http://barenka.blogspot.com/2008/08/remote-time-synchronization-using-ntp.html' title='Remote time synchronization using NTP on CentOS'/><author><name>Hector Suarez Barenca</name><uri>http://www.blogger.com/profile/07718757012406615489</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='27' src='http://3.bp.blogspot.com/_UVURCtBXPg8/St5giEYqCxI/AAAAAAAAAMI/ysh2sjx8ySw/S220/barenca.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-734049252784438644.post-5986783696982442298</id><published>2008-04-07T16:03:00.001-07:00</published><updated>2008-04-07T16:03:08.706-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ORA-01110'/><category scheme='http://www.blogger.com/atom/ns#' term='Oracle'/><category scheme='http://www.blogger.com/atom/ns#' term='ORA-01157'/><title type='text'>Simple solution for the ORA-01157 and ORA-01110 Errors</title><content type='html'>Did you erase a datafile?, do you still need that datafile?, if the answer for the last question was &lt;span style="font-style: italic;"&gt;yes&lt;/span&gt;, this is not the solution for you!, otherwise, continue...&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;SQL&amp;gt;&lt;/span&gt;&lt;span style="font-family: Courier;"&gt;startup mount;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;SQL&amp;gt;&lt;/span&gt;&lt;span style="font-family: Courier;"&gt;alter database datafile '/AS10g/oradata/asdb/users02.dbf' offline drop;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;SQL&amp;gt;&lt;/span&gt;&lt;span style="font-family: Courier;"&gt;alter database open;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;SQL&amp;gt;&lt;/span&gt;&lt;span style="font-family: Courier;"&gt;shutdown immediate;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;SQL&amp;gt;&lt;/span&gt;&lt;span style="font-family: Courier;"&gt;startup;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;and then, you will see something like this:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: Courier;"&gt;Total System Global Area 1048576000 bytes&lt;/span&gt;&lt;br style="font-family: Courier;" /&gt;&lt;span style="font-family: Courier;"&gt;Fixed Size&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 782524 bytes&lt;/span&gt;&lt;br style="font-family: Courier;" /&gt;&lt;span style="font-family: Courier;"&gt;Variable Size&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 892342084 bytes&lt;/span&gt;&lt;br style="font-family: Courier;" /&gt;&lt;span style="font-family: Courier;"&gt;Database Buffers&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 155189248 bytes&lt;/span&gt;&lt;br style="font-family: Courier;" /&gt;&lt;span style="font-family: Courier;"&gt;Redo Buffers&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 262144 bytes&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;It is done!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;In my case, I did not need that datafile anymore, so my problem was solved just following the above solution.&lt;br /&gt;&lt;br /&gt;Regards,&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Héctor Suárez Barenca&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/734049252784438644-5986783696982442298?l=barenka.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barenka.blogspot.com/feeds/5986783696982442298/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=734049252784438644&amp;postID=5986783696982442298' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/734049252784438644/posts/default/5986783696982442298'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/734049252784438644/posts/default/5986783696982442298'/><link rel='alternate' type='text/html' href='http://barenka.blogspot.com/2008/04/simple-solution-for-ora-01157-and-ora.html' title='Simple solution for the ORA-01157 and ORA-01110 Errors'/><author><name>Hector Suarez Barenca</name><uri>http://www.blogger.com/profile/07718757012406615489</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='27' src='http://3.bp.blogspot.com/_UVURCtBXPg8/St5giEYqCxI/AAAAAAAAAMI/ysh2sjx8ySw/S220/barenca.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-734049252784438644.post-161398658512626032</id><published>2008-03-05T09:36:00.001-08:00</published><updated>2008-03-05T09:36:05.790-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='algorithm'/><category scheme='http://www.blogger.com/atom/ns#' term='maximum sum'/><category scheme='http://www.blogger.com/atom/ns#' term='subarray'/><title type='text'>Maximum subarray (java implementation)</title><content type='html'>&lt;font style="font-style: italic;" size="4"&gt;&lt;span style="font-family: Verdana;"&gt;You're given an array containing both positive and negative integers and &lt;/span&gt;&lt;span style="font-family: Verdana;"&gt;required to find the subarray with the maximum sum.&lt;/span&gt;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;This is an interesting problem, I read that the solution was given in 1977 in less than a minute, so I took the original algorithm for the article and I implemented with Java, enjoy it!&lt;font face="Verdana, Arial, Helvetica, sans-serif"&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: Courier; color: rgb(102, 102, 204);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public static void main(String[] args)&lt;/span&gt;&lt;br style="font-family: Courier; color: rgb(102, 102, 204);" /&gt;&lt;span style="font-family: Courier; color: rgb(102, 102, 204);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;br style="font-family: Courier; color: rgb(102, 102, 204);" /&gt;&lt;span style="font-family: Courier; color: rgb(102, 102, 204);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int[] offset = new int[2];&lt;/span&gt;&lt;br style="font-family: Courier; color: rgb(102, 102, 204);" /&gt;&lt;span style="font-family: Courier; color: rgb(102, 102, 204);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int[] x = { 31, -41, 59, 26, -53, 58, 97, -93, -23, 18 };&lt;/span&gt;&lt;br style="font-family: Courier; color: rgb(102, 102, 204);" /&gt;&lt;span style="font-family: Courier; color: rgb(102, 102, 204);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int n = x.length;&lt;/span&gt;&lt;br style="font-family: Courier; color: rgb(102, 102, 204);" /&gt;&lt;span style="font-family: Courier; color: rgb(102, 102, 204);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int maxsofar = 0;&lt;/span&gt;&lt;br style="font-family: Courier; color: rgb(102, 102, 204);" /&gt;&lt;span style="font-family: Courier; color: rgb(102, 102, 204);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (int i = 0; i &amp;lt; n; i++)&lt;/span&gt;&lt;br style="font-family: Courier; color: rgb(102, 102, 204);" /&gt;&lt;span style="font-family: Courier; color: rgb(102, 102, 204);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (int j = i; j &amp;lt; n; j++)&lt;/span&gt;&lt;br style="font-family: Courier; color: rgb(102, 102, 204);" /&gt;&lt;span style="font-family: Courier; color: rgb(102, 102, 204);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;br style="font-family: Courier; color: rgb(102, 102, 204);" /&gt;&lt;span style="font-family: Courier; color: rgb(102, 102, 204);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int sum = 0;&lt;/span&gt;&lt;br style="font-family: Courier; color: rgb(102, 102, 204);" /&gt;&lt;span style="font-family: Courier; color: rgb(102, 102, 204);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (int k = i; k &amp;lt;= j; k++)&lt;/span&gt;&lt;br style="font-family: Courier; color: rgb(102, 102, 204);" /&gt;&lt;span style="font-family: Courier; color: rgb(102, 102, 204);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sum += x[k];&lt;/span&gt;&lt;br style="font-family: Courier; color: rgb(102, 102, 204);" /&gt;&lt;span style="font-family: Courier; color: rgb(102, 102, 204);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* sum is sum of x[i..j] */&lt;/span&gt;&lt;br style="font-family: Courier; color: rgb(102, 102, 204);" /&gt;&lt;span style="font-family: Courier; color: rgb(102, 102, 204);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (sum &amp;gt; maxsofar)&lt;/span&gt;&lt;br style="font-family: Courier; color: rgb(102, 102, 204);" /&gt;&lt;span style="font-family: Courier; color: rgb(102, 102, 204);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;br style="font-family: Courier; color: rgb(102, 102, 204);" /&gt;&lt;span style="font-family: Courier; color: rgb(102, 102, 204);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; offset[0] = i;&lt;/span&gt;&lt;br style="font-family: Courier; color: rgb(102, 102, 204);" /&gt;&lt;span style="font-family: Courier; color: rgb(102, 102, 204);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; offset[1] = j;&lt;/span&gt;&lt;br style="font-family: Courier; color: rgb(102, 102, 204);" /&gt;&lt;span style="font-family: Courier; color: rgb(102, 102, 204);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; maxsofar = sum;&lt;/span&gt;&lt;br style="font-family: Courier; color: rgb(102, 102, 204);" /&gt;&lt;span style="font-family: Courier; color: rgb(102, 102, 204);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br style="font-family: Courier; color: rgb(102, 102, 204);" /&gt;&lt;span style="font-family: Courier; color: rgb(102, 102, 204);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br style="font-family: Courier; color: rgb(102, 102, 204);" /&gt;&lt;span style="font-family: Courier; color: rgb(102, 102, 204);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; System.out.println("Subarray [" + offset[0] + "..." + offset[1]&lt;/span&gt;&lt;br style="font-family: Courier; color: rgb(102, 102, 204);" /&gt;&lt;span style="font-family: Courier; color: rgb(102, 102, 204);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + "] = " + maxsofar);&lt;/span&gt;&lt;br style="font-family: Courier; color: rgb(102, 102, 204);" /&gt;&lt;span style="font-family: Courier; color: rgb(102, 102, 204);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br /&gt;&lt;/font&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/734049252784438644-161398658512626032?l=barenka.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barenka.blogspot.com/feeds/161398658512626032/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=734049252784438644&amp;postID=161398658512626032' title='1 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/734049252784438644/posts/default/161398658512626032'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/734049252784438644/posts/default/161398658512626032'/><link rel='alternate' type='text/html' href='http://barenka.blogspot.com/2008/03/maximum-subarray-java-implementation.html' title='Maximum subarray (java implementation)'/><author><name>Hector Suarez Barenca</name><uri>http://www.blogger.com/profile/07718757012406615489</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='27' src='http://3.bp.blogspot.com/_UVURCtBXPg8/St5giEYqCxI/AAAAAAAAAMI/ysh2sjx8ySw/S220/barenca.jpg'/></author><thr:total>1</thr:total></entry></feed>
