<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="it">
	<id>http://wiki.netsitech.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Pallotti</id>
	<title>WikiSitech - Contributi utente [it]</title>
	<link rel="self" type="application/atom+xml" href="http://wiki.netsitech.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Pallotti"/>
	<link rel="alternate" type="text/html" href="http://wiki.netsitech.com/index.php/Speciale:Contributi/Pallotti"/>
	<updated>2026-05-04T18:52:06Z</updated>
	<subtitle>Contributi utente</subtitle>
	<generator>MediaWiki 1.34.4</generator>
	<entry>
		<id>http://wiki.netsitech.com/index.php?title=Programmazione&amp;diff=3297</id>
		<title>Programmazione</title>
		<link rel="alternate" type="text/html" href="http://wiki.netsitech.com/index.php?title=Programmazione&amp;diff=3297"/>
		<updated>2009-10-05T10:03:08Z</updated>

		<summary type="html">&lt;p&gt;Pallotti: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Linguaggi==&lt;br /&gt;
&lt;br /&gt;
HowTo, Best Practice e tutto ciò che può essere utile durante lo sviluppo&lt;br /&gt;
&lt;br /&gt;
* [[Programmazione:Java|Java (J2EE, etc.)]]&lt;br /&gt;
* [[Programmazione:Java/Eclipse_RCP|Eclipse RCP (SWT, JFace, Eclipse RCP, etc.)]]&lt;/div&gt;</summary>
		<author><name>Pallotti</name></author>
		
	</entry>
	<entry>
		<id>http://wiki.netsitech.com/index.php?title=Programmazione:Java/Javascript_per_il_controllo_del_tasto_MAIUSC&amp;diff=3296</id>
		<title>Programmazione:Java/Javascript per il controllo del tasto MAIUSC</title>
		<link rel="alternate" type="text/html" href="http://wiki.netsitech.com/index.php?title=Programmazione:Java/Javascript_per_il_controllo_del_tasto_MAIUSC&amp;diff=3296"/>
		<updated>2009-10-05T10:02:33Z</updated>

		<summary type="html">&lt;p&gt;Pallotti: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;code javascript&amp;gt;&lt;br /&gt;
&amp;lt;script language=&amp;quot;JavaScript&amp;quot; src=&amp;quot;js/jscapslock.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;
		&amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt;&lt;br /&gt;
	function showHide(layerid){&lt;br /&gt;
	if (document.getElementById(layerid).style.visibility != &amp;quot;hidden&amp;quot;){&lt;br /&gt;
		document.getElementById(layerid).style.visibility = &amp;quot;hidden&amp;quot;&lt;br /&gt;
	}&lt;br /&gt;
	else{&lt;br /&gt;
	document.getElementById(layerid).style.visibility = &amp;quot;visible&amp;quot;&lt;br /&gt;
	}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code javascript&amp;gt;&lt;br /&gt;
onkeypress=&amp;quot;capsDetect(event);&amp;quot;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code javascript&amp;gt;&lt;br /&gt;
&amp;lt;div&amp;gt;Ocio!&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;color:black;height:50px&amp;quot;&amp;gt;Maiusc attivo&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;button style=&amp;quot;width:74;height:20;font-size:10;border:1px outset #ffffff;&amp;quot; onclick=&amp;quot;showHide('box2')&amp;quot;&amp;gt;Ok&amp;lt;/button&amp;gt;&lt;br /&gt;
&amp;lt;/DIV&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code javascript&amp;gt;&lt;br /&gt;
js/jscapslock.js&amp;quot;:&lt;br /&gt;
function capsDetect( e ) {&lt;br /&gt;
	if( !e ) { e = window.event; } &lt;br /&gt;
	if( !e ) { MWJ_say_Caps( false ); &lt;br /&gt;
		return; &lt;br /&gt;
		}&lt;br /&gt;
	//premuto il maiusc&lt;br /&gt;
	var theKey = e.which ? e.which : ( e.keyCode ? e.keyCode : ( e.charCode ? e.charCode : 0 ) );&lt;br /&gt;
	//premuto il tasto shift&lt;br /&gt;
	var theShift = e.shiftKey || ( e.modifiers &amp;amp;&amp;amp; ( e.modifiers &amp;amp; 4 ) ); //AND&lt;br /&gt;
	//se maiusc, guarda che non sia premuto lo shife. Se non maiusc, guarda che sia premuto&lt;br /&gt;
	MWJ_say_Caps( ( theKey &amp;gt; 64 &amp;amp;&amp;amp; theKey &amp;lt; 91 &amp;amp;&amp;amp; !theShift ) || ( theKey &amp;gt; 96 &amp;amp;&amp;amp; theKey &amp;lt; 123 &amp;amp;&amp;amp; theShift ) );&lt;br /&gt;
}&lt;br /&gt;
function MWJ_say_Caps( oC ) {&lt;br /&gt;
	if( typeof( capsError ) == 'string' ) { &lt;br /&gt;
		if( oC ) { showHide('box2'); } &lt;br /&gt;
	} else { capsError( oC ); }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function showHide(layerid){&lt;br /&gt;
if (document.getElementById(layerid).style.visibility != &amp;quot;hidden&amp;quot;){&lt;br /&gt;
document.getElementById(layerid).style.visibility = &amp;quot;hidden&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
else{&lt;br /&gt;
document.getElementById(layerid).style.visibility = &amp;quot;visible&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Pallotti</name></author>
		
	</entry>
	<entry>
		<id>http://wiki.netsitech.com/index.php?title=Programmazione:Java/Javascript_per_il_controllo_del_tasto_MAIUSC&amp;diff=3295</id>
		<title>Programmazione:Java/Javascript per il controllo del tasto MAIUSC</title>
		<link rel="alternate" type="text/html" href="http://wiki.netsitech.com/index.php?title=Programmazione:Java/Javascript_per_il_controllo_del_tasto_MAIUSC&amp;diff=3295"/>
		<updated>2009-10-05T09:15:34Z</updated>

		<summary type="html">&lt;p&gt;Pallotti: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;code javascript&amp;gt;&lt;br /&gt;
&amp;lt;script language=&amp;quot;JavaScript&amp;quot; src=&amp;quot;js/jscapslock.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;
		&amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt;&lt;br /&gt;
	function showHide(layerid){&lt;br /&gt;
	if (document.getElementById(layerid).style.visibility != &amp;quot;hidden&amp;quot;){&lt;br /&gt;
		document.getElementById(layerid).style.visibility = &amp;quot;hidden&amp;quot;&lt;br /&gt;
	}&lt;br /&gt;
	else{&lt;br /&gt;
	document.getElementById(layerid).style.visibility = &amp;quot;visible&amp;quot;&lt;br /&gt;
	}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{code}&lt;br /&gt;
onkeypress=&amp;quot;capsDetect(event);&amp;quot;&lt;br /&gt;
{code}&lt;br /&gt;
&lt;br /&gt;
{code}&lt;br /&gt;
&amp;lt;div&amp;gt;Ocio!&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;color:black;height:50px&amp;quot;&amp;gt;Maiusc attivo&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;button style=&amp;quot;width:74;height:20;font-size:10;border:1px outset #ffffff;&amp;quot; onclick=&amp;quot;showHide('box2')&amp;quot;&amp;gt;Ok&amp;lt;/button&amp;gt;&lt;br /&gt;
&amp;lt;/DIV&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
js/jscapslock.js&amp;quot;:&lt;br /&gt;
function capsDetect( e ) {&lt;br /&gt;
	if( !e ) { e = window.event; } &lt;br /&gt;
	if( !e ) { MWJ_say_Caps( false ); &lt;br /&gt;
		return; &lt;br /&gt;
		}&lt;br /&gt;
	//premuto il maiusc&lt;br /&gt;
	var theKey = e.which ? e.which : ( e.keyCode ? e.keyCode : ( e.charCode ? e.charCode : 0 ) );&lt;br /&gt;
	//premuto il tasto shift&lt;br /&gt;
	var theShift = e.shiftKey || ( e.modifiers &amp;amp;&amp;amp; ( e.modifiers &amp;amp; 4 ) ); //AND&lt;br /&gt;
	//se maiusc, guarda che non sia premuto lo shife. Se non maiusc, guarda che sia premuto&lt;br /&gt;
	MWJ_say_Caps( ( theKey &amp;gt; 64 &amp;amp;&amp;amp; theKey &amp;lt; 91 &amp;amp;&amp;amp; !theShift ) || ( theKey &amp;gt; 96 &amp;amp;&amp;amp; theKey &amp;lt; 123 &amp;amp;&amp;amp; theShift ) );&lt;br /&gt;
}&lt;br /&gt;
function MWJ_say_Caps( oC ) {&lt;br /&gt;
	if( typeof( capsError ) == 'string' ) { &lt;br /&gt;
		if( oC ) { showHide('box2'); } &lt;br /&gt;
	} else { capsError( oC ); }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function showHide(layerid){&lt;br /&gt;
if (document.getElementById(layerid).style.visibility != &amp;quot;hidden&amp;quot;){&lt;br /&gt;
document.getElementById(layerid).style.visibility = &amp;quot;hidden&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
else{&lt;br /&gt;
document.getElementById(layerid).style.visibility = &amp;quot;visible&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
{code}&lt;/div&gt;</summary>
		<author><name>Pallotti</name></author>
		
	</entry>
	<entry>
		<id>http://wiki.netsitech.com/index.php?title=Programmazione:Java/Javascript_per_il_controllo_del_tasto_MAIUSC&amp;diff=3294</id>
		<title>Programmazione:Java/Javascript per il controllo del tasto MAIUSC</title>
		<link rel="alternate" type="text/html" href="http://wiki.netsitech.com/index.php?title=Programmazione:Java/Javascript_per_il_controllo_del_tasto_MAIUSC&amp;diff=3294"/>
		<updated>2009-10-05T05:43:54Z</updated>

		<summary type="html">&lt;p&gt;Pallotti: Creata pagina con '&amp;lt;script language=&amp;quot;JavaScript&amp;quot; src=&amp;quot;js/jscapslock.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt; 		&amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt; 	function showHide(layerid){ 	if (document.getElementById(layerid).style.visibili…'&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;script language=&amp;quot;JavaScript&amp;quot; src=&amp;quot;js/jscapslock.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;
		&amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt;&lt;br /&gt;
	function showHide(layerid){&lt;br /&gt;
	if (document.getElementById(layerid).style.visibility != &amp;quot;hidden&amp;quot;){&lt;br /&gt;
		document.getElementById(layerid).style.visibility = &amp;quot;hidden&amp;quot;&lt;br /&gt;
	}&lt;br /&gt;
	else{&lt;br /&gt;
	document.getElementById(layerid).style.visibility = &amp;quot;visible&amp;quot;&lt;br /&gt;
	}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{code}&lt;br /&gt;
onkeypress=&amp;quot;capsDetect(event);&amp;quot;&lt;br /&gt;
{code}&lt;br /&gt;
&lt;br /&gt;
{code}&lt;br /&gt;
&amp;lt;div&amp;gt;Ocio!&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;color:black;height:50px&amp;quot;&amp;gt;Maiusc attivo&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;button style=&amp;quot;width:74;height:20;font-size:10;border:1px outset #ffffff;&amp;quot; onclick=&amp;quot;showHide('box2')&amp;quot;&amp;gt;Ok&amp;lt;/button&amp;gt;&lt;br /&gt;
&amp;lt;/DIV&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
js/jscapslock.js&amp;quot;:&lt;br /&gt;
function capsDetect( e ) {&lt;br /&gt;
	if( !e ) { e = window.event; } &lt;br /&gt;
	if( !e ) { MWJ_say_Caps( false ); &lt;br /&gt;
		return; &lt;br /&gt;
		}&lt;br /&gt;
	//premuto il maiusc&lt;br /&gt;
	var theKey = e.which ? e.which : ( e.keyCode ? e.keyCode : ( e.charCode ? e.charCode : 0 ) );&lt;br /&gt;
	//premuto il tasto shift&lt;br /&gt;
	var theShift = e.shiftKey || ( e.modifiers &amp;amp;&amp;amp; ( e.modifiers &amp;amp; 4 ) ); //AND&lt;br /&gt;
	//se maiusc, guarda che non sia premuto lo shife. Se non maiusc, guarda che sia premuto&lt;br /&gt;
	MWJ_say_Caps( ( theKey &amp;gt; 64 &amp;amp;&amp;amp; theKey &amp;lt; 91 &amp;amp;&amp;amp; !theShift ) || ( theKey &amp;gt; 96 &amp;amp;&amp;amp; theKey &amp;lt; 123 &amp;amp;&amp;amp; theShift ) );&lt;br /&gt;
}&lt;br /&gt;
function MWJ_say_Caps( oC ) {&lt;br /&gt;
	if( typeof( capsError ) == 'string' ) { &lt;br /&gt;
		if( oC ) { showHide('box2'); } &lt;br /&gt;
	} else { capsError( oC ); }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function showHide(layerid){&lt;br /&gt;
if (document.getElementById(layerid).style.visibility != &amp;quot;hidden&amp;quot;){&lt;br /&gt;
document.getElementById(layerid).style.visibility = &amp;quot;hidden&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
else{&lt;br /&gt;
document.getElementById(layerid).style.visibility = &amp;quot;visible&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
{code}&lt;/div&gt;</summary>
		<author><name>Pallotti</name></author>
		
	</entry>
	<entry>
		<id>http://wiki.netsitech.com/index.php?title=Programmazione:Java&amp;diff=3293</id>
		<title>Programmazione:Java</title>
		<link rel="alternate" type="text/html" href="http://wiki.netsitech.com/index.php?title=Programmazione:Java&amp;diff=3293"/>
		<updated>2009-10-05T05:30:52Z</updated>

		<summary type="html">&lt;p&gt;Pallotti: /* HowTo */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Programmazione|&amp;lt;&amp;lt; Back to Programmazione]]&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=15 width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|- valign=&amp;quot;top&amp;quot;&lt;br /&gt;
|width=&amp;quot;50%&amp;quot;|&lt;br /&gt;
&lt;br /&gt;
==HowTo==&lt;br /&gt;
* '''J2EE'''&lt;br /&gt;
** [[Programmazione:Java/XML to PDF with fop |XML to PDF con fop]]&lt;br /&gt;
** [[Programmazione:Java/JNI Example |JNI Example]]&lt;br /&gt;
** [[Programmazione:Java/Java-Scripting |Java-Scripting]]&lt;br /&gt;
** [[Programmazione:Java/Sampler Test for JMeter |Sampler Test for JMeter]]&lt;br /&gt;
** [[Programmazione:Java/JAVA 6 SystemTray e TrayIcon |JAVA 6 SystemTray e TrayIcon]]&lt;br /&gt;
** [[Programmazione:Java/Write DOM to XML|Write DOM to XML file]]&lt;br /&gt;
** [[Programmazione:Java/Script Ant per Versioning|Script Ant per Versioning]]&lt;br /&gt;
** [[Programmazione:Java/Esempio System Tray per il caricamento delle API di Java | Esempio System Tray per il caricamento delle API di Java]]&lt;br /&gt;
** [[Programmazione:Java/Javascript per il controllo del tasto MAIUSC | Javascript per il controllo del tasto MAIUSC]]&lt;br /&gt;
&lt;br /&gt;
|width=&amp;quot;50%&amp;quot;|&lt;br /&gt;
&lt;br /&gt;
==Best Practice== &lt;br /&gt;
* '''J2EE'''&lt;br /&gt;
** [[Programmazione:Java/Exception|Exception]]&lt;br /&gt;
** [[Programmazione:Java/Logging|Logging]]&lt;br /&gt;
** [[Programmazione:Java/Singleton with interface|Singleton with interface]]&lt;br /&gt;
|}&lt;br /&gt;
==Work-Around==&lt;br /&gt;
* '''J2EE'''&lt;br /&gt;
** [[Programmazione:Java/JDBC/MSSQL stored procedure| Call SQLServer stored procedure]]&lt;/div&gt;</summary>
		<author><name>Pallotti</name></author>
		
	</entry>
	<entry>
		<id>http://wiki.netsitech.com/index.php?title=Programmazione:Java&amp;diff=2452</id>
		<title>Programmazione:Java</title>
		<link rel="alternate" type="text/html" href="http://wiki.netsitech.com/index.php?title=Programmazione:Java&amp;diff=2452"/>
		<updated>2008-02-22T08:35:56Z</updated>

		<summary type="html">&lt;p&gt;Pallotti: /* HowTo */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| cellspacing=15 width=&amp;quot;100%&amp;quot;&lt;br /&gt;
&lt;br /&gt;
|- valign=&amp;quot;top&amp;quot;&lt;br /&gt;
|width=&amp;quot;50%&amp;quot;|&lt;br /&gt;
==HowTo==&lt;br /&gt;
* '''J2EE'''&lt;br /&gt;
** [[Programmazione:Java/XML to PDF with fop |XML to PDF con fop]]&lt;br /&gt;
** [[Programmazione:Java/JNI Example |JNI Example]]&lt;br /&gt;
** [[Programmazione:Java/Java-Scripting |Java-Scripting]]&lt;br /&gt;
** [[Programmazione:Java/Sampler Test for JMeter |Sampler Test for JMeter]]&lt;br /&gt;
** [[Programmazione:Java/JAVA 6 SystemTray e TrayIcon |JAVA 6 SystemTray e TrayIcon]]&lt;br /&gt;
** [[Programmazione:Sitech:Staff/Pallotti/Esempio_System_Tray_per_il_caricamento_delle_API_di_Java]]&lt;br /&gt;
** [[Programmazione:Java/Write DOM to XML|Write DOM to XML file]]&lt;br /&gt;
* '''Eclipse RCP'''&lt;br /&gt;
** '''''Sviluppo grafico'''''&lt;br /&gt;
*** [[Programmazione:Java/Visualizzare il contenuto di un XSD in una Tree | Visualizzare il contenuto di un XSD in una Tree]]&lt;br /&gt;
*** [[Programmazione:Java/Disattivare il ridimensionamento delle viste | Disattivare il ridimensionamento delle viste]]&lt;br /&gt;
*** [[Programmazione:Java/Utilizzo della CoolBar | Utilizzo della CoolBar]]&lt;br /&gt;
*** [[Programmazione:Java/Validazione Text by RegExp | Validazione Text by RegExp]]&lt;br /&gt;
*** [[Programmazione:Java/Inserire componenti in una Table SWT |Inserire componenti in una Table SWT]]&lt;br /&gt;
*** [[Programmazione:Java/SWT Table: Tooltip per cella | SWT Table: Tooltip per cella]]&lt;br /&gt;
*** [[Programmazione:Java/Application Coolbar | Application Coolbar]]&lt;br /&gt;
** '''''Utilità'''''&lt;br /&gt;
*** [[Programmazione:Java/Leggere da un Extension Point |Leggere da un Extension Point]]&lt;br /&gt;
*** [[Programmazione:Java/Internazionalizzazione tramite Extension Point |Internazionalizzazione tramite Extension Point]]&lt;br /&gt;
*** [[Programmazione:Java/Leggere le dipendenze di un plugin da MANIFEST.MF |Leggere le dipendenze di un plugin da MANIFEST.MF]]&lt;br /&gt;
*** [[Programmazione:Java/Log4J configurabile da Extension Point |Log4J configurabile da Extension Point]]&lt;br /&gt;
*** [[Programmazione:Java/Creare un plugin contenente un runtime C/C++ | Creare un plugin contenente un runtime C/C++]]&lt;br /&gt;
*** [[Programmazione:Java/Update by site | Update by site]]&lt;br /&gt;
&lt;br /&gt;
|width=&amp;quot;50%&amp;quot;|&lt;br /&gt;
&lt;br /&gt;
==Best Practice== &lt;br /&gt;
* '''J2EE'''&lt;br /&gt;
** [[Programmazione:Java/Exception|Exception]]&lt;br /&gt;
** [[Programmazione:Java/Logging|Logging]]&lt;br /&gt;
* '''Eclipse RCP'''&lt;br /&gt;
** [[Programmazione:Java/Event Interface implementation|Event Interface implementation]]&lt;br /&gt;
** [[Programmazione:Java/SWT - Manage, dont Extend|SWT - Manage, dont Extend]]&lt;br /&gt;
&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Pallotti</name></author>
		
	</entry>
	<entry>
		<id>http://wiki.netsitech.com/index.php?title=Programmazione:Java&amp;diff=2451</id>
		<title>Programmazione:Java</title>
		<link rel="alternate" type="text/html" href="http://wiki.netsitech.com/index.php?title=Programmazione:Java&amp;diff=2451"/>
		<updated>2008-02-22T08:24:10Z</updated>

		<summary type="html">&lt;p&gt;Pallotti: /* HowTo */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| cellspacing=15 width=&amp;quot;100%&amp;quot;&lt;br /&gt;
&lt;br /&gt;
|- valign=&amp;quot;top&amp;quot;&lt;br /&gt;
|width=&amp;quot;50%&amp;quot;|&lt;br /&gt;
==HowTo==&lt;br /&gt;
* '''J2EE'''&lt;br /&gt;
** [[Programmazione:Java/XML to PDF with fop |XML to PDF con fop]]&lt;br /&gt;
** [[Programmazione:Java/JNI Example |JNI Example]]&lt;br /&gt;
** [[Programmazione:Java/Java-Scripting |Java-Scripting]]&lt;br /&gt;
** [[Programmazione:Java/Sampler Test for JMeter |Sampler Test for JMeter]]&lt;br /&gt;
** [[Programmazione:Java/JAVA 6 SystemTray e TrayIcon |JAVA 6 SystemTray e TrayIcon]]&lt;br /&gt;
** [[Programmazione:]]&lt;br /&gt;
** [[Programmazione:Java/Write DOM to XML|Write DOM to XML file]]&lt;br /&gt;
* '''Eclipse RCP'''&lt;br /&gt;
** '''''Sviluppo grafico'''''&lt;br /&gt;
*** [[Programmazione:Java/Visualizzare il contenuto di un XSD in una Tree | Visualizzare il contenuto di un XSD in una Tree]]&lt;br /&gt;
*** [[Programmazione:Java/Disattivare il ridimensionamento delle viste | Disattivare il ridimensionamento delle viste]]&lt;br /&gt;
*** [[Programmazione:Java/Utilizzo della CoolBar | Utilizzo della CoolBar]]&lt;br /&gt;
*** [[Programmazione:Java/Validazione Text by RegExp | Validazione Text by RegExp]]&lt;br /&gt;
*** [[Programmazione:Java/Inserire componenti in una Table SWT |Inserire componenti in una Table SWT]]&lt;br /&gt;
*** [[Programmazione:Java/SWT Table: Tooltip per cella | SWT Table: Tooltip per cella]]&lt;br /&gt;
*** [[Programmazione:Java/Application Coolbar | Application Coolbar]]&lt;br /&gt;
** '''''Utilità'''''&lt;br /&gt;
*** [[Programmazione:Java/Leggere da un Extension Point |Leggere da un Extension Point]]&lt;br /&gt;
*** [[Programmazione:Java/Internazionalizzazione tramite Extension Point |Internazionalizzazione tramite Extension Point]]&lt;br /&gt;
*** [[Programmazione:Java/Leggere le dipendenze di un plugin da MANIFEST.MF |Leggere le dipendenze di un plugin da MANIFEST.MF]]&lt;br /&gt;
*** [[Programmazione:Java/Log4J configurabile da Extension Point |Log4J configurabile da Extension Point]]&lt;br /&gt;
*** [[Programmazione:Java/Creare un plugin contenente un runtime C/C++ | Creare un plugin contenente un runtime C/C++]]&lt;br /&gt;
*** [[Programmazione:Java/Update by site | Update by site]]&lt;br /&gt;
&lt;br /&gt;
|width=&amp;quot;50%&amp;quot;|&lt;br /&gt;
&lt;br /&gt;
==Best Practice== &lt;br /&gt;
* '''J2EE'''&lt;br /&gt;
** [[Programmazione:Java/Exception|Exception]]&lt;br /&gt;
** [[Programmazione:Java/Logging|Logging]]&lt;br /&gt;
* '''Eclipse RCP'''&lt;br /&gt;
** [[Programmazione:Java/Event Interface implementation|Event Interface implementation]]&lt;br /&gt;
** [[Programmazione:Java/SWT - Manage, dont Extend|SWT - Manage, dont Extend]]&lt;br /&gt;
&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Pallotti</name></author>
		
	</entry>
	<entry>
		<id>http://wiki.netsitech.com/index.php?title=Programmazione:Java/Esempio_System_Tray_per_il_caricamento_delle_API_di_Java&amp;diff=2450</id>
		<title>Programmazione:Java/Esempio System Tray per il caricamento delle API di Java</title>
		<link rel="alternate" type="text/html" href="http://wiki.netsitech.com/index.php?title=Programmazione:Java/Esempio_System_Tray_per_il_caricamento_delle_API_di_Java&amp;diff=2450"/>
		<updated>2008-02-22T08:21:04Z</updated>

		<summary type="html">&lt;p&gt;Pallotti: /* JAVA 6 System tray e il caricamento delle Java Api in locale - JavaApiTray v1.0.0 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=JavaApiTray v1.0.0 - System tray e il caricamento delle Java Api locali =&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Questo programma usa la SystemTray e TrayIcon, carica da un file properties.txt i percorsi delle Api di Java, e facendole poi apparire nella Trayintrodotte dal JAVA 6.&lt;br /&gt;
Così da avere sulla Tray un colelgmaento alle api di java senza bisogno di essere in rete.&lt;br /&gt;
&lt;br /&gt;
Le api di java in formato html e chm le si possono trovare qui:&lt;br /&gt;
[http://www.allimant.org/javadoc/index.php]&lt;br /&gt;
&lt;br /&gt;
Testato su xp e Vista, non sembra dare problemi (fin ora ---- ;) )&lt;br /&gt;
&lt;br /&gt;
Il progetto si compone di tre classi:&lt;br /&gt;
&lt;br /&gt;
'''JavaApi.java''' si occupa dell creazione della Tray, TrayIcon, ...&lt;br /&gt;
&lt;br /&gt;
'''ReadProperties.java''' legge dal file properties.txt (nella directory /properties)il nome dell'api che si vuole fare apparire sulla tray, il nome del file eseguibile che si vuole usare per aprirla (ad esempio ie o firefox per l'html, hh.exe per il chm,...), e il percorso del file dell'Api di Java (In realtà si può usare anche l'URL del sito della sun).&lt;br /&gt;
Uso la classe Scanner per poi mettere in un ArrayList il contenuto del file di properties&lt;br /&gt;
&lt;br /&gt;
'''InfoFrame.java''' apre un JFrame con le istruzioni di uso&lt;br /&gt;
&lt;br /&gt;
'''properties.txt''' file txt così formattato: nome,programma,fileDellApi&lt;br /&gt;
esempio del mio:&lt;br /&gt;
Java1.3.1,hh.exe,C:/Programmi/Java/jdk13/jdk131.chm&lt;br /&gt;
Java1.4.2,hh.exe,C:/Programmi/Java/jdk142/jdk142.chm&lt;br /&gt;
Java1.6.0,C:/Programmi/Mozilla Firefox/firefox.exe,file:///C:/Programmi/Java/docs/api/index.html&lt;br /&gt;
JavaEE 1.5.5,hh.exe,C:/Programmi/Java/java-ee-5/java-ee-5.chm&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Con click destro (in win) si apre la finestra con le Api caricate dinamicamente&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
'''JavaApi.java'''&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
package com.java.api;&lt;br /&gt;
&lt;br /&gt;
import javax.swing.*;&lt;br /&gt;
&lt;br /&gt;
import java.awt.*;&lt;br /&gt;
import java.awt.event.*;&lt;br /&gt;
import java.io.File;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
public class JavaApi {&lt;br /&gt;
	&lt;br /&gt;
	static class ShowMessageListener implements ActionListener {&lt;br /&gt;
		TrayIcon trayIcon;&lt;br /&gt;
		String title;&lt;br /&gt;
		String message;&lt;br /&gt;
		TrayIcon.MessageType messageType;&lt;br /&gt;
&lt;br /&gt;
		ShowMessageListener(TrayIcon trayIcon, String title, String message,&lt;br /&gt;
				TrayIcon.MessageType messageType) {&lt;br /&gt;
			this.trayIcon = trayIcon;&lt;br /&gt;
			this.title = title;&lt;br /&gt;
			this.message = message;&lt;br /&gt;
			this.messageType = messageType;&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public void actionPerformed(ActionEvent e) {&lt;br /&gt;
			trayIcon.displayMessage(title, message, messageType);&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	public static void main(String args[]) {&lt;br /&gt;
		Runnable runner = new Runnable() {&lt;br /&gt;
			public void run() {&lt;br /&gt;
&lt;br /&gt;
				// controlliamo che il Sistema supporti il system tray&lt;br /&gt;
				if (SystemTray.isSupported()) {&lt;br /&gt;
					final SystemTray tray = SystemTray.getSystemTray();&lt;br /&gt;
					&lt;br /&gt;
					// Version:&lt;br /&gt;
					System.out.println(&amp;quot;Java Api Tray v.1.0.0 - by Jack&amp;quot;);&lt;br /&gt;
					System.out.println(&amp;quot;File Java API prelevati dal file di properties:&amp;quot;);&lt;br /&gt;
					&lt;br /&gt;
					//Icona della tray				&lt;br /&gt;
					Image immagine = Toolkit.getDefaultToolkit().getImage(&lt;br /&gt;
							&amp;quot;icon.jpg&amp;quot;);&lt;br /&gt;
					immagine.flush();&lt;br /&gt;
					&lt;br /&gt;
					JButton closeButton = new JButton(&amp;quot;Chiudi&amp;quot;);&lt;br /&gt;
					JButton dialogButton = new JButton(&amp;quot;Apri&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
					// usiamo la classe PopupMenu che estende Menu&lt;br /&gt;
					PopupMenu popup = new PopupMenu();&lt;br /&gt;
&lt;br /&gt;
					// Ci creiamo la TrayIcon&lt;br /&gt;
					final TrayIcon trayIcon = new TrayIcon(immagine, &amp;quot;JavaApiTray v.1.0.0&amp;quot;,&lt;br /&gt;
							popup);&lt;br /&gt;
&lt;br /&gt;
					MenuItem item = new MenuItem();&lt;br /&gt;
					&lt;br /&gt;
				&lt;br /&gt;
					//Info&lt;br /&gt;
					item = new MenuItem(&amp;quot;Info&amp;quot;);&lt;br /&gt;
					item.addActionListener(new ActionListener() {&lt;br /&gt;
						public void actionPerformed(ActionEvent e) {&lt;br /&gt;
							InfoFrame tf = new InfoFrame();&lt;br /&gt;
							&lt;br /&gt;
						}&lt;br /&gt;
					});&lt;br /&gt;
					popup.add(item);&lt;br /&gt;
					&lt;br /&gt;
					&lt;br /&gt;
					&lt;br /&gt;
					 final ReadProperties parser = new ReadProperties(&amp;quot;./properties/properties.txt&amp;quot;);&lt;br /&gt;
					  parser.processLineByLine();		&lt;br /&gt;
				   &lt;br /&gt;
					&lt;br /&gt;
					  //System.out.println(parser.lista.size());&lt;br /&gt;
					  &lt;br /&gt;
					  for (int j=0; j&amp;lt;parser.lista.size();j=j+3){&lt;br /&gt;
						&lt;br /&gt;
						  &lt;br /&gt;
						  final String apiname = parser.lista.get(j).toString();&lt;br /&gt;
						  final String prog = parser.lista.get(j+1).toString();&lt;br /&gt;
						  final String file = parser.lista.get(j+2).toString();&lt;br /&gt;
						&lt;br /&gt;
					  &lt;br /&gt;
					  item = new MenuItem(apiname);&lt;br /&gt;
						item.addActionListener(new ActionListener() {&lt;br /&gt;
							public void actionPerformed(ActionEvent e) {&lt;br /&gt;
							&lt;br /&gt;
								try {&lt;br /&gt;
									//System.out.println(apiname);&lt;br /&gt;
									Runtime runtime = Runtime.getRuntime();&lt;br /&gt;
									//Process process = runtime.exec(&amp;quot;cmd&amp;quot;);&lt;br /&gt;
									String exe = prog + &amp;quot; &amp;quot; + file;&lt;br /&gt;
									Process process = runtime.exec(exe);&lt;br /&gt;
									process.waitFor();&lt;br /&gt;
								}&lt;br /&gt;
								catch(Exception e1){&lt;br /&gt;
									e1.printStackTrace();&lt;br /&gt;
								}&lt;br /&gt;
							}&lt;br /&gt;
						});&lt;br /&gt;
						popup.add(item);&lt;br /&gt;
					  &lt;br /&gt;
					  }&lt;br /&gt;
					  &lt;br /&gt;
			&lt;br /&gt;
					// Usiamo il metodo remove() di SystemTray per rimuovere la&lt;br /&gt;
					// TrayIcon&lt;br /&gt;
									&lt;br /&gt;
					item = new MenuItem(&amp;quot;Chiudi&amp;quot;);&lt;br /&gt;
					item.addActionListener(new ActionListener() {&lt;br /&gt;
						public void actionPerformed(ActionEvent e) {&lt;br /&gt;
							tray.remove(trayIcon);&lt;br /&gt;
						}&lt;br /&gt;
					});&lt;br /&gt;
					popup.add(item);&lt;br /&gt;
&lt;br /&gt;
					try {&lt;br /&gt;
						tray.add(trayIcon);&lt;br /&gt;
					} catch (AWTException e) {&lt;br /&gt;
						System.err.println(&amp;quot;Ahi ahi ahi, can't add to tray!!&amp;quot;);&lt;br /&gt;
					}&lt;br /&gt;
				} else {&lt;br /&gt;
					System.err.println(&amp;quot;Ahi ahi ahi, il sistema non supporta il SystemTray&amp;quot;);&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
		};&lt;br /&gt;
		EventQueue.invokeLater(runner);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''ReadProperties.java'''&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
package com.java.api;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
import java.io.*;&lt;br /&gt;
import java.util.ArrayList;&lt;br /&gt;
import java.util.Scanner;&lt;br /&gt;
import java.io.IOException;&lt;br /&gt;
&lt;br /&gt;
public class ReadProperties {&lt;br /&gt;
&lt;br /&gt;
	ArrayList lista = new ArrayList();&lt;br /&gt;
&lt;br /&gt;
	   public ReadProperties(String aFileName){&lt;br /&gt;
	    fFile = new File(aFileName);  &lt;br /&gt;
	  }&lt;br /&gt;
	  &lt;br /&gt;
	  public final void processLineByLine(){&lt;br /&gt;
	    try {&lt;br /&gt;
	      //Scannere per ogni linea&lt;br /&gt;
	      Scanner scanner = new Scanner(fFile);&lt;br /&gt;
	      while ( scanner.hasNextLine() ){&lt;br /&gt;
	        processLine( scanner.nextLine() );&lt;br /&gt;
	      }&lt;br /&gt;
	      scanner.close();&lt;br /&gt;
	    }&lt;br /&gt;
	    catch (IOException ex){&lt;br /&gt;
	      log(ex.getMessage());&lt;br /&gt;
	    }&lt;br /&gt;
	  }&lt;br /&gt;
	  &lt;br /&gt;
	  protected void processLine(String aLine){&lt;br /&gt;
	    //Secondo Scanner per il contenuto della linea &lt;br /&gt;
	    Scanner scanner = new Scanner(aLine);&lt;br /&gt;
	    scanner.useDelimiter(&amp;quot;,&amp;quot;);&lt;br /&gt;
	    if ( scanner.hasNext() ){&lt;br /&gt;
	    String apiname = scanner.next();&lt;br /&gt;
	     String prog = scanner.next();&lt;br /&gt;
	     String file = scanner.next();&lt;br /&gt;
  &lt;br /&gt;
		  lista.add(apiname);&lt;br /&gt;
		  lista.add(prog);&lt;br /&gt;
		  lista.add(file);&lt;br /&gt;
	      &lt;br /&gt;
	      &lt;br /&gt;
	      log(&amp;quot;Apiname: &amp;quot; + quote(apiname.trim()) + &amp;quot;, Programma : &amp;quot; + quote(prog.trim()) + &amp;quot;, File : &amp;quot; + quote(file.trim()));&lt;br /&gt;
	    }&lt;br /&gt;
	    else {&lt;br /&gt;
	      log(&amp;quot;Empty or invalid line. Unable to process.&amp;quot;);&lt;br /&gt;
	    }&lt;br /&gt;
	    scanner.close();&lt;br /&gt;
	  }&lt;br /&gt;
	  &lt;br /&gt;
&lt;br /&gt;
	  private final File fFile;&lt;br /&gt;
	  &lt;br /&gt;
	  private static void log(Object aObject){&lt;br /&gt;
	    System.out.println(String.valueOf(aObject));&lt;br /&gt;
	  }&lt;br /&gt;
	  &lt;br /&gt;
	  private String quote(String aText){&lt;br /&gt;
	    String QUOTE = &amp;quot;'&amp;quot;;&lt;br /&gt;
	    return QUOTE + aText + QUOTE;&lt;br /&gt;
	  }&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''InfoFrame.java'''&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
package com.java.api;&lt;br /&gt;
&lt;br /&gt;
import java.awt.Color;&lt;br /&gt;
&lt;br /&gt;
import javax.swing.JFrame;&lt;br /&gt;
import javax.swing.JScrollPane;&lt;br /&gt;
import javax.swing.JTextArea;&lt;br /&gt;
&lt;br /&gt;
public class InfoFrame extends JFrame {&lt;br /&gt;
	// JFrame toolframe;&lt;br /&gt;
&lt;br /&gt;
	public InfoFrame() {&lt;br /&gt;
&lt;br /&gt;
		JTextArea jtextarea = new JTextArea(&lt;br /&gt;
				&amp;quot;......:::::: Java Api Tray v 1.0.0 ::::::......\r\n\r\n&amp;quot; +&lt;br /&gt;
				&amp;quot;by Jack\r\n\r\n&amp;quot; +&lt;br /&gt;
				&amp;quot;CIAO,\r\n&amp;quot; +&lt;br /&gt;
				&amp;quot; basta aggiungere al file properties.txt le Api in formato html o chm che si hanno in locale,&amp;quot; +&lt;br /&gt;
				&amp;quot; formattate in questo modo: il nome che si vuole visualizzare sulla tray, il percorso del programma di avvio &amp;quot; +&lt;br /&gt;
				&amp;quot;e il percorso del file della libreria.\r\n\r\n&amp;quot; +&lt;br /&gt;
				&amp;quot;Il carattere di separazione tra nomeApi, programma e fileApi è la virgola (,)\r\n&amp;quot; +&lt;br /&gt;
				&amp;quot;Serve una nuova linea sul file per ogni libreria.&amp;quot;);&lt;br /&gt;
		&lt;br /&gt;
		jtextarea.setFocusable(true);&lt;br /&gt;
		jtextarea.setEditable(false);&lt;br /&gt;
		jtextarea.setLineWrap(true);&lt;br /&gt;
		jtextarea.setWrapStyleWord(true);&lt;br /&gt;
		jtextarea.setBackground(Color.LIGHT_GRAY);&lt;br /&gt;
		&lt;br /&gt;
		JScrollPane jscrollpane = new JScrollPane(jtextarea, JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED, JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);&lt;br /&gt;
		&lt;br /&gt;
		&lt;br /&gt;
		JFrame toolframe = new JFrame(&amp;quot;almabios&amp;quot;);&lt;br /&gt;
		toolframe.getContentPane();&lt;br /&gt;
		toolframe.setSize(300, 400);&lt;br /&gt;
				&lt;br /&gt;
		toolframe.add(jscrollpane);&lt;br /&gt;
		&lt;br /&gt;
		toolframe.setVisible(true);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|-|&lt;/div&gt;</summary>
		<author><name>Pallotti</name></author>
		
	</entry>
	<entry>
		<id>http://wiki.netsitech.com/index.php?title=Programmazione:Java/Esempio_System_Tray_per_il_caricamento_delle_API_di_Java&amp;diff=2449</id>
		<title>Programmazione:Java/Esempio System Tray per il caricamento delle API di Java</title>
		<link rel="alternate" type="text/html" href="http://wiki.netsitech.com/index.php?title=Programmazione:Java/Esempio_System_Tray_per_il_caricamento_delle_API_di_Java&amp;diff=2449"/>
		<updated>2008-02-22T08:20:32Z</updated>

		<summary type="html">&lt;p&gt;Pallotti: Nuova pagina: =JAVA 6 System tray e il caricamento delle Java Api in locale - JavaApiTray v1.0.0=  ----  Questo programma usa la SystemTray e TrayIcon, carica da un file properties.txt i percorsi de...&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=JAVA 6 System tray e il caricamento delle Java Api in locale - JavaApiTray v1.0.0=&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Questo programma usa la SystemTray e TrayIcon, carica da un file properties.txt i percorsi delle Api di Java, e facendole poi apparire nella Trayintrodotte dal JAVA 6.&lt;br /&gt;
Così da avere sulla Tray un colelgmaento alle api di java senza bisogno di essere in rete.&lt;br /&gt;
&lt;br /&gt;
Le api di java in formato html e chm le si possono trovare qui:&lt;br /&gt;
[http://www.allimant.org/javadoc/index.php]&lt;br /&gt;
&lt;br /&gt;
Testato su xp e Vista, non sembra dare problemi (fin ora ---- ;) )&lt;br /&gt;
&lt;br /&gt;
Il progetto si compone di tre classi:&lt;br /&gt;
&lt;br /&gt;
'''JavaApi.java''' si occupa dell creazione della Tray, TrayIcon, ...&lt;br /&gt;
&lt;br /&gt;
'''ReadProperties.java''' legge dal file properties.txt (nella directory /properties)il nome dell'api che si vuole fare apparire sulla tray, il nome del file eseguibile che si vuole usare per aprirla (ad esempio ie o firefox per l'html, hh.exe per il chm,...), e il percorso del file dell'Api di Java (In realtà si può usare anche l'URL del sito della sun).&lt;br /&gt;
Uso la classe Scanner per poi mettere in un ArrayList il contenuto del file di properties&lt;br /&gt;
&lt;br /&gt;
'''InfoFrame.java''' apre un JFrame con le istruzioni di uso&lt;br /&gt;
&lt;br /&gt;
'''properties.txt''' file txt così formattato: nome,programma,fileDellApi&lt;br /&gt;
esempio del mio:&lt;br /&gt;
Java1.3.1,hh.exe,C:/Programmi/Java/jdk13/jdk131.chm&lt;br /&gt;
Java1.4.2,hh.exe,C:/Programmi/Java/jdk142/jdk142.chm&lt;br /&gt;
Java1.6.0,C:/Programmi/Mozilla Firefox/firefox.exe,file:///C:/Programmi/Java/docs/api/index.html&lt;br /&gt;
JavaEE 1.5.5,hh.exe,C:/Programmi/Java/java-ee-5/java-ee-5.chm&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Con click destro (in win) si apre la finestra con le Api caricate dinamicamente&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
'''JavaApi.java'''&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
package com.java.api;&lt;br /&gt;
&lt;br /&gt;
import javax.swing.*;&lt;br /&gt;
&lt;br /&gt;
import java.awt.*;&lt;br /&gt;
import java.awt.event.*;&lt;br /&gt;
import java.io.File;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
public class JavaApi {&lt;br /&gt;
	&lt;br /&gt;
	static class ShowMessageListener implements ActionListener {&lt;br /&gt;
		TrayIcon trayIcon;&lt;br /&gt;
		String title;&lt;br /&gt;
		String message;&lt;br /&gt;
		TrayIcon.MessageType messageType;&lt;br /&gt;
&lt;br /&gt;
		ShowMessageListener(TrayIcon trayIcon, String title, String message,&lt;br /&gt;
				TrayIcon.MessageType messageType) {&lt;br /&gt;
			this.trayIcon = trayIcon;&lt;br /&gt;
			this.title = title;&lt;br /&gt;
			this.message = message;&lt;br /&gt;
			this.messageType = messageType;&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public void actionPerformed(ActionEvent e) {&lt;br /&gt;
			trayIcon.displayMessage(title, message, messageType);&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	public static void main(String args[]) {&lt;br /&gt;
		Runnable runner = new Runnable() {&lt;br /&gt;
			public void run() {&lt;br /&gt;
&lt;br /&gt;
				// controlliamo che il Sistema supporti il system tray&lt;br /&gt;
				if (SystemTray.isSupported()) {&lt;br /&gt;
					final SystemTray tray = SystemTray.getSystemTray();&lt;br /&gt;
					&lt;br /&gt;
					// Version:&lt;br /&gt;
					System.out.println(&amp;quot;Java Api Tray v.1.0.0 - by Jack&amp;quot;);&lt;br /&gt;
					System.out.println(&amp;quot;File Java API prelevati dal file di properties:&amp;quot;);&lt;br /&gt;
					&lt;br /&gt;
					//Icona della tray				&lt;br /&gt;
					Image immagine = Toolkit.getDefaultToolkit().getImage(&lt;br /&gt;
							&amp;quot;icon.jpg&amp;quot;);&lt;br /&gt;
					immagine.flush();&lt;br /&gt;
					&lt;br /&gt;
					JButton closeButton = new JButton(&amp;quot;Chiudi&amp;quot;);&lt;br /&gt;
					JButton dialogButton = new JButton(&amp;quot;Apri&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
					// usiamo la classe PopupMenu che estende Menu&lt;br /&gt;
					PopupMenu popup = new PopupMenu();&lt;br /&gt;
&lt;br /&gt;
					// Ci creiamo la TrayIcon&lt;br /&gt;
					final TrayIcon trayIcon = new TrayIcon(immagine, &amp;quot;JavaApiTray v.1.0.0&amp;quot;,&lt;br /&gt;
							popup);&lt;br /&gt;
&lt;br /&gt;
					MenuItem item = new MenuItem();&lt;br /&gt;
					&lt;br /&gt;
				&lt;br /&gt;
					//Info&lt;br /&gt;
					item = new MenuItem(&amp;quot;Info&amp;quot;);&lt;br /&gt;
					item.addActionListener(new ActionListener() {&lt;br /&gt;
						public void actionPerformed(ActionEvent e) {&lt;br /&gt;
							InfoFrame tf = new InfoFrame();&lt;br /&gt;
							&lt;br /&gt;
						}&lt;br /&gt;
					});&lt;br /&gt;
					popup.add(item);&lt;br /&gt;
					&lt;br /&gt;
					&lt;br /&gt;
					&lt;br /&gt;
					 final ReadProperties parser = new ReadProperties(&amp;quot;./properties/properties.txt&amp;quot;);&lt;br /&gt;
					  parser.processLineByLine();		&lt;br /&gt;
				   &lt;br /&gt;
					&lt;br /&gt;
					  //System.out.println(parser.lista.size());&lt;br /&gt;
					  &lt;br /&gt;
					  for (int j=0; j&amp;lt;parser.lista.size();j=j+3){&lt;br /&gt;
						&lt;br /&gt;
						  &lt;br /&gt;
						  final String apiname = parser.lista.get(j).toString();&lt;br /&gt;
						  final String prog = parser.lista.get(j+1).toString();&lt;br /&gt;
						  final String file = parser.lista.get(j+2).toString();&lt;br /&gt;
						&lt;br /&gt;
					  &lt;br /&gt;
					  item = new MenuItem(apiname);&lt;br /&gt;
						item.addActionListener(new ActionListener() {&lt;br /&gt;
							public void actionPerformed(ActionEvent e) {&lt;br /&gt;
							&lt;br /&gt;
								try {&lt;br /&gt;
									//System.out.println(apiname);&lt;br /&gt;
									Runtime runtime = Runtime.getRuntime();&lt;br /&gt;
									//Process process = runtime.exec(&amp;quot;cmd&amp;quot;);&lt;br /&gt;
									String exe = prog + &amp;quot; &amp;quot; + file;&lt;br /&gt;
									Process process = runtime.exec(exe);&lt;br /&gt;
									process.waitFor();&lt;br /&gt;
								}&lt;br /&gt;
								catch(Exception e1){&lt;br /&gt;
									e1.printStackTrace();&lt;br /&gt;
								}&lt;br /&gt;
							}&lt;br /&gt;
						});&lt;br /&gt;
						popup.add(item);&lt;br /&gt;
					  &lt;br /&gt;
					  }&lt;br /&gt;
					  &lt;br /&gt;
			&lt;br /&gt;
					// Usiamo il metodo remove() di SystemTray per rimuovere la&lt;br /&gt;
					// TrayIcon&lt;br /&gt;
									&lt;br /&gt;
					item = new MenuItem(&amp;quot;Chiudi&amp;quot;);&lt;br /&gt;
					item.addActionListener(new ActionListener() {&lt;br /&gt;
						public void actionPerformed(ActionEvent e) {&lt;br /&gt;
							tray.remove(trayIcon);&lt;br /&gt;
						}&lt;br /&gt;
					});&lt;br /&gt;
					popup.add(item);&lt;br /&gt;
&lt;br /&gt;
					try {&lt;br /&gt;
						tray.add(trayIcon);&lt;br /&gt;
					} catch (AWTException e) {&lt;br /&gt;
						System.err.println(&amp;quot;Ahi ahi ahi, can't add to tray!!&amp;quot;);&lt;br /&gt;
					}&lt;br /&gt;
				} else {&lt;br /&gt;
					System.err.println(&amp;quot;Ahi ahi ahi, il sistema non supporta il SystemTray&amp;quot;);&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
		};&lt;br /&gt;
		EventQueue.invokeLater(runner);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''ReadProperties.java'''&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
package com.java.api;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
import java.io.*;&lt;br /&gt;
import java.util.ArrayList;&lt;br /&gt;
import java.util.Scanner;&lt;br /&gt;
import java.io.IOException;&lt;br /&gt;
&lt;br /&gt;
public class ReadProperties {&lt;br /&gt;
&lt;br /&gt;
	ArrayList lista = new ArrayList();&lt;br /&gt;
&lt;br /&gt;
	   public ReadProperties(String aFileName){&lt;br /&gt;
	    fFile = new File(aFileName);  &lt;br /&gt;
	  }&lt;br /&gt;
	  &lt;br /&gt;
	  public final void processLineByLine(){&lt;br /&gt;
	    try {&lt;br /&gt;
	      //Scannere per ogni linea&lt;br /&gt;
	      Scanner scanner = new Scanner(fFile);&lt;br /&gt;
	      while ( scanner.hasNextLine() ){&lt;br /&gt;
	        processLine( scanner.nextLine() );&lt;br /&gt;
	      }&lt;br /&gt;
	      scanner.close();&lt;br /&gt;
	    }&lt;br /&gt;
	    catch (IOException ex){&lt;br /&gt;
	      log(ex.getMessage());&lt;br /&gt;
	    }&lt;br /&gt;
	  }&lt;br /&gt;
	  &lt;br /&gt;
	  protected void processLine(String aLine){&lt;br /&gt;
	    //Secondo Scanner per il contenuto della linea &lt;br /&gt;
	    Scanner scanner = new Scanner(aLine);&lt;br /&gt;
	    scanner.useDelimiter(&amp;quot;,&amp;quot;);&lt;br /&gt;
	    if ( scanner.hasNext() ){&lt;br /&gt;
	    String apiname = scanner.next();&lt;br /&gt;
	     String prog = scanner.next();&lt;br /&gt;
	     String file = scanner.next();&lt;br /&gt;
  &lt;br /&gt;
		  lista.add(apiname);&lt;br /&gt;
		  lista.add(prog);&lt;br /&gt;
		  lista.add(file);&lt;br /&gt;
	      &lt;br /&gt;
	      &lt;br /&gt;
	      log(&amp;quot;Apiname: &amp;quot; + quote(apiname.trim()) + &amp;quot;, Programma : &amp;quot; + quote(prog.trim()) + &amp;quot;, File : &amp;quot; + quote(file.trim()));&lt;br /&gt;
	    }&lt;br /&gt;
	    else {&lt;br /&gt;
	      log(&amp;quot;Empty or invalid line. Unable to process.&amp;quot;);&lt;br /&gt;
	    }&lt;br /&gt;
	    scanner.close();&lt;br /&gt;
	  }&lt;br /&gt;
	  &lt;br /&gt;
&lt;br /&gt;
	  private final File fFile;&lt;br /&gt;
	  &lt;br /&gt;
	  private static void log(Object aObject){&lt;br /&gt;
	    System.out.println(String.valueOf(aObject));&lt;br /&gt;
	  }&lt;br /&gt;
	  &lt;br /&gt;
	  private String quote(String aText){&lt;br /&gt;
	    String QUOTE = &amp;quot;'&amp;quot;;&lt;br /&gt;
	    return QUOTE + aText + QUOTE;&lt;br /&gt;
	  }&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''InfoFrame.java'''&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
package com.java.api;&lt;br /&gt;
&lt;br /&gt;
import java.awt.Color;&lt;br /&gt;
&lt;br /&gt;
import javax.swing.JFrame;&lt;br /&gt;
import javax.swing.JScrollPane;&lt;br /&gt;
import javax.swing.JTextArea;&lt;br /&gt;
&lt;br /&gt;
public class InfoFrame extends JFrame {&lt;br /&gt;
	// JFrame toolframe;&lt;br /&gt;
&lt;br /&gt;
	public InfoFrame() {&lt;br /&gt;
&lt;br /&gt;
		JTextArea jtextarea = new JTextArea(&lt;br /&gt;
				&amp;quot;......:::::: Java Api Tray v 1.0.0 ::::::......\r\n\r\n&amp;quot; +&lt;br /&gt;
				&amp;quot;by Jack\r\n\r\n&amp;quot; +&lt;br /&gt;
				&amp;quot;CIAO,\r\n&amp;quot; +&lt;br /&gt;
				&amp;quot; basta aggiungere al file properties.txt le Api in formato html o chm che si hanno in locale,&amp;quot; +&lt;br /&gt;
				&amp;quot; formattate in questo modo: il nome che si vuole visualizzare sulla tray, il percorso del programma di avvio &amp;quot; +&lt;br /&gt;
				&amp;quot;e il percorso del file della libreria.\r\n\r\n&amp;quot; +&lt;br /&gt;
				&amp;quot;Il carattere di separazione tra nomeApi, programma e fileApi è la virgola (,)\r\n&amp;quot; +&lt;br /&gt;
				&amp;quot;Serve una nuova linea sul file per ogni libreria.&amp;quot;);&lt;br /&gt;
		&lt;br /&gt;
		jtextarea.setFocusable(true);&lt;br /&gt;
		jtextarea.setEditable(false);&lt;br /&gt;
		jtextarea.setLineWrap(true);&lt;br /&gt;
		jtextarea.setWrapStyleWord(true);&lt;br /&gt;
		jtextarea.setBackground(Color.LIGHT_GRAY);&lt;br /&gt;
		&lt;br /&gt;
		JScrollPane jscrollpane = new JScrollPane(jtextarea, JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED, JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);&lt;br /&gt;
		&lt;br /&gt;
		&lt;br /&gt;
		JFrame toolframe = new JFrame(&amp;quot;almabios&amp;quot;);&lt;br /&gt;
		toolframe.getContentPane();&lt;br /&gt;
		toolframe.setSize(300, 400);&lt;br /&gt;
				&lt;br /&gt;
		toolframe.add(jscrollpane);&lt;br /&gt;
		&lt;br /&gt;
		toolframe.setVisible(true);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|-|&lt;/div&gt;</summary>
		<author><name>Pallotti</name></author>
		
	</entry>
	<entry>
		<id>http://wiki.netsitech.com/index.php?title=Programmazione:Java/JAVA_6_SystemTray_e_TrayIcon&amp;diff=2338</id>
		<title>Programmazione:Java/JAVA 6 SystemTray e TrayIcon</title>
		<link rel="alternate" type="text/html" href="http://wiki.netsitech.com/index.php?title=Programmazione:Java/JAVA_6_SystemTray_e_TrayIcon&amp;diff=2338"/>
		<updated>2007-12-04T09:47:47Z</updated>

		<summary type="html">&lt;p&gt;Pallotti: Nuova pagina: =JAVA 6 SystemTray e TrayIcon=  ----  Usiamo le classi SystemTray e TrayIcon, introdotte dal JAVA 6, per aggiungere alla task bar di Win una applicazione. L'applicazione aggiunge una T...&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=JAVA 6 SystemTray e TrayIcon=&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Usiamo le classi SystemTray e TrayIcon, introdotte dal JAVA 6, per aggiungere alla task bar di Win una applicazione.&lt;br /&gt;
L'applicazione aggiunge una TrayIcon nel SystemTray con un MenuItem nel suo PopupMenu.&lt;br /&gt;
&lt;br /&gt;
Per la documentazione ufficiale sun: &lt;br /&gt;
[http://java.sun.com/javase/6/docs/api/java/awt/TrayIcon.html]&lt;br /&gt;
[http://java.sun.com/javase/6/docs/api/java/awt/SystemTray.html]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Con click destro (in win) si apre la finestra del Menu con le opzioni&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
import javax.swing.*;&lt;br /&gt;
import java.awt.*;&lt;br /&gt;
import java.awt.event.*;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
public class FullTray {&lt;br /&gt;
	&lt;br /&gt;
  static class ShowMessageListener implements ActionListener {&lt;br /&gt;
    TrayIcon trayIcon;&lt;br /&gt;
    String title;&lt;br /&gt;
    String message;&lt;br /&gt;
    TrayIcon.MessageType messageType;&lt;br /&gt;
    ShowMessageListener(&lt;br /&gt;
        TrayIcon trayIcon,&lt;br /&gt;
        String title,&lt;br /&gt;
        String message,&lt;br /&gt;
        TrayIcon.MessageType messageType) {&lt;br /&gt;
      this.trayIcon = trayIcon;&lt;br /&gt;
      this.title = title;&lt;br /&gt;
      this.message = message;&lt;br /&gt;
      this.messageType = messageType;&lt;br /&gt;
    }&lt;br /&gt;
    public void actionPerformed(ActionEvent e) {&lt;br /&gt;
      trayIcon.displayMessage(title, message, messageType);&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
  &lt;br /&gt;
  public static void main(String args[]) {&lt;br /&gt;
    Runnable runner = new Runnable() {&lt;br /&gt;
      public void run() {&lt;br /&gt;
    	  &lt;br /&gt;
    	  //controlliamo che il Sistema supporti il system tray&lt;br /&gt;
    	  if (SystemTray.isSupported()) {&lt;br /&gt;
          final SystemTray tray = SystemTray.getSystemTray();&lt;br /&gt;
          &lt;br /&gt;
          Image immagine = Toolkit.getDefaultToolkit().getImage(&amp;quot;C:Documents and Settings\\pe1748\\immagine.gif&amp;quot;);&lt;br /&gt;
          &lt;br /&gt;
          //usiamo la classe PopupMenu che estende Menu&lt;br /&gt;
          PopupMenu popup = new PopupMenu();&lt;br /&gt;
          &lt;br /&gt;
          //Ci creiamo la TrayIcon&lt;br /&gt;
          final TrayIcon trayIcon = new TrayIcon(immagine, &amp;quot;Giacomo&amp;quot;, popup);&lt;br /&gt;
&lt;br /&gt;
          MenuItem item = new MenuItem(&amp;quot;Error&amp;quot;);&lt;br /&gt;
          &lt;br /&gt;
          item.addActionListener(new ShowMessageListener(trayIcon,&lt;br /&gt;
            &amp;quot;Error Title&amp;quot;, &amp;quot;Error Testo&amp;quot;, TrayIcon.MessageType.ERROR));&lt;br /&gt;
          popup.add(item);&lt;br /&gt;
          &lt;br /&gt;
          item = new MenuItem(&amp;quot;Warning&amp;quot;);&lt;br /&gt;
          item.addActionListener(new ShowMessageListener(trayIcon,&lt;br /&gt;
            &amp;quot;Warning Title&amp;quot;, &amp;quot;Warning testo&amp;quot;, TrayIcon.MessageType.WARNING));&lt;br /&gt;
          popup.add(item);&lt;br /&gt;
          &lt;br /&gt;
          item = new MenuItem(&amp;quot;Info&amp;quot;);&lt;br /&gt;
          item.addActionListener(new ShowMessageListener(trayIcon,&lt;br /&gt;
            &amp;quot;Info Title&amp;quot;, &amp;quot;Info testo&amp;quot;, TrayIcon.MessageType.INFO));&lt;br /&gt;
          popup.add(item);&lt;br /&gt;
          &lt;br /&gt;
          item = new MenuItem(&amp;quot;Info2&amp;quot;);&lt;br /&gt;
          item.addActionListener(new ShowMessageListener(trayIcon,&lt;br /&gt;
            &amp;quot;Info Title&amp;quot;, &amp;quot;Info testo&amp;quot;, TrayIcon.MessageType.INFO));&lt;br /&gt;
          popup.add(item);&lt;br /&gt;
          &lt;br /&gt;
          item = new MenuItem(&amp;quot;Boh?!&amp;quot;);&lt;br /&gt;
          item.addActionListener(new ShowMessageListener(trayIcon,&lt;br /&gt;
            &amp;quot;None Title&amp;quot;, &amp;quot;None&amp;quot;, TrayIcon.MessageType.NONE));&lt;br /&gt;
          popup.add(item);&lt;br /&gt;
          &lt;br /&gt;
          //Usiamo il metodo remove() di SystemTray per rimuovere la TrayIcon&lt;br /&gt;
          item = new MenuItem(&amp;quot;Chiudi&amp;quot;);&lt;br /&gt;
          item.addActionListener(new ActionListener() {&lt;br /&gt;
            public void actionPerformed(ActionEvent e) {&lt;br /&gt;
	      tray.remove(trayIcon);&lt;br /&gt;
            }&lt;br /&gt;
	  }&lt;br /&gt;
          );&lt;br /&gt;
          popup.add(item);&lt;br /&gt;
          try {&lt;br /&gt;
            tray.add(trayIcon);&lt;br /&gt;
          } catch (AWTException e) {&lt;br /&gt;
            System.err.println(&amp;quot;Can't add to tray&amp;quot;);&lt;br /&gt;
          }&lt;br /&gt;
        } else {&lt;br /&gt;
          System.err.println(&amp;quot;Il Systema non suopporta il SystemTray&amp;quot;);&lt;br /&gt;
        }&lt;br /&gt;
      }&lt;br /&gt;
    };&lt;br /&gt;
    EventQueue.invokeLater(runner);&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
|-|&lt;/div&gt;</summary>
		<author><name>Pallotti</name></author>
		
	</entry>
	<entry>
		<id>http://wiki.netsitech.com/index.php?title=Programmazione:Java&amp;diff=2337</id>
		<title>Programmazione:Java</title>
		<link rel="alternate" type="text/html" href="http://wiki.netsitech.com/index.php?title=Programmazione:Java&amp;diff=2337"/>
		<updated>2007-12-04T09:47:11Z</updated>

		<summary type="html">&lt;p&gt;Pallotti: /* HowTo */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| cellspacing=15 width=&amp;quot;100%&amp;quot;&lt;br /&gt;
&lt;br /&gt;
|- valign=&amp;quot;top&amp;quot;&lt;br /&gt;
|width=&amp;quot;50%&amp;quot;|&lt;br /&gt;
==HowTo==&lt;br /&gt;
* '''J2EE'''&lt;br /&gt;
** [[Programmazione:Java/XML to PDF with fop |XML to PDF con fop]]&lt;br /&gt;
** [[Programmazione:Java/JNI Example |JNI Example]]&lt;br /&gt;
** [[Programmazione:Java/Java-Scripting |Java-Scripting]]&lt;br /&gt;
** [[Programmazione:Java/Sampler Test for JMeter |Sampler Test for JMeter]]&lt;br /&gt;
** [[Programmazione:Java/JAVA 6 SystemTray e TrayIcon |JAVA 6 SystemTray e TrayIcon]]&lt;br /&gt;
* '''Eclipse RCP'''&lt;br /&gt;
** '''''Sviluppo grafico'''''&lt;br /&gt;
*** [[Programmazione:Java/Visualizzare il contenuto di un XSD in una Tree | Visualizzare il contenuto di un XSD in una Tree]]&lt;br /&gt;
*** [[Programmazione:Java/Disattivare il ridimensionamento delle viste | Disattivare il ridimensionamento delle viste]]&lt;br /&gt;
*** [[Programmazione:Java/Utilizzo della CoolBar | Utilizzo della CoolBar]]&lt;br /&gt;
*** [[Programmazione:Java/Validazione Text by RegExp | Validazione Text by RegExp]]&lt;br /&gt;
*** [[Programmazione:Java/Inserire componenti in una Table SWT |Inserire componenti in una Table SWT]]&lt;br /&gt;
*** [[Programmazione:Java/SWT Table: Tooltip per cella | SWT Table: Tooltip per cella]]&lt;br /&gt;
*** [[Programmazione:Java/Application Coolbar | Application Coolbar]]&lt;br /&gt;
** '''''Utilità'''''&lt;br /&gt;
*** [[Programmazione:Java/Leggere da un Extension Point |Leggere da un Extension Point]]&lt;br /&gt;
*** [[Programmazione:Java/Internazionalizzazione tramite Extension Point |Internazionalizzazione tramite Extension Point]]&lt;br /&gt;
*** [[Programmazione:Java/Leggere le dipendenze di un plugin da MANIFEST.MF |Leggere le dipendenze di un plugin da MANIFEST.MF]]&lt;br /&gt;
*** [[Programmazione:Java/Log4J configurabile da Extension Point |Log4J configurabile da Extension Point]]&lt;br /&gt;
*** [[Programmazione:Java/Creare un plugin contenente un runtime C/C++ | Creare un plugin contenente un runtime C/C++]]&lt;br /&gt;
&lt;br /&gt;
|width=&amp;quot;50%&amp;quot;|&lt;br /&gt;
&lt;br /&gt;
==Best Practice== &lt;br /&gt;
* '''J2EE'''&lt;br /&gt;
** [[Programmazione:Java/Exception|Exception]]&lt;br /&gt;
** [[Programmazione:Java/Logging|Logging]]&lt;br /&gt;
* '''Eclipse RCP'''&lt;br /&gt;
** [[Programmazione:Java/Event Interface implementation|Event Interface implementation]]&lt;br /&gt;
** [[Programmazione:Java/SWT - Manage, dont Extend|SWT - Manage, dont Extend]]&lt;br /&gt;
&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Pallotti</name></author>
		
	</entry>
</feed>