Derby error configurazione con Netbeans porta 1527

Attivando Derby potresti visualizzare il seguente errore:

“Derby error connecting to server localhost on port 1527 with message connection refused”

Questo può capitare nel caso in cui la porta di default di Derby, appunto la 1527, è chiusa per ovvi motivi di sicurezza.

Cosa possiamo fare in questo caso? Ci sono diverse strade da percorre e tra le tante la più veloce e immediata è quella di trovare la cartella dove i file di Derby sono situati e modificare i permessi di accesso attraverso riga di comando.

Vediamo subito come fare:

Step1 Cercare la giusta cartella dove modificare il file:

Vedete questa snapshot? Cliccate tasto destro su JavaDB->Properties

Immagine

Successivamente troverete il campo Java DB Installation (prendete questa stringa e copiatela nel prompt dei comandi preceduta dal comando linux “cd” (change directory)

Quindi avrete qualcosa di questo genere: cd /Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/db

Il nostro intento è quello di entrare nella cartella security dove andremo a cambiare i permessi e quindi:

cd /Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/jre/lib/security

(notate che la cartella db scompare perché quella serve solo a Netbeans per sapere dove si trovano i db)

ora dobbiamo aprire il file “java.policy” però con accesso da amministratore in quanto tale cartella non può essere modificata da qualsiasi utente e quindi useremo “sudo” (Super User DO) e “vi” (così apriamo con il text editor per modificarlo)

$sudo vi java.policy

Dopo aver dato il Return vi chiederà la password da amministratore di cui non visualizzerete neanche una lettera sempre per privacy.

Una volta aperto dovrete pigiare la lettera “i” ( questa è una forma di prevenzione per evitare inserimenti “adcapocchiam” (deriva dal latino non preoccupatevi)-> quindi pigiate la lettera “i” e vedrete comparire la scritta sotto –INSERT–

Dopo il comando “grant” vedrete la parentesi graffa aperta, da qui iniziano i permessi, quindi scendete sino a qualsiasi riga dove vedete scritto “permission” e inserite questa stringa:

permission java.net.SocketPermission"localhost:1527","listen,resolve";

Ora dovrete salvare e chiudere e per farlo con il text editor di linux bisogna:

  1. premere tasto “esc” sulla tastiera;
  2. scrivere ” :wq!” (significa “:” identifica i comandi che inserirete che sono: w(Write)+q(Quit)+”!” forzare l’azione).

 

Fatto questo la vostra porta 1527 sarà abilitata quindi potrete dal framework (Netbeans) e aggiungere un nuovo DataBase.

Spero possa essere utile tutto questo.

Per qualsiasi spiegazione o ulteriore problema sarò felice di cercare una soluzione con voi.

A presto ragazzi

Alessio