<?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-5383785703811438497</id><updated>2012-02-12T16:26:45.958-08:00</updated><category term='timerService'/><category term='logging'/><category term='solr'/><category term='hierarchical database'/><category term='wsad'/><category term='timers'/><category term='quartz'/><category term='javascript'/><category term='signature'/><category term='maven'/><category term='openshift'/><category term='applet'/><category term='date'/><category term='camanjs'/><category term='suoni_localizzati'/><category term='birt'/><category term='picasa'/><category term='instagram'/><category term='jsf richfaces'/><category term='excel'/><category term='ldap'/><category term='OPENSHIFT_DATA_DIR'/><category term='ejb3'/><category term='treeset'/><category term='threaddump'/><category term='scala ejb3'/><category term='filtri_immagini'/><category term='cdi'/><category term='streetview'/><category term='lubuntu'/><category term='Persistence'/><category term='crawler'/><category term='cron'/><category term='alias'/><category term='linux'/><category term='facebook'/><category term='listening_any_address'/><category term='host_port'/><category term='jsf2'/><category term='java'/><category term='google_docs'/><category term='crawl-anywhere'/><category term='date_nearest'/><category term='lucene'/><category term='migration'/><category term='ubutntu'/><category term='customize_main_menu'/><category term='cloud'/><category term='jaas'/><category term='recover_deleted_files'/><category term='chart'/><category term='security_domains'/><category term='jboss7'/><category term='rest'/><category term='du'/><category term='android'/><category term='krank'/><category term='phonegap'/><category term='EXTJS'/><category term='java_fs'/><category term='mdb email listener'/><category term='jboss6'/><category term='json'/><category term='sitemap'/><title type='text'>Java Enterprise 2 Flower</title><subtitle type='html'>i love jee 
...e raccolgo tanta roba buona...
fiorenzino[AT]gmail[DOT]com</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>71</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-1142361226111045644</id><published>2012-02-12T16:22:00.000-08:00</published><updated>2012-02-12T16:22:48.534-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='jsf2'/><category scheme='http://www.blogger.com/atom/ns#' term='jboss7'/><title type='text'>jsf2: stringhe vuote convertite in zero.. automaticamente</title><content type='html'>Nelle ultime versioni di jsf c'è una nuova future voluta (che non mi piace affatto!!) che consente di gestire la conversione automatica tra valori vuoti e 0..&lt;br /&gt;faccio un esempio: quando avete un array di select items capita di spesso di inserire un valore vuoto con label "seleziona" - il valore vuoto serve per non far scattare il filtro nel meccanismo di ricerca.&lt;br /&gt;Se invece il vuoto viene convertito in 0, a quel punto il meccanismo di ricerca lo utilizza...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;per ulteriori informazioni a riguardo:&lt;br /&gt;&lt;br /&gt;&lt;div style="background-attachment: initial; background-clip: initial; background-color: white; background-image: initial; background-origin: initial; border-bottom-width: 0px; border-color: initial; border-image: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: #555555; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif; font-size: 14px; line-height: 21px; outline-color: initial; outline-style: initial; outline-width: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;a href="http://balusc.blogspot.com/2011/09/communication-in-jsf-20.html" style="background-attachment: initial; background-clip: initial; background-color: transparent; background-image: initial; background-origin: initial; border-bottom-width: 0px; border-color: initial; border-image: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: #1060c8; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; outline-color: initial; outline-style: initial; outline-width: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-decoration: none;" title="http://balusc.blogspot.com/2011/09/communication-in-jsf-20.html"&gt;http://balusc.blogspot.com/2011/09/communication-in-jsf-20.html&lt;/a&gt;&lt;br /&gt;&lt;a href="http://stackoverflow.com/questions/8093932/jsf-2-0-selectonemenu-defaults-to-0-when-empty" style="background-attachment: initial; background-clip: initial; background-color: transparent; background-image: initial; background-origin: initial; border-bottom-width: 0px; border-color: initial; border-image: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: #1060c8; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; outline-color: initial; outline-style: initial; outline-width: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-decoration: none;" title="http://stackoverflow.com/questions/8093932/jsf-2-0-selectonemenu-defaults-to-0-when-empty"&gt;http://stackoverflow.com/questions/8093932/jsf-2-0-selectonemenu-default...&lt;/a&gt;&lt;/div&gt;&lt;div style="background-attachment: initial; background-clip: initial; background-color: white; background-image: initial; background-origin: initial; border-bottom-width: 0px; border-color: initial; border-image: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: #555555; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif; font-size: 14px; line-height: 21px; outline-color: initial; outline-style: initial; outline-width: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="background-attachment: initial; background-clip: initial; background-color: white; background-image: initial; background-origin: initial; border-bottom-width: 0px; border-color: initial; border-image: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif; font-size: 14px; line-height: 21px; outline-color: initial; outline-style: initial; outline-width: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;Una possibile soluzione in jboss è di aggiungere nel file jboss7/bin/standalone.conf &amp;nbsp;questo parametro:&lt;br /&gt;&lt;span style="color: red;"&gt;-Dorg.apache.el.parser.COERCE_TO_ZERO=false&lt;/span&gt;&lt;/div&gt;&lt;div style="background-attachment: initial; background-clip: initial; background-color: white; background-image: initial; background-origin: initial; border-bottom-width: 0px; border-color: initial; border-image: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: #555555; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif; font-size: 14px; line-height: 21px; outline-color: initial; outline-style: initial; outline-width: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="background-attachment: initial; background-clip: initial; background-color: white; background-image: initial; background-origin: initial; border-bottom-width: 0px; border-color: initial; border-image: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: #555555; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif; font-size: 14px; line-height: 21px; outline-color: initial; outline-style: initial; outline-width: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;Nel file web.xml aggiungete invece:&lt;/div&gt;&lt;div style="background-attachment: initial; background-clip: initial; background-color: white; background-image: initial; background-origin: initial; border-bottom-width: 0px; border-color: initial; border-image: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: #555555; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif; font-size: 14px; line-height: 21px; outline-color: initial; outline-style: initial; outline-width: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;/div&gt;&lt;pre style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; border-bottom-color: rgb(51, 51, 51); border-bottom-style: dashed; border-bottom-width: 1px; border-image: initial; border-left-color: rgb(51, 51, 51); border-left-style: dashed; border-left-width: 1px; border-right-color: rgb(51, 51, 51); border-right-style: dashed; border-right-width: 1px; border-top-color: rgb(51, 51, 51); border-top-style: dashed; border-top-width: 1px; color: black; font-family: 'lucida console', fixed, monospace, terminal, couriernew, courier; font-size: 12px; line-height: 1em; margin-bottom: 6px; margin-top: 2px; overflow-x: auto; overflow-y: hidden; padding-bottom: 2px; padding-left: 2px; padding-right: 2px; padding-top: 2px; text-align: left;"&gt;&lt;span class="codetag" style="color: #336666; font-size: 1em; line-height: 1em;"&gt;&amp;lt;context-param&amp;gt;&lt;/span&gt;&lt;br /&gt;        &lt;span class="codetag" style="color: #336666; font-size: 1em; line-height: 1em;"&gt;&amp;lt;param-name&amp;gt;&lt;/span&gt;javax.faces.INTERPRET_EMPTY_STRING_SUBMITTED_VALUES_AS_NULL&lt;span class="codetag" style="color: #336666; font-size: 1em; line-height: 1em;"&gt;&amp;lt;/param-name&amp;gt;&lt;/span&gt;&lt;br /&gt;        &lt;span class="codetag" style="color: #336666; font-size: 1em; line-height: 1em;"&gt;&amp;lt;param-value&amp;gt;&lt;/span&gt;true&lt;span class="codetag" style="color: #336666; font-size: 1em; line-height: 1em;"&gt;&amp;lt;/param-value&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="codetag" style="color: #336666; font-size: 1em; line-height: 1em;"&gt;&amp;lt;/context-param&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;div style="background-attachment: initial; background-clip: initial; background-color: white; background-image: initial; background-origin: initial; border-bottom-width: 0px; border-color: initial; border-image: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: #555555; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif; font-size: 14px; line-height: 21px; outline-color: initial; outline-style: initial; outline-width: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="background-attachment: initial; background-clip: initial; background-color: white; background-image: initial; background-origin: initial; border-bottom-width: 0px; border-color: initial; border-image: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: #555555; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif; font-size: 14px; line-height: 21px; outline-color: initial; outline-style: initial; outline-width: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;funziona...peccato che su openshift non si possano aggiungere variabili d'ambiente custom!!!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-1142361226111045644?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/1142361226111045644/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=1142361226111045644' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/1142361226111045644'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/1142361226111045644'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2012/02/jsf2-stringhe-vuote-convertite-in-zero.html' title='jsf2: stringhe vuote convertite in zero.. automaticamente'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-1182620250824332172</id><published>2012-02-12T16:11:00.000-08:00</published><updated>2012-02-12T16:13:15.935-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='cloud'/><category scheme='http://www.blogger.com/atom/ns#' term='OPENSHIFT_DATA_DIR'/><category scheme='http://www.blogger.com/atom/ns#' term='openshift'/><title type='text'>openshift: OPENSHIFT_DATA_DIR come usarlo per file RESISTENTI AI PUSH</title><content type='html'>Indagare meglio su come usare il nostro spazio:&lt;br /&gt;&lt;b&gt; "For persistent data (also in env var OPENSHIFT_DATA_DIR)"&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;Ho provato ad usarlo, creando un link simbolico tra:&lt;/b&gt;&lt;br /&gt;&lt;b&gt;ln -s ~&lt;/b&gt;&lt;b&gt;/appname/data ~&lt;/b&gt;&lt;b&gt;/appname/jbossas-7.0/standalone/deployments/ROOT.war/data&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;MA NON FUNZIA!!&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;link utile:&lt;/b&gt;&lt;br /&gt;&lt;a href="https://www.redhat.com/openshift/community/forums/express/few-questions-to-learn-more-about-express"&gt;https://www.redhat.com/openshift/community/forums/express/few-questions-to-learn-more-about-express&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-1182620250824332172?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/1182620250824332172/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=1182620250824332172' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/1182620250824332172'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/1182620250824332172'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2012/02/openshift-openshiftdatadir-come-usarlo.html' title='openshift: OPENSHIFT_DATA_DIR come usarlo per file RESISTENTI AI PUSH'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-8230223732781774625</id><published>2012-02-12T15:07:00.000-08:00</published><updated>2012-02-12T15:07:22.083-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='jboss7'/><category scheme='http://www.blogger.com/atom/ns#' term='cloud'/><category scheme='http://www.blogger.com/atom/ns#' term='alias'/><category scheme='http://www.blogger.com/atom/ns#' term='openshift'/><title type='text'>openshift: aggiungere alias</title><content type='html'>Se registrate un dominio per pochi euro (dominio+dns+posta = 10/20 euro).&lt;div&gt;Create presso il vs DNS una CNAME del tipo:&amp;nbsp;&lt;b&gt;test.dominio.it.&lt;/b&gt; [NOTATE IL PUNTO!]&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;che ridirge verso&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;appname-domainname.rhcloud.com&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Comunicate ad openshift questo CNAME, tramite il comando&amp;nbsp;rhc-ctl-app:&lt;/div&gt;&lt;div&gt;r&lt;b&gt;hc-ctl-app -a appname -c add-alias --alias appname.domainname.it -l account@gmail.com&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;E voilà la vs applicazione è raggiungibile a tutto il mondo!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;ricordatevi ogni tanto di verificare che il jboss sia ancora attivo (openshift è ancora in beta...ogni tanto va tutto giù senza preavviso)!!!!&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-8230223732781774625?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/8230223732781774625/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=8230223732781774625' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/8230223732781774625'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/8230223732781774625'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2012/02/openshift-aggiungere-alias.html' title='openshift: aggiungere alias'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-4820070752180302294</id><published>2012-02-12T09:54:00.000-08:00</published><updated>2012-02-12T15:07:52.744-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='jboss7'/><category scheme='http://www.blogger.com/atom/ns#' term='cloud'/><category scheme='http://www.blogger.com/atom/ns#' term='openshift'/><category scheme='http://www.blogger.com/atom/ns#' term='cron'/><title type='text'>openshift: usiamo il cron per riavviare jboss di notte!</title><content type='html'>Date le poche risorse a disposizione, potrebbe essere utile riavviare jboss tutte le notti alle 3:00 (..si lo so che una buon applicazione non ne dovrebbe aver bisogno...):&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&lt;b&gt;1) abilitiamo il cron alla ns applicazione&lt;/b&gt;&lt;br /&gt;rhc-ctl-app -a giavacms -e add-cron-1.4&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&lt;b&gt;2) creaiamo cartelle e script per usare i cron su openshift&lt;/b&gt;&lt;br /&gt;mkdir -p .openshift/cron/hourly&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&amp;nbsp;3) creiamo il ns file  di restart di jboss&amp;nbsp;&lt;/b&gt;&lt;br /&gt;touch .openshift/cron/hourly/restart_jboss.sh&lt;br /&gt;&lt;br /&gt;&lt;b&gt;4) aggiungiamo il seguente contenuto al suo interno&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;#!/bin/bash&lt;br /&gt;echo "--------------------------------------------" &amp;gt;&amp;gt; $OPENSHIFT_REPO_DIR/cron_jboss/cron.log&lt;br /&gt;date &amp;gt;&amp;gt; $OPENSHIFT_REPO_DIR/cron_jboss/cron.log&lt;br /&gt;NOW=$(date +"%H")&lt;br /&gt;echo $NOW &amp;gt;&amp;gt; $OPENSHIFT_REPO_DIR/cron_jboss/cron.log&lt;br /&gt;echo 'resto' $RESTO '- cnfr' $CNFR &amp;gt;&amp;gt; $OPENSHIFT_REPO_DIR/cron_jboss/cron.log&lt;br /&gt;if [ "$NOW" -eq "03"\ ];then&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; $OPENSHIFT_APP_CTL_SCRIPT restart;&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; echo "restart jboss now:" &amp;gt;&amp;gt; $OPENSHIFT_REPO_DIR/cron_jboss/cron.log&lt;br /&gt;else&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; echo "no restart jboss now!!" &amp;gt;&amp;gt; $OPENSHIFT_REPO_DIR/cron_jboss/cron.log&lt;br /&gt;fi&lt;br /&gt;date &amp;gt;&amp;gt; $OPENSHIFT_REPO_DIR/cron_jboss/cron.log&lt;br /&gt;echo "--------------------------------------------" &amp;gt;&amp;gt; $OPENSHIFT_REPO_DIR/cron_jboss/cron.log&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;5) creiamo una cartella in cui archiviare il log di restart:&lt;/b&gt;&lt;br /&gt;mkdir cron_jboss&lt;br /&gt;touch cron_jboss//cron.log&lt;br /&gt;&lt;br /&gt;&lt;b&gt;6) committiamo tutti i files su openshift&lt;/b&gt;&lt;br /&gt;git add&amp;nbsp;.openshift/*&lt;br /&gt;git add&amp;nbsp;cron_jboss/*&lt;br /&gt;git commit -m"start with cron"&amp;nbsp;.openshift/*&lt;br /&gt;git commit -m"start with cron"&amp;nbsp;cron_jboss/*&lt;br /&gt;git push&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;7) link utili&lt;/b&gt;&lt;br /&gt;&lt;a href="https://www.redhat.com/openshift/community/forums/express/restart-jboss-with-cron"&gt;https://www.redhat.com/openshift/community/forums/express/restart-jboss-with-cron&lt;/a&gt;&lt;br /&gt;&lt;a href="http://docs.redhat.com/docs/en-US/OpenShift_Express/2.0/html/User_Guide/sect-User_Guide-Scheduling_Timed_Jobs_with_Cron.html"&gt;http://docs.redhat.com/docs/en-US/OpenShift_Express/2.0/html/User_Guide/sect-User_Guide-Scheduling_Timed_Jobs_with_Cron.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-4820070752180302294?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/4820070752180302294/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=4820070752180302294' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/4820070752180302294'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/4820070752180302294'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2012/02/openshift-usiamo-il-cron-per-riavviare.html' title='openshift: usiamo il cron per riavviare jboss di notte!'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-9010088270474906505</id><published>2011-12-29T15:45:00.000-08:00</published><updated>2012-02-12T15:08:29.097-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='du'/><category scheme='http://www.blogger.com/atom/ns#' term='jboss7'/><category scheme='http://www.blogger.com/atom/ns#' term='cloud'/><category scheme='http://www.blogger.com/atom/ns#' term='openshift'/><title type='text'>openshift: vedere lo spazio disco occupato</title><content type='html'>Al momento non c'è un comando che mostra chiaramente l'occupazione disco...&lt;br /&gt;un domani forse verrà aggiunto tra le informazioni restituite da&amp;nbsp;&lt;b&gt;rhc-user-info -laccountname&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Per ora, come recita:&lt;br /&gt;&lt;br /&gt;&lt;a href="https://www.redhat.com/openshift/community/forums/express/questions-on-express-quota"&gt;https://www.redhat.com/openshift/community/forums/express/questions-on-express-quota&lt;/a&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: 14px;"&gt;basta fare un login ssh&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;div style="background-attachment: initial; background-clip: initial; background-color: transparent; background-image: initial; background-origin: initial; border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; font-size: 14px; outline-color: initial; outline-style: initial; outline-width: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;ssh &amp;nbsp;$UUID@$HOSTNAME&amp;nbsp;&lt;/div&gt;&lt;div style="background-attachment: initial; background-clip: initial; background-color: transparent; background-image: initial; background-origin: initial; border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; font-size: 14px; outline-color: initial; outline-style: initial; outline-width: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="background-attachment: initial; background-clip: initial; background-color: transparent; background-image: initial; background-origin: initial; border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; font-size: 14px; outline-color: initial; outline-style: initial; outline-width: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&amp;nbsp;e lanciare il comando:&lt;/div&gt;&lt;div style="background-attachment: initial; background-clip: initial; background-color: transparent; background-image: initial; background-origin: initial; border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; font-size: 14px; outline-color: initial; outline-style: initial; outline-width: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;$ du -sh ~ /tmp&lt;/div&gt;&lt;div style="background-attachment: initial; background-clip: initial; background-color: transparent; background-image: initial; background-origin: initial; border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; font-size: 14px; outline-color: initial; outline-style: initial; outline-width: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="background-attachment: initial; background-clip: initial; background-color: transparent; background-image: initial; background-origin: initial; border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; font-size: 14px; outline-color: initial; outline-style: initial; outline-width: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;( o simili&amp;nbsp;&lt;/div&gt;&lt;span class="Apple-style-span" style="background-color: white; color: #171717; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif; font-size: 14px; line-height: 21px;"&gt;&lt;a href="http://www.magicmill.net/linux/grap/grap-11.html"&gt;http://www.magicmill.net/linux/grap/grap-11.html&lt;/a&gt;)&lt;/span&gt;&lt;span class="Apple-style-span" style="background-color: white; color: #171717; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif; font-size: 14px; line-height: 21px;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;div style="background-attachment: initial; background-clip: initial; background-color: transparent; background-image: initial; background-origin: initial; border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; font-size: 14px; outline-color: initial; outline-style: initial; outline-width: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span class="Apple-style-span" style="background-color: white; color: #171717; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif; font-size: 14px; line-height: 21px;"&gt;se lo spazio occupato è troppo alto, cominciate con le pulizie di natale con:&lt;/span&gt;&lt;/div&gt;&lt;span class="Apple-style-span" style="background-color: white; color: #171717; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif; font-size: 14px; line-height: 21px;"&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="background-color: #c0a154; color: #333333; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 14px; line-height: 20px;"&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="background-color: white; color: #333333; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif; font-size: 14px; line-height: 21px;"&gt;rhc-ctl-app -a nomeapplicazione -c tidy&amp;nbsp;&lt;/span&gt;&amp;nbsp;-l account@gmail.com&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="background-color: #c0a154; color: #333333; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 14px; line-height: 20px;"&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-9010088270474906505?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/9010088270474906505/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=9010088270474906505' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/9010088270474906505'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/9010088270474906505'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2011/12/openshift-vedere-lo-spazio-disco.html' title='openshift: vedere lo spazio disco occupato'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-3158258766629709102</id><published>2011-12-29T15:25:00.001-08:00</published><updated>2012-02-12T15:08:53.199-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='host_port'/><category scheme='http://www.blogger.com/atom/ns#' term='cloud'/><category scheme='http://www.blogger.com/atom/ns#' term='openshift'/><title type='text'>openshift: vedere host e port</title><content type='html'>come suggeriscono nel forum:&lt;br /&gt;&lt;a href="https://www.redhat.com/openshift/community/forums/express/support-for-standalone-java-app"&gt;https://www.redhat.com/openshift/community/forums/express/support-for-standalone-java-app&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: white; color: #171717; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif; font-size: 14px; line-height: 21px;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;h3 style="background-attachment: initial; background-clip: initial; background-color: transparent; background-image: initial; background-origin: initial; border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: #555555; font-family: Overpass, 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif; font-size: 1.1em; margin-bottom: 5px; margin-left: 0px; margin-right: 0px; margin-top: 0px; outline-color: initial; outline-style: initial; outline-width: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;a class="active" href="https://www.redhat.com/openshift/community/forums/express/support-for-standalone-java-app#comment-10075" style="background-attachment: initial; background-clip: initial; background-color: transparent; background-image: initial; background-origin: initial; border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: #3771c8; font-size: 18px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; outline-color: initial; outline-style: initial; outline-width: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-decoration: none;"&gt;It'll be a port *and* IP you&lt;/a&gt;&lt;/h3&gt;&lt;div class="content" style="background-attachment: initial; background-clip: initial; background-color: transparent; background-image: initial; background-origin: initial; background-position: initial initial; background-repeat: initial initial; border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; font-size: 14px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; outline-color: initial; outline-style: initial; outline-width: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;div style="background-attachment: initial; background-clip: initial; background-color: transparent; background-image: initial; background-origin: initial; border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; font-size: 14px; outline-color: initial; outline-style: initial; outline-width: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;It'll be a port *and* IP you need to bind to. Add the following to your .openshift/action_hooks/post_deploy script to see what you should be binding to:&lt;/div&gt;&lt;div style="background-attachment: initial; background-clip: initial; background-color: transparent; background-image: initial; background-origin: initial; border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; font-size: 14px; outline-color: initial; outline-style: initial; outline-width: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;echo "Bind to this port: $OPENSHIFT_INTERNAL_IP:$OPENSHIFT_INTERNAL_PORT"&lt;/div&gt;&lt;div style="background-attachment: initial; background-clip: initial; background-color: transparent; background-image: initial; background-origin: initial; border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; font-size: 14px; outline-color: initial; outline-style: initial; outline-width: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;Then use that IP and port for binding.&lt;/div&gt;&lt;div style="background-attachment: initial; background-clip: initial; background-color: transparent; background-image: initial; background-origin: initial; border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; font-size: 14px; outline-color: initial; outline-style: initial; outline-width: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="background-attachment: initial; background-clip: initial; background-color: transparent; background-image: initial; background-origin: initial; border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; font-size: 14px; outline-color: initial; outline-style: initial; outline-width: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;utile...&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-3158258766629709102?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/3158258766629709102/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=3158258766629709102' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/3158258766629709102'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/3158258766629709102'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2011/12/openshift-vedere-host-e-port.html' title='openshift: vedere host e port'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-2969891154458648565</id><published>2011-12-27T15:41:00.000-08:00</published><updated>2012-02-12T15:09:21.067-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='threaddump'/><category scheme='http://www.blogger.com/atom/ns#' term='jboss7'/><category scheme='http://www.blogger.com/atom/ns#' term='cloud'/><category scheme='http://www.blogger.com/atom/ns#' term='openshift'/><title type='text'>openshift: vedere il threaddump</title><content type='html'>prima eseguire il comando:&lt;br /&gt;rhc-ctl-app -a appname -c threaddump -lxxxxx@gmail.com&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;e poi per rivedere il&amp;nbsp;threaddump:&lt;br /&gt;&lt;br /&gt;rhc-tail-files -f&amp;nbsp;appname/jbossas-7.0/stdout.log -lxxxxx@gmail.com -a&amp;nbsp;appname&lt;br /&gt;&lt;br /&gt;verrò fuori qualcosa come:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Heap&lt;br /&gt;&amp;nbsp;PSYoungGen &amp;nbsp; &amp;nbsp; &amp;nbsp;total 27136K, used 22338K [0x00000000fe000000, 0x00000000fff90000, 0x0000000100000000)&lt;br /&gt;&amp;nbsp; eden space 22080K, 99% used [0x00000000fe000000,0x00000000ff588ad0,0x00000000ff590000)&lt;br /&gt;&amp;nbsp; from space 5056K, 5% used [0x00000000ffa70000,0x00000000ffab8000,0x00000000fff60000)&lt;br /&gt;&amp;nbsp; to &amp;nbsp; space 4992K, 0% used [0x00000000ff590000,0x00000000ff590000,0x00000000ffa70000)&lt;br /&gt;&amp;nbsp;PSOldGen &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;total 64896K, used 34863K [0x00000000fa000000, 0x00000000fdf60000, 0x00000000fe000000)&lt;br /&gt;&amp;nbsp; object space 64896K, 53% used [0x00000000fa000000,0x00000000fc20bd88,0x00000000fdf60000)&lt;br /&gt;&amp;nbsp;PSPermGen &amp;nbsp; &amp;nbsp; &amp;nbsp; total 78656K, used 78637K [0x00000000f4200000, 0x00000000f8ed0000, 0x00000000fa000000)&lt;br /&gt;&amp;nbsp; object space 78656K, 99% used [0x00000000f4200000,0x00000000f8ecb6b8,0x00000000f8ed0000)&lt;br /&gt;&lt;br /&gt;per capire cosa sono:&lt;br /&gt;&lt;a href="http://javandoblog.blogspot.com/2010/08/per-chi-sviluppa-in-java-prima-o-poi.html"&gt;http://javandoblog.blogspot.com/2010/08/per-chi-sviluppa-in-java-prima-o-poi.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-2969891154458648565?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/2969891154458648565/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=2969891154458648565' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/2969891154458648565'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/2969891154458648565'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2011/12/openshift-vedere-il-threaddump.html' title='openshift: vedere il threaddump'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-6059786153911119750</id><published>2011-12-26T15:32:00.000-08:00</published><updated>2012-02-12T15:09:36.790-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='jboss7'/><category scheme='http://www.blogger.com/atom/ns#' term='cloud'/><category scheme='http://www.blogger.com/atom/ns#' term='openshift'/><title type='text'>openshift: che figata!</title><content type='html'>Sono anni che sogno di avere un jboss in hosting...e adesso con openshift è possibile!&lt;br /&gt;&lt;br /&gt;adesso è possibile avere un virtual server a propria diposizione con mysql, phpmyadmin, 300 mega di ram e 500 mega di spazio disco:&lt;br /&gt;&lt;br /&gt;Alcune&amp;nbsp;highlights dell'ultima ora:&lt;br /&gt;&lt;br /&gt;&lt;b&gt;1) aggiungere un alias alla propria applicazione:&lt;/b&gt;&lt;br /&gt;immaginate di comprare un nome per la vs applicazione su uno dei tanti rivenditori in rete, comprando anche l'uso del dns..a questo punto basta usare il comando:&lt;br /&gt;rhc-ctl-app -a nomeapplicazione -c add-alias --alias www.hostname.org -l account@gmail.com&lt;br /&gt;&lt;br /&gt;&lt;b&gt;2) connesioni ssh al ns host:&lt;/b&gt;&lt;br /&gt;rhc-user-info -l account@gmail.com&lt;br /&gt;&lt;br /&gt;per ogni applicazione ci sarà un url git:&lt;br /&gt;Git URL: ssh://xxxxxxxxxxxxxxxxxxxxxxxxxx@xxxxxx.rhcloud.com&lt;br /&gt;&lt;br /&gt;ssh -t&amp;nbsp;xxxxxxxxxxxxxxxxxxxxxxxxxx@xxxxxx.rhcloud.com&lt;br /&gt;&lt;br /&gt;e voilà siete dentro la vs macchina:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Welcome to OpenShift shell&lt;br /&gt;&lt;br /&gt;&amp;nbsp; &amp;nbsp; This shell will assist you in managing openshift applications.&lt;br /&gt;&lt;br /&gt;&amp;nbsp; &amp;nbsp; !!! IMPORTANT !!! IMPORTANT !!! IMPORTANT !!!&lt;br /&gt;&amp;nbsp; &amp;nbsp; Shell access is quite powerful and it is possible for you to&lt;br /&gt;&amp;nbsp; &amp;nbsp; accidentally damage your application. &amp;nbsp;Procede with care!&lt;br /&gt;&amp;nbsp; &amp;nbsp; If worse comes to worse, destroy your application with rhc-ctl-app&lt;br /&gt;&amp;nbsp; &amp;nbsp; and recreate it&lt;br /&gt;&amp;nbsp; &amp;nbsp; !!! IMPORTANT !!! IMPORTANT !!! IMPORTANT !!!&lt;br /&gt;&lt;br /&gt;&amp;nbsp; &amp;nbsp; type "help" for more info.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;3) pulizia dello spazio disco non +usato (tmp/log/git history)&lt;/b&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: white; color: #333333; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif; font-size: 14px; line-height: 21px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="background-color: white; color: #333333; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif; font-size: 14px; line-height: 21px;"&gt;rhc-ctl-app -a nomeapplicazione -c tidy&amp;nbsp;&lt;/span&gt;&amp;nbsp;-l account@gmail.com&lt;/b&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: white; color: #333333; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif; font-size: 14px; line-height: 21px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: white; color: #333333; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif; font-size: 14px; line-height: 21px;"&gt;che farà le seguenti mosse:&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: white; color: #333333; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif; font-size: 14px; line-height: 21px;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: white; color: #333333; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif; font-size: 14px; line-height: 21px;"&gt;Stopping app...&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: white; color: #333333; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif; font-size: 14px; line-height: 21px;"&gt;Running 'git gc --prune --aggressive'&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: white; color: #333333; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif; font-size: 14px; line-height: 21px;"&gt;Emptying log dir: /var/lib/libra/xxxxxxxxxxxxxxxxxxx/&lt;/span&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="background-color: white; color: #333333; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif; font-size: 14px; line-height: 21px;"&gt;nomeapplicazione&lt;/span&gt;&lt;/b&gt;&lt;span class="Apple-style-span" style="background-color: white; color: #333333; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif; font-size: 14px; line-height: 21px;"&gt;/logs/&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: white; color: #333333; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif; font-size: 14px; line-height: 21px;"&gt;Emptying tmp dir: /tmp/&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: white; color: #333333; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif; font-size: 14px; line-height: 21px;"&gt;Emptying tmp dir: /var/lib/libra/&lt;/span&gt;&lt;span class="Apple-style-span" style="background-color: white; color: #333333; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif; font-size: 14px; line-height: 21px;"&gt;xxxxxxxxxxxxxxxxxxx&lt;/span&gt;&lt;span class="Apple-style-span" style="background-color: white; color: #333333; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif; font-size: 14px; line-height: 21px;"&gt;/&lt;/span&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="background-color: white; color: #333333; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif; font-size: 14px; line-height: 21px;"&gt;nomeapplicazione&lt;/span&gt;&lt;/b&gt;&lt;span class="Apple-style-span" style="background-color: white; color: #333333; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif; font-size: 14px; line-height: 21px;"&gt;/tmp/&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: white; color: #333333; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif; font-size: 14px; line-height: 21px;"&gt;Emptying tmp dir: /var/lib/libra/&lt;/span&gt;&lt;span class="Apple-style-span" style="background-color: white; color: #333333; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif; font-size: 14px; line-height: 21px;"&gt;xxxxxxxxxxxxxxxxxxx&lt;/span&gt;&lt;span class="Apple-style-span" style="background-color: white; color: #333333; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif; font-size: 14px; line-height: 21px;"&gt;/&lt;/span&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="background-color: white; color: #333333; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif; font-size: 14px; line-height: 21px;"&gt;nomeapplicazione&lt;/span&gt;&lt;/b&gt;&lt;span class="Apple-style-span" style="background-color: white; color: #333333; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif; font-size: 14px; line-height: 21px;"&gt;/jbossas-7.0/standalone/tmp/&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: white; color: #333333; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif; font-size: 14px; line-height: 21px;"&gt;Starting app...&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: white; color: #333333; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif; font-size: 14px; line-height: 21px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: white; color: #333333; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif; font-size: 14px; line-height: 21px;"&gt;4) riavviare mysql:&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: white; color: #333333; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif; font-size: 14px; line-height: 21px;"&gt;rhc-ctl-app&lt;/span&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="background-color: white; color: #333333; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif; font-size: 14px; line-height: 21px;"&gt;&amp;nbsp;-a nomeapplicazione&lt;/span&gt;&lt;/b&gt;&lt;span class="Apple-style-span" style="background-color: white; color: #333333; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif; font-size: 14px; line-height: 21px;"&gt;&amp;nbsp;-e restart-mysql-5.1&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: white; color: #333333; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif; font-size: 14px; line-height: 21px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: white; color: #333333; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif; font-size: 14px; line-height: 21px;"&gt;utilissimi link per cominciare a giocare:&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: white; font-size: 14px; line-height: 21px;"&gt;&lt;span class="Apple-style-span" style="color: #333333; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #333333; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #333333; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif;"&gt;http://www.jboss.org/openshift/articles.html&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #333333; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #333333; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif;"&gt;da cui:&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #333333; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif;"&gt;http://community.jboss.org/blogs/scott.stark/2011/08/10/openshift-expressflex-cartridge-comparision&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #333333; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif;"&gt;http://community.jboss.org/blogs/scott.stark/2011/08/10/jbossas7-configuration-in-openshift-express&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #333333; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif;"&gt;http://community.jboss.org/blogs/scott.stark/2011/08/10/differences-between-the-express-and-flex-jbossas7-configurations&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #333333; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif;"&gt;http://community.jboss.org/wiki/TrackingThreadsInJBossAS7&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #333333; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif;"&gt;http://community.jboss.org/blogs/scott.stark/2011/08/10/jbossas7-configuration-in-openshift-express&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #333333; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif;"&gt;https://www.redhat.com/openshift/blogs/seeing-cdi-working-in-openshift&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: white; color: #333333; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif; font-size: 14px; line-height: 21px;"&gt;&lt;a href="https://www.redhat.com/openshift/community/blogs/how-to-create-an-openshift-github-quick-start-project"&gt;https://www.redhat.com/openshift/community/blogs/how-to-create-an-openshift-github-quick-start-project&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #333333; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif;"&gt;&lt;span class="Apple-style-span" style="font-size: 14px; line-height: 21px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="background-color: white; font-size: 14px; line-height: 21px;"&gt;&lt;span class="Apple-style-span" style="color: #333333; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #333333; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif;"&gt;importante:&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #333333; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif;"&gt;http://jaitechwriteups.blogspot.com/2011/08/deploy-java-ee-application-on-openshift.html&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #333333; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #333333; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif;"&gt;pannello di controllo&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #333333; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif;"&gt;https://openshift.redhat.com/app/control_panel&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: white; color: #333333; font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif; font-size: 14px; line-height: 21px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Liberation Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif;"&gt;&lt;span class="Apple-style-span" style="font-size: 14px; line-height: 21px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-6059786153911119750?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/6059786153911119750/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=6059786153911119750' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/6059786153911119750'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/6059786153911119750'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2011/12/openshift-che-figata.html' title='openshift: che figata!'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-8895763199559015626</id><published>2011-09-20T16:58:00.000-07:00</published><updated>2011-09-20T16:58:51.846-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='timerService'/><category scheme='http://www.blogger.com/atom/ns#' term='jboss7'/><category scheme='http://www.blogger.com/atom/ns#' term='quartz'/><category scheme='http://www.blogger.com/atom/ns#' term='ejb3'/><category scheme='http://www.blogger.com/atom/ns#' term='timers'/><title type='text'>jboss 7: non ci sono i quartz mdb..ma c'è  @Schedule</title><content type='html'>come dicono sul forum ufficiale, "&amp;nbsp;&lt;span class="Apple-style-span" style="background-color: white; color: #5b5b5b; font-family: 'Lucida Sans', 'Lucida Sans Unicode', 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif; font-size: 12px;"&gt;TimerService is already available in 7.0.1 "&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://community.jboss.org/thread/172213?tstart=60"&gt;http://community.jboss.org/thread/172213?tstart=60&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: white; color: #5b5b5b; font-family: 'Lucida Sans', 'Lucida Sans Unicode', 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif; font-size: 12px;"&gt;I would suggest to change the MDBs to singletons (EJB3.1) and use the EJB3.1 Timer Service of JEE6. The migration should be quite simple if you do not rely too much on quartz&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: white; color: #5b5b5b; font-family: 'Lucida Sans', 'Lucida Sans Unicode', 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif; font-size: 12px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: white; font-family: 'Lucida Sans', 'Lucida Sans Unicode', 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif; font-size: 12px;"&gt;Per chi non avesse mai provato i nuovi timer in jee6:&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: white; font-family: 'Lucida Sans', 'Lucida Sans Unicode', 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif; font-size: 12px;"&gt;&lt;a href="http://blogs.oracle.com/arungupta/entry/totd_146_understanding_the_ejb"&gt;http://blogs.oracle.com/arungupta/entry/totd_146_understanding_the_ejb&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;provare!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-8895763199559015626?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/8895763199559015626/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=8895763199559015626' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/8895763199559015626'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/8895763199559015626'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2011/09/jboss-7-non-ci-sono-i-quartz-mdbma-ce.html' title='jboss 7: non ci sono i quartz mdb..ma c&apos;è  @Schedule'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-959938566148508470</id><published>2011-09-20T16:23:00.000-07:00</published><updated>2011-09-20T16:27:42.379-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='rest'/><category scheme='http://www.blogger.com/atom/ns#' term='jboss7'/><category scheme='http://www.blogger.com/atom/ns#' term='json'/><title type='text'>jboss7: creare servizi rest - json</title><content type='html'>In jboss7 è semplice creare servizi rest!&lt;br /&gt;&lt;br /&gt;Per iniziare basta dare un okkio al progetto di esempio distribuito come applicazione di esempio:&lt;br /&gt;&lt;a href="https://docs.jboss.org/author/display/AS7/Kitchensink+quickstart"&gt;https://docs.jboss.org/author/display/AS7/Kitchensink+quickstart&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;L'unica difficoltà incontrata, nasce nel voler generare contenuti di tipo json, ovvero segnando i metodi con:&amp;nbsp;@Produces("application/json")&lt;br /&gt;Il problema riscontrato nasce nel mapping di relazioni di tipo&amp;nbsp;@OneToMany, o meglio nell'escludere queste relazioni dal mapping del risultato (evitando l'errore:&lt;br /&gt;&lt;b&gt;org.codehaus.jackson.map.JsonMappingException: failed to lazily initialize a collection of role&lt;/b&gt;&lt;br /&gt;date un okkio a questo post sul jbo7 forum:&amp;nbsp;&lt;a href="http://community.jboss.org/thread/169352"&gt;http://community.jboss.org/thread/169352&lt;/a&gt;&amp;nbsp;)&lt;br /&gt;&lt;br /&gt;Facciamo un esempio pratico...&lt;br /&gt;Immaginiamo di avere due entity Percorso, Punto (un percorso ha una relazione&amp;nbsp;@OneToMany con i punti che lo costituiscono).&lt;br /&gt;&lt;br /&gt;@Table(name = "percorsi")&lt;br /&gt;@Entity&lt;br /&gt;@XmlRootElement&lt;br /&gt;public class Percorso implements Serializable {&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;private Long id;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;private String nome;&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;private List&amp;lt;Punto&amp;gt; punti;&lt;br /&gt;.....&lt;br /&gt;&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; @Id&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;@GeneratedValue(strategy = GenerationType.IDENTITY)&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;public Long getId() {&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;		&lt;/span&gt;return id;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;}&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;public void setId(Long id) {&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;		&lt;/span&gt;this.id = id;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;}&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;public String getNome() {&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;		&lt;/span&gt;return nome;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;}&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;public void setNome(String nome) {&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;		&lt;/span&gt;this.nome = nome;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;}&lt;br /&gt;&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;@OneToMany(fetch = FetchType.LAZY, mappedBy = "percorso")&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;&lt;b&gt;@XmlTransient&lt;/b&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;&lt;b&gt;@JsonIgnore&lt;/b&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;public List&amp;lt;Punto&amp;gt; getPunti() {&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;		&lt;/span&gt;if (punti == null)&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;			&lt;/span&gt;this.punti = new ArrayList&amp;lt;Punto&amp;gt;();&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;		&lt;/span&gt;return this.punti;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;}&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;public void setPunti(List&amp;lt;Punto&amp;gt; punti) {&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;		&lt;/span&gt;this.punti = punti;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;b&gt;@Table(name = "punti")&lt;/b&gt;&lt;br /&gt;&lt;b&gt;@Entity&lt;/b&gt;&lt;br /&gt;&lt;b&gt;@XmlRootElement&lt;/b&gt;&lt;br /&gt;&lt;b&gt;public class Punto&lt;/b&gt; implements Serializable {&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;private Long id;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;private Percorso percorso;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;@Id&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;@GeneratedValue(strategy = GenerationType.IDENTITY)&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;public Long getId() {&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;		&lt;/span&gt;return id;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;}&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;public void setId(Long id) {&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;		&lt;/span&gt;this.id = id;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; @ManyToOne(fetch = FetchType.LAZY)&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;@JoinColumn(name = "id_percorso")&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;&lt;b&gt;@XmlTransient&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;@JsonIgnore&lt;/b&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;public Percorso getPercorso() {&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;		&lt;/span&gt;return percorso;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;}&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;public void setPercorso(Percorso percorso) {&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;		&lt;/span&gt;this.percorso = percorso;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;&lt;br /&gt;Immaginiamo di generare un servizio rest,&lt;br /&gt;&lt;br /&gt;&lt;b&gt;@Path("/v1/percorsi")&lt;/b&gt;&lt;br /&gt;&lt;b&gt;@RequestScoped&lt;/b&gt;&lt;br /&gt;&lt;b&gt;public class PercorsiREST &lt;/b&gt;{&lt;br /&gt;&lt;br /&gt;.....&lt;br /&gt;&lt;br /&gt;che permette di recuperare un percorso:&lt;br /&gt;&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; // repository che gestisce il caricamento da db dei dati&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; @Inject&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;PercorsiRepository percorsiRepository;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;&lt;b&gt;@GET&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;@Path("/{id:[0-9][0-9]*}")&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;@Produces("application/json")&lt;/b&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;public Percorso getPercorsoById(@PathParam("id") long id) {&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;		&lt;/span&gt;Percorso percorso = percorsiRepository.fetch(id);&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;		&lt;/span&gt;if (percorso == null) {&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;			&lt;/span&gt;throw new WebApplicationException(Response.Status.NOT_FOUND);&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;		&lt;/span&gt;}&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;		&lt;/span&gt;return percorso;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;}&lt;br /&gt;&lt;br /&gt;Saremo in grado di invocarlo all'indirizzo:&amp;nbsp;&lt;a href="http://localhost:8080/primetracks/rest/v1/percorsi/3"&gt;http://localhost:8080/primetracks/rest/v1/percorsi/3&lt;/a&gt;&amp;nbsp;e restituirà una risposta json del tipo:&lt;br /&gt;&amp;nbsp; &lt;br /&gt;&amp;nbsp;[{"id":3,"nome":"04-08-2011"}]&lt;br /&gt;&lt;br /&gt;Dato che la collezione di punti è stata annotata con&amp;nbsp;&lt;b&gt;@JsonIgnore i punti non verranno restituiti nel corpo della risposta.&lt;/b&gt;&lt;br /&gt;Conoscendo l'id del percorso andremo ad invocare un secondo metodo, che fornisce i punti che lo compongono:&lt;br /&gt;&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;b&gt; @GET&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;@Path("/{id:[0-9][0-9]*}/punti")&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;@Produces("application/json")&lt;/b&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;public List&amp;lt;Punto&amp;gt; getPuntiByPercorsoId(@PathParam("id") long id) {&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;		&lt;/span&gt;Percorso percorso = percorsiRepository.fetch(id);&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;		&lt;/span&gt;if (percorso == null) {&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;			&lt;/span&gt;throw new WebApplicationException(Response.Status.NOT_FOUND);&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;		&lt;/span&gt;}&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;		&lt;/span&gt;return percorso.getPunti();&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;}&lt;br /&gt;Che invocheremo all'indirizzo:&amp;nbsp;&lt;a href="http://localhost:8080/primetracks/rest/v1/percorsi/3/punti"&gt;http://localhost:8080/primetracks/rest/v1/percorsi/3/punti&lt;/a&gt;&amp;nbsp;e restituirà una risposta json del tipo:&lt;br /&gt;&lt;br /&gt;[{"id":130},&amp;nbsp;{"id":131}]&lt;br /&gt;&lt;br /&gt;Do notare come l'annotazione&amp;nbsp;&lt;b&gt;@XmlTransient&lt;/b&gt;&amp;nbsp;, svolge la stessa funzione nel caso si voglia mostrare il risultato in formato xml, usando&amp;nbsp;@Produces("text/xml") al posto &amp;nbsp;di&amp;nbsp;@Produces("application/json").&lt;br /&gt;&lt;br /&gt;Ultima nota, per usare l'annotazione&amp;nbsp;&lt;b&gt;@JsonIgnore va aggiunto in maven:&lt;/b&gt;&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;lt;dependency&amp;gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;			&lt;/span&gt;&lt;b&gt;&amp;lt;groupId&amp;gt;org.codehaus.jackson&amp;lt;/groupId&amp;gt;&lt;/b&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;			&lt;/span&gt;&amp;lt;artifactId&amp;gt;jackson-core-asl&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;			&lt;/span&gt;&amp;lt;version&amp;gt;1.6.3&amp;lt;/version&amp;gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;		&lt;/span&gt;&amp;lt;/dependency&amp;gt;&lt;br /&gt;Inoltre per usare a runtime questa libreria, presente tra i moduli di jboss7, va aggiunto nel META-INF/MANIFEST.MF:&lt;br /&gt;&lt;b&gt;Dependencies: org.codehaus.jackson.jackson-core-asl&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Provate!!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-959938566148508470?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/959938566148508470/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=959938566148508470' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/959938566148508470'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/959938566148508470'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2011/09/jboss7-creare-servizi-rest-json.html' title='jboss7: creare servizi rest - json'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-290847451231975922</id><published>2011-09-10T13:47:00.000-07:00</published><updated>2011-09-10T13:47:32.764-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='recover_deleted_files'/><title type='text'>recupero files eliminati</title><content type='html'>se vi capita di cancellare dei files per sbaglio, date un okkio qui:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://ubuntumanual.org/posts/357/recover-your-deleted-files-in-ubuntu"&gt;http://ubuntumanual.org/posts/357/recover-your-deleted-files-in-ubuntu&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;io non ci sono riuscito..e alla fine mi sono riscritto il codice perso...&lt;br /&gt;&lt;br /&gt;comunque provate questo:&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: white; color: #2e2f2d; font-family: Arial, Helvetica, sans-serif; font-size: 13px; line-height: 23px;"&gt;&lt;b style="color: #dc7420; text-decoration: none;"&gt;&lt;a href="http://en.wikipedia.org/wiki/PhotoRec" style="color: #dc7420; text-decoration: none;"&gt;Photorec&lt;/a&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: white; font-family: Arial, Helvetica, sans-serif; font-size: 13px; line-height: 23px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: white; font-family: Arial, Helvetica, sans-serif; font-size: 13px; line-height: 23px;"&gt;Scaricato il tar.gz, usate il comando:&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: white; line-height: 23px;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif; font-size: x-small;"&gt;./photorec_static&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: white; line-height: 23px;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif; font-size: x-small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: white; line-height: 23px;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif; font-size: x-small;"&gt;seguendo il wizard e l'artcioletto citato sopra, si riesce a lanciare il recupero che produce una serie di cartelline, da setacciare per recuperare il/i file perso/i. I files vengono ripristinati in ordine non ben definito nelle cartelline, e diventa difficila recuperare un file/un tipo di files...&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: white; line-height: 23px;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif; font-size: x-small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: white; line-height: 23px;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif; font-size: x-small;"&gt;andate di shell con qualche comando simile a questo (immaginate di avere nella cartella &lt;b&gt;test5&lt;/b&gt; il risultato del ripristino e di copiare i file .java in una cartella .java):&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif; font-size: x-small;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif; font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="background-color: white; line-height: 23px;"&gt;&lt;b&gt;find test5 -name \*.java -exec &amp;nbsp;cp {} test_java/ \;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: white; line-height: 23px;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif; font-size: x-small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif; font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="background-color: white; line-height: 23px;"&gt;in bocca al lupoo!&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-290847451231975922?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/290847451231975922/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=290847451231975922' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/290847451231975922'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/290847451231975922'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2011/09/recupero-files-eliminati.html' title='recupero files eliminati'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-2303619740883502356</id><published>2011-09-10T13:40:00.000-07:00</published><updated>2011-09-10T13:41:00.651-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='treeset'/><category scheme='http://www.blogger.com/atom/ns#' term='date_nearest'/><title type='text'>cercare data più vicina in una lista di date</title><content type='html'>Immaginate di avere una lista&amp;nbsp;ordinata&amp;nbsp;di date.&lt;br /&gt;Immaginate di dover trovare la data nella lista + vicina alla data proposta.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Utilizziamo un &lt;b&gt;TreeSet&lt;/b&gt; per le funzioni lower e higher (per trovare la data nella lista che la &lt;b&gt;precede&lt;/b&gt; e la data nella lista &lt;b&gt;successiva&lt;/b&gt;) e joda-time per calcolare gli intervalli tra le date&lt;/li&gt;&lt;li&gt;calcoliamo la distanza tra la data &amp;nbsp;proposta e le due date &lt;b&gt;precedente&lt;/b&gt; e &lt;b&gt;successivo&lt;/b&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;restituiamo come risultato la data che genera intervallo di minore durata.&lt;/b&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;b&gt;Ecco l'esempio intero...si capisce al volo.. [nel codice vanno gestite le eccezioni ...es. lista date vuota...]&lt;/b&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;package by.giava.mytrips.test;&lt;br /&gt;&lt;br /&gt;import java.text.ParseException;&lt;br /&gt;import java.text.SimpleDateFormat;&lt;br /&gt;import java.util.Date;&lt;br /&gt;import java.util.TreeSet;&lt;br /&gt;&lt;br /&gt;import org.joda.time.DateTime;&lt;br /&gt;import org.joda.time.Interval;&lt;br /&gt;&lt;br /&gt;public class DateTree {&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;private TreeSet&amp;lt;Date&amp;gt; treeset;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;public DateTree() {&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;		&lt;/span&gt;this.treeset = new TreeSet&amp;lt;Date&amp;gt;();&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;}&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;public void reset() {&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;		&lt;/span&gt;this.treeset = new TreeSet&amp;lt;Date&amp;gt;();&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;}&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;public void add(Date data) {&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;		&lt;/span&gt;getTreeset().add(data);&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;}&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;public TreeSet&amp;lt;Date&amp;gt; getTreeset() {&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;		&lt;/span&gt;return treeset;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;}&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;public void setTreeset(TreeSet&amp;lt;Date&amp;gt; treeset) {&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;		&lt;/span&gt;this.treeset = treeset;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;}&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;public Date nearest(Date data) {&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;		&lt;/span&gt;DateTime dataF = new DateTime(data);&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;		&lt;/span&gt;Date dataMin = getTreeset().lower(data);&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;		&lt;/span&gt;DateTime dataMinJ = new DateTime(dataMin);&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;		&lt;/span&gt;Date dataMax = getTreeset().higher(data);&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;		&lt;/span&gt;DateTime dataMaxJ = new DateTime(dataMax);&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;		&lt;/span&gt;Interval periodMin = new Interval(dataMinJ, dataF);&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;		&lt;/span&gt;Interval periodMax = new Interval(dataF, dataMaxJ);&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;		&lt;/span&gt;if (periodMin.toDurationMillis() &amp;lt;= periodMax.toDurationMillis()) {&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;			&lt;/span&gt;return dataMin;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;		&lt;/span&gt;} else {&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;			&lt;/span&gt;return dataMax;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;		&lt;/span&gt;}&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;}&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;public static void main(String[] args) throws ParseException {&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;		&lt;/span&gt;SimpleDateFormat form = new SimpleDateFormat("dd-MM-yyyy HH:mm:ss");&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;		&lt;/span&gt;DateTree dat = new DateTree();&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;		&lt;/span&gt;dat.add(form.parse("01-01-2011 10:30:00"));&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;		&lt;/span&gt;dat.add(form.parse("01-01-2011 10:50:00"));&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;		&lt;/span&gt;dat.add(form.parse("01-01-2011 11:00:00"));&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;		&lt;/span&gt;Date result = dat.nearest(form.parse("01-01-2011 10:56:00"));&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;		&lt;/span&gt;System.out.println(result);&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-2303619740883502356?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/2303619740883502356/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=2303619740883502356' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/2303619740883502356'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/2303619740883502356'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2011/09/cercare-data-piu-vicina-in-una-lista-di.html' title='cercare data più vicina in una lista di date'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-2832102775361288006</id><published>2011-08-29T17:17:00.001-07:00</published><updated>2011-08-29T17:17:20.877-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='sitemap'/><title type='text'>creare una sitemap senza troppo penare</title><content type='html'>Dopo aver girato e rigirato ho trovato un tool giavoso:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.auditmypc.com/xml-sitemap.asp"&gt;http://www.auditmypc.com/xml-sitemap.asp&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Funziona e ci fa anche vedere gli url inesistenti!!&lt;br /&gt;&lt;br /&gt;Da provare..&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-2832102775361288006?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/2832102775361288006/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=2832102775361288006' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/2832102775361288006'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/2832102775361288006'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2011/08/creare-una-sitemap-senza-troppo-penare.html' title='creare una sitemap senza troppo penare'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-8529574061255454894</id><published>2011-08-28T13:23:00.000-07:00</published><updated>2011-08-28T13:23:33.782-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='solr'/><category scheme='http://www.blogger.com/atom/ns#' term='crawl-anywhere'/><category scheme='http://www.blogger.com/atom/ns#' term='crawler'/><title type='text'>come creare un motore di ricerca interno al sito...in google style</title><content type='html'>immaginate di avere un sito complesso, con tante sezioni e con tante fonti informative (tante tabelline con contenuti tipizzati) e una serie di pagine statiche da indicizzare..&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Creare un meccanismo di ricerca globale, potrebbe essere una soluzione fattibile...ma utilizzare quello che si trova in giro, potrebbe essere + sensato!!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Consiglio (dopo averlo provato su macchina virtuale..):&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.crawl-anywhere.com/"&gt;http://www.crawl-anywhere.com/&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;In breve:&lt;/div&gt;&lt;div&gt;- necessita di apache, tomcat (per il crawler e motorino di ricerca), solr per indicizzazione dei contenuti e interfaccia per query.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Si installa facilmente...&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Buona ricerca integrata!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;links utili:&lt;/div&gt;&lt;div&gt;&lt;a href="http://lucene.apache.org/solr/"&gt;http://lucene.apache.org/solr/&lt;/a&gt;&lt;/div&gt;&lt;div&gt;ajax + solr&lt;/div&gt;&lt;div&gt;&lt;a href="https://github.com/evolvingweb/ajax-solr/wiki/reuters-tutorial"&gt;https://github.com/evolvingweb/ajax-solr/wiki/reuters-tutorial&lt;/a&gt;&lt;/div&gt;&lt;div&gt;tutorial solr:&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.ibm.com/developerworks/java/library/j-solr1/"&gt;http://www.ibm.com/developerworks/java/library/j-solr1/&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://java.dzone.com/articles/apache-solr-get-started-get"&gt;http://java.dzone.com/articles/apache-solr-get-started-get&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;esempio di commercializzazione del prodotto...&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.mysolrserver.com/"&gt;http://www.mysolrserver.com/&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-8529574061255454894?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/8529574061255454894/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=8529574061255454894' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/8529574061255454894'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/8529574061255454894'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2011/08/come-creare-un-motore-di-ricerca.html' title='come creare un motore di ricerca interno al sito...in google style'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-192664970354295712</id><published>2011-08-17T07:46:00.000-07:00</published><updated>2011-08-17T07:46:10.312-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='jboss7'/><category scheme='http://www.blogger.com/atom/ns#' term='migration'/><title type='text'>jboss7 JSF error after AS6 to AS7 migration: java.lang.ClassNotFoundException: sun.util.calendar.ZoneInfo</title><content type='html'>vedi questo post:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://community.jboss.org/thread/169938?tstart=0"&gt;http://community.jboss.org/thread/169938?tstart=0&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-192664970354295712?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/192664970354295712/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=192664970354295712' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/192664970354295712'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/192664970354295712'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2011/08/jboss7-jsf-error-after-as6-to-as7.html' title='jboss7 JSF error after AS6 to AS7 migration: java.lang.ClassNotFoundException: sun.util.calendar.ZoneInfo'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-5613609107072951277</id><published>2011-08-17T03:10:00.000-07:00</published><updated>2012-02-12T16:26:45.972-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='jboss7'/><title type='text'>jboss7: aggiungere le dipendenze nel manifest del war/jar con maven</title><content type='html'>&lt;br /&gt;come suggerito da Shane Bryzak,&lt;br /&gt;&lt;br /&gt;nella seam-dev mailL:&lt;br /&gt;&lt;br /&gt;per aggiungere jboss-logging in AS7 va aggiunto nel file manifest (META-INF/MANIFEST.MF) del ns war/jar:&lt;br /&gt;&lt;br /&gt;Dependencies: org.jboss.logging,org.jboss.logmanager&lt;br /&gt;&lt;br /&gt;E' possibile usare "manifestEntries" di maven per automatizzare la scrittura nel file:&lt;br /&gt;&lt;br /&gt;&amp;lt;build&amp;gt;&lt;br /&gt;&amp;lt;finalName&amp;gt;seam-university&amp;lt;/finalName&amp;gt;&lt;br /&gt;&amp;lt;plugins&amp;gt;&lt;br /&gt;&amp;lt;plugin&amp;gt;&lt;br /&gt;&amp;lt;groupId&amp;gt;org.apache.maven.plugins&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;lt;artifactId&amp;gt;maven-war-plugin&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;lt;configuration&amp;gt;&lt;br /&gt;&amp;lt;failOnMissingWebXml&amp;gt;false&amp;lt;/failOnMissingWebXml&amp;gt;&lt;br /&gt;&amp;lt;archive&amp;gt;&lt;br /&gt;&amp;lt;manifestEntries&amp;gt;&lt;br /&gt;&amp;lt;Dependencies&amp;gt;org.slf4j.impl,org.jboss.logging,org.jboss.logmanager&amp;lt;/Dependencies&amp;gt;&lt;br /&gt;&amp;lt;/manifestEntries&amp;gt;&lt;br /&gt;&amp;lt;/archive&amp;gt;&lt;br /&gt;&amp;lt;/configuration&amp;gt;&lt;br /&gt;&amp;lt;/plugin&amp;gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-5613609107072951277?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/5613609107072951277/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=5613609107072951277' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/5613609107072951277'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/5613609107072951277'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2011/08/jboss7-aggiungere-le-dipendenze-nel.html' title='jboss7: aggiungere le dipendenze nel manifest del war/jar con maven'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-5698511371545549593</id><published>2011-08-15T14:59:00.000-07:00</published><updated>2011-08-15T14:59:03.242-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='jboss7'/><category scheme='http://www.blogger.com/atom/ns#' term='listening_any_address'/><title type='text'>jboss7: rendere il sever accessibile non solo da localhost</title><content type='html'>&lt;br /&gt;per fare ascoltare jboss7 non soltanto su 127.0.0.1:&lt;br /&gt;&lt;br /&gt;http://community.jboss.org/thread/168789?tstart=120&lt;br /&gt;&lt;br /&gt;ecco qui le modifiche da fare su standalone.xml:&lt;br /&gt;&lt;br /&gt;&amp;lt;interfaces&amp;gt;&lt;br /&gt;        &amp;lt;interface name=&amp;quot;management&amp;quot;&amp;gt;&lt;br /&gt;            &amp;lt;inet-address value=&amp;quot;127.0.0.1&amp;quot;/&amp;gt;&lt;br /&gt;        &amp;lt;/interface&amp;gt;&lt;br /&gt;        &amp;lt;interface name=&amp;quot;public&amp;quot;&amp;gt;&lt;br /&gt;            &amp;lt;inet-address value=&amp;quot;127.0.0.1&amp;quot;/&amp;gt;&lt;br /&gt;        &amp;lt;/interface&amp;gt;&lt;br /&gt;&lt;br /&gt;        &amp;lt;!-- IPv4 --&amp;gt;&lt;br /&gt;        &amp;lt;interface name=&amp;quot;any&amp;quot;&amp;gt;&lt;br /&gt;            &amp;lt;any-ipv4-address/&amp;gt;&lt;br /&gt;        &amp;lt;/interface&amp;gt;&lt;br /&gt;    &amp;lt;/interfaces&amp;gt;&lt;br /&gt;&lt;br /&gt;   &amp;lt;!-- Use the any interface --&amp;gt;&lt;br /&gt;    &amp;lt;socket-binding-group name=&amp;quot;standard-sockets&amp;quot; default-interface=&amp;quot;any&amp;quot;&amp;gt;&lt;br /&gt;        &amp;lt;socket-binding name=&amp;quot;http&amp;quot; port=&amp;quot;8080&amp;quot;/&amp;gt;&lt;br /&gt;        &amp;lt;socket-binding name=&amp;quot;https&amp;quot; port=&amp;quot;8443&amp;quot;/&amp;gt;&lt;br /&gt;        &amp;lt;socket-binding name=&amp;quot;jmx-connector-registry&amp;quot; port=&amp;quot;1090&amp;quot;/&amp;gt;&lt;br /&gt;        &amp;lt;socket-binding name=&amp;quot;jmx-connector-server&amp;quot; port=&amp;quot;1091&amp;quot;/&amp;gt;&lt;br /&gt;        &amp;lt;socket-binding name=&amp;quot;jndi&amp;quot; port=&amp;quot;1099&amp;quot;/&amp;gt;&lt;br /&gt;        &amp;lt;socket-binding name=&amp;quot;osgi-http&amp;quot; port=&amp;quot;8090&amp;quot;/&amp;gt;&lt;br /&gt;        &amp;lt;socket-binding name=&amp;quot;remoting&amp;quot; port=&amp;quot;4447&amp;quot;/&amp;gt;&lt;br /&gt;        &amp;lt;socket-binding name=&amp;quot;txn-recovery-environment&amp;quot; port=&amp;quot;4712&amp;quot;/&amp;gt;&lt;br /&gt;        &amp;lt;socket-binding name=&amp;quot;txn-status-manager&amp;quot; port=&amp;quot;4713&amp;quot;/&amp;gt;&lt;br /&gt;    &amp;lt;/socket-binding-group&amp;gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-5698511371545549593?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/5698511371545549593/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=5698511371545549593' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/5698511371545549593'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/5698511371545549593'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2011/08/jboss7-rendere-il-sever-accessibile-non.html' title='jboss7: rendere il sever accessibile non solo da localhost'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-5173011235586202728</id><published>2011-08-15T14:54:00.000-07:00</published><updated>2011-08-15T14:54:54.238-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='jboss7'/><category scheme='http://www.blogger.com/atom/ns#' term='logging'/><title type='text'>jboss7: alziamo il livello del log a INFO</title><content type='html'>seguendo la guida:&lt;br /&gt;&lt;br /&gt;https://docs.jboss.org/author/display/AS7/Logging+configuration&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;per visualizzare qualche info in +, alziamo il livello del log:&lt;br /&gt;&lt;br /&gt;&amp;lt;subsystem xmlns=&amp;quot;urn:jboss:domain:logging:1.1&amp;quot;&amp;gt;&lt;br /&gt;            &amp;lt;console-handler name=&amp;quot;CONSOLE&amp;quot; autoflush=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;                &amp;lt;level name=&amp;quot;INFO&amp;quot;/&amp;gt;&lt;br /&gt;                &amp;lt;formatter&amp;gt;&lt;br /&gt;                    &amp;lt;pattern-formatter pattern=&amp;quot;%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%E%n&amp;quot;/&amp;gt;&lt;br /&gt;                &amp;lt;/formatter&amp;gt;&lt;br /&gt;            &amp;lt;/console-handler&amp;gt;&lt;br /&gt;            &amp;lt;periodic-rotating-file-handler name=&amp;quot;FILE&amp;quot; autoflush=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;                &amp;lt;level name=&amp;quot;INFO&amp;quot;/&amp;gt;&lt;br /&gt;                &amp;lt;formatter&amp;gt;&lt;br /&gt;                    &amp;lt;pattern-formatter pattern=&amp;quot;%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%E%n&amp;quot;/&amp;gt;&lt;br /&gt;                &amp;lt;/formatter&amp;gt;&lt;br /&gt;                &amp;lt;file relative-to=&amp;quot;jboss.server.log.dir&amp;quot; path=&amp;quot;server.log&amp;quot;/&amp;gt;&lt;br /&gt;                &amp;lt;suffix value=&amp;quot;.yyyy-MM-dd&amp;quot;/&amp;gt;&lt;br /&gt;                &amp;lt;append value=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;            &amp;lt;/periodic-rotating-file-handler&amp;gt;&lt;br /&gt;            &amp;lt;logger category=&amp;quot;com.arjuna&amp;quot;&amp;gt;&lt;br /&gt;                &amp;lt;level name=&amp;quot;WARN&amp;quot;/&amp;gt;&lt;br /&gt;            &amp;lt;/logger&amp;gt;&lt;br /&gt;            &amp;lt;logger category=&amp;quot;org.apache.tomcat.util.modeler&amp;quot;&amp;gt;&lt;br /&gt;                &amp;lt;level name=&amp;quot;WARN&amp;quot;/&amp;gt;&lt;br /&gt;            &amp;lt;/logger&amp;gt;&lt;br /&gt;            &amp;lt;logger category=&amp;quot;sun.rmi&amp;quot;&amp;gt;&lt;br /&gt;                &amp;lt;level name=&amp;quot;WARN&amp;quot;/&amp;gt;&lt;br /&gt;            &amp;lt;/logger&amp;gt;&lt;br /&gt;            &amp;lt;root-logger&amp;gt;&lt;br /&gt;                &amp;lt;level name=&amp;quot;INFO&amp;quot;/&amp;gt;&lt;br /&gt;                &amp;lt;handlers&amp;gt;&lt;br /&gt;                    &amp;lt;handler name=&amp;quot;CONSOLE&amp;quot;/&amp;gt;&lt;br /&gt;                    &amp;lt;handler name=&amp;quot;FILE&amp;quot;/&amp;gt;&lt;br /&gt;                &amp;lt;/handlers&amp;gt;&lt;br /&gt;            &amp;lt;/root-logger&amp;gt;&lt;br /&gt;        &amp;lt;/subsystem&amp;gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-5173011235586202728?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/5173011235586202728/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=5173011235586202728' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/5173011235586202728'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/5173011235586202728'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2011/08/jboss7-alziamo-il-livello-del-log-info.html' title='jboss7: alziamo il livello del log a INFO'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-2324212564849751201</id><published>2011-08-15T14:37:00.000-07:00</published><updated>2011-08-15T14:37:42.391-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='jboss7'/><category scheme='http://www.blogger.com/atom/ns#' term='security_domains'/><category scheme='http://www.blogger.com/atom/ns#' term='jaas'/><title type='text'>jboss7: domini sicurezza usando pagina login jsf</title><content type='html'>In jboss7 è possibile utilizzare una pagina jsf come pagina di login:&lt;br /&gt;&lt;br /&gt;&amp;lt;login-config&amp;gt;&lt;br /&gt;		&amp;lt;auth-method&amp;gt;FORM&amp;lt;/auth-method&amp;gt;&lt;br /&gt;		&amp;lt;realm-name&amp;gt;Login&amp;lt;/realm-name&amp;gt;&lt;br /&gt;		&amp;lt;form-login-config&amp;gt;&lt;br /&gt;			&amp;lt;form-login-page&amp;gt;/login.jsf&amp;lt;/form-login-page&amp;gt;&lt;br /&gt;			&amp;lt;form-error-page&amp;gt;/login.jsf&amp;lt;/form-error-page&amp;gt;&lt;br /&gt;		&amp;lt;/form-login-config&amp;gt;&lt;br /&gt;	&amp;lt;/login-config&amp;gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-2324212564849751201?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/2324212564849751201/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=2324212564849751201' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/2324212564849751201'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/2324212564849751201'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2011/08/jboss7-domini-sicurezza-usando-pagina.html' title='jboss7: domini sicurezza usando pagina login jsf'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-6101096163575382469</id><published>2011-08-15T13:42:00.000-07:00</published><updated>2011-08-15T14:21:21.054-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='jboss7'/><category scheme='http://www.blogger.com/atom/ns#' term='security_domains'/><category scheme='http://www.blogger.com/atom/ns#' term='jaas'/><title type='text'>jboss7: domini sicurezza usando database</title><content type='html'>Uno dei jaas "classici" è l'uso del database per autenticazione/autorizzazione. &lt;br /&gt;istruzioni veloci per l'uso: &lt;br /&gt;&lt;br /&gt;1) tabelle su database (schema ultra semplificato non consigliabile in produzione - usare 3 tabelle - utenti [id, username, pwd], ruoli[id, ruolo], utenti_ruoli[id, id_utente, id_ruolo]): &lt;br /&gt;CREATE TABLE IF NOT EXISTS `user_auth` ( &lt;br /&gt;`USERNAME` varchar(100) NOT NULL DEFAULT '', &lt;br /&gt;`PASSWORD` varchar(100) DEFAULT NULL, &lt;br /&gt;`EMAIL` varchar(200) CHARACTER SET latin1 NOT NULL, &lt;br /&gt;PRIMARY KEY (`USERNAME`) &lt;br /&gt;) ENGINE=MyISAM DEFAULT CHARSET=utf8; &lt;br /&gt;&lt;br /&gt;CREATE TABLE IF NOT EXISTS `user_role` ( &lt;br /&gt;`ID` int(11) NOT NULL AUTO_INCREMENT, &lt;br /&gt;`ROLE_NAME` varchar(100) DEFAULT NULL, &lt;br /&gt;`USERNAME` varchar(100) DEFAULT NULL, &lt;br /&gt;PRIMARY KEY (`ID`) &lt;br /&gt;) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=122 ; &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;2) inserire dei dati di prova (utente fiorenzino con pwd '12345678' e ruolo admin): &lt;br /&gt;INSERT INTO `user_auth` (`USERNAME`, `PASSWORD`, `EMAIL`) VALUES &lt;br /&gt;('fiorenzino', 'JdVa0oOqQAr0ZMdtcTwHrQ==', 'fiorenzino@gmail.com'); &lt;br /&gt;&lt;br /&gt;INSERT INTO `user_role` (`ROLE_NAME`, `USERNAME`) VALUES &lt;br /&gt;('admin', 'fiorenzino'); &lt;br /&gt;&lt;br /&gt;3) creare un datasource nel file standalone.xml (si presume che ci sia già un modulo con i driver mysql): &lt;br /&gt;&lt;div&gt;&amp;lt;subsystem xmlns=&amp;quot;urn:jboss:domain:datasources:1.0&amp;quot;&amp;gt;&lt;br /&gt;            &amp;lt;datasources&amp;gt;&lt;br /&gt;                &amp;lt;datasource jndi-name=&amp;quot;java:jboss/datasources/GiavaByDS&amp;quot; pool-name=&amp;quot;GiavaByDS_Pool&amp;quot; enabled=&amp;quot;true&amp;quot; jta=&amp;quot;true&amp;quot; use-java-context=&amp;quot;true&amp;quot; use-ccm=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;                    &amp;lt;connection-url&amp;gt;&lt;br /&gt;                        jdbc:mysql://localhost:3306/bygiava&lt;br /&gt;                    &amp;lt;/connection-url&amp;gt;&lt;br /&gt;                    &amp;lt;driver-class&amp;gt;&lt;br /&gt;                        com.mysql.jdbc.Driver&lt;br /&gt;                    &amp;lt;/driver-class&amp;gt;&lt;br /&gt;                    &amp;lt;driver&amp;gt;&lt;br /&gt;                        mysql&lt;br /&gt;                    &amp;lt;/driver&amp;gt;&lt;br /&gt;                    &amp;lt;pool&amp;gt;&lt;br /&gt;                        &amp;lt;min-pool-size&amp;gt;&lt;br /&gt;                            2&lt;br /&gt;                        &amp;lt;/min-pool-size&amp;gt;&lt;br /&gt;                        &amp;lt;max-pool-size&amp;gt;&lt;br /&gt;                            30&lt;br /&gt;                        &amp;lt;/max-pool-size&amp;gt;&lt;br /&gt;                        &amp;lt;prefill&amp;gt;&lt;br /&gt;                            true&lt;br /&gt;                        &amp;lt;/prefill&amp;gt;&lt;br /&gt;                        &amp;lt;use-strict-min&amp;gt;&lt;br /&gt;                            false&lt;br /&gt;                        &amp;lt;/use-strict-min&amp;gt;&lt;br /&gt;                        &amp;lt;flush-strategy&amp;gt;&lt;br /&gt;                            FailingConnectionOnly&lt;br /&gt;                        &amp;lt;/flush-strategy&amp;gt;&lt;br /&gt;                    &amp;lt;/pool&amp;gt;&lt;br /&gt;                    &amp;lt;security&amp;gt;&lt;br /&gt;                        &amp;lt;user-name&amp;gt;&lt;br /&gt;                            bygiava&lt;br /&gt;                        &amp;lt;/user-name&amp;gt;&lt;br /&gt;                        &amp;lt;password&amp;gt;&lt;br /&gt;                            bygiava&lt;br /&gt;                        &amp;lt;/password&amp;gt;&lt;br /&gt;                    &amp;lt;/security&amp;gt;&lt;br /&gt;                    &amp;lt;validation&amp;gt;&lt;br /&gt;                        &amp;lt;validate-on-match&amp;gt;&lt;br /&gt;                            false&lt;br /&gt;                        &amp;lt;/validate-on-match&amp;gt;&lt;br /&gt;                        &amp;lt;background-validation&amp;gt;&lt;br /&gt;                            false&lt;br /&gt;                        &amp;lt;/background-validation&amp;gt;&lt;br /&gt;                        &amp;lt;use-fast-fail&amp;gt;&lt;br /&gt;                            false&lt;br /&gt;                        &amp;lt;/use-fast-fail&amp;gt;&lt;br /&gt;                    &amp;lt;/validation&amp;gt;&lt;br /&gt;                    &amp;lt;statement&amp;gt;&lt;br /&gt;                        &amp;lt;prepared-statement-cache-size&amp;gt;&lt;br /&gt;                            100&lt;br /&gt;                        &amp;lt;/prepared-statement-cache-size&amp;gt;&lt;br /&gt;                        &amp;lt;share-prepared-statements/&amp;gt;&lt;br /&gt;                    &amp;lt;/statement&amp;gt;&lt;br /&gt;                &amp;lt;/datasource&amp;gt;&lt;br /&gt;                &amp;lt;drivers&amp;gt;&lt;br /&gt;                    &amp;lt;driver name=&amp;quot;mysql&amp;quot; module=&amp;quot;com.mysql&amp;quot;/&amp;gt;&lt;br /&gt;                &amp;lt;/drivers&amp;gt;&lt;br /&gt;            &amp;lt;/datasources&amp;gt;&lt;br /&gt;        &amp;lt;/subsystem&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;4) creare il dominio di sicurezza che valida username e pwd usando il datasource e carica i ruoli per l'utente loggato (in grassetto le query per verifica username/pwd e caricamento ruoli):&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&amp;lt;subsystem xmlns=&amp;quot;urn:jboss:domain:security:1.0&amp;quot;&amp;gt;&lt;br /&gt;            &amp;lt;security-domains&amp;gt;&lt;br /&gt;                &amp;lt;security-domain name=&amp;quot;giavaby&amp;quot;&amp;gt;&lt;br /&gt;                    &amp;lt;authentication&amp;gt;&lt;br /&gt;                        &amp;lt;login-module code=&amp;quot;Database&amp;quot; flag=&amp;quot;required&amp;quot;&amp;gt;&lt;br /&gt;                            &amp;lt;module-option name=&amp;quot;dsJndiName&amp;quot; value=&amp;quot;java:jboss/datasources/GiavaByDS&amp;quot;/&amp;gt;&lt;br /&gt;                            &amp;lt;module-option name=&amp;quot;principalsQuery&amp;quot; value=&amp;quot;select password from user_auth where username=?&amp;quot;/&amp;gt;&lt;br /&gt;                            &amp;lt;module-option name=&amp;quot;rolesQuery&amp;quot; value=&amp;quot;SELECT B.ROLE_NAME,&amp;#039;Roles&amp;#039; FROM user_role as B where B.username = ?&amp;quot;/&amp;gt;&lt;br /&gt;                            &amp;lt;module-option name=&amp;quot;hashAlgorithm&amp;quot; value=&amp;quot;MD5&amp;quot;/&amp;gt;&lt;br /&gt;                            &amp;lt;module-option name=&amp;quot;hashEncoding&amp;quot; value=&amp;quot;BASE64&amp;quot;/&amp;gt;&lt;br /&gt;                        &amp;lt;/login-module&amp;gt;&lt;br /&gt;                    &amp;lt;/authentication&amp;gt;&lt;br /&gt;                &amp;lt;/security-domain&amp;gt;&lt;br /&gt;	   &amp;lt;/security-domains&amp;gt;&lt;br /&gt;  &amp;lt;/subsystem&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;Notare come basta indicare  &lt;b&gt;code="Database"&lt;/b&gt;, piuttosto che indicare la classe &lt;b&gt;org.jboss.security.auth.spi.DatabaseServerLoginModule&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt; &lt;br /&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;5) creare un war con WEB-INF/web.xml contentente:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&amp;lt;security-constraint&amp;gt;&lt;br /&gt;		&amp;lt;web-resource-collection&amp;gt;&lt;br /&gt;			&amp;lt;web-resource-name&amp;gt;web autentication&amp;lt;/web-resource-name&amp;gt;&lt;br /&gt;			&amp;lt;description&amp;gt;An example security config &amp;lt;/description&amp;gt;&lt;br /&gt;			&amp;lt;url-pattern&amp;gt;/private/*&amp;lt;/url-pattern&amp;gt;&lt;br /&gt;		&amp;lt;/web-resource-collection&amp;gt;&lt;br /&gt;		&amp;lt;auth-constraint&amp;gt;&lt;br /&gt;			&amp;lt;role-name&amp;gt;admin&amp;lt;/role-name&amp;gt;&lt;br /&gt;		&amp;lt;/auth-constraint&amp;gt;&lt;br /&gt;	&amp;lt;/security-constraint&amp;gt;&lt;br /&gt;&lt;br /&gt;	&amp;lt;login-config&amp;gt;&lt;br /&gt;		&amp;lt;auth-method&amp;gt;FORM&amp;lt;/auth-method&amp;gt;&lt;br /&gt;		&amp;lt;realm-name&amp;gt;Login&amp;lt;/realm-name&amp;gt;&lt;br /&gt;		&amp;lt;form-login-config&amp;gt;&lt;br /&gt;			&amp;lt;form-login-page&amp;gt;/login.jsp&amp;lt;/form-login-page&amp;gt;&lt;br /&gt;			&amp;lt;form-error-page&amp;gt;/login.jsp&amp;lt;/form-error-page&amp;gt;&lt;br /&gt;		&amp;lt;/form-login-config&amp;gt;&lt;br /&gt;	&amp;lt;/login-config&amp;gt;&lt;br /&gt;&lt;br /&gt;	&amp;lt;security-role&amp;gt;&lt;br /&gt;		&amp;lt;role-name&amp;gt;admin&amp;lt;/role-name&amp;gt;&lt;br /&gt;	&amp;lt;/security-role&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;6) aggiungere il file WEB-INF/jboss-web.xml :&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&amp;lt;?xml version=&amp;#039;1.0&amp;#039; encoding=&amp;#039;UTF-8&amp;#039;?&amp;gt;&lt;br /&gt;&amp;lt;jboss-web&amp;gt;&lt;br /&gt;	&amp;lt;security-domain&amp;gt;giavaby&amp;lt;/security-domain&amp;gt;&lt;br /&gt;&amp;lt;/jboss-web&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;7) la pagina di login.jsp manda su pagina html contenente:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&amp;lt;form action=&amp;quot;j_security_check&amp;quot; method=&amp;quot;post&amp;quot;&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;		&amp;lt;label for=&amp;quot;j_username&amp;quot;&amp;gt;username:&amp;lt;/label&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;		&amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;j_username&amp;quot; name=&amp;quot;j_username&amp;quot; /&amp;gt; &amp;lt;br /&amp;gt;&lt;br /&gt;		&amp;lt;br /&amp;gt;&lt;br /&gt;		&amp;lt;br /&amp;gt;&lt;br /&gt;		&amp;lt;label for=&amp;quot;j_password&amp;quot;&amp;gt;password:&amp;lt;/label&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;		&amp;lt;input type=&amp;quot;password&amp;quot; id=&amp;quot;j_password&amp;quot; name=&amp;quot;j_password&amp;quot; /&amp;gt; &amp;lt;br /&amp;gt;&lt;br /&gt;		&amp;lt;br /&amp;gt;&lt;br /&gt;		&amp;lt;input type=&amp;quot;submit&amp;quot; value=&amp;quot;accedi&amp;quot; /&amp;gt;&lt;br /&gt;&amp;lt;/form&amp;gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;8) provate ad accedere ad una risorsa nella cartella private/, verrete indirizzati alla pagina di login.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;provare...&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-6101096163575382469?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/6101096163575382469/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=6101096163575382469' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/6101096163575382469'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/6101096163575382469'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2011/08/jboss7-domini-sicurezza-usando-database.html' title='jboss7: domini sicurezza usando database'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-6861339840573290976</id><published>2011-08-12T05:27:00.000-07:00</published><updated>2011-08-12T05:35:51.664-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ubutntu'/><category scheme='http://www.blogger.com/atom/ns#' term='google_docs'/><title type='text'>google docs in nautilus - ubuntu</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/-zjaWFwHouZE/TkUd2NB-wJI/AAAAAAAAE6I/RwqG3dcC_nw/s1600/Schermata-nautilus-scripts%2B-%2BEsplorazione%2Bfile.png"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 320px; height: 146px;" src="http://2.bp.blogspot.com/-zjaWFwHouZE/TkUd2NB-wJI/AAAAAAAAE6I/RwqG3dcC_nw/s320/Schermata-nautilus-scripts%2B-%2BEsplorazione%2Bfile.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5639946925399523474" /&gt;&lt;/a&gt;&lt;br /&gt;scaricare http://code.google.com/p/nautilus-gdoc/downloads/list il file zippato:&lt;br /&gt;nautilus-gdoc.tar.gz&lt;br /&gt;&lt;br /&gt;estrarre il file SendToGDoc e copiarlo nella cartella .gnome2/nautilus-scripts contenuta nella propria home:&lt;br /&gt;/home/{USER}/.gnome2/nautilus-scripts&lt;br /&gt;&lt;br /&gt;installare le librerie python per google data:&lt;br /&gt;sudo apt-get install python-gdata&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;aprire il file:&lt;br /&gt;sudo vim /usr/share/pyshared/gdata/docs/service.py&lt;br /&gt;&lt;br /&gt;ed aggiungere il tipo di files PDF ai SUPPORTED_FILETYPES (estratto dal file):&lt;br /&gt;&lt;br /&gt;# File extensions of documents that are permitted to be uploaded.&lt;br /&gt;SUPPORTED_FILETYPES = {&lt;br /&gt;  'CSV': 'text/csv',&lt;br /&gt;  'TSV': 'text/tab-separated-values',&lt;br /&gt;  'TAB': 'text/tab-separated-values',&lt;br /&gt;  'DOC': 'application/msword',&lt;br /&gt;  'ODS': 'application/x-vnd.oasis.opendocument.spreadsheet',&lt;br /&gt;  'ODT': 'application/vnd.oasis.opendocument.text',&lt;br /&gt;  'RTF': 'application/rtf',&lt;br /&gt;  'SXW': 'application/vnd.sun.xml.writer',&lt;br /&gt;  'TXT': 'text/plain',&lt;br /&gt;  'XLS': 'application/vnd.ms-excel',&lt;br /&gt;  'PPT': 'application/vnd.ms-powerpoint',&lt;br /&gt;  'PPS': 'application/vnd.ms-powerpoint',&lt;br /&gt;  'HTM': 'text/html',&lt;br /&gt;  'HTML' : 'text/html',&lt;br /&gt;  'PDF': 'application/pdf'}&lt;br /&gt;&lt;br /&gt;a questo punto riavviare nautilus!&lt;br /&gt;&lt;br /&gt;facendo tasto dx sul file da trasferire  nella voce "script -&gt; Send to Gdoc". come nella immagine allegata!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-6861339840573290976?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/6861339840573290976/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=6861339840573290976' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/6861339840573290976'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/6861339840573290976'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2011/08/google-docs-in-nautilus-ubuntu.html' title='google docs in nautilus - ubuntu'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-zjaWFwHouZE/TkUd2NB-wJI/AAAAAAAAE6I/RwqG3dcC_nw/s72-c/Schermata-nautilus-scripts%2B-%2BEsplorazione%2Bfile.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-6574122555719938363</id><published>2011-08-09T01:34:00.001-07:00</published><updated>2011-08-09T01:34:32.583-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='jboss7'/><title type='text'>Jboss7: domini sicurezza con valvole</title><content type='html'>&lt;div&gt;&lt;p&gt;Nuovo wiki su dichiarazione valve in jboss-web.&lt;/p&gt;&lt;p&gt; &lt;a href="http://community.jboss.org/wiki/JBossAS7SecurityDomainModel"&gt;http://community.jboss.org/wiki/JBossAS7SecurityDomainModel&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-6574122555719938363?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/6574122555719938363/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=6574122555719938363' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/6574122555719938363'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/6574122555719938363'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2011/08/jboss7-domini-sicurezza-con-valvole.html' title='Jboss7: domini sicurezza con valvole'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-4607946588988787302</id><published>2011-08-08T17:05:00.000-07:00</published><updated>2011-08-08T17:39:56.329-07:00</updated><title type='text'>java login oauth</title><content type='html'>http://blog.enterpriselab.ch/tdmarti/2011/04/06/openid-in-a-web-application-based-on-java-ee-and-jsf-2-0/&lt;br /&gt;&lt;br /&gt;http://www.richardnichols.net/2010/06/implementing-facebook-oauth-2-0-authentication-in-java/&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;http://t-machine.org/index.php/2007/08/13/how-to-make-facebook-apps-using-java-part-2/&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;http://code.google.com/p/socialauth/source/checkout&lt;br /&gt;&lt;br /&gt;http://www.9lessons.info/2011/07/login-with-google-account.html&lt;br /&gt;&lt;br /&gt;http://www.9lessons.info/2011/02/login-with-facebook-and-twitter.html&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-4607946588988787302?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/4607946588988787302/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=4607946588988787302' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/4607946588988787302'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/4607946588988787302'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2011/08/java-login-oauth.html' title='java login oauth'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-3050172521508055177</id><published>2011-08-01T16:14:00.000-07:00</published><updated>2011-08-01T16:46:37.618-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='picasa'/><category scheme='http://www.blogger.com/atom/ns#' term='maven'/><title type='text'>Picasa Web Albums Data API maven</title><content type='html'>utilissimo per usare le api di google, nello specifico con picasa:&lt;br /&gt;&lt;br /&gt;http://code.google.com/p/mandubian-mvn/wiki/HowTo&lt;br /&gt;&lt;br /&gt;http://code.google.com/p/mandubian-mvn/wiki/AvailableVersions&lt;br /&gt;&lt;br /&gt;&lt;repositories&gt;&lt;br /&gt;  &lt;repository&gt;&lt;br /&gt;   &lt;id&gt;mandubian-mvn&lt;/id&gt;&lt;br /&gt;   &lt;url&gt;http://mandubian-mvn.googlecode.com/svn/trunk/mandubian-mvn/repository&lt;/url&gt;&lt;br /&gt;  &lt;/repository&gt;&lt;br /&gt; &lt;/repositories&gt;&lt;br /&gt; &lt;dependencies&gt;&lt;br /&gt;&lt;!-- nel maven central repo --&gt;&lt;br /&gt;  &lt;dependency&gt;&lt;br /&gt;   &lt;groupId&gt;com.google.api.client&lt;/groupId&gt;&lt;br /&gt;   &lt;artifactId&gt;google-api-client&lt;/artifactId&gt;&lt;br /&gt;   &lt;version&gt;1.4.1-beta&lt;/version&gt;&lt;br /&gt;  &lt;/dependency&gt;&lt;br /&gt;&lt;!-- nel mandubian maven repo --&gt;&lt;br /&gt;  &lt;dependency&gt;&lt;br /&gt;   &lt;groupId&gt;com.google.gdata&lt;/groupId&gt;&lt;br /&gt;   &lt;artifactId&gt;gdata-photos-2.0&lt;/artifactId&gt;&lt;br /&gt;   &lt;version&gt;1.41.5&lt;/version&gt;&lt;br /&gt;  &lt;/dependency&gt;&lt;br /&gt;&lt;br /&gt; &lt;/dependencies&gt;&lt;br /&gt;&lt;br /&gt;http://rat86.netsons.org/blog/2008/05/creare-una-galleria-sul-proprio-sito-da-picasa-con-pwajs/&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-3050172521508055177?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/3050172521508055177/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=3050172521508055177' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/3050172521508055177'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/3050172521508055177'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2011/08/picasa-web-albums-data-api-maven.html' title='Picasa Web Albums Data API maven'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-1668729302199756356</id><published>2011-08-01T15:29:00.002-07:00</published><updated>2011-08-01T15:33:29.835-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='lubuntu'/><category scheme='http://www.blogger.com/atom/ns#' term='customize_main_menu'/><title type='text'>lubuntu - creare icone personalizzate su desktop e su menuù</title><content type='html'>utilissimo articolo:&lt;br /&gt;http://wiki.lxde.org/en/Main_Menu&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;in ordine:&lt;br /&gt;1) creare la cartella /usr/local/share/applications/&lt;br /&gt;2) darle i diritti in scrittura per utente principale&lt;br /&gt;3) creare in quella cartella un file col nome della app da linkare .desktop:&lt;br /&gt;es: eclipse.desktop&lt;br /&gt;4) avviare l'editor (al posto del gedit qui c'è leafpad) &lt;br /&gt;leafpad /usr/local/share/applications/eclipse.desktop&lt;br /&gt;5) incollare qualcosa tipo:&lt;br /&gt;&lt;br /&gt;[Desktop Entry]&lt;br /&gt;Encoding=UTF-8&lt;br /&gt;Exec=/home/fiorenzo/java/eclipse/eclipse&lt;br /&gt;Icon=/home/fiorenzo/java/eclipse/icon.xpm&lt;br /&gt;Type=Application&lt;br /&gt;Terminal=false&lt;br /&gt;Name=Eclipse&lt;br /&gt;GenericName=eclipse&lt;br /&gt;StartupNotify=false&lt;br /&gt;Categories=Development&lt;br /&gt;&lt;br /&gt;il gioco è fatto!&lt;br /&gt;&lt;br /&gt;a questo punto sarà visibile nel menu principale nella voce Programmazione (ho lubuntu italiana) e quindi si potrà aggiungere sia come icona sul desktop che sulla barra in basso...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-1668729302199756356?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/1668729302199756356/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=1668729302199756356' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/1668729302199756356'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/1668729302199756356'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2011/08/lubuntu-creare-icone-personalizzate-su_01.html' title='lubuntu - creare icone personalizzate su desktop e su menuù'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-9180205930456785281</id><published>2011-08-01T15:29:00.001-07:00</published><updated>2011-08-01T15:29:20.289-07:00</updated><title type='text'>lubuntu - creare icone personalizzate su desktop e su menu</title><content type='html'>&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-9180205930456785281?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/9180205930456785281/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=9180205930456785281' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/9180205930456785281'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/9180205930456785281'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2011/08/lubuntu-creare-icone-personalizzate-su.html' title='lubuntu - creare icone personalizzate su desktop e su menu'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-7208768914790548153</id><published>2011-07-31T06:32:00.001-07:00</published><updated>2011-07-31T06:34:55.094-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='filtri_immagini'/><category scheme='http://www.blogger.com/atom/ns#' term='camanjs'/><title type='text'>javascritp per manipolare immagini (filtri..)</title><content type='html'>Immaginate di voler fare un'applicazione che consente di gestire le foto in ogni fase:&lt;br /&gt;1) upload massivo&lt;br /&gt;2) ridimensionamento massivo o mirato&lt;br /&gt;3) applicazione di filtri...&lt;br /&gt;&lt;br /&gt;Ecco per la III terza parte si puo usare http://camanjs.com/ &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;provare !!!!&lt;br /&gt;&lt;br /&gt;guardate il preset example:&lt;br /&gt;&lt;br /&gt;http://camanjs.com/examples/presets&lt;br /&gt;&lt;br /&gt;vi ricorda un po instagram e affini?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-7208768914790548153?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/7208768914790548153/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=7208768914790548153' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/7208768914790548153'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/7208768914790548153'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2011/07/javascritp-per-manipolare-immagini.html' title='javascritp per manipolare immagini (filtri..)'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-803837811822649867</id><published>2011-07-31T05:30:00.000-07:00</published><updated>2011-07-31T05:44:39.865-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='instagram'/><title type='text'>instagram from java</title><content type='html'>se avete un iphone e vi piace fare foto, non potetet non provare instagram..l'ultimo ritrovato dello scatto istantaneo (stile polaroid) solo per iphone (questo non piace...) con una serie di filtri per abbellire, rendere + strane le vs immagini...&lt;br /&gt;&lt;br /&gt;a noi interessa usare le api da java...&lt;br /&gt;è possibile soltanto il recupero delle foto/informazioni/commenti/amici...&lt;br /&gt;non si può caricare nulla....&lt;br /&gt;&lt;br /&gt;ho provato questa libreria, ancora poco organizzata&lt;br /&gt;https://github.com/sachin-handiekar/jInstagram&lt;br /&gt;&lt;br /&gt;(va checkoutata e compilata ion locale, non ci sono librerie..no maven...no ant)...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;una guida minimale per muovere i primi passi:&lt;br /&gt;https://github.com/sachin-handiekar/jInstagram/wiki/jInstagram-Usage&lt;br /&gt;&lt;br /&gt;per fare i test vi serve la registrazione sul sito:&lt;br /&gt;http://instagram.com/developer/&lt;br /&gt;&lt;br /&gt;per fare dei test da client (eclipse), fate cosi:&lt;br /&gt;1) create una paginetta (che magari scrive solo ciao!) su un server pubblico:&lt;br /&gt;&lt;br /&gt;basta che sia raggiungibile: &lt;br /&gt;es http://giava.by/instaflower/oauth/index.html&lt;br /&gt;&lt;br /&gt;2) da browser chiamate questo indirizzo:&lt;br /&gt;http://instagram.com/oauth/authorize/?client_id=CLIENT_ID&amp;redirect_uri=REDIRECT-URI&amp;response_type=token&lt;br /&gt;&lt;br /&gt;sostituite nell'url il CLIENT_ID che avete ricevuto nel registrarvi sul sito sviluppatori e il vs indirizzo pubblico (REDIRECT-URI)&lt;br /&gt;&lt;br /&gt;3) prendete il token che vi è stato assegnato:&lt;br /&gt;&lt;br /&gt;es: http://giava.by/instaflower/oauth/#access_token=xxxxxx.xxx.1926f93543824d95bb83d3a9805874df&lt;br /&gt;&lt;br /&gt;access_token=xxxxxx.xxx.1926f93543824d95bb83d3a9805874df&lt;br /&gt;&lt;br /&gt;ecco un esempio rapido per avere tutte le vs foto:&lt;br /&gt;&lt;br /&gt;import java.util.List;&lt;br /&gt;&lt;br /&gt;import org.jinstagram.Instagram;&lt;br /&gt;import org.jinstagram.auth.model.Token;&lt;br /&gt;import org.jinstagram.entity.common.Caption;&lt;br /&gt;import org.jinstagram.entity.common.Comments;&lt;br /&gt;import org.jinstagram.entity.common.ImageData;&lt;br /&gt;import org.jinstagram.entity.common.Images;&lt;br /&gt;import org.jinstagram.entity.common.Likes;&lt;br /&gt;import org.jinstagram.entity.common.Location;&lt;br /&gt;import org.jinstagram.entity.users.basicinfo.UserInfo;&lt;br /&gt;import org.jinstagram.entity.users.basicinfo.UserInfoData;&lt;br /&gt;import org.jinstagram.entity.users.feed.MediaFeed;&lt;br /&gt;import org.jinstagram.entity.users.feed.MediaFeedData;&lt;br /&gt;import org.jinstagram.entity.users.feed.UserFeed;&lt;br /&gt;import org.jinstagram.entity.users.feed.UserFeedData;&lt;br /&gt;import org.jinstagram.exceptions.InstagramException;&lt;br /&gt;&lt;br /&gt;public class First {&lt;br /&gt; &lt;br /&gt; static String your_client_secret = "172460d1932b4393b2097f67dfd78ff1";&lt;br /&gt; static String access_token="xxxxxx.xxx.1926f93543824d95bb83d3a9805874df";&lt;br /&gt;        static String nickname ="pippoPluto";&lt;br /&gt; &lt;br /&gt; public static void main(String[] args) throws InstagramException {&lt;br /&gt;  &lt;br /&gt;  Token accessToken = new Token(&lt;br /&gt;    access_token,&lt;br /&gt;    your_client_secret);&lt;br /&gt;  Instagram instagram = new Instagram(accessToken);&lt;br /&gt;  UserFeed userFeed = instagram.searchUser(nickname);&lt;br /&gt;  List&lt;UserFeedData&gt; userList = userFeed.getUserList();&lt;br /&gt;  long userId = 0;&lt;br /&gt;  for (UserFeedData userFeedData : userList) {&lt;br /&gt;   userId = userFeedData.getId();&lt;br /&gt;  }&lt;br /&gt;  UserInfo userInfo = instagram.getUserInfo(userId);&lt;br /&gt;&lt;br /&gt;  UserInfoData userData = userInfo.getData();&lt;br /&gt;  System.out.println("id : " + userData.getId());&lt;br /&gt;  System.out.println("first_name : " + userData.getFirst_name());&lt;br /&gt;  System.out.println("last_name : " + userData.getLast_name());&lt;br /&gt;  System.out&lt;br /&gt;    .println("profile_picture : " + userData.getProfile_picture());&lt;br /&gt;  System.out.println("website : " + userData.getWebsite());&lt;br /&gt;&lt;br /&gt;  MediaFeed mediaFeed = instagram.getUserFeeds();&lt;br /&gt;  List&lt;MediaFeedData&gt; mediaFeeds = mediaFeed.getData();&lt;br /&gt;&lt;br /&gt;  for (MediaFeedData mediaData : mediaFeeds) {&lt;br /&gt;   System.out.println("id : " + mediaData.getId());&lt;br /&gt;   System.out.println("created time : " + mediaData.getCreatedTime());&lt;br /&gt;   System.out.println("link : " + mediaData.getLink());&lt;br /&gt;   System.out.println("tags : " + mediaData.getTags().toString());&lt;br /&gt;   System.out.println("filter : " + mediaData.getImageFilter());&lt;br /&gt;   System.out.println("type : " + mediaData.getType());&lt;br /&gt;&lt;br /&gt;   System.out.println("-- Comments --");&lt;br /&gt;   Comments comments = mediaData.getComments();&lt;br /&gt;&lt;br /&gt;   System.out.println("-- Caption --");&lt;br /&gt;   Caption caption = mediaData.getCaption();&lt;br /&gt;&lt;br /&gt;   System.out.println("-- Likes --");&lt;br /&gt;   Likes likes = mediaData.getLikes();&lt;br /&gt;&lt;br /&gt;   System.out.println("-- Images --");&lt;br /&gt;   Images images = mediaData.getImages();&lt;br /&gt;&lt;br /&gt;   ImageData lowResolutionImg = images.getLowResolution();&lt;br /&gt;   ImageData highResolutionImg = images.getStandardResolution();&lt;br /&gt;   ImageData thumbnailImg = images.getThumbnail();&lt;br /&gt;&lt;br /&gt;   Location location = mediaData.getLocation();&lt;br /&gt;   if (location != null)&lt;br /&gt;    System.out.println(location.getName());&lt;br /&gt;   System.out.println("****************************************");&lt;br /&gt;  }&lt;br /&gt;&lt;br /&gt; }&lt;br /&gt;}&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-803837811822649867?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/803837811822649867/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=803837811822649867' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/803837811822649867'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/803837811822649867'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2011/07/instagram-from-java.html' title='instagram from java'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-8549752585052754677</id><published>2011-07-27T08:23:00.000-07:00</published><updated>2011-07-27T08:25:16.964-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='jboss7'/><title type='text'>jboss7: domini sicurezza custom</title><content type='html'>alla ricerca di come far funzionare il cas+ldap come moduli di sicurezza a cascata:&lt;br /&gt;&lt;br /&gt;http://community.jboss.org/message/613183&lt;br /&gt;&lt;br /&gt;http://community.jboss.org/thread/168118&lt;br /&gt;&lt;br /&gt;non vera, ma scoraggiante:&lt;br /&gt;http://stackoverflow.com/questions/5046122/how-do-you-specify-the-security-domain-for-a-war-under-jboss-7&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-8549752585052754677?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/8549752585052754677/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=8549752585052754677' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/8549752585052754677'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/8549752585052754677'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2011/07/jboss7-domini-sicurezza-custom.html' title='jboss7: domini sicurezza custom'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-5799262219485363885</id><published>2011-07-27T08:14:00.000-07:00</published><updated>2011-07-27T08:21:43.430-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='EXTJS'/><category scheme='http://www.blogger.com/atom/ns#' term='excel'/><category scheme='http://www.blogger.com/atom/ns#' term='jsf richfaces'/><category scheme='http://www.blogger.com/atom/ns#' term='chart'/><title type='text'>jsf: grafici ed excel</title><content type='html'>riporto una piccola chattata...&lt;br /&gt;&lt;br /&gt;argomenti: creare grafi belli e avanzati in jsf.&lt;br /&gt;&lt;br /&gt;soluzioni valutabili:&lt;br /&gt;primefaces demo 3 carina sia nell'uso di excel che di chart (ma sono poche)&lt;br /&gt;http://www.primefaces.org/showcase-labs/ui/chartsHome.jsf&lt;br /&gt;http://www.primefaces.org/showcase-labs/ui/sheet.jsf&lt;br /&gt;&lt;br /&gt;extjs (molto bella ma tutto javascript)..possibile jsf integrazione:&lt;br /&gt;http://j2flower.blogspot.com/search/label/EXTJS&lt;br /&gt;&lt;br /&gt;varie librerie jsf/chart&lt;br /&gt;http://code.google.com/p/jsflot/&lt;br /&gt;&lt;br /&gt;ecco la ns conversazione...&lt;br /&gt;[16.25.33] Fulvio : extjs spacca, lo sto usando, anche se con JS faccio fatica&lt;br /&gt;[16.25.39] flower: lo so, ma che deve fare? tutto quello che fa excel? hai visto l'ultima demo di primefaces?&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;[16.26.37] Fulvio: è un gestionale, c'è bisogno di fare tanti grafici per visualizzare dei dati. abbiamo bisogno di un tipo di chart molto particolare (onde quadre)..&lt;br /&gt;[16.28.22] flower: questo: http://code.google.com/p/jsflot/&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;[16.30.07] Fulvio : no, che disegni come volgio io... ora vedo se le classiche line chart possono fare onde quadre&lt;br /&gt;[16.32.26] flower: non comprendo, se esiste bene... se no, non è che lo crei tu! è da matti! chi si mette li a farlo?&lt;br /&gt;[16.32.49] Fulvio: ecco appunto :)&lt;br /&gt;&lt;br /&gt;[16.30.23] flower: dovresti usare quella libreria che wrappa flex da jsf, quella della exadel, e ti tieni flex (fai animazione flash e passi parametri da jsf)&lt;br /&gt;[16.30.55] flower: http://livedemo.exadel.com/fiji-demo/&lt;br /&gt;&lt;br /&gt;[16.33.08] flower: qui li hai tutti&lt;br /&gt;[16.33.05] flower: http://webification.com/php-js-flash-chart-libraries-roundup&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-5799262219485363885?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/5799262219485363885/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=5799262219485363885' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/5799262219485363885'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/5799262219485363885'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2011/07/jsf-grafici-ed-excel.html' title='jsf: grafici ed excel'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-3207608163296946138</id><published>2011-07-27T08:10:00.001-07:00</published><updated>2011-07-27T08:11:12.738-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='jboss6'/><title type='text'>jboss6: creare datasource di default</title><content type='html'>per sostituire il datasource di default (che è su hsqldb):&lt;br /&gt;&lt;br /&gt;http://wiki.openscg.com/index.php/JBoss_AS_6_with_PostgreSQL_9&lt;br /&gt;&lt;br /&gt;l'esempio è in postgresql, ma vale anche per gli altri...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-3207608163296946138?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/3207608163296946138/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=3207608163296946138' title='2 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/3207608163296946138'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/3207608163296946138'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2011/07/jboss6-creare-datasource-di-default.html' title='jboss6: creare datasource di default'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-8079307676631036955</id><published>2011-07-27T08:09:00.001-07:00</published><updated>2011-07-27T08:25:56.440-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='jboss6'/><title type='text'>jboss6: tuning [per velocizzare il boot...]</title><content type='html'>non esistendo ancora una pagina ufficiale, qui si pososno trovare utili informazioni:&lt;br /&gt;&lt;br /&gt;http://community.jboss.org/thread/159648?start=0&amp;tstart=0&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-8079307676631036955?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/8079307676631036955/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=8079307676631036955' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/8079307676631036955'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/8079307676631036955'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2011/07/jboss-6-tuning.html' title='jboss6: tuning [per velocizzare il boot...]'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-7102633569596569953</id><published>2011-07-25T14:41:00.001-07:00</published><updated>2011-07-25T15:51:14.153-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='streetview'/><title type='text'>foto panoramiche: hugin</title><content type='html'>indispensabile usare hugin:&lt;br /&gt;http://hugin.sourceforge.net/tutorials/index.shtml&lt;br /&gt;&lt;br /&gt;http://www.linuxfocus.org/Italiano/September2004/article348.shtml&lt;br /&gt;&lt;br /&gt;http://grigio.org/come_creare_foto_panoramiche_magnifiche&lt;br /&gt;&lt;br /&gt;http://www.geekissimo.com/2008/08/31/hugin-come-creare-un-panorama-da-una-serie-di-scatti-digitali/&lt;br /&gt;&lt;br /&gt;http://gerlos.altervista.org/book/export/html/229&lt;br /&gt;&lt;br /&gt;http://www.torinoacolori.it/hugin.html&lt;br /&gt;&lt;br /&gt;http://caprasilana.wordpress.com/tag/hugin/&lt;br /&gt;&lt;br /&gt;http://thejoe.it/wordpress/2010/06/02/hugin-e-le-foto-panoramiche-alcuni-consigli-per-iniziare/&lt;br /&gt;&lt;br /&gt;http://www.volalibero.it/creare_foto_panoramiche.html&lt;br /&gt;&lt;br /&gt;http://www.flickr.com/groups/hugin/&lt;br /&gt;&lt;br /&gt;http://www.flickr.com/photos/asbruff/sets/72157626013072992/&lt;br /&gt;&lt;br /&gt;utile&lt;br /&gt;&lt;br /&gt;http://www.bryanhansel.com/2007/a-quick-and-dirty-hugin-panoramic-stitcher-tutorial/&lt;br /&gt;&lt;br /&gt;http://shutterexperiments.com/2011/02/06/equirectangular-panoramas/#more-65&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-7102633569596569953?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/7102633569596569953/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=7102633569596569953' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/7102633569596569953'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/7102633569596569953'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2011/07/foto-panoramiche.html' title='foto panoramiche: hugin'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-2577245418686433612</id><published>2011-07-25T14:36:00.000-07:00</published><updated>2011-07-25T14:41:28.618-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='streetview'/><title type='text'>creare custom streetview</title><content type='html'>partiamo dall'esempio massimo..irragiungibile:&lt;br /&gt;&lt;br /&gt;http://www.googleartproject.com/museums/reinasofia&lt;br /&gt;&lt;br /&gt;come creare un sistema simil google:&lt;br /&gt;&lt;br /&gt;http://spectrum.ieee.org/geek-life/hands-on/diy-streetview-camera/0&lt;br /&gt;&lt;br /&gt;un cavalletto per fare foto:&lt;br /&gt;http://www.wikihow.com/Build-a-Panoramic-Tripod-Head&lt;br /&gt;&lt;br /&gt;tanti consigli utili su foto panoramiche:&lt;br /&gt;http://www.panohelp.com/&lt;br /&gt;&lt;br /&gt;come generare foto zommabili di varie dimensioni:&lt;br /&gt;http://helmi-blebe.blogspot.com/2010/10/custom-street-view-panorama-using.html&lt;br /&gt;&lt;br /&gt;ottimo e completo (da copiare)&lt;br /&gt;http://www.theveganrobot.com/robotview/sv05/willow_pirate.html&lt;br /&gt;&lt;br /&gt;esempi pratici:&lt;br /&gt;http://helmi03.com/pano/titiwangsa/tt.html&lt;br /&gt;&lt;br /&gt;http://alecmgo.googlecode.com/svn/trunk/streetviewpano/streetview-custom-simple.html&lt;br /&gt;&lt;br /&gt;http://raphaelcruzeiro.com/2011/05/08/creating-a-custom-street-view-panorama/&lt;br /&gt;&lt;br /&gt;http://oa-samples.googlecode.com/svn/trunk/presentations/io-2011/samples/streetview-custom.html&lt;br /&gt;&lt;br /&gt;http://blog.mridey.com/2010/05/how-to-create-and-display-custom.html&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-2577245418686433612?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/2577245418686433612/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=2577245418686433612' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/2577245418686433612'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/2577245418686433612'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2011/07/creare-custom-streetview.html' title='creare custom streetview'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-7269470596252949890</id><published>2011-07-25T14:35:00.000-07:00</published><updated>2011-07-25T14:36:28.432-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='suoni_localizzati'/><title type='text'>pubblicare suoni di un luogo</title><content type='html'>interessante progetto...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;http://aporee.org/maps/&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-7269470596252949890?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/7269470596252949890/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=7269470596252949890' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/7269470596252949890'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/7269470596252949890'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2011/07/pubblicare-suoni-di-un-luogo.html' title='pubblicare suoni di un luogo'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-1884977134442493910</id><published>2011-07-25T14:34:00.001-07:00</published><updated>2011-07-25T14:34:22.675-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='cdi'/><title type='text'>cdi: recoruce bundle...</title><content type='html'>si potrebbe fare qualcosa di simile:&lt;br /&gt;&lt;br /&gt;http://john-ament.blogspot.com/2010/03/dyanmic-resourcebundles-in-cdi.html&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-1884977134442493910?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/1884977134442493910/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=1884977134442493910' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/1884977134442493910'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/1884977134442493910'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2011/07/cdi-recoruce-bundle.html' title='cdi: recoruce bundle...'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-4169900167497985598</id><published>2011-07-25T14:33:00.001-07:00</published><updated>2011-07-25T14:33:55.767-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='jsf richfaces'/><title type='text'>jsf richfaces viewscope</title><content type='html'>forse non serve +...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;http://mkblog.exadel.com/2009/07/view-scope-in-richfaces/&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-4169900167497985598?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/4169900167497985598/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=4169900167497985598' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/4169900167497985598'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/4169900167497985598'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2011/07/jsf-richfaces-viewscope.html' title='jsf richfaces viewscope'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-7873465159440596569</id><published>2011-07-25T14:31:00.000-07:00</published><updated>2011-07-25T14:32:55.439-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='jsf2'/><title type='text'>jsf: datatable con query a vista</title><content type='html'>non male l'idea:&lt;br /&gt;http://code.google.com/p/topless-jsf/&lt;br /&gt;&lt;br /&gt;&lt;br /&gt; &lt;topless:table&lt;br /&gt;                    id="m"&lt;br /&gt;                    binding="#{complexRequest.toplessTable}"&lt;br /&gt;                    dataSource="#{appConfig.dataSource}"&lt;br /&gt;                    query="select * from widgets"&lt;br /&gt;                    includes="#{tfn:jsonArrayToList(requestScope.includes)}"&lt;br /&gt;                    rows="10"&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-7873465159440596569?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/7873465159440596569/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=7873465159440596569' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/7873465159440596569'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/7873465159440596569'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2011/07/jsf-datatable-con-query-vista.html' title='jsf: datatable con query a vista'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-2140771580810413806</id><published>2011-07-25T14:25:00.001-07:00</published><updated>2011-07-25T14:26:43.728-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Persistence'/><title type='text'>EXTENDED PERSISTENCE CONTEXT</title><content type='html'>letture utili.... prima di incontrare seam persistence (che lo fa bene)...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;http://seamframework.org/Community/EXTENDEDPersistenceContextProduces&lt;br /&gt;&lt;br /&gt;http://azajava.blogspot.com/2009/09/introduction-i-decided-to-share-special.html&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;http://thatjavathing.blogspot.com/2009/04/extended-persistence-context.html&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-2140771580810413806?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/2140771580810413806/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=2140771580810413806' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/2140771580810413806'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/2140771580810413806'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2011/07/extended-persistence-context_25.html' title='EXTENDED PERSISTENCE CONTEXT'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-557071556503545503</id><published>2011-07-25T14:25:00.000-07:00</published><updated>2011-07-25T14:26:43.506-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Persistence'/><title type='text'>EXTENDED PERSISTENCE CONTEXT</title><content type='html'>letture utili.... prima di incontrare seam persistence (che lo fa bene)...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;http://seamframework.org/Community/EXTENDEDPersistenceContextProduces&lt;br /&gt;&lt;br /&gt;http://azajava.blogspot.com/2009/09/introduction-i-decided-to-share-special.html&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;http://thatjavathing.blogspot.com/2009/04/extended-persistence-context.html&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-557071556503545503?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/557071556503545503/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=557071556503545503' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/557071556503545503'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/557071556503545503'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2011/07/extended-persistence-context.html' title='EXTENDED PERSISTENCE CONTEXT'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-7053526095859697095</id><published>2011-07-25T14:24:00.000-07:00</published><updated>2011-07-25T14:25:25.954-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='EXTJS'/><title type='text'>jsf excel (EXTJS)</title><content type='html'>sembra sia possibile, anche se primefaces..fa tante belle cose ...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;http://thus-spoke-the-computer.blogspot.com/2009/12/proof-of-conceptpoc-using-richfaces-and.html&lt;br /&gt;&lt;br /&gt;http://code.google.com/p/extjs-richfaces&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-7053526095859697095?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/7053526095859697095/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=7053526095859697095' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/7053526095859697095'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/7053526095859697095'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2011/07/jsf-excel-extjs.html' title='jsf excel (EXTJS)'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-6765104889806226813</id><published>2011-07-25T14:21:00.000-07:00</published><updated>2011-07-25T14:23:37.533-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='birt'/><title type='text'>birt e i suoi report</title><content type='html'>molti lo usano e non sembra nemmeno male:&lt;br /&gt;&lt;br /&gt;http://www.lebirtexpert.com/bestof.php&lt;br /&gt;&lt;br /&gt;http://www.ibm.com/developerworks/data/library/techarticle/dm-0708tomlyn/&lt;br /&gt;&lt;br /&gt;integrate BIRT with Hibernate:&lt;br /&gt;&lt;br /&gt;http://www.eclipsezone.com/eclipse/forums/t65535.html&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-6765104889806226813?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/6765104889806226813/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=6765104889806226813' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/6765104889806226813'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/6765104889806226813'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2011/07/birt-e-i-suoi-report.html' title='birt e i suoi report'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-5314888944995803212</id><published>2011-07-25T14:19:00.000-07:00</published><updated>2011-07-25T14:21:16.549-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='hierarchical database'/><title type='text'>creare database gerarchici</title><content type='html'>se vi venisse in mente di creare un social (come g+ o f+), ci vogliono strutture db performanti....&lt;br /&gt;&lt;br /&gt;http://dev.mysql.com/tech-resources/articles/hierarchical-data.html&lt;br /&gt;&lt;br /&gt;http://shirky.com/writings/ontology_overrated.html&lt;br /&gt;&lt;br /&gt;http://www.artfulsoftware.com/mysqlbook/sampler/mysqled1ch20.html#nodes_edges_paths_model&lt;br /&gt;&lt;br /&gt;http://shirky.com/writings/ontology_overrated.html&lt;br /&gt;&lt;br /&gt;http://www.alandelevie.com/2008/07/12/recursion-less-storage-of-hierarchical-data-in-a-relational-database/&lt;br /&gt;&lt;br /&gt;http://articles.sitepoint.com/article/hierarchical-data-database&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-5314888944995803212?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/5314888944995803212/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=5314888944995803212' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/5314888944995803212'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/5314888944995803212'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2011/07/creare-database-gerarchici.html' title='creare database gerarchici'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-2913644550544801561</id><published>2011-07-25T14:18:00.000-07:00</published><updated>2011-07-25T14:19:21.809-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ldap'/><title type='text'>java ldap (io lo odio)</title><content type='html'>qui ci sono tanti esempietti da cui iniziare (ad odiare ldap):&lt;br /&gt;&lt;br /&gt;http://developer.novell.com/documentation/samplecode/jldap_sample/index.htm&lt;br /&gt;http://developer.novell.com/documentation/jldap/jldapenu/api/&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-2913644550544801561?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/2913644550544801561/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=2913644550544801561' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/2913644550544801561'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/2913644550544801561'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2011/07/java-ldap-io-lo-odio.html' title='java ldap (io lo odio)'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-9068405872312644155</id><published>2011-07-25T14:14:00.001-07:00</published><updated>2011-07-25T14:15:41.796-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='applet'/><title type='text'>applet: per accedere al filesystem in download</title><content type='html'>E se qualche cliente vi dicesse:&lt;br /&gt;&lt;br /&gt;le foto devono essere scaricate in una cartella ben precisa...&lt;br /&gt;tornano buone le vecchie care applet...firmate...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;http://www.developer.com/java/other/article.php/3303561/Creating-a-Trusted-Applet-with-Local-File-System-Access-Rights.htm&lt;br /&gt;&lt;br /&gt;http://www.java-forums.org/java-applets/5998-reading-dir-java-applets.html&lt;br /&gt;&lt;br /&gt;http://bytes.com/topic/java/answers/634415-read-directory-applet&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-9068405872312644155?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/9068405872312644155/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=9068405872312644155' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/9068405872312644155'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/9068405872312644155'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2011/07/applet-per-accedere-al-filesystem-in.html' title='applet: per accedere al filesystem in download'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-4020044236895349562</id><published>2011-07-25T14:07:00.000-07:00</published><updated>2011-07-25T14:16:04.690-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='scala ejb3'/><title type='text'>scala ejb3: si può fare!</title><content type='html'>per un po mi sono fatto prendere...&lt;br /&gt;ma poi il limite degli strumenti (plugins eclipse) ho lasciato..ma prima o poi ci torneremo...&lt;br /&gt;&lt;br /&gt;http://blog.excilys.com/2010/02/04/java-ee-6-en-scala-partie-2-ejb-3-1/&lt;br /&gt;&lt;br /&gt;http://blog.mmrath.com/2010/01/jsf-20-cdi-scala-28-using-eclipse-maven.html&lt;br /&gt;&lt;br /&gt;http://weblogs.java.net/blog/cayhorstmann/archive/2010/09/04/scala-jsf-2-and-netbeans&lt;br /&gt;&lt;br /&gt;http://blog.mmrath.com/2010/01/jsf-20-cdi-scala-28-using-eclipse-maven.html&lt;br /&gt;&lt;br /&gt;http://blogs.sourceallies.com/2010/02/java-ee-6-and-scala/&lt;br /&gt;&lt;br /&gt;http://vikasrao.wordpress.com/2009/06/&lt;br /&gt;&lt;br /&gt;http://scala-enterprise.blogspot.com/2010/10/named-beans-in-ejb-31-using-scala.html&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-4020044236895349562?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/4020044236895349562/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=4020044236895349562' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/4020044236895349562'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/4020044236895349562'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2011/07/scala-ejb3-si-puo-fare.html' title='scala ejb3: si può fare!'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-177209915967716479</id><published>2011-07-25T14:01:00.001-07:00</published><updated>2011-07-25T14:01:47.166-07:00</updated><title type='text'>text to speech using java</title><content type='html'>la vecchia idea...applicazioni parlanti...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;http://www.hiteshagrawal.com/java/text-to-speech-tts-in-java&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;http://half-wit4u.blogspot.com/2011/01/text-to-speech-using-java-api.html&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-177209915967716479?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/177209915967716479/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=177209915967716479' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/177209915967716479'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/177209915967716479'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2011/07/text-to-speech-using-java.html' title='text to speech using java'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-5149107921986252390</id><published>2011-07-25T13:57:00.000-07:00</published><updated>2011-07-25T14:16:29.806-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='facebook'/><title type='text'>facebook da java e non</title><content type='html'>Se un cliente vi chiedesse:&lt;br /&gt;&lt;br /&gt;...vorrei pubblicare sul mio sito ma contemporaneamente su facebook..&lt;br /&gt;&lt;br /&gt;si può fare...&lt;br /&gt;&lt;br /&gt;http://restfb.com/&lt;br /&gt;&lt;br /&gt;http://code.google.com/p/batchfb/&lt;br /&gt;&lt;br /&gt;http://woork.blogspot.com/2009/05/how-to-implement-post-to-wall-facebook.html&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;http://www.moskjis.com/other-platforms/publish-facebook-page-wall-from-your-site&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;http://blog.theunical.com/facebook-integration/5-steps-to-publish-on-a-facebook-wall-using-php/&lt;br /&gt;&lt;br /&gt;http://info.zapevent.com/blog/bid/37515/ZapEvent-Publish-to-Facebook-Feature-Release&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-5149107921986252390?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/5149107921986252390/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=5149107921986252390' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/5149107921986252390'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/5149107921986252390'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2011/07/facebook-da-java-e-non.html' title='facebook da java e non'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-7471740919744096274</id><published>2011-07-25T13:44:00.002-07:00</published><updated>2011-07-25T13:46:18.845-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='maven'/><title type='text'>maven: come organizzare i progetti</title><content type='html'>nei grandi progetti, il dilemma è come spezzare il progetto in tanti moduli, come versionare i singoli moduli---&lt;br /&gt;&lt;br /&gt;http://www.waltercedric.com/java-j2ee-mainmenu-53/framework-mainmenu-137/apache-maven/1363-maven-multi-module-support-in-m2eclipse.html&lt;br /&gt;&lt;br /&gt;http://out-println.blogspot.com/2008/10/maven-modules-with-independent-versions.html&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-7471740919744096274?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/7471740919744096274/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=7471740919744096274' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/7471740919744096274'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/7471740919744096274'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2011/07/maven-come-organizzare-i-progetti.html' title='maven: come organizzare i progetti'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-1245258918585820830</id><published>2011-07-25T13:44:00.001-07:00</published><updated>2011-07-25T13:44:24.006-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='jsf2'/><title type='text'>jsf validator</title><content type='html'>un link:&lt;br /&gt;&lt;br /&gt;http://www.coderanch.com/t/210563/JSF/java/Passing-parameters-attributes-custom-validator&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-1245258918585820830?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/1245258918585820830/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=1245258918585820830' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/1245258918585820830'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/1245258918585820830'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2011/07/jsf-validator.html' title='jsf validator'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-4402875402647004375</id><published>2011-07-25T13:40:00.000-07:00</published><updated>2011-07-25T13:42:20.814-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='jsf2'/><title type='text'>jsf2 composite components</title><content type='html'>I primi esperimenti non sono andati un granchè bene...&lt;br /&gt;&lt;br /&gt;comunque qualche links:&lt;br /&gt;&lt;br /&gt;http://weblogs.java.net/blog/edburns/archive/2009/09/02/jsf2-composite-component-metadata&lt;br /&gt;&lt;br /&gt;http://digitaljoel.nerd-herders.com/2009/12/14/sharing-jsf-2-composite-components/&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;http://stackoverflow.com/questions/4561753/jsf2-0-el-are-not-resolved-in-a-composite-component-taglib&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;http://kpachar.blogspot.com/2010/06/tinymce-as-jsf-2-composite-component.html&lt;br /&gt;&lt;br /&gt;http://smartfaces.org/smartfaces/faces/showcase.xhtml&lt;br /&gt;&lt;br /&gt;http://jsflive.wordpress.com/2011/03/24/custom-component-library/&lt;br /&gt;&lt;br /&gt;http://javaserverfaces.java.net/nonav/docs/2.0/pdldocs/facelets/&lt;br /&gt;&lt;br /&gt;http://code.google.com/p/primefaces-extensions/&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-4402875402647004375?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/4402875402647004375/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=4402875402647004375' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/4402875402647004375'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/4402875402647004375'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2011/07/jsf2-composite-components.html' title='jsf2 composite components'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-3238510571227909449</id><published>2011-07-25T13:39:00.000-07:00</published><updated>2011-07-25T13:40:33.049-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>android utils: altri links</title><content type='html'>Altri links:&lt;br /&gt;&lt;br /&gt;http://libresoft.es/Members/rocapal/ar-interface-in-android-using-phonegap&lt;br /&gt;&lt;br /&gt;http://www.ibm.com/developerworks/websphere/zones/portal/portletfactory/proddoc/phonegap/&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;https://github.com/purplecabbage/phonegap-plugins/tree/master/Android/BarcodeScanner&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;http://www.mobiledevelopersolutions.com/home/start/twominutetutorials/tmt3&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-3238510571227909449?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/3238510571227909449/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=3238510571227909449' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/3238510571227909449'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/3238510571227909449'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2011/07/android-utils-altri-links.html' title='android utils: altri links'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-7604362924972491621</id><published>2011-07-25T12:58:00.000-07:00</published><updated>2011-07-25T12:59:46.871-07:00</updated><title type='text'>IOException: Too many open files [utilità]</title><content type='html'>ricordarsi di controllare il num max numero di files su macchina linux:&lt;br /&gt;&lt;br /&gt;http://www.netadmintools.com/art295.html&lt;br /&gt;&lt;br /&gt;lsof | wc -l&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-7604362924972491621?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/7604362924972491621/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=7604362924972491621' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/7604362924972491621'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/7604362924972491621'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2011/07/ioexception-too-many-open-files-utilita.html' title='IOException: Too many open files [utilità]'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-44339666373159942</id><published>2011-07-25T12:55:00.000-07:00</published><updated>2011-07-25T12:57:41.521-07:00</updated><title type='text'>IOException: Too many open files</title><content type='html'>alle volte ritornano...&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;qualche utile link per correggere il malfunzionamento:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;meta equiv="content-type" content="text/html; charset=utf-8"&gt;&lt;a href="http://stackoverflow.com/questions/2044672/ioexception-too-many-open-files"&gt;http://stackoverflow.com/questions/2044672/ioexception-too-many-open-files&lt;/a&gt;&lt;/div&gt;&lt;div&gt;dove mi ha fatto venire in mente che non facevo:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;meta equiv="content-type" content="text/html; charset=utf-8"&gt;&lt;span class="Apple-style-span" style="border-collapse: collapse; font-family: Arial, 'Liberation Sans', 'DejaVu Sans', sans-serif; font-size: 14px; line-height: 18px; "&gt;&lt;strong style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; font-size: 14px; vertical-align: baseline; background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: transparent; font-weight: bold; background-position: initial initial; background-repeat: initial initial; "&gt;Finally&lt;/strong&gt; &lt;a href="http://download.oracle.com/javase/6/docs/api/java/lang/Process.html#destroy%28%29" rel="nofollow" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; font-size: 14px; vertical-align: baseline; background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: transparent; color: rgb(0, 119, 204); text-decoration: none; cursor: pointer; background-position: initial initial; background-repeat: initial initial; "&gt;&lt;code style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 1px; padding-right: 5px; padding-bottom: 1px; padding-left: 5px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; font-size: 14px; vertical-align: baseline; background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: rgb(238, 238, 238); font-family: Consolas, Menlo, Monaco, 'Lucida Console', 'Liberation Mono', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Courier New', monospace, serif; background-position: initial initial; background-repeat: initial initial; "&gt;destroy()&lt;/code&gt;&lt;/a&gt; your Process.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="border-collapse: collapse; font-family: Arial, 'Liberation Sans', 'DejaVu Sans', sans-serif; font-size: 14px; line-height: 18px; "&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="border-collapse: collapse; font-family: Arial, 'Liberation Sans', 'DejaVu Sans', sans-serif; font-size: 14px; line-height: 18px; "&gt;ma infine utilissimo:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="border-collapse: collapse; font-family: Arial, 'Liberation Sans', 'DejaVu Sans', sans-serif; font-size: 14px; line-height: 18px; "&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="border-collapse: collapse; font-family: Arial, 'Liberation Sans', 'DejaVu Sans', sans-serif; font-size: 14px; line-height: 18px; "&gt;&lt;meta equiv="content-type" content="text/html; charset=utf-8"&gt;&lt;a href="http://stuffthathappens.com/blog/2007/11/28/crash-boom-too-many-open-files/"&gt;http://stuffthathappens.com/blog/2007/11/28/crash-boom-too-many-open-files/&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;vanno chiusi anche gli stream....&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;meta equiv="content-type" content="text/html; charset=utf-8"&gt;&lt;span class="Apple-style-span" style="font-family: Helvetica, Calibri, Arial, sans-serif; font-size: 18px; "&gt;&lt;pre class="prettyprint" style="background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: rgb(246, 246, 246); font-size: 0.9em; font-family: Consolas, monospace; padding-top: 2px; padding-right: 2px; padding-bottom: 2px; padding-left: 2px; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; border-top-color: rgb(136, 136, 136); border-right-color: rgb(136, 136, 136); border-bottom-color: rgb(136, 136, 136); border-left-color: rgb(136, 136, 136); background-position: initial initial; background-repeat: initial initial; "&gt;&lt;span class="kwd" style="color: rgb(0, 0, 136); "&gt;public&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt; &lt;/span&gt;&lt;span class="kwd" style="color: rgb(0, 0, 136); "&gt;class&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt; &lt;/span&gt;&lt;span class="typ" style="color: rgb(102, 0, 102); "&gt;ProcDemo&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt; &lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;{&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt;&lt;br /&gt;  &lt;/span&gt;&lt;span class="kwd" style="color: rgb(0, 0, 136); "&gt;public&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt; &lt;/span&gt;&lt;span class="kwd" style="color: rgb(0, 0, 136); "&gt;static&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt; &lt;/span&gt;&lt;span class="kwd" style="color: rgb(0, 0, 136); "&gt;void&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt; main&lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;(&lt;/span&gt;&lt;span class="typ" style="color: rgb(102, 0, 102); "&gt;String&lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;[]&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt; args&lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;)&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt; &lt;/span&gt;&lt;span class="kwd" style="color: rgb(0, 0, 136); "&gt;throws&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt;&lt;br /&gt;        &lt;/span&gt;&lt;span class="typ" style="color: rgb(102, 0, 102); "&gt;InterruptedException&lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;,&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt; &lt;/span&gt;&lt;span class="typ" style="color: rgb(102, 0, 102); "&gt;IOException&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt; &lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;{&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt;&lt;br /&gt;    &lt;/span&gt;&lt;span class="typ" style="color: rgb(102, 0, 102); "&gt;Process&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt; proc &lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;=&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt; &lt;/span&gt;&lt;span class="kwd" style="color: rgb(0, 0, 136); "&gt;null&lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;;&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt;&lt;br /&gt;    &lt;/span&gt;&lt;span class="kwd" style="color: rgb(0, 0, 136); "&gt;try&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt; &lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;{&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt;&lt;br /&gt;      &lt;/span&gt;&lt;span class="typ" style="color: rgb(102, 0, 102); "&gt;ProcessBuilder&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt; pb &lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;=&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt; &lt;/span&gt;&lt;span class="kwd" style="color: rgb(0, 0, 136); "&gt;new&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt; &lt;/span&gt;&lt;span class="typ" style="color: rgb(102, 0, 102); "&gt;ProcessBuilder&lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;(&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt;args&lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;);&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt;&lt;br /&gt;      proc &lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;=&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt; pb&lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;.&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt;start&lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;();&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt;&lt;br /&gt;      proc&lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;.&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt;waitFor&lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;();&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt;&lt;br /&gt;    &lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;}&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt; &lt;/span&gt;&lt;span class="kwd" style="color: rgb(0, 0, 136); "&gt;finally&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt; &lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;{&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt;&lt;br /&gt;      &lt;/span&gt;&lt;span class="kwd" style="color: rgb(0, 0, 136); "&gt;if&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt; &lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;(&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt;proc &lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;!=&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt; &lt;/span&gt;&lt;span class="kwd" style="color: rgb(0, 0, 136); "&gt;null&lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;)&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt; &lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;{&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt;&lt;br /&gt;        close&lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;(&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt;proc&lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;.&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt;getOutputStream&lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;());&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt;&lt;br /&gt;        close&lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;(&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt;proc&lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;.&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt;getInputStream&lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;());&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt;&lt;br /&gt;        close&lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;(&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt;proc&lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;.&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt;getErrorStream&lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;());&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt;&lt;br /&gt;        proc&lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;.&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt;destroy&lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;();&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt;&lt;br /&gt;      &lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;}&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt;&lt;br /&gt;    &lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;}&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt;&lt;br /&gt;  &lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;}&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt;&lt;br /&gt;&lt;br /&gt;  &lt;/span&gt;&lt;span class="kwd" style="color: rgb(0, 0, 136); "&gt;private&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt; &lt;/span&gt;&lt;span class="kwd" style="color: rgb(0, 0, 136); "&gt;static&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt; &lt;/span&gt;&lt;span class="kwd" style="color: rgb(0, 0, 136); "&gt;void&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt; close&lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;(&lt;/span&gt;&lt;span class="typ" style="color: rgb(102, 0, 102); "&gt;Closeable&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt; c&lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;)&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt; &lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;{&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt;&lt;br /&gt;    &lt;/span&gt;&lt;span class="kwd" style="color: rgb(0, 0, 136); "&gt;if&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt; &lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;(&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt;c &lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;!=&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt; &lt;/span&gt;&lt;span class="kwd" style="color: rgb(0, 0, 136); "&gt;null&lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;)&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt; &lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;{&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt;&lt;br /&gt;      &lt;/span&gt;&lt;span class="kwd" style="color: rgb(0, 0, 136); "&gt;try&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt; &lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;{&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt;&lt;br /&gt;        c&lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;.&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt;close&lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;();&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt;&lt;br /&gt;      &lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;}&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt; &lt;/span&gt;&lt;span class="kwd" style="color: rgb(0, 0, 136); "&gt;catch&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt; &lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;(&lt;/span&gt;&lt;span class="typ" style="color: rgb(102, 0, 102); "&gt;IOException&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt; e&lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;)&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt; &lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;{&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt;&lt;br /&gt;        &lt;/span&gt;&lt;span class="com" style="color: rgb(136, 0, 0); "&gt;// ignored&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt;&lt;br /&gt;      &lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;}&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt;&lt;br /&gt;    &lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;}&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt;&lt;br /&gt;  &lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;}&lt;/span&gt;&lt;span class="pln" style="color: rgb(0, 0, 0); "&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="pun" style="color: rgb(102, 102, 0); "&gt;}&lt;/span&gt;&lt;/pre&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-44339666373159942?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/44339666373159942/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=44339666373159942' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/44339666373159942'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/44339666373159942'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2011/07/ioexception-too-many-open-files.html' title='IOException: Too many open files'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-3270599893972723200</id><published>2011-07-06T14:49:00.000-07:00</published><updated>2011-07-06T14:58:04.372-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='signature'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>appunti android - e se volessimo raccogliere la firma di un cliente tramite app</title><content type='html'>Immaginiamo una bella app in cui si richiede di far firmare il nostro utilizzatore..&lt;br /&gt;sto pensando ai corrieri ups che consegnano a casa i pacchi..e con il loro dispositivo mobile ci fanno firmare l'avvenuta consegna del pacco...&lt;br /&gt;forse non avrà grande validità legale...ma uno schizzo su carta verrebbe fuori...&lt;br /&gt;&lt;br /&gt;bene come facciamo da un app android a fare la stessa cosa?&lt;br /&gt;&lt;br /&gt;tralasciando le librerie a pagamento, ho trovato una libreria web che usa html5 e qualche artificio magico da approfondire che fa quello che ci serve...&lt;br /&gt;&lt;br /&gt;&lt;a href="http://thomasjbradley.ca/lab/signature-pad#require-drawn"&gt;http://thomasjbradley.ca/lab/signature-pad#require-drawn&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;nel frattempo la ricerca sui forum continua.. e qualche idea javosa viene fuori:&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;a href="http://www.binarysolutions.biz/2010/12/signature-capture-for-android.html#usage_android"&gt;http://www.binarysolutions.biz/2010/12/signature-capture-for-android.html#usage_android&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/graphics/TouchPaint.html"&gt;http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/graphics/TouchPaint.html&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-3270599893972723200?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/3270599893972723200/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=3270599893972723200' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/3270599893972723200'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/3270599893972723200'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2011/07/appunti-android-e-se-volessimo.html' title='appunti android - e se volessimo raccogliere la firma di un cliente tramite app'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-7395575083878088755</id><published>2011-07-06T14:20:00.001-07:00</published><updated>2011-07-06T14:49:15.359-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='phonegap'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>appunti android - usiamo html css e js per creare la nostra app</title><content type='html'>Invece di scrivere il codice alla vecchia.. vediamo se è possibile scrivere una app che usa le funzioni di basso liverllo del nostro android, senza dover scrivere il codice java necessario..&lt;div&gt;Ebbene si! Si puo fare:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.phonegap.com/"&gt;http://www.phonegap.com/&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;un bel progetto..scaricata la mini libreria.. provata su due android, con differenti risultati:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;android 1.6 (non funziona bene..continui popup di errore..anche se qualche funzione la esegue lo stesso.. LASCIARE PERDERE)&lt;/div&gt;&lt;div&gt;android 2.2/2.3 funziona alla grande...&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;e parte la soffisfazione nel vedere che da una paginetta web, si riesce a scattare una foto e la si rivede nel dom della pagina html...&lt;/div&gt;&lt;div&gt;aggancia i contatti...aggancia le connessioni wifi/umts... si localizza...&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;insomma funziona!!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;(chiaramente per ora mi interessa solo android..ma pare si possa usare anche su iphone/backberry/etc.. proveremo...)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;links utili (progetti riusabili..idee preziose)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;un po di documentazione...&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;meta equiv="content-type" content="text/html; charset=utf-8"&gt;&lt;a href="http://docs.phonegap.com/"&gt;http://docs.phonegap.com/&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;i mitici plugins...&lt;/div&gt;&lt;div&gt;&lt;a href="https://github.com/phonegap/phonegap-plugins"&gt;https://github.com/phonegap/phonegap-plugins&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="https://github.com/paulb777/NameTrendz"&gt;https://github.com/paulb777/NameTrendz&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;bella app da vedere e leggere per imparare uso avanzato..&lt;/div&gt;&lt;div&gt;&lt;meta equiv="content-type" content="text/html; charset=utf-8"&gt;&lt;a href="https://github.com/borismus/School-Connect"&gt;https://github.com/borismus/School-Connect&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;e qui la possiamo vedere:&lt;/div&gt;&lt;div&gt;&lt;meta equiv="content-type" content="text/html; charset=utf-8"&gt;&lt;a href="http://smus.com/x/school-connect/"&gt;http://smus.com/x/school-connect/&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;plugins...&lt;/div&gt;&lt;div&gt;&lt;meta equiv="content-type" content="text/html; charset=utf-8"&gt;&lt;a href="http://smus.com/android-phonegap-plugins"&gt;http://smus.com/android-phonegap-plugins&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;come gestire l'update della app sviluppata con phonegap (in realtà sono opzioni generali android)..&lt;/div&gt;&lt;div&gt;&lt;a href="http://stackoverflow.com/questions/5886714/how-to-force-phonegap-android-app-to-perform-self-update"&gt;http://stackoverflow.com/questions/5886714/how-to-force-phonegap-android-app-to-perform-self-update&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;come scalare la app in base alla grandezza del dispositivo dispositivo..&lt;/div&gt;&lt;div&gt;&lt;a href="http://uihacker.blogspot.com/2011/01/android-phonegap-scale-webview-to-fit.html"&gt;http://uihacker.blogspot.com/2011/01/android-phonegap-scale-webview-to-fit.html&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://minimoesfuerzo.org/2011/06/3/urban-airship-integration-android-phonegap-app/"&gt;http://minimoesfuerzo.org/2011/06/3/urban-airship-integration-android-phonegap-app/&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;ottimo esempio..&lt;/div&gt;&lt;div&gt;&lt;a href="http://blog.clearlyinnovative.com/post/1112897229/browsing-image-gallery-with-phonegap-android"&gt;http://blog.clearlyinnovative.com/post/1112897229/browsing-image-gallery-with-phonegap-android&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;come lanciare un browser in una nuova finestra..&lt;/div&gt;&lt;div&gt;&lt;a href="http://simonmacdonald.blogspot.com/2011/05/installing-childbrowser-plugin-on.html"&gt;http://simonmacdonald.blogspot.com/2011/05/installing-childbrowser-plugin-on.html&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;come inviare sms da phonegap html pages...&lt;/div&gt;&lt;div&gt;&lt;a href="http://groups.google.com/group/phonegap/browse_thread/thread/5cdb921fb9db1f85"&gt;http://groups.google.com/group/phonegap/browse_thread/thread/5cdb921fb9db1f85&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-7395575083878088755?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/7395575083878088755/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=7395575083878088755' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/7395575083878088755'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/7395575083878088755'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2011/07/appunti-android-usiamo-html-css-e-js.html' title='appunti android - usiamo html css e js per creare la nostra app'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-9094220975970531405</id><published>2011-07-06T14:14:00.000-07:00</published><updated>2011-07-06T14:20:01.321-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>appunti android - ubuntu non vede il samsung galaxy</title><content type='html'>Mentre attaccando il mio glorioso nexus one, eclipse lo riconosce al volo..&lt;div&gt;Attaccando il samsung galaxy..niente da fare:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;br /&gt;&lt;p style="color: rgb(51, 51, 51); font-family: Arial, 'Lucida Grande', Verdana, sans-serif; font-size: 12px; font-weight: normal; line-height: 16px; text-transform: none; margin-top: 13px; margin-right: 5px; margin-bottom: 13px; margin-left: 0px; "&gt;adb devices&lt;/p&gt;&lt;p style="color: rgb(51, 51, 51); font-family: Arial, 'Lucida Grande', Verdana, sans-serif; font-size: 12px; line-height: 16px; text-transform: none; margin-top: 13px; margin-right: 5px; margin-bottom: 13px; margin-left: 0px; "&gt;&lt;b&gt;List of devices attached&lt;br /&gt;???????????? no permissions&lt;/b&gt;&lt;/p&gt;&lt;p style="color: rgb(51, 51, 51); font-family: Arial, 'Lucida Grande', Verdana, sans-serif; font-size: 12px; font-weight: normal; line-height: 16px; text-transform: none; margin-top: 13px; margin-right: 5px; margin-bottom: 13px; margin-left: 0px; "&gt;&lt;span class="Apple-style-span" style="font-family: Georgia, serif; font-size: 16px; color: rgb(0, 0, 0); line-height: normal; "&gt;Google è sempre nostro amico....&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;p style="color: rgb(51, 51, 51); font-family: Arial, 'Lucida Grande', Verdana, sans-serif; font-size: 12px; font-weight: normal; line-height: 16px; text-transform: none; margin-top: 13px; margin-right: 5px; margin-bottom: 13px; margin-left: 0px; "&gt;&lt;span class="Apple-style-span" style="font-family: Georgia, serif; font-size: 16px; color: rgb(0, 0, 0); line-height: normal; "&gt;&lt;a href="http://www.mjonik.pl/blog/2010/01/samsung-galaxy-with-android-sdk-on-ubuntu/"&gt;http://www.mjonik.pl/blog/2010/01/samsung-galaxy-with-android-sdk-on-ubuntu/&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="color: rgb(51, 51, 51); font-family: Arial, 'Lucida Grande', Verdana, sans-serif; font-size: 12px; font-weight: normal; line-height: 16px; text-transform: none; margin-top: 13px; margin-right: 5px; margin-bottom: 13px; margin-left: 0px; "&gt;&lt;span class="Apple-style-span" style="font-family: Georgia, serif; font-size: 16px; color: rgb(0, 0, 0); line-height: normal; "&gt;creiamo il file per udev..etc etc...&lt;/span&gt;&lt;/p&gt;&lt;p style="color: rgb(51, 51, 51); font-family: Arial, 'Lucida Grande', Verdana, sans-serif; font-size: 12px; font-weight: normal; line-height: 16px; text-transform: none; margin-top: 13px; margin-right: 5px; margin-bottom: 13px; margin-left: 0px; "&gt;&lt;span class="Apple-style-span" style="font-family: Georgia, serif; font-size: 16px; color: rgb(0, 0, 0); line-height: normal; "&gt;non serve usare adb modificato..basta fare un bel sudo..&lt;/span&gt;&lt;/p&gt;&lt;p style="color: rgb(51, 51, 51); font-family: Arial, 'Lucida Grande', Verdana, sans-serif; font-size: 12px; font-weight: normal; line-height: 16px; text-transform: none; margin-top: 13px; margin-right: 5px; margin-bottom: 13px; margin-left: 0px; "&gt;&lt;span class="Apple-style-span" style="font-family: Georgia, serif; font-size: 16px; color: rgb(0, 0, 0); line-height: normal; "&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-9094220975970531405?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/9094220975970531405/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=9094220975970531405' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/9094220975970531405'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/9094220975970531405'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2011/07/appunti-android-ubuntu-non-vede-il.html' title='appunti android - ubuntu non vede il samsung galaxy'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-5081251742064478102</id><published>2010-09-18T18:26:00.006-07:00</published><updated>2010-09-18T18:31:56.661-07:00</updated><title type='text'>prima dell'abbandono di jsf 1.2</title><content type='html'>Sarebbe bello poter creare jsf managed beans senza dichiararli nel faces-config.xml&lt;br /&gt;&lt;br /&gt;chiaramente ci vorrebbe qualcosa che allo startup legge le classi nel war annotate in un certo modo...&lt;br /&gt;&lt;br /&gt;http://stackoverflow.com/questions/2050309/jsf-managed-bean-auto-create&lt;br /&gt;&lt;br /&gt;http://stackoverflow.com/questions/315073/jsf-initialize-application-scope-bean-when-context-initialized&lt;br /&gt;&lt;br /&gt;evitando di creare un configuratore in cui dichiarare le classi...stile guice..&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-5081251742064478102?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/5081251742064478102/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=5081251742064478102' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/5081251742064478102'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/5081251742064478102'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2010/09/prima-dellabbandono-di-jsf-12.html' title='prima dell&apos;abbandono di jsf 1.2'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-6420077196987966456</id><published>2010-09-18T18:24:00.000-07:00</published><updated>2010-09-18T18:26:00.543-07:00</updated><title type='text'>blog da seguire</title><content type='html'>http://www.germanescobar.net/2010/04/4-areas-of-possible-confusion-in-jee6.html&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;http://smokeandice.blogspot.com/2009/12/cdi-and-declarative-transactions.html&lt;br /&gt;&lt;br /&gt;approfondire:&lt;br /&gt;&lt;br /&gt;http://seamframework.org/Community/SingletonEJBs&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-6420077196987966456?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/6420077196987966456/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=6420077196987966456' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/6420077196987966456'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/6420077196987966456'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2010/09/blog-da-seguire.html' title='blog da seguire'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-2793302653721091557</id><published>2010-09-12T08:02:00.000-07:00</published><updated>2010-09-12T08:38:18.836-07:00</updated><title type='text'>jsf: come bypassare la fase di validazione senza perdere i dati</title><content type='html'>Interessante diatriba: immaginate un utente che compila dei dati su un form. A metà dell'opera si accorge che prima di completare il form ha bisogno di inserire dei dati collegati, in un altra sezione (banalmente per emettere una fattura va prima inserito il cliente).&lt;br /&gt;&lt;br /&gt;A meno che l'interfaccia non glielo permetta in modo contestuale (senza quindi abbandonare i dati inseriti - ad esempio mediante un popup modale), spesso è necessario chiudere la pagina in cui si sta lavorando, per poi tornarci una volta inseriti i dati utili, riscrivendo quanto già inserito.&lt;br /&gt;&lt;br /&gt;Un po di links...utili...&lt;br /&gt;&lt;br /&gt;http://www.ibm.com/developerworks/web/library/wa-aj-jsf1.html&lt;br /&gt;http://www.ibm.com/developerworks/web/library/wa-aj-jsf2/index.html&lt;br /&gt;http://wiki.apache.org/myfaces/How_The_Immediate_Attribute_Works&lt;br /&gt;http://balusc.blogspot.com/2006/09/debug-jsf-lifecycle.html&lt;br /&gt;http://radio.javaranch.com/gthought/2005/01/04/1104874993000.html&lt;br /&gt;http://wiki.apache.org/myfaces/OptionalValidationFramework&lt;br /&gt;http://www.jsfcentral.com/articles/myfaces_extval_2.html&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-2793302653721091557?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/2793302653721091557/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=2793302653721091557' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/2793302653721091557'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/2793302653721091557'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2010/09/jsf-come-bypassare-la-fase-di.html' title='jsf: come bypassare la fase di validazione senza perdere i dati'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-4866730139997963696</id><published>2009-09-20T17:07:00.000-07:00</published><updated>2009-09-20T17:32:29.014-07:00</updated><title type='text'>un cms semplice semplice con jsf-facelets</title><content type='html'>Dopo anni di sviluppo in PHP, è arrivato il momento di fare siti web in giava.&lt;br /&gt;Molto leggeri, senza usare tutto j2ee, limitandosi a &lt;span style="font-weight: bold;"&gt;JPA+JSF+GUICE&lt;/span&gt;.&lt;br /&gt;Scelta obbligata dai pochi mezzi a disposizione, &lt;span style="font-weight: bold;"&gt;usare tomcat invece del caro jboss&lt;/span&gt;.&lt;br /&gt;L'idea è questa:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;si crea una &lt;span style="font-weight: bold;"&gt;applicazione di management&lt;/span&gt; (che gestisce css, templates e pagine) che verrà clonata ogni volta con tutte le funzioni di gestione.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;ed una &lt;span style="font-weight: bold;"&gt;applicazione web&lt;/span&gt; che verrà popolata da quella di management, ed inzialmente conterrà soltanto i files base:&lt;br /&gt;          cartella WEB-INF con files di configurazione generici,&lt;br /&gt;          prettyfaces per rewrite-url nativo&lt;br /&gt;          librerie guice-jsf -primefaces/richfaces&lt;/li&gt;&lt;/ol&gt;Problematiche da gestire:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;creazione al volo pagine xhtml partendo dai templates&lt;/span&gt; e gestire i contenuti in esse tramite textarea avanzate (stile tinymce)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;aggiungere moduli standard&lt;/span&gt; per i comuni siti web: news/gallerie di foto/google maps nella pagina contatti/forum&lt;/li&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;creazione al volo di componenti facelets&lt;/span&gt; (come tag per lista news o tag per singola news) da riutilizzare tra i contenuti html inseriti mediante tinymce&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;Progetti di partenza:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;per la gestione templates&lt;/span&gt;: &lt;a href="http://code.google.com/p/prime-flowers/source/browse/#svn/trunk/simpleCMSgenerator"&gt;http://code.google.com/p/prime-flowers/source/browse/#svn/trunk/&lt;span style="font-weight: bold;"&gt;simpleCMSgenerator &lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;per i contentuti del sito web in jsf_facelets_jpa: &lt;a href="http://code.google.com/p/prime-flowers/source/browse/#svn/trunk/ZetaWeb"&gt;http://code.google.com/p/prime-flowers/source/browse/#svn/trunk/&lt;span style="font-weight: bold;"&gt;ZetaWeb &lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;Tecnologie da approfondire:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;prettyfaces per rewrite_uri: l'uso minimale in ZetaWeb, mostra com'è possibile automatizzare la navigazione tra pagine&lt;br /&gt;   - il cui path reale è in una cartella fissa (es: pages),&lt;br /&gt;   - il cui url completo è www.appname.com/pages&lt;span style="font-weight: bold;"&gt;/&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;nomePagina&lt;/span&gt;.xhtml&lt;br /&gt;   - il cui jsf url è www.appname.com/pages&lt;span style="font-weight: bold;"&gt;/&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;nomePagina&lt;/span&gt;.jsf&lt;br /&gt;   - l'alias www.appname.com/&lt;span style="font-weight: bold;"&gt;nomePagina&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;uso di &lt;span style="font-weight: bold;"&gt;Dynamic Finders&lt;/span&gt; (interfacce che contengono query jpa-senza scrivere implementazione): &lt;a href="http://www.wideplay.com/dynamicfinders"&gt;http://www.wideplay.com/dynamicfinders &lt;/a&gt;&lt;/li&gt;&lt;li&gt;uso di &lt;span style="font-weight: bold;"&gt;Custom Units of Work&lt;/span&gt; (&lt;a href="http://www.wideplay.com/transactionsemantics"&gt;http://www.wideplay.com/transactionsemantics&lt;/a&gt; ) per il caricamento delle lazy collection in jpa in contesti transazionali + lunghi della semplice request.&lt;/li&gt;&lt;/ol&gt;Accetasi aiuti + o - volontari....&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-4866730139997963696?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/4866730139997963696/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=4866730139997963696' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/4866730139997963696'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/4866730139997963696'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2009/09/un-cms-semplice-semplice-con-jsf.html' title='un cms semplice semplice con jsf-facelets'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-996471407867668257</id><published>2009-09-20T16:58:00.000-07:00</published><updated>2009-09-20T17:06:49.304-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='date'/><title type='text'>se proprio java non vede la data giusta...</title><content type='html'>Se proprio le hai tentate tutte ed il tempo stringe..e la tua macchina linux ha una certa ora mentre la tu applicazione giava non la vuole leggere correttamente...&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Naturalmente hai già fatto:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;run.conf di jboss con opzione&lt;/span&gt;-Duser.language=it -Duser.region =IT -Duser.timezone=Europe/Rome&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;in faces-config.xml hai aggiunto:&lt;/span&gt;&lt;br /&gt;&lt;converter&gt;&lt;br /&gt;&lt;converter-for-class&gt;java.util.Date&lt;/converter-for-class&gt;&lt;br /&gt;&lt;converter-class&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;            ..........CustomDateTimeConverter&lt;br /&gt;        &lt;/converter-class&gt;&lt;br /&gt;    &lt;/converter&gt;&lt;br /&gt;&lt;br /&gt;che chiama:&lt;br /&gt;&lt;br /&gt;public class CustomDateTimeConverter extends DateTimeConverter {&lt;br /&gt;    Logger log = Logger.getLogger(getClass().getName());&lt;br /&gt;&lt;br /&gt;    public CustomDateTimeConverter() {&lt;br /&gt;        super();&lt;br /&gt;        TimeZone tz = TimeZone.getTimeZone("Europe/Rome");&lt;br /&gt;        TimeZone.setDefault(TimeZone.getTimeZone("GMT"));&lt;br /&gt;        setTimeZone(tz);&lt;br /&gt;        setLocale(new Locale("it/IT"));&lt;br /&gt;        setPattern("d/M/yyyy");&lt;br /&gt;    }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Alla fine incazzato come una iena:&lt;br /&gt;&lt;br /&gt;public static Date getDateLinux() {&lt;br /&gt;        try {&lt;br /&gt;            String data = CommandLauncher.executeCmd(new String[] { "date",&lt;br /&gt;                    "+%m/%d/%Y %H:%M:%S" });&lt;br /&gt;            log.info("DATA LINUX: " + data);&lt;br /&gt;            SimpleDateFormat formatLINUX = new SimpleDateFormat(&lt;br /&gt;                    "MM/dd/yyyy HH:mm:ss");&lt;br /&gt;            Date parsed1 = formatLINUX.parse(data);&lt;br /&gt;            log.info("DATA LINUX FROM JAVA: " + parsed1);&lt;br /&gt;            return parsed1;&lt;br /&gt;        } catch (ParseException e) {&lt;br /&gt;            // TODO Auto-generated catch block&lt;br /&gt;            e.printStackTrace();&lt;br /&gt;            return null;&lt;br /&gt;        }&lt;br /&gt;    }&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-996471407867668257?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/996471407867668257/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=996471407867668257' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/996471407867668257'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/996471407867668257'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2009/09/se-proprio-java-non-vede-la-data-giusta.html' title='se proprio java non vede la data giusta...'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-5947930616615908477</id><published>2008-03-04T23:13:00.000-08:00</published><updated>2008-03-04T23:19:31.357-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='krank'/><title type='text'>Anno 2009:  la scelta di campo JSR 299 o Spring?</title><content type='html'>In attesa di scegliere il framework per i prossimi progetti, continuano le letture..&lt;br /&gt;&lt;br /&gt;Segnalo un paio di post:&lt;br /&gt;&lt;h2 style="font-weight: normal;"&gt;&lt;a href="http://cagataycivici.wordpress.com/2008/03/04/annotation-driven-jsf-spring-jpa/" rel="bookmark" title="Permanent Link to Annotation Driven JSF-Spring-JPA"&gt;Annotation Driven JSF-Spring-JPA&lt;/a&gt;&lt;/h2&gt;A parte l'uso di spring non c'è nulla di nuovo..Le scatole DAO, francamente non mi piacciono, non ne vedo l'utilità.&lt;br /&gt;&lt;br /&gt;Aspettando JSR 299:&lt;br /&gt;http://www.jroller.com/RickHigh/&lt;br /&gt;&lt;br /&gt;Ho scoperto un progetto interessante:&lt;br /&gt;http://code.google.com/p/krank/&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Crank is a master/detail, CRUD, and annotation driven validation framework built with JPA, JSF, Facelets and Ajax. It allows developers to quickly come up with JSF/Ajax based CRUD listings and Master/Detail forms from their JPA annotated Java objects. &lt;/p&gt;&lt;p&gt;Crank uses a lot of the new JSF features from Facelets, Ajax4JSF, etc. that will be used in JSF 2.0. Crank is a use case analysis of what is possible with the new JSF 2.0 stack. &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-5947930616615908477?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/5947930616615908477/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=5947930616615908477' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/5947930616615908477'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/5947930616615908477'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2008/03/anno-2009-la-scelta-di-campo-jsr-299-o.html' title='Anno 2009:  la scelta di campo JSR 299 o Spring?'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-90290504124404588</id><published>2008-02-24T23:33:00.000-08:00</published><updated>2008-02-25T00:02:28.958-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mdb email listener'/><title type='text'>Come ricevere le email tramite MDB</title><content type='html'>In JBOSS.&lt;br /&gt;Per ricever le email tramite un Message Driven Bean (sfruttando quindi le caratteristiche asincrone e la gestione ad eventi), regolandone i tempi di polling, la casella email da monitorare, server posta, etc:&lt;br /&gt;1) scaricare jboss-seam (http://labs.jboss.com/jbossseam/download/)&lt;br /&gt;2) estrarre dalla cartella mail, il file mail-ra.rar e sostituire quello presente in jbossXX/server/SERVER_NAME/deploy&lt;br /&gt;3) creare una applicazione jar contente un mdb simile a questo:&lt;br /&gt;&lt;br /&gt;&lt;pre style="font-family: arial;"&gt;import javax.ejb.ActivationConfigProperty;&lt;br /&gt;import javax.ejb.MessageDriven;&lt;br /&gt;import javax.mail.Message;&lt;br /&gt;&lt;br /&gt;import org.jboss.annotation.ejb.ResourceAdapter;&lt;br /&gt;import org.jboss.resource.adapter.mail.inflow.MailListener;&lt;br /&gt;import org.jboss.logging.Logger;&lt;br /&gt;&lt;br /&gt;/**&lt;br /&gt;* A JavaMail based MDB for EJB3 use&lt;br /&gt;*/&lt;br /&gt;@MessageDriven(activationConfig={&lt;br /&gt;@ActivationConfigProperty(propertyName="mailServer", propertyValue="mail.server.it"),&lt;br /&gt;@ActivationConfigProperty(propertyName="mailFolder", propertyValue="INBOX"),&lt;br /&gt;@ActivationConfigProperty(propertyName="storeProtocol", propertyValue="pop3"),&lt;br /&gt;/* se volete verificare cosa succede dietro le quinte /*&lt;br /&gt;@ActivationConfigProperty(propertyName="debug", propertyValue="true"),&lt;br /&gt;/*  ogni quanti microsecondi deve scattare il controllo della casella email - es. 30 sec /*&lt;br /&gt;@ActivationConfigProperty(propertyName="pollingInterval", propertyValue="30000"),&lt;br /&gt;@ActivationConfigProperty(propertyName="userName", propertyValue="fiorenzo.pizza@server.it"),&lt;br /&gt;@ActivationConfigProperty(propertyName="password", propertyValue="miapwd")&lt;br /&gt;})&lt;br /&gt;@ResourceAdapter("mail-ra.rar")&lt;br /&gt;public class EmailMDB implements MailListener&lt;br /&gt;{&lt;br /&gt;private static Logger log = Logger.getLogger(EmailMDB.class);&lt;br /&gt;&lt;br /&gt;public void onMessage(Message msg) {&lt;br /&gt;log.info("onMessage, msg="+msg);&lt;br /&gt;parseMsg(msg);&lt;br /&gt;........&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;private void parseMsg(Message msg) {&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;}&lt;/pre&gt;5) per compilarlo sarà necessario includere tra le librerie il file mail-ra.jar.&lt;br /&gt;6) deployate il file...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Commenti: stavolta funziona...&lt;br /&gt;Nella versione in Seam hanno migliorato il connettore, aggiungendo qualche funzionalità di controllo in più.&lt;br /&gt;&lt;br /&gt;riferimento sacro:&lt;br /&gt;&lt;a href="http://wiki.jboss.org/wiki/Wiki.jsp?page=InboundJavaMail"&gt;http://wiki.jboss.org/wiki/Wiki.jsp?page=InboundJavaMail&lt;/a&gt;&lt;br /&gt;&lt;a href="http://docs.jboss.com/seam/latest/reference/en/html/mail.html"&gt;http://docs.jboss.com/seam/latest/reference/en/html/mail.html&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-90290504124404588?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/90290504124404588/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=90290504124404588' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/90290504124404588'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/90290504124404588'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2008/02/come-ricevere-le-email-tramite-mdb.html' title='Come ricevere le email tramite MDB'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-6779318902929800512</id><published>2008-02-03T03:45:00.000-08:00</published><updated>2008-02-04T04:49:06.465-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java_fs'/><title type='text'>Gestione path file system - URL e URI Java</title><content type='html'>Passare sempre per la trasformazione URL--&gt;URI, quando si gestiscono path su file system per evitare problemi di portabilità di codice Java tra Linux e Windows.&lt;br /&gt;Infatti i percorsi che includono cartelle contenenti caratteri come lo spazio (per esempio "Documents and settings"), nella formattazione in URL vengono sostituiti con altri caratteri (per  lo spazio con il '%20') e le risorse non vengono più riconosciute.&lt;br /&gt;&lt;br /&gt;Trasformando sempre l'url nell'uri corrispondente (che non applica nessuna formattazione) si evitano questi imprevisti:&lt;br /&gt;&lt;br /&gt;URL url =getClass().getClassLoader().getResource(...path su file system...);&lt;br /&gt;         &lt;br /&gt;.... = new File(url.&lt;span style="font-weight: bold;"&gt;toURI()&lt;/span&gt;.getPath()));&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-6779318902929800512?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/6779318902929800512/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=6779318902929800512' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/6779318902929800512'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/6779318902929800512'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2008/02/gestione-path-file-system-url-e-uri.html' title='Gestione path file system - URL e URI Java'/><author><name>Fabero</name><uri>http://www.blogger.com/profile/04514949112990966016</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-6342156709794806834</id><published>2008-01-29T06:00:00.000-08:00</published><updated>2008-01-29T08:59:17.454-08:00</updated><title type='text'>ordinare una collection @ManyToOne</title><content type='html'>Ecco l'annotazione di Hibernate (non EJB3 compliant) per ordinare una lista collegata ad un oggetto:&lt;br /&gt;@OrderBy&lt;br /&gt;&lt;br /&gt;Ad esempio:&lt;br /&gt;&lt;pre class="programlisting"&gt;@Entity&lt;br /&gt;public class City {&lt;br /&gt;&lt;br /&gt;   private List&lt;street&gt; streets;&lt;br /&gt;   ......&lt;br /&gt;&lt;br /&gt;&lt;br /&gt; &lt;span style="font-weight: bold;"&gt; @OneToMany(mappedBy="city")&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;    &lt;/span&gt;&lt;span style="font-weight: bold;" class="bold"&gt;@OrderBy("streetName")&lt;/span&gt;&lt;br /&gt;  public List&lt;street&gt; getStreets() {&lt;br /&gt;      return streets;&lt;br /&gt;  }&lt;/street&gt;&lt;/street&gt;&lt;/pre&gt;...&lt;br /&gt;}&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-6342156709794806834?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/6342156709794806834/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=6342156709794806834' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/6342156709794806834'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/6342156709794806834'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2008/01/ordinare-una-collection-in-relazione.html' title='ordinare una collection @ManyToOne'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-2344037933664991478</id><published>2008-01-27T07:44:00.000-08:00</published><updated>2008-01-27T10:51:48.323-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='lucene'/><title type='text'>Apache Lucene...quanta poca documentazione in giro!</title><content type='html'>Alcuni link utili:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.bitworm.com/search/2007/simple-lucene-example/"&gt;http://www.bitworm.com/search/2007/simple-lucene-example/&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.chorrosoftware.com/docs/A%20Quick%20and%20Dirty%20Lucene%20HOWTO.pdf"&gt;http://www.chorrosoftware.com/docs/A%20Quick%20and%20Dirty%20Lucene%20HOWTO.pdf&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.darksleep.com/lucene/"&gt;http://www.darksleep.com/lucene/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;L'immancabile &lt;span style="font-weight: bold;"&gt;Manning:&lt;/span&gt;&lt;br /&gt;&lt;a href="http://www.blogger.com/img/gl.link.gif"&gt;http://www.manning.com/hatcher2/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-2344037933664991478?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/2344037933664991478/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=2344037933664991478' title='2 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/2344037933664991478'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/2344037933664991478'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2008/01/apache-lucenequanta-poca-documentazione.html' title='Apache Lucene...quanta poca documentazione in giro!'/><author><name>Fabero</name><uri>http://www.blogger.com/profile/04514949112990966016</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-7721363974485706234</id><published>2008-01-27T06:14:00.000-08:00</published><updated>2008-01-27T10:52:41.777-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ejb3'/><title type='text'>come aggiungere proprietà a @Id</title><content type='html'>&lt;p&gt;&lt;span style="font-family:Courier;"&gt;&lt;span style="font-size:100%;"&gt;@Id&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;@Column(name="PARTID", primaryKey=true, nullable=false, updatable=false, insertable=false)&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; tratto da: &lt;b&gt;&lt;br /&gt;EJB 3 Annotations for mapping composite primary keys that are part of foreign key&lt;/b&gt;&lt;br /&gt;&lt;a href="http://www.jroller.com/raghukodali/entry/ejb_3_annotations_for_mapping"&gt;http://www.jroller.com/raghukodali/entry/ejb_3_annotations_for_mapping&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-7721363974485706234?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/7721363974485706234/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=7721363974485706234' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/7721363974485706234'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/7721363974485706234'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2008/01/come-aggiungere-propriet-id.html' title='come aggiungere proprietà a @Id'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-4951966198427857913</id><published>2008-01-26T00:37:00.000-08:00</published><updated>2008-01-27T03:46:24.384-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='excel'/><title type='text'>Leggere o scrivere foglie di Excel</title><content type='html'>There are many solutions to read or write Excel spreadsheets from Java. This HowTo is only about OpenSource (and free) solutions.   &lt;h2&gt;JDBC-ODBC Excel driver&lt;/h2&gt; This solution lets you access your Excel worksheet with SQL SELECT statement.  The required ODBC driver is included in a regular Windows installation and the JDBC-ODBC bridge is used to access the Excel DSN.  &lt;p&gt;See this &lt;a href="http://www.rgagnon.com/javadetails/java-0362.html"&gt;HowTo&lt;/a&gt; for an example.  &lt;/p&gt;&lt;h2&gt;JExcel&lt;/h2&gt; Java Excel API is a java API enabling developers to read, write, and modify  Excel spreadsheets dynamically. Any operating system which can run a Java  virtual machine can both process and deliver Excel spreadsheets. One nice thing  about JExcelApi is that it has no dependencies on any third party libraries.&lt;br /&gt;&lt;p&gt;See &lt;a href="http://jexcelapi.sourceforge.net/" target="_top"&gt;http://jexcelapi.sourceforge.net/&lt;/a&gt;  &lt;/p&gt;&lt;h2&gt;POI&lt;/h2&gt;  The POI project consists of APIs for manipulating various file formats based upon Microsoft's OLE 2   Compound Document format using pure Java. POI is your Java Excel solution as well as your Java Word solution.     &lt;p&gt;HSSF is the POI Project's pure Java implementation of the Excel '97(-2002) file   format and it provides a way to read spreadsheets create, modify, read and write XLS spreadsheets.    &lt;/p&gt;&lt;p&gt;Since it's Jakarta project, POI has a dependencies with other JARs (commons,log4j,etc...).&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;The name was originally an acronym for "&lt;b&gt;P&lt;/b&gt;oor &lt;b&gt;O&lt;/b&gt;bfuscation &lt;b&gt;I&lt;/b&gt;mplementation" (ref:  &lt;a href="http://en.wikipedia.org/wiki/Apache_Jakarta_POI" target="_top"&gt;Wikipedia&lt;/a&gt;). &lt;/p&gt;&lt;p&gt;See &lt;a href="http://jakarta.apache.org/poi/" target="_top"&gt;http://jakarta.apache.org/poi/&lt;/a&gt;  &lt;/p&gt;&lt;h2&gt;JXLS&lt;/h2&gt; jXLS is a project that allows creation of extremely complex Excel reports just in several lines of code. It is based on Jakarta POI.  &lt;p&gt;With jXLS, all you need is to create XLS template file with all required formatting, formulas etc using  specific notation to indicate placement of data and then write a couple lines of code to invoke  jXLS engine passing XLS template and the exported data as parameters.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;See &lt;a href="http://jxls.sourceforge.net/" target="_top"&gt;http://jxls.sourceforge.net/&lt;/a&gt;  &lt;/p&gt;&lt;h2&gt;xlSQL&lt;/h2&gt;  xlSQL is a JDBC Driver for Excel and CSV data sources. Documents can be read and   written with SQL as if they were tables in a database.    &lt;p&gt;You can export XLS to XML or SQL INSERT statements. xlSQL includes its own "zero-admin" mySQL database.  The documentation is minimal at this time.   &lt;/p&gt;&lt;p&gt;See &lt;a href="http://xlsql.sourceforge.net/" target="_top"&gt;http://xlsql.sourceforge.net/&lt;/a&gt;  &lt;/p&gt;&lt;h2&gt;JCOM&lt;/h2&gt; JCOM is a Java to COM bridge library. With JCOM you can call a COM object from Java as if it were  a Java object without having to deal with the internals of JNI.  The documentation is minimal (in Japanese!).&lt;br /&gt;&lt;p&gt;See &lt;a href="http://sourceforge.net/projects/jcom" target="_top"&gt; http://sourceforge.net/projects/jcom&lt;/a&gt;  &lt;/p&gt;&lt;p&gt;See also this &lt;a href="http://www.rgagnon.com/javadetails/java-0498.html"&gt;HowTo&lt;/a&gt; for an alternative package to access a COM package from Java.  &lt;/p&gt;&lt;h2&gt;OpenXLS Java Spreadsheet SDK&lt;/h2&gt; OpenXLS claims that it has the best compatibility with complex Excel files and able to handle any kind of Excel file out there without corrupting it. This open source effort is the result of over 6 years of development into it.&lt;br /&gt;&lt;p&gt;See &lt;a href="http://www.extentech.com/estore/product_detail.jsp?product_group_id=228" target="_top"&gt;http://www.extentech.com/estore/product_detail.jsp?product_group_id=228&lt;/a&gt;&lt;/p&gt;&lt;p&gt;See also this &lt;a href="http://www.rgagnon.com/javadetails/java-0586.html"&gt;HowTo&lt;/a&gt; for a way to create a simple XLS without any additional library.  &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-4951966198427857913?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/4951966198427857913/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=4951966198427857913' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/4951966198427857913'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/4951966198427857913'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2008/01/read-or-write-excel-spreadsheets-from.html' title='Leggere o scrivere foglie di Excel'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-7734235397449578043</id><published>2008-01-26T00:24:00.000-08:00</published><updated>2008-01-27T03:49:26.139-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='date'/><title type='text'>Quando la data non si comporta come ti aspetti!</title><content type='html'>When displaying dates, the java.util package automatically adjusts for the local timezone. This can cause problems when displaying dates within an application, as the dates look as if they are exactly one day previous to that which is stored in the Excel spreadsheet, although this is not in fact the case.&lt;br /&gt;&lt;br /&gt;Excel stores dates as a numerical value, and the conversion process for transforming this into a java.util.Date consists of converting the Excel number into a UTC value and then using the UTC number to create the java Date. Say the number in Excel represents 20 August 2003, then the UTC equivalent of this number is used to create a java.util.Date object.&lt;br /&gt;&lt;br /&gt;The problem occurs if you are operating in a timezone other than GMT. As soon as you try and perform any user IO on that java Date object (eg. System.out.print(date)) the JVM will perform timezone adjustment calculations. If you are located in EST zone (which is GMT - 5 hours) java will subtract 5 hours from the date - so the Date object instead of being 00:00 20/08/2003 becomes 19:00 19/08/2003. Because java recognizes you only want a date and not a date time, it truncates the hours/minutes/seconds and presents 19/08/2003 - so it appears that the day is one day less than was stored in Excel, whereas it is really only a few hours (the timezone offset) less. Needless to say, this is a very annoying feature.&lt;br /&gt;&lt;br /&gt;The easiest way to work around this (and the method used internally by the getContents() method of a jxl.DateCell) is to force the timezone of the date format as follows:&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;TimeZone gmtZone = TimeZone.getTimeZone("GMT");&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;SimpleDateFormat format = new SimpleDateFormat("dd MMM yyyy");&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;format.setTimeZone(gmtZone);&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;DateCell dateCell = ....&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;String dateString = format.format(dateCell.getDate());&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-7734235397449578043?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/7734235397449578043/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=7734235397449578043' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/7734235397449578043'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/7734235397449578043'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2008/01/date-display.html' title='Quando la data non si comporta come ti aspetti!'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5383785703811438497.post-7731194228336143388</id><published>2008-01-18T00:02:00.000-08:00</published><updated>2008-02-24T23:57:02.714-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='wsad'/><title type='text'>parte la sfida.... jboss vs wsad 6.1</title><content type='html'>si comincia a studiare il nemico, sul campo di battaglia prescelto:&lt;br /&gt;ejb 3.0&lt;br /&gt;enterprise service bus&lt;br /&gt;&lt;br /&gt;link utili:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www-1.ibm.com/support/docview.wss?uid=tss1wp101142"&gt;http://www-1.ibm.com/support/docview.wss?uid=tss1wp101142&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.ibm.com/developerworks/search/searchResults.jsp?searchSite=dW&amp;amp;searchScope=dW&amp;amp;displaySearchScope=dW&amp;amp;encodedQuery=ejb3&amp;amp;encodedFilter=%2B%28+%29+-%28meta3.tsdoctype%3Adb550%29++-%28meta3.tsdoctype%3Ad100%29++%2B%28meta2.language%3Aen%29++%2B%28meta2.newcountryurl%3Aus+meta2.country%3Azz%29+&amp;amp;summaryShow=on&amp;amp;offset=-20&amp;amp;type=all&amp;amp;lastUserQuery1=ejb3&amp;amp;lastUserQuery2=&amp;amp;lastUserQuery3=&amp;amp;lastUserQuery4=&amp;amp;perPage=20&amp;amp;pageDate=&amp;amp;pageLang=&amp;amp;langEncoding=UTF8&amp;amp;rankprofile=8"&gt;http://www.ibm.com/developerworks/search/searchResults.jsp?searchSite=dW&amp;amp;searchScope=dW&amp;amp;displaySearchScope=dW&amp;amp;encodedQuery=ejb3&amp;amp;encodedFilter=%2B%28+%29+-%28meta3.tsdoctype%3Adb550%29++-%28meta3.tsdoctype%3Ad100%29++%2B%28meta2.language%3Aen%29++%2B%28meta2.newcountryurl%3Aus+meta2.country%3Azz%29+&amp;amp;summaryShow=on&amp;amp;offset=-20&amp;amp;type=all&amp;amp;lastUserQuery1=ejb3&amp;amp;lastUserQuery2=&amp;amp;lastUserQuery3=&amp;amp;lastUserQuery4=&amp;amp;perPage=20&amp;amp;pageDate=&amp;amp;pageLang=&amp;amp;langEncoding=UTF8&amp;amp;rankprofile=8&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.ibm.com/developerworks/db2/library/techarticle/dm-0801telang/?S_TACT=105AGX01&amp;amp;S_CMP=HP"&gt;http://www.ibm.com/developerworks/db2/library/techarticle/dm-0801telang/?S_TACT=105AGX01&amp;amp;S_CMP=HP&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;http://www.ibm.com/developerworks/websphere/techjournal/0708_vines/0708_vines.html&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5383785703811438497-7731194228336143388?l=j2flower.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://j2flower.blogspot.com/feeds/7731194228336143388/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5383785703811438497&amp;postID=7731194228336143388' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/7731194228336143388'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5383785703811438497/posts/default/7731194228336143388'/><link rel='alternate' type='text/html' href='http://j2flower.blogspot.com/2008/01/parte-la-sfida-jboss-vs-wsad-61.html' title='parte la sfida.... jboss vs wsad 6.1'/><author><name>fiorenzo pizza</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-U53mEjc4XMY/AAAAAAAAAAI/AAAAAAAAAAA/z_qwaFN0MW4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry></feed>
