Author: nico.ben
Date: 2009-01-06 09:52:59 -0500 (Tue, 06 Jan 2009)
New Revision: 786
Modified:
doc/trunk/reference/it-IT/injection.po
Log:
WBRI-69: Italian translation for Web Beans
Modified: doc/trunk/reference/it-IT/injection.po
===================================================================
--- doc/trunk/reference/it-IT/injection.po 2009-01-06 13:19:11 UTC (rev 785)
+++ doc/trunk/reference/it-IT/injection.po 2009-01-06 14:52:59 UTC (rev 786)
@@ -6,7 +6,7 @@
"Project-Id-Version: master.xml\n"
"Report-Msgid-Bugs-To:
http://bugs.kde.org\n"
"POT-Creation-Date: 2008-12-19 20:26+0000\n"
-"PO-Revision-Date: 2008-12-21 14:06+0100\n"
+"PO-Revision-Date: 2009-01-06 15:50+0100\n"
"Last-Translator: Nicola Benaglia <nico.benaz(a)gmail.com>\n"
"Language-Team: none\n"
"MIME-Version: 1.0\n"
@@ -19,17 +19,18 @@
msgid "Dependency injection"
msgstr "Dependency injection"
+# dependency injection va lascaita in inglese, non ricordo?
#. Tag: para
#: injection.xml:6
#, no-c-format
msgid "Web Beans supports three primary mechanisms for dependency injection:"
-msgstr ""
+msgstr "Web Beans supporta tre meccanismi primari per la dependency
injection:"
#. Tag: para
#: injection.xml:8
#, no-c-format
msgid "Constructor parameter injection:"
-msgstr ""
+msgstr "Iniezione dei parametri del costruttore"
#. Tag: programlisting
#: injection.xml:10
@@ -61,7 +62,7 @@
#: injection.xml:12
#, no-c-format
msgid "<emphasis>Initializer</emphasis> method parameter
injection:"
-msgstr ""
+msgstr "Iniezione dei parametri del <emphasis>metodo inizializzatore
(initializer method)</emphasis>:"
#. Tag: programlisting
#: injection.xml:14
@@ -89,11 +90,12 @@
" \n"
"}]]>"
+# attributi o campi?
#. Tag: para
#: injection.xml:16
#, no-c-format
msgid "And direct field injection:"
-msgstr ""
+msgstr "Iniezione diretta degli attributi"
#. Tag: programlisting
#: injection.xml:18
@@ -115,43 +117,45 @@
#: injection.xml:20
#, no-c-format
msgid "Dependency injection always occurs when the Web Bean instance is first
instantiated."
-msgstr ""
+msgstr "La dependency injection avviene sempre quando il Web Bean viene istanziato
la prima volta."
#. Tag: para
#: injection.xml:25
#, no-c-format
msgid "First, the Web Bean manager calls the Web Bean constructor, to obtain an
instance of the Web Bean."
-msgstr ""
+msgstr "Innanzitutto, il Web Bean manager chiama il costruttore, per ottenere
un'istanza del Web Bean."
+# soggetti/sottoposti
#. Tag: para
#: injection.xml:29
#, no-c-format
msgid "Next, the Web Bean manager initializes the values of all injected fields of
the Web Bean."
-msgstr ""
+msgstr "Quindi, il Web Bean manager inizializza i valori di tutti i campi del Web
Bean soggetti ad iniezione."
#. Tag: para
#: injection.xml:33
#, no-c-format
msgid "Next, the Web Bean manager calls all initializer methods of Web Bean."
-msgstr ""
+msgstr "Quindi, il Web Bean manager chiama tutti i metodi inizializzatori del Web
Bean."
#. Tag: para
#: injection.xml:37
#, no-c-format
msgid "Finally, the <literal>@PostConstruct</literal> method of the Web
Bean, if any, is called."
-msgstr ""
+msgstr "Infine, se ne esiste uno, viene chiamato il metodo del Web Bean annotato con
<literal>(a)PostConstruct</literal>."
#. Tag: para
#: injection.xml:42
#, no-c-format
msgid "Constructor parameter injection is not supported for EJB beans, since the EJB
is instantiated by the EJB container, not the Web Bean manager."
-msgstr ""
+msgstr "L'iniezione dei parametri del costruttore non è supportata per gli EJB,
poiché gli EJB sono istanziati dal container EJB, non dal manager Web Bean."
+# il tipo di binding o il tipo del binding (very philosophica!!!=)?????
#. Tag: para
#: injection.xml:45
#, no-c-format
msgid "Parameters of constructors and initializer methods need not be explicitly
annotated when the default binding type <literal>@Current</literal> applies.
Injected fields, however, <emphasis>must</emphasis> specify a binding type,
even when the default binding type applies. If the field does not specify a binding type,
it will not be injected."
-msgstr ""
+msgstr "I parametri dei costruttori e dei metodi di inizializzazione non devono
essere annotati esplicitamente quando il tipo del binding è
<literal>@Current</literal>, quello predefinito. I campi iniettati, comunque,
<emphasis>devono</emphasis> specificare il tipo del binding, anche quando il
tipo del binding è quello predefinito. Se il campo non specifica il tipo del binding, non
verrà iniettato."
#. Tag: para
#: injection.xml:51
@@ -171,47 +175,53 @@
" return new Checkout(cart);\n"
"}]]>"
+# disposal=rilascio/clean up?????
#. Tag: para
#: injection.xml:55
#, no-c-format
msgid "Finally, observer methods (which we'll meet in <xref
linkend=\"events\"/>), disposal methods and destructor methods all support
parameter injection."
-msgstr ""
+msgstr "Infine, i metodi observer (che vedremo in <xref
linkend=\"events\"/>), i metodi disposal e i metodi distruttori supportano
tutti l'iniezione dei parametri."
+# algoritmo di risoluzione sicura rispetto ai tipi è corretto?
+# il che significa?
#. Tag: para
#: injection.xml:58
#, no-c-format
msgid "The Web Beans specification defines a procedure, called the
<emphasis>typesafe resolution algorithm</emphasis>, that the Web Bean manager
follows when identifying the Web Bean to inject to an injection point. This algorithm
looks complex at first, but once you understand it, it's really quite intuitive.
Typesafe resolution is performed at system initialization time, which means that the
manager will inform the user immediately if a Web Bean's dependencies cannot be
satisfied, by throwing a <literal>UnsatisfiedDependencyException</literal> or
<literal>AmbiguousDependencyException</literal>."
-msgstr ""
+msgstr "Le specifiche Web Beans definiscono una procedura, chiamata
<emphasis>typesafe resolution algorithm (algoritmo di risoluzione sicura rispetto ai
tipi)</emphasis>, che il manager Web Bean segue quando deve identificare il Web
Beanda iniettare in punto di iniezione. Questo algoritmo di primo acchito sembra
complesso, ma una volta che lo si è compreso, in realtà, risulta piuttosto intuitivo. La
risoluzione sicura dei tipi viene eseguita durante l'inizializzazione del sistema
(system initialization time), il che significa che il manager Web Bean informerà
immediatamente un utente se le dipendenze di un Web Bean non possono essere soddisfatte,
lanciando una <literal>UnsatisfiedDependencyException</literal> o una
<literal>AmbiguousDependencyException</literal>."
#. Tag: para
#: injection.xml:67
#, no-c-format
msgid "The purpose of this algorithm is to allow multiple Web Beans to implement the
same API type and either:"
-msgstr ""
+msgstr "Lo scopo di questo algoritmo è di permettere a più Web Bean di implementare
la stessa tipo definito dall'API e:"
#. Tag: para
#: injection.xml:72
#, no-c-format
msgid "allow the client to select which implementation it requires using
<emphasis>binding annotations</emphasis>,"
-msgstr ""
+msgstr "permettere al client di selezionare l'implementazione richiesta usando
le <emphasis>binding annotations</emphasis>,"
#. Tag: para
#: injection.xml:77
#, no-c-format
msgid "allow the application deployer to select which implementation is appropriate
for a particular deployment, without changes to the client, by enabling or disabling
<emphasis>deployment types</emphasis>, or"
-msgstr ""
+msgstr "permettere all'installatore dell'applicazione (deployer) di
selezionare quale implementazione è appropriata per un particolare deploy, senza
cambiamenti al client, abilitando o disabilitando <emphasis>i tipi di
deploy</emphasis>, o"
+# override=fare override?
+# deployment time???
+# regole di precednza?
#. Tag: para
#: injection.xml:82
#, no-c-format
msgid "allow one implementation of an API to override another implementation of the
same API at deployment time, without changes to the client, using
<emphasis>deployment type precedence</emphasis>."
-msgstr ""
+msgstr "permette ad un'implementazione della API di fare l'override di
un'altra implementazione della stessa API a deployment time, senza apportare modifiche
al client, usando <emphasis>la precedenza fra tipi di deploy (deployment type
precedence)</emphasis>."
#. Tag: para
#: injection.xml:88
#, no-c-format
msgid "Let's explore how the Web Beans manager determines a Web Bean to be
injected."
-msgstr ""
+msgstr "Indaghiamo come il manager di Web Beans individua un Web Bean da
iniettare."
#. Tag: title
#: injection.xml:91
@@ -223,7 +233,7 @@
#: injection.xml:93
#, no-c-format
msgid "If we have more than one Web Bean that implements a particular API type, the
injection point can specify exactly which Web Bean should be injected using a binding
annotation. For example, there might be two implementations of
<literal>PaymentProcessor</literal>:"
-msgstr ""
+msgstr "Se esiste più di un Web Bean che implementa un particolare tipo di API, il
punto di iniezione può specificare esattamente quale Web Bean dovrebbe essere iniettato
usando una binding annotation. Per esempio, ci potrebbero essere due implementazioni di
<literal>PaymentProcessor</literal>:"
#. Tag: programlisting
#: injection.xml:98
@@ -257,7 +267,7 @@
#: injection.xml:102
#, no-c-format
msgid "Where <literal>@PayByCheque</literal> and
<literal>@PayByCreditCard</literal> are binding annotations:"
-msgstr ""
+msgstr "Dove <literal>@PayByCheque</literal> e
<literal>@PayByCreditCard</literal> sono binding annotation:"
#. Tag: programlisting
#: injection.xml:105
@@ -291,13 +301,13 @@
#: injection.xml:109
#, no-c-format
msgid "A client Web Bean developer uses the binding annotation to specify exactly
which Web Bean should be injected."
-msgstr ""
+msgstr "Lo sviluppatore di un Web Bean client usa la binding annotation per
specificare esattamente quale Web Bean debba essere iniettato."
#. Tag: para
#: injection.xml:112
#, no-c-format
msgid "Using field injection:"
-msgstr ""
+msgstr "Utilizzando l'iniezione a livello di campo:"
#. Tag: programlisting
#: injection.xml:114
@@ -309,11 +319,12 @@
"<![CDATA[@PayByCheque PaymentProcessor chequePaymentProcessor;\n"
"@PayByCreditCard PaymentProcessor creditCardPaymentProcessor;]]>"
+# metodo inizializzatore?
#. Tag: para
#: injection.xml:116
#, no-c-format
msgid "Using initializer method injection:"
-msgstr ""
+msgstr "Utilizzando l'iniezione a livello di metodo inizializzatore:"
#. Tag: programlisting
#: injection.xml:118
@@ -337,7 +348,7 @@
#: injection.xml:120
#, no-c-format
msgid "Or using constructor injection:"
-msgstr ""
+msgstr "O usando l'iniezione a livello di costruttore:"
#. Tag: programlisting
#: injection.xml:122
@@ -357,17 +368,18 @@
" this.creditCardPaymentProcessor = creditCardPaymentProcessor;\n"
"}]]>"
+# ????
#. Tag: title
#: injection.xml:125
#, no-c-format
msgid "Binding annotations with members"
-msgstr ""
+msgstr "Annotazioni di binding con membri"
#. Tag: para
#: injection.xml:127
#, no-c-format
msgid "Binding annotations may have members:"
-msgstr ""
+msgstr "Le binding annotation possono avere dei membri:"
#. Tag: programlisting
#: injection.xml:129
@@ -391,7 +403,7 @@
#: injection.xml:131
#, no-c-format
msgid "In which case, the member value is significant:"
-msgstr ""
+msgstr "Nel qual caso, il valore del membro è significativo:"
#. Tag: programlisting
#: injection.xml:133
@@ -403,23 +415,24 @@
"<![CDATA[@PayBy(CHEQUE) PaymentProcessor chequePaymentProcessor;\n"
"@PayBy(CREDIT_CARD) PaymentProcessor creditCardPaymentProcessor;]]>"
+# qui e altrove, membro va bene?
#. Tag: para
#: injection.xml:135
#, no-c-format
msgid "You can tell the Web Bean manager to ignore a member of a binding annotation
type by annotating the member <literal>(a)NonBinding</literal>."
-msgstr ""
+msgstr "E' possibile indicare al manager Web Bean di ignorare un membro di un
tipo di binding annotation annotando il membro con
<literal>(a)NonBinding</literal>."
#. Tag: title
#: injection.xml:141
#, no-c-format
msgid "Combinations of binding annnotations"
-msgstr ""
+msgstr "Combinazioni di binding annotation"
#. Tag: para
#: injection.xml:143
#, no-c-format
msgid "An injection point may even specify multiple binding annotations:"
-msgstr ""
+msgstr "Un punto di iniezione può anche specificare più binding annotation:"
#. Tag: programlisting
#: injection.xml:145
@@ -431,19 +444,20 @@
#: injection.xml:147
#, no-c-format
msgid "In this case, only a Web Bean which has <emphasis>both</emphasis>
binding annotations would be eligible for injection."
-msgstr ""
+msgstr "In questo caso, soltanto un Web Bean che ha
<emphasis>entrambe</emphasis> le binding annotation sarebbe candidato ad
essere iniettato."
+# metodi produttori?
#. Tag: title
#: injection.xml:153
#, no-c-format
msgid "Binding annotations and producer methods"
-msgstr ""
+msgstr "Binding annotation e metodi produttori"
#. Tag: para
#: injection.xml:155
#, no-c-format
msgid "Even producer methods may specify binding annotations:"
-msgstr ""
+msgstr "Anche i metodi produttori possono specificare binding annotation:"
#. Tag: programlisting
#: injection.xml:157
@@ -455,40 +469,41 @@
" return new AsynchronousPaymentProcessor(processor);\n"
"}]]>"
msgstr ""
-"<![CDATA[@Retention(RUNTIME)\n"
-" @Target({TYPE, METHOD})\n"
-" @DeploymentType\n"
-" public @interface Mock {}]]>"
+"<![CDATA[@Produces \n"
+"@Asynchronous @PayByCheque \n"
+"PaymentProcessor createAsyncPaymentProcessor(@PayByCheque PaymentProcessor
processor) {\n"
+" return new AsynchronousPaymentProcessor(processor);\n"
+"}]]>"
#. Tag: title
#: injection.xml:162
#, no-c-format
msgid "The default binding type"
-msgstr ""
+msgstr "The tipo di binding predefinito"
#. Tag: para
#: injection.xml:164
#, no-c-format
msgid "Web Beans defines a binding type <literal>@Current</literal> that
is the default binding type for any injection point or Web Bean that does not explicitly
specify a binding type."
-msgstr ""
+msgstr "Web Beans definisce un tipo di binding
<literal>@Current</literal> che è il tipo di binding predefinito per ogni
punto di iniezione o per ogni Web Bean che non specifichi esplicitamente un tipo di
binding."
#. Tag: para
#: injection.xml:168
#, no-c-format
msgid "There are two common circumstances in which it is necessary to explicitly
specify <literal>@Current</literal>:"
-msgstr ""
+msgstr "Vi sono due circostanze comuni in cui è necessario specificare
esplicitamente l'annotazione <literal>@Current</literal>:"
#. Tag: para
#: injection.xml:173
#, no-c-format
msgid "on a field, in order to declare it as an injected field with the default
binding type, and"
-msgstr ""
+msgstr "su un campo, allo scopo di dichiararne l'iniezione con il tipo di
binding predefinito, and"
#. Tag: para
#: injection.xml:177
#, no-c-format
msgid "on a Web Bean which has another binding type in addition to the default
binding type."
-msgstr ""
+msgstr "su un Web Bean che ha un tipo di binding aggiuntivo rispetto al tipo di
binding predefinito."
#. Tag: title
#: injection.xml:187
@@ -500,13 +515,13 @@
#: injection.xml:189
#, no-c-format
msgid "All Web Beans have a <emphasis>deployment type</emphasis>. Each
deployment type identifies a set of Web Beans that should be conditionally installed in
some deployments of the system."
-msgstr ""
+msgstr "Tutti i Web Bean hanno un <emphasis>tipo di deployment (deployment
type)</emphasis>. Ogni tipo di deployment identifica un insieme di Web Bean che
dovrebbe essere installato in modo condizionale in corrispondenza ad alcuni deploy del
sistema."
#. Tag: para
#: injection.xml:193
#, no-c-format
msgid "For example, we could define a deployment type named
<literal>@Mock</literal>, which would identify Web Beans that should only be
installed when the system executes inside an integration testing environment:"
-msgstr ""
+msgstr "Per esempio, potremmo definire un tipo di deploy denominato
<literal>@Mock</literal>, che identifichi i Web Bean da installare soltanto
quando il sistema è posto in esecuzione in un ambiente di test integrato:"
#. Tag: programlisting
#: injection.xml:197
@@ -526,7 +541,7 @@
#: injection.xml:199
#, no-c-format
msgid "Suppose we had some Web Bean that interacted with an external system to
process payments:"
-msgstr ""
+msgstr "Supponiamo di avere alcuni Web Bean che interagiscano con un sistema di
pagamenti esterno:"
#. Tag: programlisting
#: injection.xml:202
@@ -552,13 +567,14 @@
#: injection.xml:204
#, no-c-format
msgid "Since this Web Bean does not explicitly specify a deployment type, it has the
default deployment type <literal>(a)Production</literal>."
-msgstr ""
+msgstr "Dal momento che questo Web Bean non specifica esplicitamente un tipo di
deploy, ha il tipo di deploy predefinito
<literal>(a)Production</literal>."
+# integration and unit testing=i test di unità/pacchetto e di integrazione?
#. Tag: para
#: injection.xml:207
#, no-c-format
msgid "For integration or unit testing, the external system is slow or unavailable.
So we would create a mock object:"
-msgstr ""
+msgstr "Per le attività di test (d'unità o integrazione), il sistema esterno è
lento o non disponibile. Così sarebbe necessario creare un oggetto mock:"
#. Tag: programlisting
#: injection.xml:210
@@ -588,25 +604,25 @@
#: injection.xml:212
#, no-c-format
msgid "But how does the Web Bean manager determine which implementation to use in a
particular deployment?"
-msgstr ""
+msgstr "Ma in che modo il manager Web Bean determina quale implementazione usare con
un particolare deploy?"
#. Tag: title
#: injection.xml:216
#, no-c-format
msgid "Enabling deployment types"
-msgstr ""
+msgstr "Abilitazione dei tipi di deploy"
#. Tag: para
#: injection.xml:218
#, no-c-format
msgid "Web Beans defines two built-in deployment types:
<literal>@Production</literal> and <literal>@Standard</literal>.
By default, only Web Beans with the built-in deployment types are enabled when the system
is deployed. We can identify additional deployment types to be enabled in a particular
deployment by listing them in <literal>web-beans.xml</literal>."
-msgstr ""
+msgstr "Web Beans definisce due tipi di deploy percostituiti:
<literal>@Production</literal> e <literal>@Standard</literal>. Di
default, sono abilitati soltanto i Web Bean con i tipi di deploy precostituiti quando si
procede al deploy del sistema. E' possibile abilitare dei tipi di deploy aggiuntivi
per un particolare deploy elencandoli in
<literal>web-beans.xml</literal>."
#. Tag: para
#: injection.xml:224
#, no-c-format
msgid "Going back to our example, when we deploy our integration tests, we want all
our <literal>@Mock</literal> objects to be installed:"
-msgstr ""
+msgstr "Tornando al nostro esempio, quando si fa il deploy dei test di integrazione,
si vuole che tutti gli oggetti <literal>@Mock</literal> vengano
installati:"
#. Tag: programlisting
#: injection.xml:227
@@ -628,23 +644,24 @@
" </Deploy>\n"
"</WebBeans>]]>"
+# deployment time=al momento del deploy?
#. Tag: para
#: injection.xml:229
#, no-c-format
msgid "Now the Web Bean manager will identify and install all Web Beans annotated
<literal>@Production</literal>, <literal>@Standard</literal> or
<literal>@Mock</literal> at deployment time."
-msgstr ""
+msgstr "Ora il manager Web Bean identificherà ed installerà tutti i Web Bean
annotati con <literal>@Production</literal>,
<literal>@Standard</literal> o <literal>@Mock</literal> a
deployment time."
#. Tag: para
#: injection.xml:233
#, no-c-format
msgid "The deployment type <literal>@Standard</literal> is used only for
certain special Web Beans defined by the Web Beans specification. We can't use it for
our own Web Beans, and we can't disable it."
-msgstr ""
+msgstr "Il tipo di deploy <literal>@Standard</literal> è usato soltanto
per dei Web Bean speciali definiti nelle specifiche. Non è possibile utilizzarlo per i
propri Web Bean, e non è possibile disabilitarlo."
#. Tag: para
#: injection.xml:237
#, no-c-format
msgid "The deployment type <literal>@Production</literal> is the default
deployment type for Web Beans which don't explicitly declare a deployment type, and
may be disabled."
-msgstr ""
+msgstr "Il tipo di deploy <literal>@Production</literal> è quello
predefinito per i Web Bean che non dichiarano esplicitamente un tipo di deploy, e può
essere disabilitato."
#. Tag: title
#: injection.xml:244
@@ -656,7 +673,7 @@
#: injection.xml:246
#, no-c-format
msgid "If you've been paying attention, you're probably wondering how the
Web Bean manager decides which
implementation—<literal>ExternalPaymentProcessor</literal> or
<literal>MockPaymentProcessor</literal>—to choose. Consider what
happens when the manager encounters this injection point:"
-msgstr ""
+msgstr "Se avete prestato attenzione, vi state probabilmente chiedendo come il
manager Web Bean decida quale
implementatione—<literal>ExternalPaymentProcessor</literal> o
<literal>MockPaymentProcessor</literal>—scegliere. Si consideri cosa
succede quando il manager incontra questo punto di iniezione:"
#. Tag: programlisting
#: injection.xml:251
@@ -668,25 +685,27 @@
#: injection.xml:253
#, no-c-format
msgid "There are now two Web Beans which satisfy the
<literal>PaymentProcessor</literal> contract. Of course, we can't use a
binding annotation to disambiguate, since binding annotations are hard-coded into the
source at the injection point, and we want the manager to be able to decide at deployment
time!"
-msgstr ""
+msgstr "Vi sono ora due Web Bean che soddisfano l'interfaccia di
<literal>PaymentProcessor</literal>. Naturalmente, non è possibile utilizzare
una binding annotation per eliminare l'ambiguità, poiché le binding annotation sono
cablate nel sorgente in corrispondenza al punto di iniezione, e noi vogliamo che il
manager sia in grado di decidere a deployment time!"
+# precedenza=priorità qui e altrove?
+# cosicché o così che
#. Tag: para
#: injection.xml:258
#, no-c-format
msgid "The solution to this problem is that each deployment type has a different
<emphasis>precedence</emphasis>. The precedence of the deployment types is
determined by the order in which they appear in
<literal>web-beans.xml</literal>. In our example,
<literal>@Mock</literal> appears later than
<literal>@Production</literal> so it has a higher precedence."
-msgstr ""
+msgstr "La soluzione a questo problema sta nel fatto che ciascun tipo di deploy ha
una diversa <emphasis>precedenza</emphasis>. La precedenza dei tipi di deploy
è determinata dall'ordine con cui appaiono in
<literal>web-beans.xml</literal>. Nel nostro esempio,
<literal>@Mock</literal> compare dopo
<literal>@Production</literal> cosicché ha una precedenza più alta."
#. Tag: para
#: injection.xml:264
#, no-c-format
msgid "Whenever the manager discovers that more than one Web Bean could satisfy the
contract (API type plus binding annotations) specified by an injection point, it considers
the relative precedence of the Web Beans. If one has a higher precedence than the others,
it chooses the higher precedence Web Bean to inject. So, in our example, the Web Bean
manager will inject <literal>MockPaymentProcessor</literal> when executing in
our integration testing environment (which is exactly what we want)."
-msgstr ""
+msgstr "Ogni volta che il manager scopre che più di un Web Bean potrebbe soddisfare
il contratto (interfaccia più binding annotation) specificato da un punto di iniezione,
passa a considerare la precedenza relativa dei Web Bean. Se uno ha una precedenza
superiore a quella degli altri, questo viene scelto per essere iniettato. Così, nel nostro
esempio, il manager Web Bean inietterà <literal>MockPaymentProcessor</literal>
quando viene eseguito nel nostro ambiente di test (che è esattamente ciò che
vogliamo)."
#. Tag: para
#: injection.xml:271
#, no-c-format
msgid "It's interesting to compare this facility to today's popular manager
architectures. Various \"lightweight\" containers also allow conditional
deployment of classes that exist in the classpath, but the classes that are to be deployed
must be explicity, individually, listed in configuration code or in some XML configuration
file. Web Beans does support Web Bean definition and configuration via XML, but in the
common case where no complex configuration is required, deployment types allow a whole set
of Web Beans to be enabled with a single line of XML. Meanwhile, a developer browsing the
code can easily identify what deployment scenarios the Web Bean will be used in."
-msgstr ""
+msgstr "E' interessante confrontare questa funzionalità con le architetture di
gestone oggi in voga. Vari container \"lightweight\" permettono il deploy
condizionale di classi che esistono nel classpath, ma le classi che devono essere
installate devono essere elencate esplicitamente ed individualmente nel codice di
configurazione o in qualche file XML di configurazione. Web Beans supporta certo la
definizione e configurazione dei Web Bean attraverso l'XML, ma nei casi comuni in cui
non si renda necessaria una configurazione complicata, i tipi di deploy permettono di
abilitare un insieme completo di Web Bean con una sola linea di XML. Al contempo, uno
sviluppatore che esamini il codice, potrà facilmente identificare gli scenari di deploy in
cui il Web Bean sarà utilizzato."
#. Tag: title
#: injection.xml:284
@@ -698,151 +717,154 @@
#: injection.xml:286
#, no-c-format
msgid "Deployment types are useful for all kinds of things, here's some
examples:"
-msgstr ""
+msgstr "I tipi di deploy sono utili in molte situazioni. Di seguito riportiamo
alcuni esempi:"
#. Tag: para
#: injection.xml:290
#, no-c-format
msgid "<literal>@Mock</literal> and
<literal>@Staging</literal> deployment types for testing"
-msgstr ""
+msgstr "i tipi di deploy individuati da <literal>@Mock</literal> e
<literal>@Staging</literal> per i test"
#. Tag: para
#: injection.xml:294
#, no-c-format
msgid "<literal>@AustralianTaxLaw</literal> for site-specific Web
Beans"
-msgstr ""
+msgstr "il tipo di deploy <literal>@AustralianTaxLaw</literal> per i Web
Bean di un'applicazione specifica"
#. Tag: para
#: injection.xml:297
#, no-c-format
msgid "<literal>@SeamFramework</literal>,
<literal>@Guice</literal> for third-party frameworks which build on Web
Beans"
-msgstr ""
+msgstr "i tipi di deploy <literal>@SeamFramework</literal> e
<literal>@Guice</literal> per framework di terze parti basati su Web
Beans"
#. Tag: para
#: injection.xml:301
#, no-c-format
msgid "<literal>@Standard</literal> for standard Web Beans defined by
the Web Beans specification"
-msgstr ""
+msgstr "<literal>@Standard</literal> per Web Bean standard definiti
dalle specifiche di Web Beans"
#. Tag: para
#: injection.xml:306
#, no-c-format
msgid "I'm sure you can think of more applications..."
-msgstr ""
+msgstr "Sono sicuro che siate in grado di escogitare altre applicazioni..."
#. Tag: title
#: injection.xml:313
#, no-c-format
msgid "Fixing unsatisfied dependencies"
-msgstr ""
+msgstr "Risoluzione di dipendenze non soddisfatte"
#. Tag: para
#: injection.xml:315
#, no-c-format
msgid "The typesafe resolution algorithm fails when, after considering the binding
annotations and and deployment types of all Web Beans that implement the API type of an
injection point, the Web Bean manager is unable to identify exactly one Web Bean to
inject."
-msgstr ""
+msgstr "L'algoritmo di risoluzione sicura rispetto ai tipi fallisce quando, dopo
avere considerato le binding annotation e i tipi di deploy di tutti i Web Bean che
implementano il tipo di un punto di iniezione, il manager Web Bean non è in grado di
identificare esattamente uno ed un solo Web Bean da iniettare."
#. Tag: para
#: injection.xml:320
#, no-c-format
msgid "It's usually easy to fix an
<literal>UnsatisfiedDependencyException</literal> or
<literal>AmbiguousDependencyException</literal>."
-msgstr ""
+msgstr "Di solito è semplice porre rimedio a un'eccezione
<literal>UnsatisfiedDependencyException</literal> o
<literal>AmbiguousDependencyException</literal>."
#. Tag: para
#: injection.xml:323
#, no-c-format
msgid "To fix an <literal>UnsatisfiedDependencyException</literal>,
simply provide a Web Bean which implements the API type and has the binding types of the
injection point—or enable the deployment type of a Web Bean that already
implements the API type and has the binding types."
-msgstr ""
+msgstr "Per rimediare ad una
<literal>UnsatisfiedDependencyException</literal>, si deve semplicemente
fornire un Web Bean che implementi il tipo dell'API in uso e abbia gli stessi tipi di
binding del punto di iniezione#151;o si deve abilitare il tipo di deploy di un Web Bean
che già implementa il tipo dell'API in uso e possiede i tipi di binding in
esame."
+# tipo di binding o binding type (qui e altrove)?
#. Tag: para
#: injection.xml:328
#, no-c-format
msgid "To fix an <literal>AmbiguousDependencyException</literal>,
introduce a binding type to distinguish between the two implementations of the API type,
or change the deployment type of one of the implementations so that the Web Bean manager
can use deployment type precedence to choose between them. An
<literal>AmbiguousDependencyException</literal> can only occur if two Web
Beans share a binding type and have exactly the same deployment type."
-msgstr ""
+msgstr "Per porre rimedio a una
<literal>AmbiguousDependencyException</literal>, si deve introdurre un tipo di
binding per distinguere tra le due implementazioni del tipo delle API, o si deve cambiare
il tipo di deploy di una delle implementazione in modo che il manager Web Bean possa usare
la precedenza dei tipi di deploy per scegliere fra di essi. Una
<literal>AmbiguousDependencyException</literal> può verificarsi soltanto se
due Web Bean condividono il tipo di binding e hanno esattamente lo stesso tipo di
deploy."
#. Tag: para
#: injection.xml:335
#, no-c-format
msgid "There's one more issue you need to be aware of when using dependency
injection in Web Beans."
-msgstr ""
+msgstr "Vi è un ulteriore questione di cui occorre essere a conoscenza quando si usa
la dependency injection in Web Beans."
#. Tag: title
#: injection.xml:341
#, no-c-format
msgid "Client proxies"
-msgstr ""
+msgstr "Client proxy"
#. Tag: para
#: injection.xml:343
#, no-c-format
msgid "Clients of an injected Web Bean do not usually hold a direct reference to a
Web Bean instance."
-msgstr ""
+msgstr "I client di un Web Bean che sono stati iniettati solitamente non hanno un
riferimento diretto all'istanza del Web Bean."
#. Tag: para
#: injection.xml:346
#, no-c-format
msgid "Imagine that a Web Bean bound to the application scope held a direct
reference to a Web Bean bound to the request scope. The application scoped Web Bean is
shared between many different requests. However, each request should see a different
instance of the request scoped Web bean!"
-msgstr ""
+msgstr "Immaginiamo che un Web Bean associato allo scope applicazione tenga un
riferimento diretto a un Web Bean associato allo scope richiesta. Il Web Bean con scope
applicazione è condiviso fra molte diverse richieste. Comunque, ciascuna richiesta
dovrebbe vedere una diversa istanza del Web bean con scope richiesta!"
+# con scope sessione andrebbe meglio tardotto con->che sta in sessione (e zosì per
tutte le situazioni analoghe?)?
#. Tag: para
#: injection.xml:351
#, no-c-format
msgid "Now imagine that a Web Bean bound to the session scope held a direct
reference to a Web Bean bound to the application scope. From time to time, the session
context is serialized to disk in order to use memory more efficiently. However, the
application scoped Web Bean instance should not be serialized along with the session
scoped Web Bean!"
-msgstr ""
+msgstr "Immaginiamo ora che un Web Bean con scope sessione abbia un riferimento
diretto a un Web Bean con scope applicazione . Ogni tanto, il contesto della sessione
viene serializzato su disco in modo da usare la memoria in modo più efficiente. Comunque,
l'istanza del Web Bean con scope applicazione non dovrebbe essere serializzato insieme
al Web Bean con scope sessione!"
#. Tag: para
#: injection.xml:357
#, no-c-format
msgid "Therefore, unless a Web Bean has the default scope
<literal>@Dependent</literal>, the Web Bean manager must indirect all injected
references to the Web Bean through a proxy object. This <emphasis>client
proxy</emphasis> is responsible for ensuring that the Web Bean instance that
receives a method invocation is the instance that is associated with the current context.
The client proxy also allows Web Beans bound to contexts such as the session context to be
serialized to disk without recursively serializing other injected Web Beans."
-msgstr ""
+msgstr "Quindi, a meno che un Web Bean abbia lo scope predefinito
<literal>@Dependent</literal>, il manager Web Bean deve rendere indiretti
tutti i riferimenti al Web Bean iniettati attraverso un oggetto proxy. Questo
<emphasis>client proxy</emphasis> ha la responsabilità di assicurare che
l'istanza del Web Bean su cui viene invocato un metodo sia l'istanza associata al
contesto corrente. Il client proxy, inoltre, permette ai Web Bean associati a contesti
come quello di sessione di essere salvati su disco senza serializzare ricorsivamente altri
Web Beans che siano stati iniettati."
#. Tag: para
#: injection.xml:365
#, no-c-format
msgid "Unfortunately, due to limitations of the Java language, some Java types
cannot be proxied by the Web Bean manager. Therefore, the Web Bean manager throws an
<literal>UnproxyableDependencyException</literal> if the type of an injection
point cannot be proxied."
-msgstr ""
+msgstr "Purtroppo, a causa di limitazioni del linguaggio Java, alcuni tipi Java non
possono essere gestiti tramite un proxy dal manager Web Bean. Quindi, il manager Web Bean
lancia un'eccezione <literal>UnproxyableDependencyException</literal> se
il tipo di un punto di iniezione non può essere gestito tramite proxy."
#. Tag: para
#: injection.xml:370
#, no-c-format
msgid "The following Java types cannot be proxied by the Web Bean manager:"
-msgstr ""
+msgstr "I seguenti tipi Java non possono essere gestiti tramite proxy dal manager
Web Bean:"
#. Tag: para
#: injection.xml:374
#, no-c-format
msgid "classes which are declared <literal>final</literal> or have a
<literal>final</literal> method,"
-msgstr ""
+msgstr "classi dichiarate <literal>final</literal> o che abbiano un
metodo <literal>final</literal>,"
#. Tag: para
#: injection.xml:378
#, no-c-format
msgid "classes which have no non-private constructor with no parameters, and"
-msgstr ""
+msgstr "classi che non abbiano costruttori non privati (non-private) senza
parametri, e"
#. Tag: para
#: injection.xml:381
#, no-c-format
msgid "arrays and primitive types."
-msgstr ""
+msgstr "array e tipi primitivi."
#. Tag: para
#: injection.xml:385
#, no-c-format
msgid "It's usually very easy to fix an
<literal>UnproxyableDependencyException</literal>. Simply add a constructor
with no parameters to the injected class, introduce an interface, or change the scope of
the injected Web Bean to <literal>(a)Dependent</literal>."
-msgstr ""
+msgstr "Di solito è molto facile rimediare a una
<literal>UnproxyableDependencyException</literal>. Si deve semplicimente
aggiungere un costruttore privo di parametri alla classe iniettata, introdurre
un'interfaccia, o modificare lo scope del Web Bean iniettato a
<literal>(a)Dependent</literal>."
#. Tag: title
#: injection.xml:392
#, no-c-format
msgid "Obtaining a Web Bean by programatic lookup"
-msgstr ""
+msgstr "Ottenere un riferimento a un Web Bean via codice"
+# traduzione letterale: secondo me l'originale si capisce, ma non è proprio
semanticamente corretto.
#. Tag: para
#: injection.xml:394
#, no-c-format
msgid "The application may obtain an instance of the interface
<literal>Manager</literal> by injection:"
-msgstr ""
+msgstr "L'applicazione può ottenere un'istanza dell'interfaccia
<literal>Manager</literal> attraverso iniezione:"
#. Tag: programlisting
#: injection.xml:397
@@ -854,7 +876,7 @@
#: injection.xml:399
#, no-c-format
msgid "The <literal>Manager</literal> object provides a set of methods
for obtaining a Web Bean instance programatically."
-msgstr ""
+msgstr "L'oggetto <literal>Manager</literal> fornisce un insieme di
metodi per ottenere l'istanza di un Web Bean via codice."
#. Tag: programlisting
#: injection.xml:402
@@ -866,7 +888,7 @@
#: injection.xml:404
#, no-c-format
msgid "Binding annotations may be specified by subclassing the helper class
<literal>AnnotationLiteral</literal>, since it is otherwise difficult to
instantiate an annotation type in Java."
-msgstr ""
+msgstr "Le binding annotation possono essere specificate come sottoclassi della
classe helper <literal>AnnotationLiteral</literal>, poiché è altrimenti
difficile istanziare un tipo annotazione in Java."
#. Tag: programlisting
#: injection.xml:408
@@ -882,7 +904,7 @@
#: injection.xml:410
#, no-c-format
msgid "If the binding type has an annotation member, we can't use an anonymous
subclass of <literal>AnnotationLiteral</literal>—instead we'll
need to create a named subclass:"
-msgstr ""
+msgstr "Se il tipo di binding ha un membro annotazione, non è possibile utilizzare
una sottoclasse anonima di <literal>AnnotationLiteral</literal>—sarà
invece necessario creare una sottoclasse non anonima:"
#. Tag: programlisting
#: injection.xml:413
@@ -914,31 +936,32 @@
#: injection.xml:419
#, no-c-format
msgid "Lifecycle callbacks, <literal>@Resource</literal>,
<literal>@EJB</literal> and
<literal>@PersistenceContext</literal>"
-msgstr ""
+msgstr "Lifecycle callbacks, <literal>@Resource</literal>,
<literal>@EJB</literal> e
<literal>@PersistenceContext</literal>"
#. Tag: para
#: injection.xml:422
#, no-c-format
msgid "Enterprise Web Beans support all the lifecycle callbacks defined by the EJB
specification: <literal>@PostConstruct</literal>,
<literal>@PreDestroy</literal>, <literal>@PrePassivate</literal>
and <literal>(a)PostActivate</literal>."
-msgstr ""
+msgstr "I Web Beans di tipo enterprise supportano tutte le callback del ciclo di
vita definite dalle specifiche EJB: <literal>@PostConstruct</literal>,
<literal>@PreDestroy</literal>, <literal>@PrePassivate</literal> e
<literal>(a)PostActivate</literal>."
#. Tag: para
#: injection.xml:426
#, no-c-format
msgid "Simple Web Beans support only the
<literal>@PostConstruct</literal> and
<literal>@PreDestroy</literal> callbacks."
-msgstr ""
+msgstr "Semplici Web Bean supportano soltanto le callback
<literal>@PostConstruct</literal> e
<literal>(a)PreDestroy</literal>."
+# ->i<- Web Bean?
#. Tag: para
#: injection.xml:429
#, no-c-format
msgid "Both enterprise and simple Web Beans support the use of
<literal>@Resource</literal>, <literal>@EJB</literal> and
<literal>@PersistenceContext</literal> for injection of Java EE resources,
EJBs and JPA persistence contexts, respectively. Simple Web Beans do not support the use
of <literal>(a)PersistenceContext(type=EXTENDED)</literal>."
-msgstr ""
+msgstr "Sia i Web Bean semplici che quelli enterprise supportano l'uso di
<literal>@Resource</literal>, <literal>@EJB</literal> e
<literal>@PersistenceContext</literal> per l'iniezione rispettivamente di
risorse Java EE, di EJB e di contesti di persistenza JPA. I Web Bean semplici non
supportano l'uso di
<literal>(a)PersistenceContext(type=EXTENDED)</literal>."
#. Tag: para
#: injection.xml:434
#, no-c-format
msgid "The <literal>@PostConstruct</literal> callback always occurs
after all dependencies have been injected."
-msgstr ""
+msgstr "La callback <literal>@PostConstruct</literal> viene sempre
eseguita dopo che tutte le dipendenze sono state iniettate."
#. Tag: title
#: injection.xml:440
@@ -950,37 +973,37 @@
#: injection.xml:442
#, no-c-format
msgid "There are certain kinds of dependent objects—Web Beans with scope
<literal>@Dependent</literal>—that need to know something about the
object or injection point into which they are injected in order to be able to do what they
do. For example:"
-msgstr ""
+msgstr "Certi tipi di oggetti dipendenti—Web Bean con scope
<literal>@Dependent</literal>—hanno bisogno di avere informazioni
riguardo l'oggetto o il punto in cui sono iniettati per fare quello che devono. Per
esempio:"
#. Tag: para
#: injection.xml:448
#, no-c-format
msgid "The log category for a <literal>Logger</literal> depends upon the
class of the object that owns it."
-msgstr ""
+msgstr "La categoria di log per un <literal>Logger</literal> dipende
dalla classe dell'oggetto che lo contiene."
#. Tag: para
#: injection.xml:452
#, no-c-format
msgid "Injection of a HTTP parameter or header value depends upon what parameter or
header name was specified at the injection point."
-msgstr ""
+msgstr "L'iniezione di un parametro o di un header HTTP dipende dal nome del
parametro o dello header specificato nel punto di iniezione."
#. Tag: para
#: injection.xml:456
#, no-c-format
msgid "Injection of the result of an EL expression evaluation depends upon the
expression that was specified at the injection point."
-msgstr ""
+msgstr "L'iniezione del risultato di una espressione EL dipende
dall'espressione specificata nel punto di iniezione."
#. Tag: para
#: injection.xml:461
#, no-c-format
msgid "A Web Bean with scope <literal>@Dependent</literal> may inject an
instance of <literal>InjectionPoint</literal> and access metadata relating to
the injection point to which it belongs."
-msgstr ""
+msgstr "Un Web Bean con scope <literal>@Dependent</literal> può essere
iniettato con un'istanza di <literal>InjectionPoint</literal> e accedere i
metadati riguardanti il punto di iniezione cui appartiene."
#. Tag: para
#: injection.xml:465
#, no-c-format
msgid "Let's look at an example. The following code is verbose, and vulnerable
to refactoring problems:"
-msgstr ""
+msgstr "Vediamo un esempio. Il codice seguente è prolisso e vulnerabile a problemi
di refactoring:"
#. Tag: programlisting
#: injection.xml:468
@@ -992,7 +1015,7 @@
#: injection.xml:470
#, no-c-format
msgid "This clever little producer method lets you inject a JDK
<literal>Logger</literal> without explicitly specifying the log
category:"
-msgstr ""
+msgstr "Questo piccolo e intelligente metodo produttore permette di iniettare un
<literal>Logger</literal> JDK senza specificare esplicitamente la categoria di
log:"
#. Tag: programlisting
#: injection.xml:473
@@ -1030,7 +1053,7 @@
#: injection.xml:479
#, no-c-format
msgid "Not convinced? Then here's a second example. To inject HTTP parameters,
we need to define a binding type:"
-msgstr ""
+msgstr "Non siete convinti? Eccovi un secondo esempio. Per iniettare parametri HTTP,
è necessario definire un tipo di binding:"
#. Tag: programlisting
#: injection.xml:482
@@ -1054,7 +1077,7 @@
#: injection.xml:484
#, no-c-format
msgid "We would use this binding type at injection points as follows:"
-msgstr ""
+msgstr "Potremmo usare questo tipo di binding in corrispondenza ai punti di
iniezione in questo modo:"
#. Tag: programlisting
#: injection.xml:486
@@ -1098,13 +1121,14 @@
#: injection.xml:492
#, no-c-format
msgid "(Note that the <literal>value()</literal> member of the
<literal>HttpParam</literal> annotation is ignored by the Web Bean manager
since it is annotated <literal>(a)NonBinding.</literal>)"
-msgstr ""
+msgstr "(Occorre notare che il membro <literal>value()</literal>
dell'annotazione <literal>HttpParam</literal> viene ignorato dal manager
Web Bean poiché è annotato con <literal>(a)NonBinding.</literal>)"
+# di sistema o precostituito ?
#. Tag: para
#: injection.xml:495
#, no-c-format
msgid "The Web Bean manager provides a built-in Web Bean that implements the
<literal>InjectionPoint</literal> interface:"
-msgstr ""
+msgstr "Il manager Web Bean fornisce un Web Bean di sistema che implementa
l'interfaccia <literal>InjectionPoint</literal>:"
#. Tag: programlisting
#: injection.xml:498