put

Mattepuffo's logo
Convertire String in InputStream in Java

Convertire String in InputStream in Java

Vediamo al volo un piccolo snippet di codice Java che ci permette di convertire un oggetto String (che rappresenta una stringa) in InputStream.

Dopo la conversione useremo un BufferedReader per leggere l'InputStream.

Questa cosa mi è servita in un mio progetto, anche se non ricordo bene dove; giusto per dirvi che ance se sembra una cosa insensata, visto l'esempio semplicistico, in verità può capitare di dover eseguire questa operazione.

Mattepuffo's logo
FTP upload con Java

FTP upload con Java

Oggi vediamo come fare l'upload di file su un server FTP in Java.

Per la conessione al server useremo le librerie Apache Net Commons (che potete scaricare da qua).

Questa libreria è molto potente ed ha molti strumenti integrati.

Noi ne vedremo una piccola parte ovviamente.

Scaricate la libreria e aggiungete il JAR al vostro progetto.

Mattepuffo's logo
Svuotare un form in JSF

Svuotare un form in JSF

Ultimamente mi sono dato allo studio del framework JSF (Java Server Faces).

Un arogmento molto richiesto è come svuotare un form dopo che è stato inviato (e magari anche validato) senza usare redirect o Javascript.

Perchè il fatto è che il comportamento di default prevede che il form non si svuoti se si rimane nella stessa pagina.

Vediamo quindi come fare; prima di tutto abbiamo un form del genere:

      <h:form id="frm_add_lavoro">
            <h:inputText value="#{lb.titolo}" id="titolo">
            </h:inputText><br/>
            <h:inputTextarea value="#{lb.testo}" id="testo">
            </h:inputTextarea>
            <h:commandButton action="#{lb.addLavoro()}" value="Aggiungi lavoro" />
        </h:form>

La cosa importante è specificare un id al form e un id per ogni componente che ci interessa, in modo da poterli richiamare nel nostro ManagedBean.       

Mattepuffo's logo
Cambiare tab con Ctrl-TAB in un JTabbedPane

Cambiare tab con Ctrl-TAB in un JTabbedPane

JTabbedPane è il componente SWING che si occupa di dividere l'interfaccia in tab.

Una delle cose che ormai tutti i programmi fanno, e quindi alla quale siamo abituati, è cambiare tab usando la combinazione Ctrl+TAB.

Di default in Java il comportamento non è questo (o forse lo è solo in Windows ma non ricordo bene).

Possiamo però modificarlo noi.

Nel nostro JFrame, nel costruttore:

TabKeys.setupTabTraversalKeys(jTabbedPane1);

TabKeys è una classe creata apposta che adesso vedremo.

Mattepuffo's logo
Download file in Android

Download file in Android

Quello che vediamo oggi è come scaricare file in Android dalla rete.

Prima di tutto i permessi da mettere nell'AnrdoidManifest:

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

Come vedete due sono quelli che ci servono come minimo: quello legato a internet per la connessione, e quello per salvare i file sul dispositivo.

Nella nostra Activity:

public class MainActivity extends Activity {
    
    private String path = Environment.getExternalStorageDirectory().getAbsolutePath() + File.separator;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        new DownloadDatas().execute("");
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }
    
    public class DownloadDatas extends AsyncTask  {

        @Override
        protected Object doInBackground(Object... params) {
            try {
                DownloadFile.downlad(path + "file.sqlite");
            } catch (IOException e) {
            }
            return null;
        }
      
    }

}

Come prima cosa, notiamo che qui impostiamo il path che punta alla directory interna al dispositivo, dove salvare i file.