#
# Copyright 2005 Sun Microsystems, Inc.  All Rights Reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License version 2 only, as
# published by the Free Software Foundation.  Sun designates this
# particular file as subject to the "Classpath" exception as provided
# by Sun in the LICENSE file that accompanied this code.
#
# This code is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
# version 2 for more details (a copy is included in the LICENSE file that
# accompanied this code).
#
# You should have received a copy of the GNU General Public License version
# 2 along with this work; if not, write to the Free Software Foundation,
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
#
# Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
# CA 95054 USA or visit www.sun.com if you need additional information or
# have any questions.
#

# CacheRowSetImpl exceptions
cachedrowsetimpl.populate = Oggetto ResultSet non valido fornito per l'inserimento dati nel metodo
cachedrowsetimpl.invalidp = Generato fornitore di persistenza non valido
cachedrowsetimpl.nullhash = Impossibile istanziare l'istanza CachedRowSetImpl. Tabella hash nulla fornita al costruttore
cachedrowsetimpl.invalidop = Operazione non valida nella riga di inserimento
cachedrowsetimpl.accfailed = acceptChanges non riuscito
cachedrowsetimpl.invalidcp = Posizione cursore non valida
cachedrowsetimpl.illegalop = Operazione non consentita nella riga non inserita
cachedrowsetimpl.clonefail = Clone non riuscito: {0}
cachedrowsetimpl.invalidcol = Indice di colonna non valido
cachedrowsetimpl.invalcolnm = Nome di colonna non valido
cachedrowsetimpl.boolfail = getBoolen non riuscito per il valore ( {0} ) nella colonna {1}
cachedrowsetimpl.bytefail = getByte non riuscito per il valore ( {0} ) nella colonna {1}
cachedrowsetimpl.shortfail = getShort non riuscito per il valore ( {0} ) nella colonna {1}
cachedrowsetimpl.intfail = getInt non riuscito per il valore ( {0} ) nella colonna {1}
cachedrowsetimpl.longfail = getLong non riuscito per il valore ( {0} ) nella colonna {1}
cachedrowsetimpl.floatfail = getFloat non riuscito per il valore ( {0} ) nella colonna {1}
cachedrowsetimpl.doublefail = getDouble non riuscito per il valore ( {0} ) nella colonna {1}
cachedrowsetimpl.dtypemismt = Mancata corrispondenza dei tipi di dati
cachedrowsetimpl.datefail = getDate non riuscito per il valore ( {0} ) nella colonna {1}. Nessuna conversione disponibile.
cachedrowsetimpl.timefail = getTime non riuscito per il valore ( {0} ) nella colonna {1}. Nessuna conversione disponibile.
cachedrowsetimpl.posupdate = Aggiornamenti posizionati non supportati
cachedrowsetimpl.unableins = Impossibile istanziare: {0}
cachedrowsetimpl.beforefirst = beforeFirst: operazione cursore non valida
cachedrowsetimpl.first = First: operazione cursore non valida
cachedrowsetimpl.last = last: TYPE_FORWARD_ONLY
cachedrowsetimpl.absolute = absolute: posizione cursore non valida
cachedrowsetimpl.relative = relative: posizione cursore non valida
cachedrowsetimpl.asciistream = lettura non riuscita per il flusso ascii
cachedrowsetimpl.binstream = lettura non riuscita per il flusso binario
cachedrowsetimpl.failedins = operazione non riuscita nella riga di inserimento
cachedrowsetimpl.updateins = updateRow chiamato nella riga di inserimento
cachedrowsetimpl.movetoins = moveToInsertRow: CONCUR_READ_ONLY
cachedrowsetimpl.movetoins1 = moveToInsertRow: nessun metadato
cachedrowsetimpl.movetoins2 = moveToInsertRow: numero di colonne non valido
cachedrowsetimpl.tablename = Il nome di tabella non pu\u00f2 essere nullo
cachedrowsetimpl.keycols = Colonne chiave non valide
cachedrowsetimpl.invalidcol = Indice di colonna non valido
cachedrowsetimpl.opnotsupp = Operazione non supportata dal database
cachedrowsetimpl.matchcols = Le colonne di corrispondenza non coincidono con le colonne impostate
cachedrowsetimpl.setmatchcols = Impostare le colonne di corrispondenza prima di recuperarle
cachedrowsetimpl.matchcols1 = Le colonne di corrispondenza devono essere superiori a 0
cachedrowsetimpl.matchcols2 = Le colonne di corrispondenza devono essere una stringa vuota o nulla
cachedrowsetimpl.unsetmatch = Le colonne rimosse non coincidono con le colonne impostate
cachedrowsetimpl.unsetmatch1 = Utilizzare il nome di colonna come argomento per unsetMatchColumn
cachedrowsetimpl.unsetmatch2 = Utilizzare l'ID di colonna come argomento per unsetMatchColumn
cachedrowsetimpl.numrows = Il numero di righe \u00e8 inferiore a zero o alla dimensione di recupero
cachedrowsetimpl.startpos = La posizione iniziale non pu\u00f2 essere negativa
cachedrowsetimpl.nextpage = Inserire i dati prima di chiamare 
cachedrowsetimpl.pagesize = La dimensione della pagina non pu\u00f2 essere inferiore a zero
cachedrowsetimpl.pagesize1 = La dimensione della pagina non pu\u00f2 essere superiore a maxRows
cachedrowsetimpl.fwdonly = ResultSet \u00e8 a solo inoltro
cachedrowsetimpl.type = Il tipo \u00e8: {0}

# WebRowSetImpl exceptions
webrowsetimpl.nullhash = Impossibile istanziare l'istanza WebRowSetImpl. Tabella hash nulla fornita al costruttore
webrowsetimpl.invalidwr = Autore non valido
webrowsetimpl.invalidrd = Lettore non valido

#FilteredRowSetImpl exceptions
filteredrowsetimpl.relative = relative: operazione cursore non valida
filteredrowsetimpl.absolute = absolute: operazione cursore non valida
filteredrowsetimpl.notallowed = Questo valore non \u00e8 consentito nel filtro

#JoinRowSetImpl exceptions
joinrowsetimpl.notinstance = Non \u00e8 un'istanza di rowset
joinrowsetimpl.matchnotset = Colonna di corrispondenza non impostata per l'unione
joinrowsetimpl.numnotequal = Numero di elementi in rowset diverso dalla colonna di corrispondenza
joinrowsetimpl.notdefined = Non \u00e8 un tipo di unione definito
joinrowsetimpl.notsupported = Questo tipo di unione non \u00e8 supportato
joinrowsetimpl.initerror = Errore di inizializzazione di JoinRowSet
joinrowsetimpl.genericerr = Errore iniziale di joinrowset generico

#JdbcRowSetImpl exceptions
jdbcrowsetimpl.invalstate = Stato non valido
jdbcrowsetimpl.connect = JdbcRowSet (connessione): impossibile stabilire una connessione con JNDI
jdbcrowsetimpl.paramtype = Impossibile dedurre il tipo di parametro
jdbcrowsetimpl.matchcols = Le colonne di corrispondenza non coincidono con le colonne impostate
jdbcrowsetimpl.setmatchcols = Impostare le colonne di corrispondenza prima di recuperarle
jdbcrowsetimpl.matchcols1 = Le colonne di corrispondenza devono essere superiori a 0
jdbcrowsetimpl.matchcols2 = Le colonne di corrispondenza non possono essere una stringa vuota o nulla
jdbcrowsetimpl.unsetmatch = Le colonne rimosse non coincidono con le colonne impostate
jdbcrowsetimpl.usecolname = Utilizzare il nome di colonna come argomento per unsetMatchColumn
jdbcrowsetimpl.usecolid = Utilizzare l'ID di colonna come argomento per unsetMatchColumn
jdbcrowsetimpl.resnotupd = ResultSet non \u00e8 aggiornabile

#CachedRowSetReader exceptions
crsreader.connect = (JNDI) Impossibile stabilire una connessione
crsreader.paramtype = Impossibile dedurre il tipo di parametro

#CachedRowSetWriter exceptions
crswriter.connect = Impossibile stabilire una connessione
crswriter.tname = writeData non riesce a determinare il nome di tabella
crswriter.params1 = Valore dei parametri 1: {0} 
crswriter.params2 = Valore dei parametri 2: {0} 

#InsertRow exceptions
insertrow.novalue = Non \u00e8 stato inserito alcun valore

#SyncResolverImpl exceptions
syncrsimpl.indexval = Il valore di indice non rientra nell'intervallo
syncrsimpl.noconflict = Questa colonna non \u00e8 in conflitto
syncrsimpl.syncnotpos = Impossibile eseguire la sincronizzazione
syncrsimpl.valtores = Il valore da risolvere pu\u00f2 essere nel database o in cachedrowset

#WebRowSetXmlReader exception
wrsxmlreader.invalidcp = Raggiunta la fine di RowSet. Posizione cursore non valida
wrsxmlreader.readxml = readXML: {0}
wrsxmlreader.parseerr = ** Errore di analisi
wrsxmlreader.line =  , linea 
wrsxmlreader.uri =  , uri 

#WebRowSetXmlWriter exceptions
wrsxmlwriter.ioex = IOException: {0}
wrsxmlwriter.sqlex = SQLException: {0} 
wrsxmlwriter.failedwrite = Impossibile scrivere il valore
wsrxmlwriter.notproper = Non un tipo corretto

#XmlReaderContentHandle exceptions
xmlrch.errmap = Errore durante l'impostazione della mappa: {0} 
xmlrch.errmetadata = Errore durante l'impostazione dei metadati: {0} 
xmlrch.errinsert = Errore durante l'inserimento dei valori: {0}
xmlrch.errconstr = Errore durante la costruzione della riga: {0}
xmlrch.errdel = Errore durante l'eliminazione della riga: {0}
xmlrch.errinsert = Errore durante la costruzione della riga di inserimento: {0}
xmlrch.errinsdel = Errore durante la costruzione della riga insdel: {0}
xmlrch.errupdate = Errore durante la costruzione della riga di aggiornamento: {0}
xmlrch errupdrow = Errore durante l'aggiornamento della riga: {0}
xmlrch.chars = caratteri:
xmlrch.badvalue = valore non valido; propriet\u00e0 non annullabile
xmlrch.badvalue1 = valore non valido; metadati non annullabili
xmlrch.warning = ** Avviso
xmlrch.line =  , linea 
xmlrch.uri =  , uri 

#RIOptimisticProvider Exceptions
riop.locking = La classificazione di blocco non \u00e8 supportata

#RIXMLProvider exceptions
rixml.unsupp = Non supportato con RIXMLProvider
