Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Peugeot Polygon Concept: ecco il futuro delle utilitarie
Peugeot Polygon Concept: ecco il futuro delle utilitarie
Polygon è la concept car di Peugeot che mostra il futuro delle soluzioni del segmento B: tra design compatti e innovativi affiancati da dimensioni compatte uno scherzo dalla manovrabilità incredibile per le manovre a bassa velocità
Reno16 Pro: il compatto di OPPO punta su fotocamera da 200MP e il nuovo Bubble! La recensione
Reno16 Pro: il compatto di OPPO punta su fotocamera da 200MP e il nuovo Bubble! La recensione
OPPO ha portato in Italia, dal 1° luglio 2026, Reno16 Pro: display AMOLED da 6,32 pollici a 144Hz, tripla fotocamera con sensore principale da 200 megapixel, chip Dimensity 8550 Super e batteria da 6000mAh, al prezzo di lancio di 899 euro. Lo abbiamo provato per due settimane insieme al nuovo accessorio Bubble, per capire se la formula compatta della serie regge ancora di fronte a un listino da 1099 euro
 Hisense 55U7SE: tuttofare e accessibile, il MiniLED per film, sport e gioco
Hisense 55U7SE: tuttofare e accessibile, il MiniLED per film, sport e gioco
MiniLED di fascia media con local dimming a 192 zone, 144 Hz nativi e audio firmato Devialet. La prova strumentale riscontra colori affidabili e gaming reattivo, per un prodotto molto accessibile e convincente. Ma la soundbar aggiuntiva è quasi d'obbligo
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 29-10-2007, 07:54   #1
nazkul
Member
 
Iscritto dal: Sep 2004
Messaggi: 44
[JSP] pathname di un file da utilizzare

Ciao, sto facendo un'applicazione per il web e mi serve leggere il contenuto di un file .xml, però non ho idea di come fare per permettere alla classe addetta alla lettura come trovare quel file:
questo file è in una delle cartelle che formano il progetto, solo che quando faccio
Codice:
SqlConfig pars=new SqlConfig("Dati.xml");
e poi testo il mio progetto, Eclipse mi segnala:
Codice:
C:\Programmi\Eclipse Enterprise Edition\eclipse\Dati.xml (Impossibile trovare il file specificato)

Infatti non ha quel pathname, solo che non ho idea di come dargli il path locale, anche perché per Eclipse
codice:C:\Programmi\Eclipse Enterprise Edition\eclipse\

è prefisso costante in ogni path che metto.

Provando un'applicazione stand alone, se metto

Codice:
"./src/dati.xml"
lo trova, se è web application non va più bene.
Se qualcuno mi può aiutare lo ringrazio in anticipo.
nazkul è offline   Rispondi citando il messaggio o parte di esso
Old 29-10-2007, 14:53   #2
AnonimoVeneziano
Senior Member
 
L'Avatar di AnonimoVeneziano
 
Iscritto dal: Aug 2001
Città: San Francisco, CA, USA
Messaggi: 13827
Mmm, non sono un esperto del mondo di JSP e servlets, ho iniziato da poco (2 giorni fa) , ma so che con "application.getRealPath("nomefile");" si può ottenere il path reale di un file all'interno della directory di root dell'applicazione.

Non so se è quello che cercavi e non so neanche si ti sono stato utile o ti ho solo confuso le idee, comunque vedi tu

Ciao

EDIT: ma a te Eclipse funziona bene? Io ho dovuto passare a Netbeans perchè con JavaEE Eclipse crashava , sia su Windows che su Linux, ogni 3,4 minuti in media
__________________
GPU Compiler Engineer
AnonimoVeneziano è offline   Rispondi citando il messaggio o parte di esso
Old 30-10-2007, 09:42   #3
nazkul
Member
 
Iscritto dal: Sep 2004
Messaggi: 44
Ciao, non sono riuscito a provare quel metodo, non capisco quale import devo fare perché non trovo la classe nella documentazione. C'è la classe Application ma non ha quel metodo... mi sai dire cosa dovrei importare?

Comunque credo che non sia proprio ciò di cui ho bisogno, la classe che deve analizzare il file non è una servlet o bean, è una classe che si occupa della connessione con un DB, si appoggia a un parser xml e deve cercare questo file dove sono messi i dati di login. Però purtroppo emergono questi problemi in fase di ricerca di dati.xml.

Ciao e grazie mille
nazkul è offline   Rispondi citando il messaggio o parte di esso
Old 30-10-2007, 09:48   #4
isAlreadyInUse
Senior Member
 
L'Avatar di isAlreadyInUse
 
Iscritto dal: Sep 2007
Messaggi: 754
E chi è che chima i metodi di questa classe?
__________________
http://www.tevigroup.it/
isAlreadyInUse è offline   Rispondi citando il messaggio o parte di esso
Old 30-10-2007, 10:21   #5
nazkul
Member
 
Iscritto dal: Sep 2004
Messaggi: 44
Dunque:
una javaBean si appoggia a ElaboraDB che delega alla classe ConnectionManager che usa SqlConfig che ha un riferimento al parser.

Dati.xml deve essere letta da ConnectionManager che poi passa la stringa che rappresenta il pathname a SqlConfig e poi verrà letto il suo contenuto.

Non so se ho reso l'idea della struttura, forse ho estremizzato molto la "delegation".
nazkul è offline   Rispondi citando il messaggio o parte di esso
Old 30-10-2007, 14:20   #6
ally
Bannato
 
L'Avatar di ally
 
Iscritto dal: Jan 2003
Città:
Messaggi: 4423
...è possibile annegare i dati di connessione del db nel server.xml del webserver...così avresti modo di delegare lo stesso webserver a gestire il pool di connessioni....

...ciao...
ally è offline   Rispondi citando il messaggio o parte di esso
Old 30-10-2007, 14:22   #7
ally
Bannato
 
L'Avatar di ally
 
Iscritto dal: Jan 2003
Città:
Messaggi: 4423
...posto una classe per gestire un file.properites...un altro spunto per risolvere il tuo cruccio...con le opportune modifiche si puo' adattare al tuo file xml...

Codice:
public class Costanti {

	private static final String FILE_PROPERTIES = "config.properties";

	private static String docRoot;

	private static java.util.Properties properties = null;

	private static Costanti me = null;

	protected Costanti() {
		try {
			properties = new java.util.Properties();
			if (docRoot != null)
				properties.setProperty("docRoot", docRoot);
			String file = docRoot 
				    + System.getProperty("file.separator") + "WEB-INF"
					+ System.getProperty("file.separator") + "classes"
					+ System.getProperty("file.separator") + FILE_PROPERTIES;
			properties.load(new FileInputStream(file));
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

	private static void makeInstance() {
		if (me == null) {
			me = new Costanti();
		}
	}

	public static void setDocRoot(String docRootPath) {
		if (docRoot == null)
			docRoot = docRootPath;
	}
	public static String getDocRoot() {

		return docRoot;
	}

	public static String getProperty(String key) {
		return _getProperty(key);
	}

	private static String _getProperty(String key) {
		makeInstance();
		return properties.getProperty(key);
	}

	public static void setProperty(String key, String value) {
		makeInstance();
		_setProperty(key, value);
	}

	private static void _setProperty(String key, String value) {
		properties.setProperty(key, value);
	}
}
...ciao...
ally è offline   Rispondi citando il messaggio o parte di esso
Old 30-10-2007, 17:26   #8
nazkul
Member
 
Iscritto dal: Sep 2004
Messaggi: 44
Ciao, mi sa che come soluzione per il mio caso non può andare, in quanto il mio è un progetto da consegnare per essere testato con Tomcat su un altro computer, è un progetto per un esame in pratica.
Da qui la scelta del file xml, la necessità del dump per il DB ecc...
Dopo averci ragionato un po' mi rendo conto che averlo strutturato così dovrebbe essere la scelta giusta, solo che non so dove sbattere la testa con questo errore in fase di test.
Comunque ti ringrazio per i consigli.
nazkul è offline   Rispondi citando il messaggio o parte di esso
Old 30-10-2007, 17:34   #9
ally
Bannato
 
L'Avatar di ally
 
Iscritto dal: Jan 2003
Città:
Messaggi: 4423
Quote:
Originariamente inviato da nazkul Guarda i messaggi
Ciao, mi sa che come soluzione per il mio caso non può andare, in quanto il mio è un progetto da consegnare per essere testato con Tomcat su un altro computer, è un progetto per un esame in pratica.
Da qui la scelta del file xml, la necessità del dump per il DB ecc...
Dopo averci ragionato un po' mi rendo conto che averlo strutturato così dovrebbe essere la scelta giusta, solo che non so dove sbattere la testa con questo errore in fase di test.
Comunque ti ringrazio per i consigli.
...la soluzione del secondo post dovrebbe a mio avviso fare al caso tuo...

Codice:
protected Costanti() {
		try {
			properties = new java.util.Properties();
			if (docRoot != null)
				properties.setProperty("docRoot", docRoot);
			String file = docRoot 
				    + System.getProperty("file.separator") + "WEB-INF"
					+ System.getProperty("file.separator") + "classes"
					+ System.getProperty("file.separator") + FILE_PROPERTIES;
			properties.load(new FileInputStream(file));
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
...questa parte di codice permette di trovare senza problemi il file di properties...in qualunque directory l'applicativo web venga installato...e con qualunque sistema operativo...che poi tu voglia utilizzare un file xml non cambia nulla...

...ciao...
ally è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Peugeot Polygon Concept: ecco il futuro delle utilitarie Peugeot Polygon Concept: ecco il futuro delle ut...
Reno16 Pro: il compatto di OPPO punta su fotocamera da 200MP e il nuovo Bubble! La recensione Reno16 Pro: il compatto di OPPO punta su fotocam...
 Hisense 55U7SE: tuttofare e accessibile, il MiniLED per film, sport e gioco Hisense 55U7SE: tuttofare e accessibile, il Min...
Kindle Scribe Colorsoft: riduce le cornici e diventa a colori, ma il prezzo è alto Kindle Scribe Colorsoft: riduce le cornici e div...
L'IA cambia tutte le regole della sicurezza tra vulnerabilità e sorveglianza. Intervista al CEO di Proofpoint L'IA cambia tutte le regole della sicurezza tra ...
SpaceX Starship: Ship 40 ha eseguito un ...
Redmi Note 17 a un passo dal debutto, ma...
Gli aumenti di prezzo del PS Plus potreb...
Almeno 64 GB di RAM per giocare? Il caso...
Gemini si integrerà con le auto e potrà ...
Addio a OxygenOS di OnePlus e alla Realm...
Intel conferma l'aumento dei prezzi su C...
In vendita Withings BodyFit, molto più d...
Inkterface: Steam Machine ospita un pann...
Stare seduti oltre 30 minuti di fila aum...
A Milano l'Italia ha firmato la sovranit...
Cos'è PeerTube, la piattaforma di...
In 12 articoli TOP c'è il meglio ...
La pirateria è l'unica tutela per...
Roomba Plus 516 Combo in offerta a 479€:...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 00:53.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v