#
# Copyright (c) 2005, 2006, Oracle and/or its affiliates. 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.  Oracle designates this
# particular file as subject to the "Classpath" exception as provided
# by Oracle 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
# or visit www.oracle.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}
cachedrowsetimpl.opnotysupp = Operazione non ancora supportata
cachedrowsetimpl.featnotsupp = Funzionalit\u00e0 non supportata

# 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
joinrowsetimpl.emptyrowset = Impossibile aggiungere un rowset al JoinRowSet corrente

#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
jdbcrowsetimpl.opnotysupp = Operazione non ancora supportata
jdbcrowsetimpl.featnotsupp = Funzionalit\u00e0 non supportata

#CachedRowSetReader exceptions
crsreader.connect = (JNDI) Impossibile stabilire una connessione
crsreader.paramtype = Impossibile dedurre il tipo di parametro
crsreader.connecterr = Errore interno in RowSetReader: nessuna connessione o comando disponibile
crsreader.datedetected = Data rilevata
crsreader.caldetected = Calendario rilevato

#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} 
crswriter.conflictsno =  conflitti durante la sincronizzazione 

#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

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

#XmlReaderContentHandler 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

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

#RIXMLProvider exceptions
rixml.unsupp = Non supportato con RIXMLProvider
