Ringraziamo tutti insieme il ministero per aver fatto lo sforzo di citare GNU/Linux e predisporre un pacchetto di installazione.
Detto questo, i tecnici hanno un po' ciccato il pacchetto. Per installare:
1) (anche senza sudo) ./sui_linux.bin
2) alla richiesta di path java, premi CTRL+c per terminare il programma
3) cd /tmp/selfextract.*/install/
4) modifica install.sh cambiando la riga
- Codice: Seleziona tutto
VERSION=`$JAVA -version 2>&1 | grep "Java(TM)"| grep "1.6"`
togliendo l'errore, risulta
- Codice: Seleziona tutto
VERSION=`$JAVA -version 2>&1 | grep "1.6"`
4) ./install.sh
5) alla richiesta di path di installazione, metti ciò che preferisci (il ministero consiglia /home/
ilmionomeutente/Scrivania/ )
6) cd /home/`whoami`/Scrivania/SUI_1.0
a questo punto sono fermo all'errore seguente:
- Codice: Seleziona tutto
../SUI_1.0/resources/logs$ cat 29-1-2011_err.log
Exception in thread "main" java.lang.NullPointerException
at Main.main(Main.java:47)
Exception in thread "main" java.lang.NullPointerException
at Main.main(Main.java:47)
Exception in thread "main" java.lang.NullPointerException
at Main.main(Main.java:47)
Exception in thread "main" java.lang.NullPointerException
at Main.main(Main.java:47)
E tanto per dirne una, ho come l'impressione di aver trovato la riga 47 (ma potrebbe essere solo una impressione)
- Codice: Seleziona tutto
import common.CommonUtils;
import gui.*;
import java.awt.Font;
import java.io.*;
import java.util.GregorianCalendar;
import javax.swing.*;
public class Main
implements Constants
{
public Main()
{
}
public static void main(String args[])
{
MainFrame frame = null;
try
{
redirectToLogs();
UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");
GuiProperties.baseFont = new Font("SansSerif", 0, 11);
frame = new MainFrame();
frame.setVisible(true);
frame.printOnLog((new StringBuilder(String.valueOf(CommonUtils.getCurrentTime()))).append(" : APPLICAZIONE AVVIATA").toString());
}
catch(UnsupportedLookAndFeelException e)
{
try
{
UIManager.setLookAndFeel("javax.swing.plaf.metal.MetalLookAndFeel");
GuiProperties.baseFont = new Font("SansSerif", 0, 10);
frame = new MainFrame();
frame.setVisible(true);
}
catch(Exception e1)
{
frame.printOnLog(e1.getMessage());
int res = JOptionPane.showConfirmDialog(null, "Attenzione! Si \351 verificato un errore imprevisto.\nSportello Unico Immigrazione\npotrebbe trovarsi in uno stato errato. Continuare?", "Errore imprevisto", 0, 0);
if(res == 1)
System.exit(1);
}
}
catch(Exception e)
{
if(frame != null)
frame.printOnLog(e.getMessage());
int res = JOptionPane.showConfirmDialog(null, "Attenzione! Si \351 verificato un errore imprevisto.\nSportello Unico Immigrazione\npotrebbe trovarsi in uno stato errato. Continuare?", "Errore imprevisto", 0, 0);
if(res == 1)
System.exit(1);
}
}
private static void redirectToLogs()
throws InterruptedException
{
try
{
byte outReaded[] = (byte[])null;
byte errReaded[] = (byte[])null;
GregorianCalendar gc = new GregorianCalendar();
String giorno = (new StringBuilder()).append(gc.get(5)).toString();
String mese = (new StringBuilder()).append(gc.get(2) + 1).toString();
String anno = (new StringBuilder()).append(gc.get(1)).toString();
File out = new File((new StringBuilder(String.valueOf(LOGS_DIR_PATH))).append(giorno).append("-").append(mese).append("-").append(anno).append("_out.log").toString());
if(!out.exists())
out.createNewFile();
else
try
{
FileInputStream in = new FileInputStream(out);
outReaded = new byte[in.available()];
in.read(outReaded);
in.close();
}
catch(Exception exception) { }
File err = new File((new StringBuilder(String.valueOf(LOGS_DIR_PATH))).append(giorno).append("-").append(mese).append("-").append(anno).append("_err.log").toString());
if(!err.exists())
err.createNewFile();
else
try
{
FileInputStream in = new FileInputStream(err);
errReaded = new byte[in.available()];
in.read(errReaded);
in.close();
}
catch(Exception exception1) { }
PrintStream psOut = new PrintStream(out);
PrintStream psErr = new PrintStream(err);
System.setOut(psOut);
System.setErr(psErr);
if(outReaded != null)
System.out.println(new String(outReaded));
if(errReaded != null)
System.err.println(new String(errReaded));
}
catch(FileNotFoundException e)
{
e.printStackTrace();
}
catch(IOException e)
{
e.printStackTrace();
}
}
}