468x60

martedì 13 ottobre 2009

JPA Error "Unknown abstract schema type"

Sviluppando applicazioni Java JPA mi è capitato di affrontare il problema di un fastidioso errore di runtime: Unknown abstract schema type. Per esteso
Exception Description: Error compiling the query Unknown abstract schema type

Dopo parecchie ricerche ho scoperto che l'errore viene lanciato quando JPA fallisce nell'allocare la entity class, spesso quando:
  • abbiamo specificato nella query JPA il nome della tabella anzichè il nome della entity class
  • quando JPA è eseguito in modalità standalone, oppure non dentro un Java EE container (come Tomcat), abbiamo dimenticato di scrivere una lista di TUTTE le entity class nel file persistence.xml

lunedì 12 ottobre 2009

JasperViewer - parametro per non chiudere l'intera applicazione

Nel mio articolo JasperReport in applicazioni Java abbiamo visto cos'è JasperReport e come può essere utilizzato in applicazioni Java, mediante un semplice esempio...

Se avete provato ad utilizzare JasperViewer per visualizzare i report avrete notato che chiudendolo viene chiusa e terminata anche l'intera applicazione... Per risolvere questo inconveniente basta passare il parametro "false" al metodo viewReport di JasperViewer, nel seguente modo:
JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, null, jdbcConnection);
JasperViewer.viewReport(jasperPrint, false);

Buon utilizzo!

giovedì 8 ottobre 2009

Fatal error: Maximum execution time exceeded

Installando software PHP "corposi" può capitare di riscontrare messaggi di errore del tipo:
Fatal error: Maximum execution time of 60 seconds exceeded
Per risolvere questo problema basta editare il file php.ini aumentando il valore della variabile max_execution_time (portandolo ad esempio a 300)

Encryption tools

Ecco alcuni ottimi software gratuiti per la criptazione di files...

AxCrypt, è un programma open source che permette di cifrare qualsiasi file ricorrendo all’algoritmo Rindajel (AES 128). Semplicissimo da installare ed utilizzare, permette di criptare i files dal file Explorer di Windows semplicemente cliccandoci sopra col tasto destro del mouse.

TrueCrypt, è un programma open source per la criptazione dei dati del proprio hard disk, col quale è possibile creare partizioni criptate e volumi criptati, dentro i quali è possibile archiviare i dati ed utilizzarli come se fossero normali partizioni aggiuntive.

Al seguente link è possibile trovare una lista di software free per la criptazione di files e cartelle


martedì 6 ottobre 2009

FTP shell script per Windows

Molto spesso è comodo poter schedulare delle operazioni pianificate, tra cui anche le operazioni di FTP... Per farlo basta creare uno shell script (un file batch .bat) che esegua i comandi del client FTP di MS DOS.

Ecco una lista dei comandi del client FTP:

Possiamo passare i comandi da far eseguire al client su un file, col seguente comando:
ftp -s:nomefile indirizzo_server_ftp

Buon utilizzo!

sabato 3 ottobre 2009

Access denied for user 'root'@'localhost' in MySQL

Effettuando l'upgrade di alcuni MySql Server ho riscontrato che la procedura guidata di configurazione dell'istanza non andava a buon fine, perchè non riusciva ad applicare le Security Settings...
Ho notato che il problema era dovuto ad una password scorretta che il server MySql teneva conservata... infatti tentando di accedere al database veniva mostrato il seguente messaggio di errore:

Access denied for user 'root'@'localhost' (using password: YES)

Per risolvere tale problema è sufficiente resettare la password dell'utente root, nel seguente modo:

- arrestare il processo mysqld

- eseguire mysqld --skip-grant-tables

- aprire una nuova shell ed entrare in MySQL

- lanciare il seguente comando: update mysql.user set password=password('miapasswordqui') where user='root';

- arrestare mysqld e riavviarlo normalmente

mercoledì 30 settembre 2009

Pattern architetturale Model-View-Controller

Model-View-Controller (MVC, talvolta tradotto in italiano Modello-Vista-Controllore) è un pattern architetturale molto diffuso nello sviluppo di interfacce grafiche di sistemi software object-oriented. Originariamente impiegato dal linguaggio Smalltalk, il pattern è stato esplicitamente o implicitamente sposato da numerose tecnologie moderne, come framework basati su PHP (Symfony, Zend Framework), su Ruby (Ruby on Rails), su Python (Django), su Java (Swing, JSF e Struts), su Objective C o su .NET. A causa della crescente diffusione di tecnologie basate su MVC nel contesto di framework o piattaforma middleware per applicazioni Web, l'espressione framework MVC o sistema MVC sta entrando nell'uso anche per indicare specificamente questa categoria di sistemi (che comprende per esempio Ruby on Rails, Struts, Spring, Tapestry e Catalyst).

Struttura

Il pattern è basato sulla separazione dei compiti fra i componenti software che interpretano tre ruoli principali:
  • il model fornisce i metodi per accedere ai dati utili all'applicazione
  • il view visualizza i dati contenuti nel model e si occupa dell'interazione con utenti e agenti
  • il controller riceve i comandi dell'utente (in genere attraverso il view) e li attua modificando lo stato degli altri due componenti
Questo schema, fra l'altro, implica anche la tradizionale separazione fra la logica applicativa (in questo contesto spesso chiamata "logica di business"), a carico del controller e del model, e l'interfaccia utente a carico del view.
468x60

Cerca su Google

Cerca nel Blog con Google