Seam SVN: r10846 - modules/trunk/security/src/main/java/org/jboss/seam/security.
by seam-commits@lists.jboss.org
Author: shane.bryzak(a)jboss.com
Date: 2009-05-10 20:47:38 -0400 (Sun, 10 May 2009)
New Revision: 10846
Modified:
modules/trunk/security/src/main/java/org/jboss/seam/security/Identity.java
Log:
throw exception if more than one authenticator is found
Modified: modules/trunk/security/src/main/java/org/jboss/seam/security/Identity.java
===================================================================
--- modules/trunk/security/src/main/java/org/jboss/seam/security/Identity.java 2009-05-10 10:29:42 UTC (rev 10845)
+++ modules/trunk/security/src/main/java/org/jboss/seam/security/Identity.java 2009-05-11 00:47:38 UTC (rev 10846)
@@ -377,11 +377,16 @@
final IdentityManager identityManager = manager.getInstanceByType(IdentityManager.class);
Set<Bean<Authenticator>> authenticators = manager.resolveByType(Authenticator.class);
- if (authenticators.size() > 0)
+ if (authenticators.size() == 1)
{
Bean<Authenticator> authenticatorBean = authenticators.iterator().next();
authenticator = manager.getInstance(authenticatorBean);
}
+ else if (authenticators.size() > 1)
+ {
+ throw new IllegalStateException("More than one Authenticator bean found - please ensure " +
+ "only one Authenticator implementation is provided");
+ }
else
{
authenticator = null;
15 years, 6 months
Seam SVN: r10844 - branches/community/Seam_2_1/doc/Seam_Reference_Guide/it-IT.
by seam-commits@lists.jboss.org
Author: nico.ben
Date: 2009-05-10 06:28:29 -0400 (Sun, 10 May 2009)
New Revision: 10844
Modified:
branches/community/Seam_2_1/doc/Seam_Reference_Guide/it-IT/Itext.po
branches/community/Seam_2_1/doc/Seam_Reference_Guide/it-IT/Webservices.po
Log:
JBSEAM-3767: Italian translation of Seam guide
Modified: branches/community/Seam_2_1/doc/Seam_Reference_Guide/it-IT/Itext.po
===================================================================
--- branches/community/Seam_2_1/doc/Seam_Reference_Guide/it-IT/Itext.po 2009-05-10 10:16:47 UTC (rev 10843)
+++ branches/community/Seam_2_1/doc/Seam_Reference_Guide/it-IT/Itext.po 2009-05-10 10:28:29 UTC (rev 10844)
@@ -5,8 +5,8 @@
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: http://bugs.kde.org\n"
-"POT-Creation-Date: 2009-02-19 21:44+0000\n"
-"PO-Revision-Date: 2009-02-22 11:20+0100\n"
+"POT-Creation-Date: 2009-05-10 10:18+0000\n"
+"PO-Revision-Date: 2009-05-10 12:27+0100\n"
"Last-Translator: Nicola Benaglia <nico.benaz(a)gmail.com>\n"
"Language-Team: none\n"
"MIME-Version: 1.0\n"
@@ -50,192 +50,195 @@
msgstr "Il progetto <literal>examples/itext</literal> contiene un esempio di supporto PDF. Viene mostrato il corretto impacchettamento per il deploy e l'esempio contiene un gran numero di funzionalità per la generazione PDF attualmente supportate."
#. Tag: title
-#: Itext.xml:25
+#: Itext.xml:22
#, no-c-format
msgid "Creating a document"
msgstr "Creazione di un documento"
#. Tag: literal
-#: Itext.xml:37
+#: Itext.xml:34
#, no-c-format
msgid "<p:document>"
msgstr "<p:document>"
#. Tag: emphasis
-#: Itext.xml:42
-#: Itext.xml:184
-#: Itext.xml:256
-#: Itext.xml:291
-#: Itext.xml:324
-#: Itext.xml:374
-#: Itext.xml:397
-#: Itext.xml:528
-#: Itext.xml:592
-#: Itext.xml:654
-#: Itext.xml:694
-#: Itext.xml:749
-#: Itext.xml:852
-#: Itext.xml:939
-#: Itext.xml:1080
-#: Itext.xml:1308
-#: Itext.xml:1515
-#: Itext.xml:1721
-#: Itext.xml:1864
-#: Itext.xml:1935
-#: Itext.xml:1996
-#: Itext.xml:2043
-#: Itext.xml:2123
-#: Itext.xml:2235
-#: Itext.xml:2285
-#: Itext.xml:2345
+#: Itext.xml:39
+#: Itext.xml:181
+#: Itext.xml:253
+#: Itext.xml:288
+#: Itext.xml:321
+#: Itext.xml:371
+#: Itext.xml:394
+#: Itext.xml:525
+#: Itext.xml:589
+#: Itext.xml:651
+#: Itext.xml:691
+#: Itext.xml:746
+#: Itext.xml:849
+#: Itext.xml:936
+#: Itext.xml:1077
+#: Itext.xml:1309
+#: Itext.xml:1350
+#: Itext.xml:1570
+#: Itext.xml:1789
+#: Itext.xml:1947
+#: Itext.xml:2018
+#: Itext.xml:2079
+#: Itext.xml:2126
+#: Itext.xml:2208
+#: Itext.xml:2320
+#: Itext.xml:2370
+#: Itext.xml:2430
#, no-c-format
msgid "Description"
msgstr "Descrizione"
#. Tag: para
-#: Itext.xml:44
+#: Itext.xml:41
#, no-c-format
msgid "Documents are generated by facelet XHTML files using tags in the <literal>http://jboss.com/products/seam/pdf</literal> namespace. Documents should always have the <literal>document</literal> tag at the root of the document. The <literal>document</literal> tag prepares Seam to generate a document into the DocumentStore and renders an HTML redirect to that stored content."
msgstr "I documenti vengono generati dai file XHTML facelet usando dei tag nel namespace <literal>http://jboss.com/products/seam/pdf</literal>. I documenti dovrebbero sempre avere il tag <literal>document</literal> alla radice del documento. Il tag <literal>document</literal> prepara Seam a generare un documento nel DocumentStore e compie un redirect HTML a quel contenuto memorizzato."
#. Tag: emphasis
-#: Itext.xml:51
-#: Itext.xml:190
-#: Itext.xml:264
-#: Itext.xml:298
-#: Itext.xml:330
-#: Itext.xml:415
-#: Itext.xml:535
-#: Itext.xml:599
-#: Itext.xml:704
-#: Itext.xml:796
-#: Itext.xml:857
-#: Itext.xml:944
-#: Itext.xml:1085
-#: Itext.xml:1312
-#: Itext.xml:1519
-#: Itext.xml:1725
-#: Itext.xml:1869
-#: Itext.xml:1939
-#: Itext.xml:2001
-#: Itext.xml:2047
-#: Itext.xml:2128
-#: Itext.xml:2240
-#: Itext.xml:2290
-#: Itext.xml:2350
+#: Itext.xml:48
+#: Itext.xml:187
+#: Itext.xml:261
+#: Itext.xml:295
+#: Itext.xml:327
+#: Itext.xml:412
+#: Itext.xml:532
+#: Itext.xml:596
+#: Itext.xml:701
+#: Itext.xml:793
+#: Itext.xml:854
+#: Itext.xml:941
+#: Itext.xml:1082
+#: Itext.xml:1313
+#: Itext.xml:1354
+#: Itext.xml:1574
+#: Itext.xml:1793
+#: Itext.xml:1952
+#: Itext.xml:2022
+#: Itext.xml:2084
+#: Itext.xml:2130
+#: Itext.xml:2213
+#: Itext.xml:2325
+#: Itext.xml:2375
+#: Itext.xml:2435
#, no-c-format
msgid "Attributes"
msgstr "Attributi"
#. Tag: para
-#: Itext.xml:56
+#: Itext.xml:53
#, no-c-format
msgid "<literal>type</literal> — The type of the document to be produced. Valid values are <literal>PDF</literal>, <literal>RTF</literal> and <literal>HTML</literal> modes. Seam defaults to PDF generation, and many of the features only work correctly when generating PDF documents."
msgstr "<literal>type</literal> — Il tipo di documento da produrre. Valori validi sono <literal>PDF</literal>, <literal>RTF</literal> e <literal>HTML</literal>. Seam imposta come default la generazione PDF, e molte caratteristiche funzionano correttamente solo quando si generano documenti PDF."
#. Tag: para
-#: Itext.xml:65
+#: Itext.xml:62
#, no-c-format
msgid "<literal>pageSize</literal> — The size of the page to be generate. The most commonly used values would be <literal>LETTER</literal> and <literal>A4</literal>. A full list of supported pages sizes can be found in <literal>com.lowagie.text.PageSize</literal> class. Alternatively, pageSize can provide the width and height of the page directly. The value \"612 792\", for example, is equivalent to the LETTER page size."
msgstr "<literal>pageSize</literal> — La dimensionedella pagina da generare. I valori maggiormente usati dovrebbero essere <literal>LETTER</literal> e <literal>A4</literal>. Una lista completa delle dimensioni di pagina supportate si trova nella classe <literal>com.lowagie.text.PageSize</literal>. In alternativa, pageSize può direttamente fornire la larghezza e l'altezza della pagina. Per esempio, il valore \"612 792\" è equivalente alla dimensione della pagina LETTER."
#. Tag: para
-#: Itext.xml:74
+#: Itext.xml:71
#, no-c-format
msgid "<literal>orientation</literal> — The orientation of the page. Valid values are <literal>portrait</literal> and <literal>landscape</literal>. In landscape mode, the height and width page size values are reversed."
msgstr "<literal>orientation</literal> — L'orientamento della pagina. Valori validi sono <literal>portrait</literal> e <literal>landscape</literal>. Nella modalità landscape, i valori dell'altezza e della larghezza della pagina sono invertiti."
#. Tag: para
-#: Itext.xml:83
+#: Itext.xml:80
#, no-c-format
msgid "<literal>margins</literal> — The left, right, top and bottom margin values."
msgstr "<literal>margins</literal> — Valori di margine left, right, top e bottom."
#. Tag: para
-#: Itext.xml:88
+#: Itext.xml:85
#, no-c-format
msgid "<literal>marginMirroring</literal> — Indicates that margin settings should be reversed an alternating pages."
msgstr "<literal>marginMirroring</literal> — Indica che le impostazioni dei margini dovrebbero essere invertite in pagine alternate."
#. Tag: para
-#: Itext.xml:94
+#: Itext.xml:91
#, no-c-format
msgid "<literal>disposition</literal> — When generating PDFs in a web browser, this determines the HTTP <literal>Content-Disposition</literal> of the document. Valid values are <literal>inline</literal>, which indicates the document should be displayed in the browser window if possible, and <literal>attachment</literal>, which indicates that the document should be treated as a download. The default value is <literal>inline</literal>."
msgstr "<literal>disposition</literal> — Quando si generano PDF in un browser, questo determina la <literal>Content-Disposition</literal> HTTP del documento. Valori validi sono <literal>inline</literal>, che indica che il documento deve essere mostrato in una finestra del browser se possibile, e <literal>attachment</literal>, che indica che il documento deve essere trattato come download. Il valore di default è <literal>inline</literal>."
#. Tag: para
-#: Itext.xml:102
+#: Itext.xml:99
#, no-c-format
msgid "<literal>fileName</literal> — For attachments, this value overrides the downloaded file name."
msgstr "<literal>fileName</literal> — Per gli allegati questo valore sovrascrive il nome del file scaricato."
#. Tag: emphasis
-#: Itext.xml:111
+#: Itext.xml:108
#, no-c-format
msgid "Metadata Attributes"
msgstr "Attributi dei metadati"
#. Tag: literal
-#: Itext.xml:118
+#: Itext.xml:115
#, no-c-format
msgid "title"
msgstr "title"
#. Tag: literal
-#: Itext.xml:123
+#: Itext.xml:120
#, no-c-format
msgid "subject"
msgstr "subject"
#. Tag: literal
-#: Itext.xml:128
+#: Itext.xml:125
#, no-c-format
msgid "keywords"
msgstr "keywords"
#. Tag: literal
-#: Itext.xml:133
+#: Itext.xml:130
#, no-c-format
msgid "author"
msgstr "author"
#. Tag: literal
-#: Itext.xml:138
+#: Itext.xml:135
#, no-c-format
msgid "creator"
msgstr "creator"
#. Tag: emphasis
-#: Itext.xml:143
-#: Itext.xml:242
-#: Itext.xml:276
-#: Itext.xml:309
-#: Itext.xml:359
-#: Itext.xml:382
-#: Itext.xml:510
-#: Itext.xml:558
-#: Itext.xml:640
-#: Itext.xml:660
-#: Itext.xml:733
-#: Itext.xml:838
-#: Itext.xml:899
-#: Itext.xml:1065
-#: Itext.xml:1241
-#: Itext.xml:1501
-#: Itext.xml:1707
-#: Itext.xml:1850
-#: Itext.xml:1921
-#: Itext.xml:1979
-#: Itext.xml:2029
-#: Itext.xml:2089
-#: Itext.xml:2203
-#: Itext.xml:2370
+#: Itext.xml:140
+#: Itext.xml:239
+#: Itext.xml:273
+#: Itext.xml:306
+#: Itext.xml:356
+#: Itext.xml:379
+#: Itext.xml:507
+#: Itext.xml:555
+#: Itext.xml:637
+#: Itext.xml:657
+#: Itext.xml:730
+#: Itext.xml:835
+#: Itext.xml:896
+#: Itext.xml:1062
+#: Itext.xml:1238
+#: Itext.xml:1334
+#: Itext.xml:1556
+#: Itext.xml:1775
+#: Itext.xml:1930
+#: Itext.xml:2004
+#: Itext.xml:2062
+#: Itext.xml:2112
+#: Itext.xml:2172
+#: Itext.xml:2288
+#: Itext.xml:2455
#, no-c-format
msgid "Usage"
msgstr "Utilizzo"
#. Tag: programlisting
-#: Itext.xml:145
+#: Itext.xml:142
#, no-c-format
msgid ""
"<![CDATA[<p:document xmlns:p=\"http://jboss.com/products/seam/pdf\"> \n"
@@ -247,95 +250,95 @@
"</p:document>]]>"
#. Tag: title
-#: Itext.xml:158
+#: Itext.xml:155
#, no-c-format
msgid "Basic Text Elements"
msgstr "Elementi base per il testo"
#. Tag: para
-#: Itext.xml:160
+#: Itext.xml:157
#, no-c-format
msgid "Useful documents will need to contain more than just text; however, the standard UI components are geared towards HTML generation and are not useful for generating PDF content. Instead, Seam provides a special UI components for generating suitable PDF content. Tags like <literal><p:image></literal> and <literal><p:paragraph></literal> are the basic foundations of simple documents. Tags like <literal><p:font></literal> provide style information to all the content surrounding them."
msgstr "I documenti utili dovranno contenere più che il solo testo; comunque i componenti standard UI sono idonei per la generazione HTML e non sono utili per generare contenuto in PDF. Invece Seam fornisce dei componenti UI speciali per generare contenuto in PDF idoneo. Tag quali <literal><p:image></literal> e <literal><p:paragraph></literal> sono la base per i semplici documenti. Tag come <literal><p:font></literal> forniscono informazioni di stile a tutto il contenuto che sta intorno."
#. Tag: literal
-#: Itext.xml:177
+#: Itext.xml:174
#, no-c-format
msgid "<p:paragraph>"
msgstr "<p:paragraph>"
#. Tag: para
-#: Itext.xml:186
+#: Itext.xml:183
#, no-c-format
msgid "Most uses of text should be sectioned into paragraphs so that text fragments can be flowed, formatted and styled in logical groups."
msgstr "La maggior parte dell'uso del testo dovrebbe essere sezionato in paragrafi, affinché i frammenti del testo possano scorrere, formattati ed con uno stile in gruppi logici."
#. Tag: literal
-#: Itext.xml:196
+#: Itext.xml:193
#, no-c-format
msgid "firstLineIndent"
msgstr "firstLineIndent"
#. Tag: literal
-#: Itext.xml:201
-#: Itext.xml:1160
+#: Itext.xml:198
+#: Itext.xml:1157
#, no-c-format
msgid "extraParagraphSpace"
msgstr "extraParagraphSpace"
#. Tag: literal
-#: Itext.xml:206
-#: Itext.xml:1132
+#: Itext.xml:203
+#: Itext.xml:1129
#, no-c-format
msgid "leading"
msgstr "leading"
#. Tag: literal
-#: Itext.xml:211
-#: Itext.xml:1140
+#: Itext.xml:208
+#: Itext.xml:1137
#, no-c-format
msgid "multipliedLeading"
msgstr "multipliedLeading"
#. Tag: para
-#: Itext.xml:215
-#: Itext.xml:462
-#: Itext.xml:1025
+#: Itext.xml:212
+#: Itext.xml:459
+#: Itext.xml:1022
#, no-c-format
msgid "<literal>spacingBefore</literal> — The blank space to be inserted before the element."
msgstr "<literal>spacingBefore</literal> — Lo spazio bianco da inserire prima dell'elemento."
#. Tag: para
-#: Itext.xml:220
-#: Itext.xml:467
-#: Itext.xml:1031
+#: Itext.xml:217
+#: Itext.xml:464
+#: Itext.xml:1028
#, no-c-format
msgid "<literal>spacingAfter</literal> — The blank space to be inserted after the element."
msgstr "<literal>spacingAfter</literal> — Lo spazio bianco da inserire dopo l'elemento."
#. Tag: literal
-#: Itext.xml:226
-#: Itext.xml:453
+#: Itext.xml:223
+#: Itext.xml:450
#, no-c-format
msgid "indentationLeft"
msgstr "indentationLeft"
#. Tag: literal
-#: Itext.xml:231
-#: Itext.xml:458
+#: Itext.xml:228
+#: Itext.xml:455
#, no-c-format
msgid "indentationRight"
msgstr "indentationRight"
#. Tag: literal
-#: Itext.xml:236
-#: Itext.xml:1059
+#: Itext.xml:233
+#: Itext.xml:1056
#, no-c-format
msgid "keepTogether"
msgstr "keepTogether"
#. Tag: programlisting
-#: Itext.xml:244
+#: Itext.xml:241
#, no-c-format
msgid ""
"<![CDATA[<p:paragraph alignment=\"justify\">\n"
@@ -347,25 +350,25 @@
"</p:paragraph>]]>"
#. Tag: literal
-#: Itext.xml:251
+#: Itext.xml:248
#, no-c-format
msgid "<p:text>"
msgstr "<p:text>"
#. Tag: para
-#: Itext.xml:259
+#: Itext.xml:256
#, no-c-format
msgid "The <literal>text</literal> tag allows text fragments to be produced from application data using normal JSF converter mechanisms. It is very similar to the <literal>outputText</literal> tag used when rendering HTML documents."
msgstr "Il tag <literal>text</literal> consente ai frammenti del testo di essere prodotti dai dati dell'applicazione usando normali meccanismi convertitori JSF. E' molto simile al tag <literal>outputText</literal> impiegato quando si generano documenti HTML."
#. Tag: para
-#: Itext.xml:270
+#: Itext.xml:267
#, no-c-format
msgid "<literal>value</literal> — The value to be displayed. This will typically be a value binding expression."
msgstr "<literal>value</literal> — Il valore da visualizzare. Questo sarà tipicamente un'espressione di binding."
#. Tag: programlisting
-#: Itext.xml:279
+#: Itext.xml:276
#, no-c-format
msgid ""
"<![CDATA[<p:paragraph>\n"
@@ -381,25 +384,25 @@
"</p:paragraph>]]>"
#. Tag: literal
-#: Itext.xml:286
+#: Itext.xml:283
#, no-c-format
msgid "<p:html>"
msgstr "<p:html>"
#. Tag: para
-#: Itext.xml:294
+#: Itext.xml:291
#, no-c-format
msgid "The <literal>html</literal> tag renders HTML content into the PDF."
msgstr "Il tag <literal>html</literal> genera contenuto HTML in PDF."
#. Tag: para
-#: Itext.xml:304
+#: Itext.xml:301
#, no-c-format
msgid "<literal>value</literal> — The text to be displayed."
msgstr "<literal>value</literal> — Il testo da visualizzare."
#. Tag: programlisting
-#: Itext.xml:312
+#: Itext.xml:309
#, no-c-format
msgid ""
"<![CDATA[\n"
@@ -435,43 +438,43 @@
"]]>"
#. Tag: literal
-#: Itext.xml:319
+#: Itext.xml:316
#, no-c-format
msgid "<p:font>"
msgstr "<p:font>"
#. Tag: para
-#: Itext.xml:327
+#: Itext.xml:324
#, no-c-format
msgid "The font tag defines the default font to be used for all text inside of it."
msgstr "Il tag font definisce il font di default da usarsi per tutto il testo contenuto in esso."
#. Tag: para
-#: Itext.xml:336
+#: Itext.xml:333
#, no-c-format
msgid "<literal>name</literal> — The font name, for example: <literal>COURIER</literal>, <literal>HELVETICA</literal>, <literal>TIMES-ROMAN</literal>, <literal>SYMBOL</literal> or <literal>ZAPFDINGBATS</literal>."
msgstr "<literal>name</literal> — Il nome del font, per esempio: <literal>COURIER</literal>, <literal>HELVETICA</literal>, <literal>TIMES-ROMAN</literal>, <literal>SYMBOL</literal> o <literal>ZAPFDINGBATS</literal>."
#. Tag: para
-#: Itext.xml:343
+#: Itext.xml:340
#, no-c-format
msgid "<literal>size</literal> — The point size of the font."
msgstr "<literal>size</literal> — La dimensione del punto nel font."
#. Tag: para
-#: Itext.xml:347
+#: Itext.xml:344
#, no-c-format
msgid "<literal>style</literal> — The font styles. Any combination of : <literal>NORMAL</literal>, <literal>BOLD</literal>, <literal>ITALIC</literal>, <literal>OBLIQUE</literal>, <literal>UNDERLINE</literal>, <literal>LINE-THROUGH</literal>"
msgstr "<literal>style</literal> — Gli stili del font. Una combinazione di: <literal>NORMAL</literal>, <literal>BOLD</literal>, <literal>ITALIC</literal>, <literal>OBLIQUE</literal>, <literal>UNDERLINE</literal>, <literal>LINE-THROUGH</literal>."
#. Tag: para
-#: Itext.xml:355
+#: Itext.xml:352
#, no-c-format
msgid "<literal>encoding</literal> — The character set encoding."
msgstr "<literal>encoding</literal> — La codifica del set di caratteri."
#. Tag: programlisting
-#: Itext.xml:362
+#: Itext.xml:359
#, no-c-format
msgid ""
"<![CDATA[<p:font name=\"courier\" style=\"bold\" size=\"24\">\n"
@@ -483,151 +486,151 @@
"</p:font>]]>"
#. Tag: literal
-#: Itext.xml:369
+#: Itext.xml:366
#, no-c-format
msgid "<p:newPage>"
msgstr "<p:newPage>"
#. Tag: para
-#: Itext.xml:378
+#: Itext.xml:375
#, no-c-format
msgid "<literal>p:newPage</literal> inserts a page break."
msgstr "<literal>p:newPage</literal> inserisce un'interruzione di pagina."
#. Tag: programlisting
-#: Itext.xml:385
+#: Itext.xml:382
#, no-c-format
msgid "<![CDATA[<p:newPage />]]>"
msgstr "<![CDATA[<p:newPage />]]>"
#. Tag: literal
-#: Itext.xml:392
+#: Itext.xml:389
#, no-c-format
msgid "<p:image>"
msgstr "<p:image>"
#. Tag: para
-#: Itext.xml:401
+#: Itext.xml:398
#, no-c-format
msgid "<literal>p:image</literal> inserts an image into the document. Images can be loaded from the classpath or from the web application context using the <literal>value</literal> attribute."
msgstr "<literal>p:image</literal> inserisce un'immagine in un documento. Le immagini possono essere caricate dal classpath o dal contesto dell'applicazione web usando l'attributo <literal>value</literal>."
#. Tag: para
-#: Itext.xml:407
+#: Itext.xml:404
#, no-c-format
msgid "Resources can also be dynamically generated by application code. The <literal>imageData</literal> attribute can specify a value binding expression whose value is a <literal>java.awt.Image</literal> object."
msgstr "Le risorse possono anche essere generate dinamicamente dal codice dell'applicazione. L'attributo <literal>imageData</literal> può specificare un'espressione di value binding il cui valore è un oggetto <literal>java.awt.Image</literal>."
#. Tag: para
-#: Itext.xml:420
+#: Itext.xml:417
#, no-c-format
msgid "<literal>value</literal> — A resource name or a method expression binding to an application-generated image."
msgstr "<literal>value</literal> — Un nome di risorsa oppure un binding di metodo ad un'immagine generata dall'applicazione."
#. Tag: para
-#: Itext.xml:426
+#: Itext.xml:423
#, no-c-format
msgid "<literal>rotation</literal> — The rotation of the image in degrees."
msgstr "<literal>rotation</literal> — La rotazione dell'immagine in gradi."
#. Tag: para
-#: Itext.xml:432
+#: Itext.xml:429
#, no-c-format
msgid "<literal>height</literal> — The height of the image."
msgstr "<literal>height</literal> — L'altezza dell'immagine."
#. Tag: para
-#: Itext.xml:436
+#: Itext.xml:433
#, no-c-format
msgid "<literal>width</literal> — The width of the image."
msgstr "<literal>width</literal> — La larghezza dell'immagine."
#. Tag: para
-#: Itext.xml:440
+#: Itext.xml:437
#, no-c-format
msgid "<literal>alignment</literal>— The alignment of the image. (see <xref linkend=\"itext.alignment\"/> for possible values)"
msgstr "<literal>alignment</literal>— L'allineamento dell'immagine. (vedere <xref linkend=\"itext.alignment\"/> per i possibili valori)"
#. Tag: para
-#: Itext.xml:447
+#: Itext.xml:444
#, no-c-format
msgid "<literal>alt</literal> — Alternative text representation for the image."
msgstr "<literal>alt</literal> — Testo alternativo per la rappresentazione dell'immagine."
#. Tag: literal
-#: Itext.xml:475
+#: Itext.xml:472
#, no-c-format
msgid "widthPercentage"
msgstr "widthPercentage"
#. Tag: literal
-#: Itext.xml:481
+#: Itext.xml:478
#, no-c-format
msgid "initialRotation"
msgstr "initialRotation"
#. Tag: literal
-#: Itext.xml:487
+#: Itext.xml:484
#, no-c-format
msgid "<literal>dpi</literal>"
msgstr "<literal>dpi</literal>"
#. Tag: para
-#: Itext.xml:491
+#: Itext.xml:488
#, no-c-format
msgid "<literal>scalePercent</literal> — The scaling factor (as a percentage) to use for the image. This can be expressed as a single percentage value or as two percentage values representing separate x and y scaling percentages."
msgstr "<literal>scalePercent</literal> — Il fattore di scala (come percentuale) da usare per l'immagine. Questo può esprimersi come valore di percentuale singola oppure come valori di due percentuali che rappresentano percentuali separate per la scala lungo x o lungo y."
#. Tag: literal
-#: Itext.xml:499
+#: Itext.xml:496
#, no-c-format
msgid "wrap"
msgstr "wrap"
#. Tag: literal
-#: Itext.xml:504
+#: Itext.xml:501
#, no-c-format
msgid "underlying"
msgstr "underlying"
#. Tag: programlisting
-#: Itext.xml:514
+#: Itext.xml:511
#, no-c-format
msgid "<![CDATA[<p:image value=\"/jboss.jpg\" />]]>"
msgstr "<![CDATA[<p:image value=\"/jboss.jpg\" />]]>"
#. Tag: programlisting
-#: Itext.xml:515
+#: Itext.xml:512
#, no-c-format
msgid "<![CDATA[<p:image value=\"#{images.chart}\" />]]>"
msgstr "<![CDATA[<p:image value=\"#{images.chart}\" />]]>"
#. Tag: literal
-#: Itext.xml:523
+#: Itext.xml:520
#, no-c-format
msgid "<p:anchor>"
msgstr "<p:anchor>"
#. Tag: para
-#: Itext.xml:530
+#: Itext.xml:527
#, no-c-format
msgid "<literal>p:anchor</literal> defines clickable links from a document. It supports the following attributes:"
msgstr "<literal>p:anchor</literal> definisce i link cliccabili da un documento. Supporta i seguenti attributi:"
#. Tag: para
-#: Itext.xml:541
+#: Itext.xml:538
#, no-c-format
msgid "<literal>name</literal> — The name of an in-document anchor destination."
msgstr "<literal>name</literal> — Il nome di una destinazione d'ancora dentro il documento."
#. Tag: para
-#: Itext.xml:548
+#: Itext.xml:545
#, no-c-format
msgid "<literal>reference</literal> — The destination the link refers to. Links to other points in the document should begin with a \"#\". For example, \"#link1\" to refer to an anchor position with a <literal>name</literal> of <literal>link1</literal>. Links may also be a full URL to point to a resource outside of the document."
msgstr "<literal>reference</literal> — La destinazione a cui il link di riferisce. I link ad altri punti del documento dovrebbero iniziare con un \"#\". Per esempio, \"#link1\" si riferisce ad una posizione dell'ancora con il <literal>name</literal> impostato a <literal>link1</literal>. I link possono anche essere URL completi ad un punto della risorsa fuori dal documento."
#. Tag: programlisting
-#: Itext.xml:560
+#: Itext.xml:557
#, no-c-format
msgid ""
"<![CDATA[<p:listItem><p:anchor reference=\"#reason1\">Reason 1</p:anchor></p:listItem> \n"
@@ -645,58 +648,58 @@
"</p:paragraph>]]>"
#. Tag: title
-#: Itext.xml:571
+#: Itext.xml:568
#, no-c-format
msgid "Headers and Footers"
msgstr "Intestazioni e pié di pagina"
#. Tag: literal
-#: Itext.xml:584
-#: Itext.xml:744
+#: Itext.xml:581
+#: Itext.xml:741
#, no-c-format
msgid "<p:header>"
msgstr "<p:header>"
#. Tag: literal
-#: Itext.xml:587
+#: Itext.xml:584
#, no-c-format
msgid "<p:footer>"
msgstr "<p:footer>"
#. Tag: para
-#: Itext.xml:594
+#: Itext.xml:591
#, no-c-format
msgid "The <literal>p:header</literal> and <literal>p:footer</literal> components provide the ability to place header and footer text on each page of a generated document. Header and footer declarations should appear at the beginning of a document."
msgstr "I componenti <literal>p:header</literal> e <literal>p:footer</literal> forniscono la possibilità di collocare il testo per l'intestazione ed il pié di pagina in ogni pagina del documento generato. Le dichiarazioni di header e footer dovrebbero apparire all'inizio del documento."
#. Tag: para
-#: Itext.xml:607
-#: Itext.xml:712
-#: Itext.xml:865
+#: Itext.xml:604
+#: Itext.xml:709
+#: Itext.xml:862
#, no-c-format
msgid "<literal>alignment</literal> — The alignment of the header/footer box section. (see <xref linkend=\"itext.alignment\"/> for alignment values)"
msgstr "<literal>alignment</literal> — L'allineamento della sezione header/footer. (Si veda <xref linkend=\"itext.alignment\"/> per i valori dell'allineamento)"
#. Tag: para
-#: Itext.xml:614
+#: Itext.xml:611
#, no-c-format
msgid "<literal>backgroundColor</literal> — The background color of the header/footer box. (see <xref linkend=\"itext.colors\"/> for color values)"
msgstr "<literal>backgroundColor</literal> — Il colore del background di header/footer. (Si veda <xref linkend=\"itext.colors\"/> per i valori dei colori)"
#. Tag: para
-#: Itext.xml:623
+#: Itext.xml:620
#, no-c-format
msgid "<literal>borderColor</literal> — The border color of the header/footer box. Individual border sides can be set using <literal>borderColorLeft</literal>, <literal>borderColorRight</literal>, <literal>borderColorTop</literal> and <literal>borderColorBottom</literal>.(see <xref linkend=\"itext.colors\"/> for color values)"
msgstr "<literal>borderColor</literal> — Il colore del bordo di header/footer. I singoli lati dei bordi possono essere impostati usando <literal>borderColorLeft</literal>, <literal>borderColorRight</literal>, <literal>borderColorTop</literal> e <literal>borderColorBottom</literal>.(Si veda <xref linkend=\"itext.colors\"/>per i valori dei colori)"
#. Tag: para
-#: Itext.xml:631
+#: Itext.xml:628
#, no-c-format
msgid "<literal>borderWidth</literal> — The width of the border. Individual border sides can be specified using <literal>borderWidthLeft</literal>, <literal>borderWidthRight</literal>, <literal>borderWidthTop</literal> and <literal>borderWidthBottom</literal>."
msgstr "<literal>borderWidth</literal> — La larghezza del bordo. I singoli lati dei bordi possono essere specificati usando <literal>borderWidthLeft</literal>, <literal>borderWidthRight</literal>, <literal>borderWidthTop</literal> e <literal>borderWidthBottom</literal>."
#. Tag: programlisting
-#: Itext.xml:642
+#: Itext.xml:639
#, no-c-format
msgid ""
"<![CDATA[<f:facet name=\"header\">\n"
@@ -718,19 +721,19 @@
"</f:facet>]]>"
#. Tag: literal
-#: Itext.xml:649
+#: Itext.xml:646
#, no-c-format
msgid "<p:pageNumber>"
msgstr "<p:pageNumber>"
#. Tag: para
-#: Itext.xml:656
+#: Itext.xml:653
#, no-c-format
msgid "The current page number can be placed inside of a header or footer using the <literal>p:pageNumber</literal> tag. The page number tag can only be used in the context of a header or footer and can only be used once."
msgstr "Il numero della pagina corrente può essere collocato dentro un header o un footer usando il tag <literal>p:pageNumber</literal>. Il tag del numero della pagina può essereusato solamente nel contesto dell'header o footer e può essere usato solo una volta."
#. Tag: programlisting
-#: Itext.xml:662
+#: Itext.xml:659
#, no-c-format
msgid ""
"<p:footer borderWidthTop="1" borderColorTop="blue" \n"
@@ -744,43 +747,43 @@
"</p:footer>"
#. Tag: title
-#: Itext.xml:675
+#: Itext.xml:672
#, no-c-format
msgid "Chapters and Sections"
msgstr "Capitoli e Sezioni"
#. Tag: literal
-#: Itext.xml:686
+#: Itext.xml:683
#, no-c-format
msgid "<p:chapter>"
msgstr "<p:chapter>"
#. Tag: literal
-#: Itext.xml:689
+#: Itext.xml:686
#, no-c-format
msgid "<p:section>"
msgstr "<p:section>"
#. Tag: para
-#: Itext.xml:697
+#: Itext.xml:694
#, no-c-format
msgid "If the generated document follows a book/article structure, the <literal>p:chapter</literal> and <literal>p:section</literal> tags can be used to provide the necessary structure. Sections can only be used inside of chapters, but they may be nested arbitrarily deep. Most PDF viewers provide easy navigation between chapters and sections in a document."
msgstr "Se il documento generato segue una struttura libro/articolo, i tag <literal>p:chapter</literal> e <literal>p:section</literal> possono essere usati per fornire la struttura necessaria. Le sezioni possono essere usate soltanto dentro i capitoli, ma possono essere innestate con profondità arbitraria. La maggior parte dei visualizzatori PDF forniscono una facile navigazione tra i capitoli e le sezioni di un documento."
#. Tag: para
-#: Itext.xml:719
+#: Itext.xml:716
#, no-c-format
msgid "<literal>number</literal> — The chapter number. Every chapter should be assigned a chapter number."
msgstr "<literal>number</literal> — Il numero del capitolo. Ogni capitolo dovrebbe avere un numero assegnato."
#. Tag: para
-#: Itext.xml:724
+#: Itext.xml:721
#, no-c-format
msgid "<literal>numberDepth</literal> — The depth of numbering for section. All sections are numbered relative to their surrounding chapter/sections. The fourth section of the first section of chapter three would be section 3.1.4, if displayed at the default number depth of three. To omit the chapter number, a number depth of 2 should be used. In that case, the section number would be displayed as 1.4."
msgstr "<literal>numberDepth</literal> — La profondità della numerazione per le sezioni. Tutte le sezioni sono numerate relativamente ai loro capitoli/sezioni circostanti. La quarta sezione della prima sezione del capitolo terzo avrebbe sezione 3.1.4, se visualizzata con una profondità di default di tre. Per omettere il numero del capitolo, occorre usare una profondità di numerazione pari a 2. In questo caso, il numero della sezione visualizzato sarebbe 1.4."
#. Tag: programlisting
-#: Itext.xml:736
+#: Itext.xml:733
#, no-c-format
msgid ""
"<![CDATA[<p:document xmlns:p=\"http://jboss.com/products/seam/pdf\"\n"
@@ -814,25 +817,25 @@
"</p:document> ]]>"
#. Tag: para
-#: Itext.xml:752
+#: Itext.xml:749
#, no-c-format
msgid "Any chapter or section can contain a <literal>p:title</literal>. The title will be displayed next to the chapter/section number. The body of the title may contain raw text or may be a <literal>p:paragraph</literal>."
msgstr "Ogni capitolo o sezione può contenere un <literal>p:title</literal>. Il titolo verrà mostrato vicino al numero del capitolo/sezione. Il corpo del titolo può contenere del semplice testo oppure un <literal>p:paragraph</literal>."
#. Tag: title
-#: Itext.xml:765
+#: Itext.xml:762
#, no-c-format
msgid "Lists"
msgstr "Liste"
#. Tag: para
-#: Itext.xml:767
+#: Itext.xml:764
#, no-c-format
msgid "List structures can be displayed using the <literal>p:list</literal> and <literal>p:listItem</literal> tags. Lists may contain arbitrarily-nested sublists. List items may not be used outside of a list. The following document uses the <literal>ui:repeat</literal> tag to to display a list of values retrieved from a Seam component."
msgstr "Le strutture di lista possono essere visualizzate usando i tag <literal>p:list</literal> e <literal>p:listItem</literal>. Le liste possono contenere sottoliste arbitrariamente innestate. Gli elementi di lista non possono essere usati fuori da una lista. Il seguente documento utilizza il tag <literal>ui:repeat</literal> per mostrare una lista di valori recuperata da un componente Seam."
#. Tag: programlisting
-#: Itext.xml:772
+#: Itext.xml:769
#, no-c-format
msgid ""
"<![CDATA[<p:document xmlns:p=\"http://jboss.com/products/seam/pdf\"\n"
@@ -856,49 +859,49 @@
"</p:document>]]>"
#. Tag: literal
-#: Itext.xml:785
+#: Itext.xml:782
#, no-c-format
msgid "<p:list>"
msgstr "<p:list>"
#. Tag: para
-#: Itext.xml:802
+#: Itext.xml:799
#, no-c-format
msgid "<literal>style</literal> — The ordering/bulleting style of list. One of: <literal>NUMBERED</literal>, <literal>LETTERED</literal>, <literal>GREEK</literal>, <literal>ROMAN</literal>, <literal>ZAPFDINGBATS</literal>, <literal>ZAPFDINGBATS_NUMBER</literal>. If no style is given, the list items are bulleted."
msgstr "<literal>style</literal> — Lo stile per l'ordinamento ed il contrassegno della lista. Un valore fra: <literal>NUMBERED</literal>, <literal>LETTERED</literal>, <literal>GREEK</literal>, <literal>ROMAN</literal>, <literal>ZAPFDINGBATS</literal>, <literal>ZAPFDINGBATS_NUMBER</literal>. Se non è fornito nessuno stile, gli elementi della lista sono contrassegnati."
#. Tag: para
-#: Itext.xml:809
+#: Itext.xml:806
#, no-c-format
msgid "<literal>listSymbol</literal> — For bulleted lists, specifies the bullet symbol."
msgstr "<literal>listSymbol</literal> — Per le liste contrassegnate, specifica il simbolo del contrassegno."
#. Tag: para
-#: Itext.xml:814
+#: Itext.xml:811
#, no-c-format
msgid "<literal>indent</literal> — The indentation level of the list."
msgstr "<literal>indent</literal> — Il livello di indentazione della lista."
#. Tag: para
-#: Itext.xml:820
+#: Itext.xml:817
#, no-c-format
msgid "<literal>lowerCase</literal> — For list styles using letters, indicates whether the letters should be lower case."
msgstr "<literal>lowerCase</literal> — Per gli stili di lista che usano le lettere, indica se le lettere debbano essere minuscole."
#. Tag: para
-#: Itext.xml:826
+#: Itext.xml:823
#, no-c-format
msgid "<literal>charNumber</literal> — For ZAPFDINGBATS, indicates the character code of the bullet character."
msgstr "<literal>charNumber</literal> — Per ZAPFDINGBATS, indica il codice del carattere per il carattere di contrassegno."
#. Tag: para
-#: Itext.xml:832
+#: Itext.xml:829
#, no-c-format
msgid "<literal>numberType</literal> — For ZAPFDINGBATS_NUMBER, indicates the numbering style."
msgstr "<literal>numberType</literal> — Per ZAPFDINGBATS_NUMBER, indica lo stile della numerazione."
#. Tag: programlisting
-#: Itext.xml:840
+#: Itext.xml:837
#, no-c-format
msgid ""
"<![CDATA[<p:list style=\"numbered\">\n"
@@ -914,153 +917,153 @@
"</p:list>]]>"
#. Tag: literal
-#: Itext.xml:847
+#: Itext.xml:844
#, no-c-format
msgid "<p:listItem>"
msgstr "<p:listItem>"
#. Tag: para
-#: Itext.xml:854
+#: Itext.xml:851
#, no-c-format
msgid "<literal>p:listItem</literal> supports the following attributes:"
msgstr "<literal>p:listItem</literal> supporta i seguenti attributi:"
#. Tag: para
-#: Itext.xml:872
+#: Itext.xml:869
#, no-c-format
msgid "<literal>alignment</literal> — The alignment of the list item. (See <xref linkend=\"itext.alignment\"/> for possible values)"
msgstr "<literal>alignment</literal> — L'allineamento dell'elemento della lista. (Si veda <xref linkend=\"itext.alignment\"/> per i possibili valori)"
#. Tag: para
-#: Itext.xml:878
+#: Itext.xml:875
#, no-c-format
msgid "<literal>indentationLeft</literal> — The left indentation amount."
msgstr "<literal>indentationLeft</literal> — La quantità di indentazione sinistra."
#. Tag: para
-#: Itext.xml:885
+#: Itext.xml:882
#, no-c-format
msgid "<literal>indentationRight</literal> — The right indentation amount."
msgstr "<literal>indentationRight</literal> — La quantità di indentazione destra."
#. Tag: para
-#: Itext.xml:892
+#: Itext.xml:889
#, no-c-format
msgid "<literal>listSymbol</literal> — Overrides the default list symbol for this list item."
msgstr "<literal>listSymbol</literal> — Sovrascrive il simbolo di default della lista per quest'elemento della lista."
#. Tag: programlisting
-#: Itext.xml:901
+#: Itext.xml:898
#, no-c-format
msgid "<programlisting>...</programlisting>"
msgstr "<programlisting>...</programlisting>"
#. Tag: title
-#: Itext.xml:915
+#: Itext.xml:912
#, no-c-format
msgid "Tables"
msgstr "Tabelle"
#. Tag: para
-#: Itext.xml:917
+#: Itext.xml:914
#, no-c-format
msgid "Table structures can be created using the <literal>p:table</literal> and <literal>p:cell</literal> tags. Unlike many table structures, there is no explicit row declaration. If a table has 3 columns, then every 3 cells will automatically form a row. Header and footer rows can be declared, and the headers and footers will be repeated in the event a table structure spans multiple pages."
msgstr "Le strutture della tabella possono essere create usando i tag <literal>p:table</literal> e <literal>p:cell</literal>. A differenza di molte strutture di tabella, non c'è alcuna dichiarazione esplicita di riga. Se una tabella ha 3 colonne, allora le 3 celle formeranno automaticamente una riga. Le righe di header e footer possono essere dichiarate, e gli header ed i footer verranno ripetuti nel caso una struttura di tabella prosegua su più pagine."
#. Tag: literal
-#: Itext.xml:934
+#: Itext.xml:931
#, no-c-format
msgid "<p:table>"
msgstr "<p:table>"
#. Tag: para
-#: Itext.xml:941
+#: Itext.xml:938
#, no-c-format
msgid "<literal>p:table</literal> supports the following attributes."
msgstr "<literal>p:table</literal> supporta i seguenti attributi:"
#. Tag: para
-#: Itext.xml:951
+#: Itext.xml:948
#, no-c-format
msgid "<literal>columns</literal> — The number of columns (cells) that make up a table row."
msgstr "<literal>columns</literal> — Il numero di colonne (celle) che formano una riga della tabella."
#. Tag: para
-#: Itext.xml:958
+#: Itext.xml:955
#, no-c-format
msgid "<literal>widths</literal> — The relative widths of each column. There should be one value for each column. For example: widths=\"2 1 1\" would indicate that there are 3 columns and the first column should be twice the size of the second and third column."
msgstr "<literal>widths</literal> — Le larghezze relative di ciascuna colonna. Dovrebbe esserci un valore per ciascuna colonna. Per esempio: larghezze=\"2 1 1\" dovrebbe indicare che ci sono 3 colonne e la prima colonna è due volte la dimensione della seconda e della terza colonna."
#. Tag: para
-#: Itext.xml:967
+#: Itext.xml:964
#, no-c-format
msgid "<literal>headerRows</literal> — The initial number of rows which are considered to be headers or footer rows and should be repeated if the table spans multiple pages."
msgstr "<literal>headerRows</literal> — Il numero iniziale di righe che sono considerate righe dell'header e del footer e devono essere ripetute se la tabella prosegue per più pagine."
#. Tag: para
-#: Itext.xml:975
+#: Itext.xml:972
#, no-c-format
msgid "<literal>footerRows</literal> — The number of rows that are considered to be footer rows. This value is subtracted from the <literal>headerRows</literal> value. If document has 2 rows which make up the header and one row that makes up the footer, <literal>headerRows</literal> should be set to 3 and <literal>footerRows</literal> should be set to 1"
msgstr "<literal>footerRows</literal> — Il numero iniziale di righe che sono considerate righe del footer. Questo valore è sottratto dal valore <literal>headerRows</literal>. Se il documento ha 2 righe che formano l'header ed una riga che forma il footer, <literal>headerRows</literal> deve essere impostato a 3 <literal>footerRows</literal> deve essere impostato a 1."
# rivedere la frase
#. Tag: para
-#: Itext.xml:986
+#: Itext.xml:983
#, no-c-format
msgid "<literal>widthPercentage</literal> — The percentage of the page width that the table spans."
msgstr "<literal>widthPercentage</literal> — La percentuale della larghezza della pagina che occupa la tabella."
#. Tag: para
-#: Itext.xml:991
+#: Itext.xml:988
#, no-c-format
msgid "<literal>horizontalAlignment</literal> — The horizontal alignment of the table. (See <xref linkend=\"itext.alignment\"/> for possible values)"
msgstr "<literal>horizontalAlignment</literal> — L'allineamento orizzontale della tabella. (Si veda <xref linkend=\"itext.alignment\"/> per i possibili valori)"
#. Tag: literal
-#: Itext.xml:998
+#: Itext.xml:995
#, no-c-format
msgid "skipFirstHeader"
msgstr "skipFirstHeader"
#. Tag: literal
-#: Itext.xml:1004
-#: Itext.xml:1208
+#: Itext.xml:1001
+#: Itext.xml:1205
#, no-c-format
msgid "runDirection"
msgstr "runDirection"
#. Tag: literal
-#: Itext.xml:1010
+#: Itext.xml:1007
#, no-c-format
msgid "lockedWidth"
msgstr "lockedWidth"
#. Tag: literal
-#: Itext.xml:1018
+#: Itext.xml:1015
#, no-c-format
msgid "splitRows"
msgstr "splitRows"
#. Tag: literal
-#: Itext.xml:1036
+#: Itext.xml:1033
#, no-c-format
msgid "extendLastRow"
msgstr "extendLastRow"
#. Tag: literal
-#: Itext.xml:1044
+#: Itext.xml:1041
#, no-c-format
msgid "headersInEvent"
msgstr "headersInEvent"
#. Tag: literal
-#: Itext.xml:1051
+#: Itext.xml:1048
#, no-c-format
msgid "splitLate"
msgstr "splitLate"
#. Tag: programlisting
-#: Itext.xml:1067
+#: Itext.xml:1064
#, no-c-format
msgid ""
"<![CDATA[<p:table columns=\"3\" headerRows=\"1\">\n"
@@ -1086,396 +1089,442 @@
"</p:table>]]>"
#. Tag: literal
-#: Itext.xml:1075
+#: Itext.xml:1072
#, no-c-format
msgid "<p:cell>"
msgstr "<p:cell>"
#. Tag: para
-#: Itext.xml:1082
+#: Itext.xml:1079
#, no-c-format
msgid "<literal>p:cell</literal> supports the following attributes."
msgstr "<literal>p:cell</literal> supporta i seguenti attributi."
#. Tag: para
-#: Itext.xml:1092
+#: Itext.xml:1089
#, no-c-format
msgid "<literal>colspan</literal> — Cells can span more than one column by declaring a <literal>colspan</literal> greater than 1. Tables do not have the ability to span across multiple rows."
msgstr "<literal>colspan</literal> — Le celle possono proseguire per più di una colonna dichiarando un <literal>colspan</literal> maggiore di 1. Le tabelle non hanno la possibilità di proseguire su più righe."
#. Tag: para
-#: Itext.xml:1101
+#: Itext.xml:1098
#, no-c-format
msgid "<literal>horizontalAlignment</literal> — The horizontal alignment of the cell. (see <xref linkend=\"itext.alignment\"/> for possible values)"
msgstr "<literal>horizontalAlignment</literal> — L'allineamento orizzontale della cella. (Si veda <xref linkend=\"itext.alignment\"/> per i possibili valori)"
#. Tag: para
-#: Itext.xml:1109
+#: Itext.xml:1106
#, no-c-format
msgid "<literal>verticalAlignment</literal> — The vertical alignment of the cell. (see <xref linkend=\"itext.alignment\"/> for possible values)"
msgstr "<literal>verticalAlignment</literal> — L'allineamento verticale della cella. (Si veda <xref linkend=\"itext.alignment\"/> per i possibili valori)"
#. Tag: para
-#: Itext.xml:1116
+#: Itext.xml:1113
#, no-c-format
msgid "<literal>padding</literal> — Padding on a given side can also be specified using <literal>paddingLeft</literal>, <literal>paddingRight</literal>, <literal>paddingTop</literal> and <literal>paddingBottom</literal>."
msgstr "<literal>padding</literal> — Il padding su un particolare lato può essere specificato usando <literal>paddingLeft</literal>, <literal>paddingRight</literal>, <literal>paddingTop</literal> e <literal>paddingBottom</literal>."
#. Tag: literal
-#: Itext.xml:1126
+#: Itext.xml:1123
#, no-c-format
msgid "useBorderPadding"
msgstr "useBorderPadding"
#. Tag: literal
-#: Itext.xml:1148
+#: Itext.xml:1145
#, no-c-format
msgid "indent"
msgstr "indent"
#. Tag: literal
-#: Itext.xml:1154
+#: Itext.xml:1151
#, no-c-format
msgid "verticalAlignment"
msgstr "verticalAlignment"
#. Tag: literal
-#: Itext.xml:1168
+#: Itext.xml:1165
#, no-c-format
msgid "fixedHeight"
msgstr "fixedHeight"
#. Tag: literal
-#: Itext.xml:1175
+#: Itext.xml:1172
#, no-c-format
msgid "noWrap"
msgstr "noWrap"
#. Tag: literal
-#: Itext.xml:1181
+#: Itext.xml:1178
#, no-c-format
msgid "minimumHeight"
msgstr "minimumHeight"
#. Tag: literal
-#: Itext.xml:1188
+#: Itext.xml:1185
#, no-c-format
msgid "followingIndent"
msgstr "followingIndent"
#. Tag: literal
-#: Itext.xml:1196
+#: Itext.xml:1193
#, no-c-format
msgid "rightIndent"
msgstr "rightIndent"
#. Tag: literal
-#: Itext.xml:1202
+#: Itext.xml:1199
#, no-c-format
msgid "spaceCharRatio"
msgstr "spaceCharRatio"
#. Tag: literal
-#: Itext.xml:1214
+#: Itext.xml:1211
#, no-c-format
msgid "arabicOptions"
msgstr "arabicOptions"
#. Tag: literal
-#: Itext.xml:1221
+#: Itext.xml:1218
#, no-c-format
msgid "useAscender"
msgstr "useAscender"
#. Tag: literal
-#: Itext.xml:1229
+#: Itext.xml:1226
#, no-c-format
msgid "grayFill"
msgstr "grayFill"
#. Tag: literal
-#: Itext.xml:1235
+#: Itext.xml:1232
#, no-c-format
msgid "rotation"
msgstr "rotation"
#. Tag: programlisting
-#: Itext.xml:1243
+#: Itext.xml:1240
#, no-c-format
msgid "<![CDATA[<p:cell>...</p:cell>]]>"
msgstr "<![CDATA[<p:cell>...</p:cell>]]>"
#. Tag: title
-#: Itext.xml:1255
+#: Itext.xml:1252
#, no-c-format
msgid "Document Constants"
msgstr "Costanti nei documenti"
#. Tag: para
-#: Itext.xml:1257
+#: Itext.xml:1254
#, no-c-format
msgid "This section documents some of the constants shared by attributes on multiple tags."
msgstr "Questa sezione documenta alcune costanti condivise dagli attributi nei tag multipli."
#. Tag: title
-#: Itext.xml:1260
+#: Itext.xml:1257
#, no-c-format
msgid "Color Values"
msgstr "Valori dei colori"
#. Tag: para
-#: Itext.xml:1261
+#: Itext.xml:1258
#, no-c-format
msgid "Seam documents do not yet support a full color specification. Currently, only named colors are supported. They are: <literal>white</literal>, <literal>gray</literal>, <literal>lightgray</literal>, <literal>darkgray</literal>, <literal>black</literal>, <literal>red</literal>, <literal>pink</literal>, <literal>yellow</literal>, <literal>green</literal>, <literal>magenta</literal>, <literal>cyan</literal> and <literal>blue</literal>."
msgstr "I documenti Seam non supportano ancora un specifica per tutti i colori. Attualmente solo i colori con nome sono supportati. Questi sono: <literal>white</literal>, <literal>gray</literal>, <literal>lightgray</literal>, <literal>darkgray</literal>, <literal>black</literal>, <literal>red</literal>, <literal>pink</literal>, <literal>yellow</literal>, <literal>green</literal>, <literal>magenta</literal>, <literal>cyan</literal> e <literal>blue</literal>."
#. Tag: title
-#: Itext.xml:1271
+#: Itext.xml:1268
#, no-c-format
msgid "Alignment Values"
msgstr "Valori per l'allineamento"
#. Tag: para
-#: Itext.xml:1272
+#: Itext.xml:1269
#, no-c-format
msgid "Where alignment values are used, the Seam PDF supports the following horizontal alignment values: <literal>left</literal>, <literal>right</literal>, <literal>center</literal>, <literal>justify</literal> and <literal>justifyall</literal>. The vertical alignment values are <literal>top</literal>, <literal>middle</literal>, <literal>bottom</literal>, and <literal>baseline</literal>."
msgstr "Quando vengono usati i valori per l'allineamento, Seam PDF supporta i seguenti valori di allineamento orizzontali: <literal>left</literal>, <literal>right</literal>, <literal>center</literal>, <literal>justify</literal> e <literal>justifyall</literal>. I valori di allineamento verticali sono: <literal>top</literal>, <literal>middle</literal>, <literal>bottom</literal>, e <literal>baseline</literal>."
#. Tag: title
-#: Itext.xml:1286
+#: Itext.xml:1283
#, no-c-format
msgid "Charting"
msgstr "Grafici"
#. Tag: para
-#: Itext.xml:1288
+#: Itext.xml:1285
#, no-c-format
-msgid "Charting support is also provided with <literal>jboss-seam-pdf.jar</literal>. Charts can be used in PDF documents or can be used as images in an HTML page. Charting requires the JFreeChart library (<literal>jfreechart.jar</literal> and <literal>jcommon.jar</literal>) to be added to the <literal>WEB-INF/lib</literal> directory. Three types of charts are currently supported: pie charts, bar charts and line charts."
-msgstr "Il supporto ai grafici è fornito da <literal>jboss-seam-pdf.jar</literal>. I grafici possono essere impiegati nei documenti PDF o possono essere usati come immagini in una pagina HTML. Disegnare i grafici richiede la libreria JFreeChart (<literal>jfreechart.jar</literal> e <literal>jcommon.jar</literal>) che deve essere aggiunta alla directory <literal>WEB-INF/lib</literal>. Tre tipi di grafici sono attualmente supportati: a torta, a barre e a linee."
+msgid "Charting support is also provided with <literal>jboss-seam-pdf.jar</literal>. Charts can be used in PDF documents or can be used as images in an HTML page. Charting requires the JFreeChart library (<literal>jfreechart.jar</literal> and <literal>jcommon.jar</literal>) to be added to the <literal>WEB-INF/lib</literal> directory. Four types of charts are currently supported: pie charts, bar charts and line charts. Where greater variety or control is needed, it is possible to construct charts using Java code."
+msgstr "Il supporto ai grafici è fornito da <literal>jboss-seam-pdf.jar</literal>. I grafici possono essere impiegati nei documenti PDF o possono essere usati come immagini in una pagina HTML. Disegnare i grafici richiede la libreria JFreeChart (<literal>jfreechart.jar</literal> e <literal>jcommon.jar</literal>) che deve essere aggiunta alla directory <literal>WEB-INF/lib</literal>. Tre tipi di grafici sono attualmente supportati: a torta, a barre e a linee. Quando serve un grado di varietà e di controllo elevato, è possibile costruire i grafici usando codice Java."
#. Tag: literal
-#: Itext.xml:1303
+#: Itext.xml:1304
#, no-c-format
+msgid "<p:chart>"
+msgstr "<p:chart>"
+
+#. Tag: para
+#: Itext.xml:1311
+#, no-c-format
+msgid "Displays a chart created in Java by a Seam component."
+msgstr "Visualizza un grafico creato in Java da un componente Seam."
+
+#. Tag: para
+#: Itext.xml:1318
+#, no-c-format
+msgid "<literal>chart</literal> — The chart object to display."
+msgstr "<literal>chart</literal> — L'oggetto grafico da visualizzare."
+
+#. Tag: para
+#: Itext.xml:1323
+#: Itext.xml:1432
+#: Itext.xml:1651
+#, no-c-format
+msgid "<literal>height</literal> — The height of the chart."
+msgstr "<literal>height</literal> — L'altezza del grafico."
+
+#. Tag: para
+#: Itext.xml:1328
+#: Itext.xml:1437
+#: Itext.xml:1550
+#: Itext.xml:1656
+#: Itext.xml:1769
+#, no-c-format
+msgid "<literal>width</literal> — The width of the chart."
+msgstr "<literal>width</literal> — La larghezza del grafico."
+
+#. Tag: programlisting
+#: Itext.xml:1336
+#, no-c-format
+msgid ""
+"<![CDATA[<p:chart chart=\"#{mycomponent.chart}\" width=\"500\" height=\"500\" />\n"
+" ]]>"
+msgstr ""
+"<![CDATA[<p:chart chart=\"#{mycomponent.chart}\" width=\"500\" height=\"500\" />\n"
+" ]]>"
+
+#. Tag: literal
+#: Itext.xml:1345
+#, no-c-format
msgid "<p:barchart>"
msgstr "<p:barchart>"
#. Tag: para
-#: Itext.xml:1310
+#: Itext.xml:1352
#, no-c-format
msgid "Displays a bar chart."
msgstr "Visualizza un grafico a barre."
#. Tag: para
-#: Itext.xml:1317
-#: Itext.xml:1524
+#: Itext.xml:1359
+#: Itext.xml:1579
+#: Itext.xml:1803
#, no-c-format
+msgid "<literal>chart</literal> — The chart object to display, if programmatic chart creation is being used."
+msgstr "<literal>chart</literal> — L'oggetto grafico da visualizzare, se viene usata la creazione del grafico via codice."
+
+#. Tag: para
+#: Itext.xml:1365
+#: Itext.xml:1585
+#: Itext.xml:1809
+#, no-c-format
+msgid "<literal>dataset</literal> — The dataset to be displayed, if programmatic dataset is being used."
+msgstr "literal>dataset</literal> — Il dataset da visualizzare, se viene usato un dataset via codice."
+
+#. Tag: para
+#: Itext.xml:1372
+#: Itext.xml:1592
+#, no-c-format
msgid "<literal>borderVisible</literal> — Controls whether or not a border is displayed around the entire chart."
msgstr "<literal>borderVisible</literal> — Controlla se mostrare oppure no un bordo attorno a tutto il grafico."
#. Tag: para
-#: Itext.xml:1323
-#: Itext.xml:1530
+#: Itext.xml:1378
+#: Itext.xml:1598
#, no-c-format
msgid "<literal>borderPaint</literal> — The color of the border, if visible;"
msgstr "<literal>borderPaint</literal> — Il colore del bordo, se visibile;"
#. Tag: para
-#: Itext.xml:1328
-#: Itext.xml:1535
+#: Itext.xml:1383
+#: Itext.xml:1603
#, no-c-format
msgid "<literal>borderBackgroundPaint</literal> — The default background color of the chart."
msgstr "<literal>borderBackgroundPaint</literal> — Il colore di default per lo sfondo del grafico."
#. Tag: para
-#: Itext.xml:1333
-#: Itext.xml:1540
+#: Itext.xml:1388
+#: Itext.xml:1608
#, no-c-format
msgid "<literal>borderStroke</literal> —"
msgstr "<literal>borderStroke</literal> —"
#. Tag: para
-#: Itext.xml:1339
-#: Itext.xml:1546
+#: Itext.xml:1394
+#: Itext.xml:1614
#, no-c-format
msgid "<literal>domainAxisLabel</literal> — The text label for the domain axis."
msgstr "<literal>domainAxisLabel</literal> — L'etichetta del testo per gli assi del dominio."
#. Tag: para
-#: Itext.xml:1346
-#: Itext.xml:1552
+#: Itext.xml:1401
+#: Itext.xml:1620
#, no-c-format
msgid "<literal>domainLabelPosition</literal> — The angle of the domain axis category labels. Valid values are <literal>STANDARD</literal>, <literal>UP_45</literal>, <literal>UP_90</literal>, <literal>DOWN_45</literal> and <literal>DOWN_90</literal>. Alternatively, the value can the positive or negative angle in radians."
msgstr "<literal>domainLabelPosition</literal> — L'angolo delle etichette di categoria degli assi. I valori validi sono <literal>STANDARD</literal>, <literal>UP_45</literal>, <literal>UP_90</literal>, <literal>DOWN_45</literal> e <literal>DOWN_90</literal>. In alternativa, il valore può essere un valore positivo o negativo in radianti."
#. Tag: para
-#: Itext.xml:1355
-#: Itext.xml:1561
+#: Itext.xml:1410
+#: Itext.xml:1629
#, no-c-format
msgid "<literal>domainAxisPaint</literal> — The color of the domain axis label."
msgstr "<literal>domainAxisPaint</literal> — Il colore dell'etichetta degli assi di dominio."
#. Tag: para
-#: Itext.xml:1361
-#: Itext.xml:1567
+#: Itext.xml:1416
+#: Itext.xml:1635
#, no-c-format
msgid "<literal>domainGridlinesVisible</literal>— Controls whether or not gridlines for the domain axis are shown on the chart."
msgstr "<literal>domainGridlinesVisible</literal>— Controlla se mostrare oppure no all'interno del grafico le griglie per gli assi del dominio."
#. Tag: para
-#: Itext.xml:1366
-#: Itext.xml:1572
+#: Itext.xml:1421
+#: Itext.xml:1640
#, no-c-format
msgid "<literal>domainGridlinePaint</literal>— The color of the domain gridlines, if visible."
msgstr "<literal>domainGridlinePaint</literal>— Il colore delle griglie di dominio, se visibili."
#. Tag: para
-#: Itext.xml:1371
-#: Itext.xml:1577
+#: Itext.xml:1426
+#: Itext.xml:1645
#, no-c-format
msgid "<literal>domainGridlineStroke</literal> — The stroke style of the domain gridlines, if visible."
msgstr "<literal>domainGridlineStroke</literal> — Lo stile del tratteggio delle griglie di dominio, se visibili."
#. Tag: para
-#: Itext.xml:1377
-#: Itext.xml:1583
+#: Itext.xml:1442
+#: Itext.xml:1661
#, no-c-format
-msgid "<literal>height</literal> — The height of the chart."
-msgstr "<literal>height</literal> — L'altezza del grafico."
-
-#. Tag: para
-#: Itext.xml:1382
-#: Itext.xml:1495
-#: Itext.xml:1588
-#: Itext.xml:1701
-#, no-c-format
-msgid "<literal>width</literal> — The width of the chart."
-msgstr "<literal>width</literal> — La larghezza del grafico."
-
-#. Tag: para
-#: Itext.xml:1387
-#: Itext.xml:1593
-#, no-c-format
msgid "<literal>is3D</literal> — A boolean value indicating that the chart should be rendered in 3D instead of 2D."
msgstr "<literal>is3D</literal> — Un valore booleano che indica di visualizzare il grafico in 3D invece che in 2D."
#. Tag: para
-#: Itext.xml:1393
-#: Itext.xml:1599
+#: Itext.xml:1448
+#: Itext.xml:1667
#, no-c-format
msgid "<literal>legend</literal> — A boolean value indicating whether or not the chart should include a legend."
msgstr "<literal>legend</literal> — Un valore booleano che indica se oppure no includere la legenda nel grafico."
#. Tag: para
-#: Itext.xml:1399
+#: Itext.xml:1454
#, no-c-format
msgid "<literal>legendItemPaint</literal>— The default color of the text labels in the legend."
msgstr "<literal>legendItemPaint</literal>— Il colore di default delle etichette di testo nella legenda."
#. Tag: para
-#: Itext.xml:1405
+#: Itext.xml:1460
#, no-c-format
msgid "<literal>legendItemBackgoundPaint</literal>— The background color for the legend, if different from the chart background color."
msgstr "<literal>legendItemBackgoundPaint</literal>— Il colore dello sfondo della legenda, se diverso dal colore di sfondo del grafico."
#. Tag: para
-#: Itext.xml:1411
+#: Itext.xml:1466
#, no-c-format
msgid "<literal>legendOutlinePaint</literal>— The color of the border around the legend."
msgstr "<literal>legendOutlinePaint</literal>— Il colore del bordo attorno alla legenda."
#. Tag: para
-#: Itext.xml:1417
-#: Itext.xml:1623
+#: Itext.xml:1472
+#: Itext.xml:1691
#, no-c-format
msgid "<literal>orientation</literal> — The orientation of the plot, either <code>vertical</code> (the default) or <code>horizontal</code>."
msgstr "<literal>orientation</literal> — L'orientamento del disegno, o <code>vertical</code> (di default) o <code>horizontal</code>."
#. Tag: para
-#: Itext.xml:1423
+#: Itext.xml:1478
#, no-c-format
msgid "<literal>plotBackgroundPaint</literal>— The color of the plot background."
msgstr "<literal>plotBackgroundPaint</literal>— Il colore dello sfondo del disegno."
#. Tag: para
-#: Itext.xml:1429
+#: Itext.xml:1484
#, no-c-format
msgid "<literal>plotBackgroundAlpha</literal>— The alpha (transparency) level of the plot background. It should be a number between 0 (completely transparent) and 1 (completely opaque)."
msgstr "<literal>plotBackgroundAlpha</literal>— Il livello alfa (trasparenza) dello sfondo del disegno. Dovrebbe essere un numero tra 0 (completamente trasparente) e 1 (completamente opaco)."
#. Tag: para
-#: Itext.xml:1436
+#: Itext.xml:1491
#, no-c-format
msgid "<literal>plotForegroundAlpha</literal>— The alpha (transparency) level of the plot. It should be a number between 0 (completely transparent) and 1 (completely opaque)."
msgstr "<literal>plotForegroundAlpha</literal>— Il livello alfa (trasparenza) del disegno. Dovrebbe essere un numero tra 0 (completamente trasparente) e 1 (completamente opaco)."
#. Tag: para
-#: Itext.xml:1443
+#: Itext.xml:1498
#, no-c-format
msgid "<literal>plotOutlinePaint</literal>— The color of the range gridlines, if visible."
msgstr "<literal>plotOutlinePaint</literal>— Il colore delle griglie di range, se visibili."
#. Tag: para
-#: Itext.xml:1448
-#: Itext.xml:1654
+#: Itext.xml:1503
+#: Itext.xml:1722
#, no-c-format
msgid "<literal>plotOutlineStroke</literal> — The stroke style of the range gridlines, if visible."
msgstr "<literal>plotOutlineStroke</literal> — Lo stile del tratteggio delle griglie di range, se visibili."
#. Tag: para
-#: Itext.xml:1454
-#: Itext.xml:1660
+#: Itext.xml:1509
+#: Itext.xml:1728
#, no-c-format
msgid "<literal>rangeAxisLabel</literal> — The text label for the range axis."
msgstr "<literal>rangeAxisLabel</literal> — L'etichetta di testo per l'asse di range."
#. Tag: para
-#: Itext.xml:1459
-#: Itext.xml:1665
+#: Itext.xml:1514
+#: Itext.xml:1733
#, no-c-format
msgid "<literal>rangeAxisPaint</literal> — The color of the range axis label."
msgstr "<literal>rangeAxisPaint</literal> — Il colore per l'etichetta dell'asse di range."
#. Tag: para
-#: Itext.xml:1465
+#: Itext.xml:1520
#, no-c-format
msgid "<literal>rangeGridlinesVisible</literal>— Controls whether or not gridlines for the range axis are shown on the chart."
msgstr "<literal>rangeGridlinesVisible</literal>— Controlla se visualizzare nel grafico oppure no le griglie per l'asse di range."
#. Tag: para
-#: Itext.xml:1470
+#: Itext.xml:1525
#, no-c-format
msgid "<literal>rangeGridlinePaint</literal>— The color of the range gridlines, if visible."
msgstr "<literal>rangeGridlinePaint</literal>— Il colore delle griglie di range, se visibili."
#. Tag: para
-#: Itext.xml:1475
-#: Itext.xml:1681
+#: Itext.xml:1530
+#: Itext.xml:1749
#, no-c-format
msgid "<literal>rangeGridlineStroke</literal> — The stroke style of the range gridlines, if visible."
msgstr "<literal>rangeGridlineStroke</literal> — Lo stile del tratteggio delle griglie di range, se visibili."
#. Tag: para
-#: Itext.xml:1481
-#: Itext.xml:1687
-#: Itext.xml:1731
+#: Itext.xml:1536
+#: Itext.xml:1755
+#: Itext.xml:1799
#, no-c-format
msgid "<literal>title</literal> — The chart title text."
msgstr "<literal>title</literal> — Il titolo del grafico."
#. Tag: para
-#: Itext.xml:1485
+#: Itext.xml:1540
#, no-c-format
msgid "<literal>titlePaint</literal>— The color of the chart title text."
msgstr "<literal>titlePaint</literal>— Il colore del titolo del grafico."
#. Tag: para
-#: Itext.xml:1490
+#: Itext.xml:1545
#, no-c-format
msgid "<literal>titleBackgroundPaint</literal>— The background color around the chart title."
msgstr "<literal>titleBackgroundPaint</literal>— Il colore di sfondo attorno al titolo del grafico."
#. Tag: programlisting
-#: Itext.xml:1503
+#: Itext.xml:1558
#, no-c-format
msgid ""
"<![CDATA[<p:barchart title=\"Bar Chart\" legend=\"true\"\n"
@@ -1501,85 +1550,85 @@
"</p:barchart>]]>"
#. Tag: literal
-#: Itext.xml:1510
+#: Itext.xml:1565
#, no-c-format
msgid "<p:linechart>"
msgstr "<p:linechart>"
#. Tag: para
-#: Itext.xml:1517
+#: Itext.xml:1572
#, no-c-format
msgid "Displays a line chart."
msgstr "Mostra un grafico a linea."
#. Tag: para
-#: Itext.xml:1605
+#: Itext.xml:1673
#, no-c-format
msgid "<literal>legendItemPaint</literal> — The default color of the text labels in the legend."
msgstr "<literal>code</literal> — Il valore da codificare nel barcode."
#. Tag: para
-#: Itext.xml:1611
+#: Itext.xml:1679
#, no-c-format
msgid "<literal>legendItemBackgoundPaint</literal> — The background color for the legend, if different from the chart background color."
msgstr "<literal>legendItemBackgoundPaint</literal> — Il colore di sfondo della legenda, se diverso dal colore di sfondo del grafico."
#. Tag: para
-#: Itext.xml:1617
+#: Itext.xml:1685
#, no-c-format
msgid "<literal>legendOutlinePaint</literal> — The color of the border around the legend."
msgstr "<literal>code</literal> — Il valore da codificare nel barcode."
#. Tag: para
-#: Itext.xml:1629
+#: Itext.xml:1697
#, no-c-format
msgid "<literal>plotBackgroundPaint</literal> — The color of the plot background."
msgstr "<literal>code</literal> — Il valore da codificare nel barcode."
#. Tag: para
-#: Itext.xml:1635
+#: Itext.xml:1703
#, no-c-format
msgid "<literal>plotBackgroundAlpha</literal> — The alpha (transparency) level of the plot background. It should be a number between 0 (completely transparent) and 1 (completely opaque)."
msgstr "<literal>plotBackgroundAlpha</literal>— Il livello alfa (trasparenza) dello sfondo del disegno. Dovrebbe essere un numero tra 0 (completamente trasparente) e 1 (completamente opaco)."
#. Tag: para
-#: Itext.xml:1642
+#: Itext.xml:1710
#, no-c-format
msgid "<literal>plotForegroundAlpha</literal> — The alpha (transparency) level of the plot. It should be a number between 0 (completely transparent) and 1 (completely opaque)."
msgstr "<literal>plotForegroundAlpha</literal>— Il livello alfa (trasparenza) del disegno. Dovrebbe essere un numero tra 0 (completamente trasparente) e 1 (completamente opaco)."
#. Tag: para
-#: Itext.xml:1649
+#: Itext.xml:1717
#, no-c-format
msgid "<literal>plotOutlinePaint</literal> — The color of the range gridlines, if visible."
msgstr "<literal>plotOutlinePaint</literal> — Il colore delle griglie di range, se visibili."
#. Tag: para
-#: Itext.xml:1671
+#: Itext.xml:1739
#, no-c-format
msgid "<literal>rangeGridlinesVisible</literal> — Controls whether or not gridlines for the range axis are shown on the chart."
msgstr "<literal>rangeGridlinesVisible</literal> — Controlla se visualizzare nel grafico oppure no le griglie dell'asse di range."
#. Tag: para
-#: Itext.xml:1676
+#: Itext.xml:1744
#, no-c-format
msgid "<literal>rangeGridlinePaint</literal> — The color of the range gridlines, if visible."
msgstr "<literal>rangeGridlinePaint</literal> — Il colore delle griglie di range, se visibili."
#. Tag: para
-#: Itext.xml:1691
+#: Itext.xml:1759
#, no-c-format
msgid "<literal>titlePaint</literal> — The color of the chart title text."
msgstr "<literal>code</literal> — Il valore da codificare nel barcode."
#. Tag: para
-#: Itext.xml:1696
+#: Itext.xml:1764
#, no-c-format
msgid "<literal>titleBackgroundPaint</literal> — The background color around the chart title."
msgstr "<literal>code</literal> — Il valore da codificare nel barcode."
#. Tag: programlisting
-#: Itext.xml:1709
+#: Itext.xml:1777
#, no-c-format
msgid ""
"<![CDATA[<p:linechart title=\"Line Chart\"\n"
@@ -1605,151 +1654,151 @@
"</p:linechart>]]>"
#. Tag: literal
-#: Itext.xml:1716
+#: Itext.xml:1784
#, no-c-format
msgid "<p:piechart>"
msgstr "<p:piechart>"
#. Tag: para
-#: Itext.xml:1723
+#: Itext.xml:1791
#, no-c-format
msgid "Displays a pie chart."
msgstr "Mostra un grafico."
#. Tag: para
-#: Itext.xml:1735
+#: Itext.xml:1815
#, no-c-format
msgid "<literal>label</literal> — The default label text for pie sections."
msgstr "<literal>code</literal> — Il valore da codificare nel barcode."
#. Tag: para
-#: Itext.xml:1740
+#: Itext.xml:1820
#, no-c-format
msgid "<literal>legend</literal> — A boolean value indicating whether or not the chart should include a legend. Default value is true"
msgstr "<literal>legend</literal> — Un valore booleano che indica se oppure no includere la legenda nel grafico. Di default è true."
#. Tag: para
-#: Itext.xml:1745
+#: Itext.xml:1825
#, no-c-format
msgid "<literal>is3D</literal> —A boolean value indicating that the chart should be rendered in 3D instead of 2D."
msgstr "<literal>is3D</literal> — Un valore booleano che indica di visualizzare il grafico in 3D invece che in 2D."
#. Tag: para
-#: Itext.xml:1750
+#: Itext.xml:1830
#, no-c-format
msgid "<literal>labelLinkMargin</literal> — The link margin for labels."
msgstr "<literal>labelLinkMargin</literal> — Il margine di collegamento per le etichette."
#. Tag: para
-#: Itext.xml:1755
+#: Itext.xml:1835
#, no-c-format
msgid "<literal>labelLinkPaint</literal> — The paint used for the label linking lines."
msgstr "<literal>labelLinkPaint</literal> — Il motivo usato per le linee di collegamento dell'etichetta."
#. Tag: para
-#: Itext.xml:1760
+#: Itext.xml:1840
#, no-c-format
msgid "<literal>labelLinkStroke</literal> — he stroke used for the label linking lines."
msgstr "<literal>code</literal> — Il valore da codificare nel barcode."
#. Tag: para
-#: Itext.xml:1766
+#: Itext.xml:1846
#, no-c-format
msgid "<literal>labelLinksVisible</literal> — A flag that controls whether or not the label links are drawn."
msgstr "<literal>labelLinksVisible</literal> — Un flag che controlla se vengono disegnati o no i link di etichetta."
#. Tag: para
-#: Itext.xml:1771
+#: Itext.xml:1851
#, no-c-format
msgid "<literal>labelOutlinePaint</literal> — The paint used to draw the outline of the section labels."
msgstr "<literal>code</literal> — Il valore da codificare nel barcode."
#. Tag: para
-#: Itext.xml:1776
+#: Itext.xml:1856
#, no-c-format
msgid "<literal>labelOutlineStroke</literal> — The stroke used to draw the outline of the section labels."
msgstr "<literal>code</literal> — Il valore da codificare nel barcode."
#. Tag: para
-#: Itext.xml:1781
+#: Itext.xml:1861
#, no-c-format
msgid "<literal>labelShadowPaint</literal> — The paint used to draw the shadow for the section labels."
msgstr "<literal>code</literal> — Il valore da codificare nel barcode."
#. Tag: para
-#: Itext.xml:1786
+#: Itext.xml:1866
#, no-c-format
msgid "<literal>labelPaint</literal> — The color used to draw the section labels"
msgstr "<literal>code</literal> — Il valore da codificare nel barcode."
#. Tag: para
-#: Itext.xml:1791
+#: Itext.xml:1871
#, no-c-format
msgid "<literal>labelGap</literal> — The gap between the labels and the plot as a percentage of the plot width."
msgstr "<literal>labelGap</literal> — Il gap tra le etichette ed il disegno come percentuale della larghezza del disegno."
#. Tag: para
-#: Itext.xml:1796
+#: Itext.xml:1876
#, no-c-format
msgid "<literal>labelBackgroundPaint</literal> — The color used to draw the background of the section labels. If this is null, the background is not filled."
msgstr "<literal>labelBackgroundPaint</literal> — Il colore usato per disegnare lo sfondo delle etichette di sezione. Se null, lo sfondo non viene riempito."
#. Tag: para
-#: Itext.xml:1803
+#: Itext.xml:1883
#, no-c-format
msgid "<literal>startAngle</literal> — The starting angle of the first section."
msgstr "<literal>code</literal> — Il valore da codificare nel barcode."
#. Tag: para
-#: Itext.xml:1808
+#: Itext.xml:1888
#, no-c-format
msgid "<literal>circular</literal> — A boolean value indicating that the chart should be drawn as a circle. If false, the chart is drawn as an ellipse. The default is true."
msgstr "<literal>circular</literal> — Un valore booleano che indica se il grafico deve essere disegnato come cerchio. Se false, il grafico viene disegnato come ellisse. Di default è true."
#. Tag: para
-#: Itext.xml:1814
+#: Itext.xml:1894
#, no-c-format
msgid "<literal>direction</literal> — The direction the pie section are drawn. One of: <literal>clockwise</literal> or <literal>anticlockwise</literal>. The default is <literal>clockwise</literal>."
msgstr "<literal>direction</literal> — La direzione in cui vengono disegnate le sezioni della torta. Un valore tra: <literal>clockwise</literal> o <literal>anticlockwise</literal>. Il default è <literal>clockwise</literal>."
#. Tag: para
-#: Itext.xml:1820
+#: Itext.xml:1900
#, no-c-format
msgid "<literal>sectionOutlinePaint</literal> — The outline paint for all sections."
msgstr "<literal>code</literal> — Il valore da codificare nel barcode."
#. Tag: para
-#: Itext.xml:1825
+#: Itext.xml:1905
#, no-c-format
msgid "<literal>sectionOutlineStroke</literal> — The outline stroke for all sections"
msgstr "<literal>code</literal> — Il valore da codificare nel barcode."
#. Tag: para
-#: Itext.xml:1830
+#: Itext.xml:1910
#, no-c-format
msgid "<literal>sectionOutlinesVisible</literal> — Indicates whether an outline is drawn for each section in the plot."
msgstr "<literal>sectionOutlinesVisible</literal> — Indica se viene disegnata una outline per ciascuna sezione del disegno."
#. Tag: para
-#: Itext.xml:1835
+#: Itext.xml:1915
#, no-c-format
msgid "<literal>baseSectionOutlinePaint</literal> — The base section outline paint."
msgstr "<literal>code</literal> — Il valore da codificare nel barcode."
#. Tag: para
-#: Itext.xml:1840
+#: Itext.xml:1920
#, no-c-format
msgid "<literal>baseSectionPaint</literal> — The base section paint."
msgstr "<literal>code</literal> — Il valore da codificare nel barcode."
#. Tag: para
-#: Itext.xml:1844
+#: Itext.xml:1924
#, no-c-format
msgid "<literal>baseSectionOutlineStroke</literal> — The base section outline stroke."
msgstr "<literal>code</literal> — Il valore da codificare nel barcode."
#. Tag: programlisting
-#: Itext.xml:1852
+#: Itext.xml:1932
#, no-c-format
msgid ""
"<![CDATA[<p:piechart title=\"Pie Chart\" circular=\"false\" direction=\"anticlockwise\" \n"
@@ -1775,55 +1824,55 @@
"</p:piechart>]]>"
#. Tag: literal
-#: Itext.xml:1859
+#: Itext.xml:1942
#, no-c-format
msgid "<p:series>"
msgstr "<p:series>"
#. Tag: para
-#: Itext.xml:1866
+#: Itext.xml:1949
#, no-c-format
msgid "Category data can be broken down into series. The series tag is used to categorize a set of data with a series and apply styling to the entire series."
msgstr "I dati di categoria posso essere spezzati in serie. I tag delle serie vengono usati per categorizzare un set di dati con serie ed applicare lo stile all'intera serie."
#. Tag: para
-#: Itext.xml:1875
+#: Itext.xml:1958
#, no-c-format
msgid "<literal>key</literal> — The series name."
msgstr "<literal>key</literal> — Il nome delle serie."
#. Tag: para
-#: Itext.xml:1886
+#: Itext.xml:1969
#, no-c-format
msgid "<literal>seriesPaint</literal> — The color of each item in the series"
msgstr "<literal>seriesPaint</literal> — Il colore di ciascun item nelle serie."
#. Tag: para
-#: Itext.xml:1892
+#: Itext.xml:1975
#, no-c-format
msgid "<literal>seriesOutlinePaint</literal> — The outline color for each item in the series."
msgstr "<literal>seriesOutlinePaint</literal> — Il colore dell'outline per ciascun elemento nella serie."
#. Tag: para
-#: Itext.xml:1897
+#: Itext.xml:1980
#, no-c-format
msgid "<literal>seriesOutlineStroke</literal> — The stroke used to draw each item in the series."
msgstr "<literal>seriesOutlineStroke</literal> — Il tratteggio usato per disegnare ciascun elemento nella serie."
#. Tag: para
-#: Itext.xml:1909
+#: Itext.xml:1992
#, no-c-format
msgid "<literal>seriesVisible</literal> — A boolean indicating if the series should be displayed."
msgstr "<literal>seriesVisible</literal> — Un valore booleano che indicare se la serie debba essere visualizzata."
#. Tag: para
-#: Itext.xml:1914
+#: Itext.xml:1997
#, no-c-format
msgid "<literal>seriesVisibleInLegend</literal> — A boolean indicating if the series should be listed in the legend."
msgstr "<literal>seriesVisibleInLegend</literal> — Un valore booleano che indicare se la serie debba essere elencata nella legenda."
#. Tag: programlisting
-#: Itext.xml:1923
+#: Itext.xml:2006
#, no-c-format
msgid ""
"<![CDATA[<p:series key=\"data1\">\n"
@@ -1839,62 +1888,62 @@
"</p:series>]]>"
#. Tag: literal
-#: Itext.xml:1930
+#: Itext.xml:2013
#, no-c-format
msgid "<p:data>"
msgstr "<p:data>"
#. Tag: para
-#: Itext.xml:1937
+#: Itext.xml:2020
#, no-c-format
msgid "The data tag describes each data point to be displayed in the graph."
msgstr "Il tag dei dati descrive ciascun punto di dati da mostrare nel grafico."
#. Tag: para
-#: Itext.xml:1944
+#: Itext.xml:2027
#, no-c-format
msgid "<literal>key</literal> — The name of the data item."
msgstr "<literal>key</literal> — Il nome dell'item di dati."
#. Tag: para
-#: Itext.xml:1948
+#: Itext.xml:2031
#, no-c-format
msgid "<literal>series</literal> — The series name, when not embedded inside a <code><p:series></code>."
msgstr "<literal>series</literal> — I nomi delle serie, quando non è incorporato dentro un <code><p:series></code>."
#. Tag: para
-#: Itext.xml:1953
+#: Itext.xml:2036
#, no-c-format
msgid "<literal>value</literal> — The numeric data value."
msgstr "<literal>value</literal> — Il valore numerico dei dati."
# rivedere la frase
#. Tag: para
-#: Itext.xml:1957
+#: Itext.xml:2040
#, no-c-format
msgid "<literal>explodedPercent</literal> — For pie charts, indicates how exploded a from the pie a piece is."
msgstr "<literal>explodedPercent</literal> — Per i grafici a torta, indica come viene esploso un pezzo della torta."
#. Tag: para
-#: Itext.xml:1963
+#: Itext.xml:2046
#, no-c-format
msgid "<literal>sectionOutlinePaint</literal> — For bar charts, the color of the section outline."
msgstr "<literal>sectionOutlinePaint</literal> — Per i grafici a barre, il colore dell'outline di sezione."
#. Tag: para
-#: Itext.xml:1968
+#: Itext.xml:2051
#, no-c-format
msgid "<literal>sectionOutlineStroke</literal> — For bar charts, the stroke type for the section outline."
msgstr "<literal>sectionOutlineStroke</literal> — Per i grafici a barre, il tipo di tratteggio dell'outline di sezione."
#. Tag: para
-#: Itext.xml:1973
+#: Itext.xml:2056
#, no-c-format
msgid "<literal>sectionPaint</literal> — For bar charts, the color of the section."
msgstr "<literal>sectionPaint</literal> — Per i grafici a barre, il colore della sezione."
#. Tag: programlisting
-#: Itext.xml:1984
+#: Itext.xml:2067
#, no-c-format
msgid ""
"<![CDATA[<p:data key=\"foo\" value=\"20\" sectionPaint=\"#111111\" \n"
@@ -1910,43 +1959,43 @@
" sectionOutlineStroke=\"my-dot-style\" />]]>"
#. Tag: literal
-#: Itext.xml:1991
+#: Itext.xml:2074
#, no-c-format
msgid "<p:color>"
msgstr "<p:color>"
#. Tag: para
-#: Itext.xml:1998
+#: Itext.xml:2081
#, no-c-format
msgid "The color component declares a color or gradient than can be referenced when drawing filled shapes."
msgstr "Il componente del colore dichiara un colore oppure un gradiente che può venire referenziato quando si disegnano forme piene."
#. Tag: para
-#: Itext.xml:2007
+#: Itext.xml:2090
#, no-c-format
msgid "<literal>color</literal> — The color value. For gradient colors, this the starting color."
msgstr "<literal>color</literal> — Il valore del colore. Per gradienti di colore, questo è il colore iniziale."
#. Tag: para
-#: Itext.xml:2013
+#: Itext.xml:2096
#, no-c-format
msgid "<literal>color2</literal> — For gradient colors, this is the color that ends the gradient."
msgstr "<literal>color2</literal> — Per gradienti di colore, questo è il colore che termina il gradiente."
#. Tag: para
-#: Itext.xml:2018
+#: Itext.xml:2101
#, no-c-format
msgid "<literal>point</literal> — The co-ordinates where the gradient color begins."
msgstr "<literal>point</literal> — Le coordinate dove inizia il colore gradiente."
#. Tag: para
-#: Itext.xml:2023
+#: Itext.xml:2106
#, no-c-format
msgid "<literal>point2</literal> — The co-ordinates where the gradient color ends."
msgstr "<literal>point2</literal> — Le coordinate dove finisce il colore gradiente."
#. Tag: programlisting
-#: Itext.xml:2031
+#: Itext.xml:2114
#, no-c-format
msgid ""
"<![CDATA[<p:color id=\"foo\" color=\"#0ff00f\"/>\n"
@@ -1958,157 +2007,157 @@
" point=\"50 50\" point2=\"300 300\"/>]]>"
#. Tag: literal
-#: Itext.xml:2038
+#: Itext.xml:2121
#, no-c-format
msgid "<p:stroke>"
msgstr "<p:stroke>"
#. Tag: para
-#: Itext.xml:2045
+#: Itext.xml:2128
#, no-c-format
msgid "Describes a stroke used to draw lines in a chart."
msgstr "Descrive un tratteggio usato per disegnare le linee in un grafico."
#. Tag: para
-#: Itext.xml:2053
+#: Itext.xml:2136
#, no-c-format
msgid "<literal>width</literal> — The width of the stroke."
msgstr "<literal>width</literal> — La larghezza del tratteggio."
#. Tag: para
-#: Itext.xml:2058
+#: Itext.xml:2141
#, no-c-format
msgid "<literal>cap</literal> — The line cap type. Valid values are <literal>butt</literal>, <literal>round</literal> and <literal>square</literal>"
msgstr "<literal>cap</literal> — Il tipo di line cap. Valori validi sono <literal>butt</literal>, <literal>round</literal> e <literal>square</literal>"
#. Tag: para
-#: Itext.xml:2064
+#: Itext.xml:2147
#, no-c-format
msgid "<literal>join</literal> — The line join type. Valid values are <literal>miter</literal>, <literal>round</literal> and <literal>bevel</literal>"
msgstr "<literal>join</literal> — Il tipo di line join. Valori validi sono <literal>miter</literal>, <literal>round</literal> e <literal>bevel</literal>"
#. Tag: para
-#: Itext.xml:2070
+#: Itext.xml:2153
#, no-c-format
msgid "<literal>miterLimit</literal> — For miter joins, this value is the limit of the size of the join."
msgstr "<literal>miterLimit</literal> — Per join di tipo miter, questo valore è il limite della dimensione del join."
#. Tag: para
-#: Itext.xml:2076
+#: Itext.xml:2159
#, no-c-format
msgid "<literal>dash</literal> — The dash value sets the dash pattern to be used to draw the line. The space separated integers indicate the length of each alternating drawn and undrawn segments."
msgstr "<literal>dash</literal> — Il valore del dash imposta il pattern dash da usare per disegnare la linea. Gli interi separati da spazio indicano la lunghezza di ciascun segmento in modo alternato disegnato e non disegnato."
#. Tag: para
-#: Itext.xml:2083
+#: Itext.xml:2166
#, no-c-format
msgid "<literal>dashPhase</literal> — The dash phase indicates the offset into the dash pattern that the line should be drawn with."
msgstr "<literal>dashPhase</literal> — La fase di dash indica l'offset nel pattern dash che con cui la linea dovrebbe essere disegnata."
#. Tag: programlisting
-#: Itext.xml:2091
+#: Itext.xml:2174
#, no-c-format
msgid "<![CDATA[<p:stroke id=\"dot2\" width=\"2\" cap=\"round\" join=\"bevel\" dash=\"2 3\" />]]>"
msgstr "<![CDATA[<p:stroke id=\"dot2\" width=\"2\" cap=\"round\" join=\"bevel\" dash=\"2 3\" />]]>"
#. Tag: title
-#: Itext.xml:2103
+#: Itext.xml:2188
#, no-c-format
msgid "Bar codes"
msgstr "Codici a barre"
#. Tag: para
-#: Itext.xml:2104
+#: Itext.xml:2189
#, no-c-format
msgid "Seam can use iText to generate barcodes in a wide variety of formats. These barcodes can be embedded in a PDF document or displayed as an image on a web page. Note that when used with HTML images, barcodes can not currently display barcode text in the barcode."
msgstr "Seam può usare iText per generare barcode in un'ampia varietà di formati. Questi barcode possono essere incorporati in un documento PDF o mostrati come immagine in una pagina web. Si noti che quando sono usati in immagini HTML, i barcode non possono attualmente mostrare testo al loro interno."
#. Tag: literal
-#: Itext.xml:2118
+#: Itext.xml:2203
#, no-c-format
msgid "<p:barCode>"
msgstr "<p:barCode>"
#. Tag: para
-#: Itext.xml:2125
+#: Itext.xml:2210
#, no-c-format
msgid "Displays a barcode image."
msgstr "Mostra un'immagine di barcode."
#. Tag: para
-#: Itext.xml:2134
+#: Itext.xml:2219
#, no-c-format
msgid "<literal>type</literal> — A barcode type supported by iText. Valid values include: <literal>EAN13</literal>, <literal>EAN8</literal>, <literal>UPCA</literal>, <literal>UPCE</literal>, <literal>SUPP2</literal>, <literal>SUPP5</literal>, <literal>POSTNET</literal>, <literal>PLANET</literal>, <literal>CODE128</literal>, <literal>CODE128_UCC</literal>, <literal>CODE128_RAW</literal> and <literal>CODABAR</literal>."
msgstr "<literal>type</literal> — Un tipo di barcode supportato da iText. Valori validi includono: <literal>EAN13</literal>, <literal>EAN8</literal>, <literal>UPCA</literal>, <literal>UPCE</literal>, <literal>SUPP2</literal>, <literal>SUPP5</literal>, <literal>POSTNET</literal>, <literal>PLANET</literal>, <literal>CODE128</literal>, <literal>CODE128_UCC</literal>, <literal>CODE128_RAW</literal> e <literal>CODABAR</literal>."
#. Tag: para
-#: Itext.xml:2144
+#: Itext.xml:2229
#, no-c-format
msgid "<literal>code</literal> — The value to be encoded by the barcode."
msgstr "<literal>code</literal> — Il valore da codificare nel barcode."
#. Tag: para
-#: Itext.xml:2149
+#: Itext.xml:2234
#, no-c-format
msgid "<literal>xpos</literal> — For PDFs, the absolute y position of the barcode on the page."
msgstr "<literal>code</literal> — Il valore da codificare nel barcode."
#. Tag: para
-#: Itext.xml:2154
+#: Itext.xml:2239
#, no-c-format
msgid "<literal>ypos</literal> — For PDFs, the absolute y position of the barcode on the page."
msgstr "<literal>code</literal> — Il valore da codificare nel barcode."
#. Tag: para
-#: Itext.xml:2159
+#: Itext.xml:2244
#, no-c-format
msgid "<literal>rotDegrees</literal> — For PDFs, the rotation factor of the barcode in degrees."
msgstr "<literal>rotDegrees</literal> — Per i PDF il fattore di rotazione del barcode in gradi."
#. Tag: para
-#: Itext.xml:2164
+#: Itext.xml:2249
#, no-c-format
msgid "<literal>barHeight</literal> — The height of the bars in the barCode"
msgstr "<literal>barHeight</literal> — L'altezza delle barre nel barCode."
#. Tag: para
-#: Itext.xml:2170
+#: Itext.xml:2255
#, no-c-format
msgid "<literal>minBarWidth</literal> — The minimum bar width."
msgstr "<literal>minBarWidth</literal> — La larghezza minima della barra."
#. Tag: para
-#: Itext.xml:2174
+#: Itext.xml:2259
#, no-c-format
msgid "<literal>barMultiplier</literal> — The bar multiplier for wide bars or the distance between bars for <literal>POSTNET</literal> and <literal>PLANET</literal> code."
msgstr "<literal>barMultiplier</literal> — Il moltiplicatore per le barre ampie o la distanza delle barre per codici <literal>POSTNET</literal> e <literal>PLANET</literal>."
#. Tag: para
-#: Itext.xml:2180
+#: Itext.xml:2265
#, no-c-format
msgid "<literal>barColor</literal> — The color to draw the bars."
msgstr "<literal>barColor</literal> — Il colore per disegnare le barre."
#. Tag: para
-#: Itext.xml:2185
+#: Itext.xml:2270
#, no-c-format
msgid "<literal>textColor</literal> — The color of any text on the barcode."
msgstr "<literal>textColor</literal> — Il colore del testo nel barcode."
#. Tag: para
-#: Itext.xml:2190
+#: Itext.xml:2275
#, no-c-format
msgid "<literal>textSize</literal> — The size of the barcode text, if any."
msgstr "<literal>textSize</literal> — La dimensione testo del barcode, se esiste."
#. Tag: para
-#: Itext.xml:2195
+#: Itext.xml:2280
#, no-c-format
msgid "<literal>altText</literal> — The <literal>alt</literal> text for HTML image links."
msgstr "<literal>altText</literal> — Il testo <literal>alt</literal> per i link HTML delle immagini."
#. Tag: programlisting
-#: Itext.xml:2205
+#: Itext.xml:2290
#, no-c-format
msgid ""
"<![CDATA[<p:barCode type=\"code128\" \n"
@@ -2126,79 +2175,79 @@
" altText=\"My BarCode\" />]]>"
#. Tag: title
-#: Itext.xml:2215
+#: Itext.xml:2300
#, no-c-format
msgid "Fill-in-forms"
msgstr "Form da riempire"
#. Tag: para
-#: Itext.xml:2216
+#: Itext.xml:2301
#, no-c-format
msgid "If you have a complex, pre-generated PDF with named fields, you can easily fill in the values from your application and present it to the user."
msgstr "Se si ha un PDF complesso pregenerato con campi definiti (con nome), lo si può facilmente riempire con valori dell'applicazione e presentarlo all'utente."
#. Tag: literal
-#: Itext.xml:2230
+#: Itext.xml:2315
#, no-c-format
msgid "<p:form>"
msgstr "<p:form>"
#. Tag: para
-#: Itext.xml:2237
+#: Itext.xml:2322
#, no-c-format
msgid "Defines a form template to populate"
msgstr "Definisce un modello di form da popolare"
#. Tag: para
-#: Itext.xml:2245
+#: Itext.xml:2330
#, no-c-format
msgid "<literal>URL</literal> — An URL pointing to the PDF file to use as a template. If the value has no protocol part (://), the file is read locally."
msgstr "<literal>URL</literal> — Un URL che punta al file PDF da usarsi come template. Se il valore non ha la partedi protocollo (://), il file viene letto localmente."
#. Tag: para
-#: Itext.xml:2252
+#: Itext.xml:2337
#, no-c-format
msgid "<literal>filename</literal> — The filename to use for the generated PDF file."
msgstr "<literal>filename</literal> — Il nome del file da usare per il file PDF generato."
#. Tag: para
-#: Itext.xml:2258
+#: Itext.xml:2343
#, no-c-format
msgid "<literal>exportKey</literal> — Place the generated PDF file in a DocumentData object under the specified key in the event context. If set, no redirect will occur."
msgstr "<literal>exportKey</literal> — Colloca un file PDF generato in un oggetto DocumentData sotto la chiave specificata nel contesto evento. Se impostato, non avverrà alcun redirect."
#. Tag: literal
-#: Itext.xml:2280
+#: Itext.xml:2365
#, no-c-format
msgid "<p:field>"
msgstr "<p:field>"
#. Tag: para
-#: Itext.xml:2287
+#: Itext.xml:2372
#, no-c-format
msgid "Connects a field name to its value"
msgstr "Unisce un nome campo al suo valore"
#. Tag: para
-#: Itext.xml:2296
+#: Itext.xml:2381
#, no-c-format
msgid "<literal>name</literal> — The name of the field"
msgstr "<literal>name</literal> — Il nome del campo."
#. Tag: para
-#: Itext.xml:2302
+#: Itext.xml:2387
#, no-c-format
msgid "<literal>value</literal> — The value of the field"
msgstr "<literal>value</literal> — Il valore del campo."
#. Tag: para
-#: Itext.xml:2308
+#: Itext.xml:2393
#, no-c-format
msgid "<literal>readOnly</literal> — Should the field be read-only? Defaults to true."
msgstr "<literal>readOnly</literal> — Il campo deve essere di sola lettura? Di default è true."
#. Tag: programlisting
-#: Itext.xml:2320
+#: Itext.xml:2405
#, no-c-format
msgid ""
"<![CDATA[\n"
@@ -2218,73 +2267,73 @@
" ]]>"
#. Tag: title
-#: Itext.xml:2325
+#: Itext.xml:2410
#, no-c-format
msgid "Rendering Swing/AWT components"
msgstr "Componenti per i rendering Swing/AWT"
#. Tag: para
-#: Itext.xml:2326
+#: Itext.xml:2411
#, no-c-format
msgid "Seam now provides experimental support for rendering Swing components to into a PDF image. Some Swing look and feels supports, notably ones that use native widgets, will not render correctly."
msgstr "Seam fornisce ora il supporto sperimentale per generare componenti Swing in un'immagine di PDF. Alcuni componenti Swing look and feels, in particolare quelli che usano widget nativi, non verranno correttamente generati."
#. Tag: literal
-#: Itext.xml:2340
+#: Itext.xml:2425
#, no-c-format
msgid "<p:swing>"
msgstr "<p:swing>"
#. Tag: para
-#: Itext.xml:2348
+#: Itext.xml:2433
#, no-c-format
msgid "Renders a Swing component into a PDF document."
msgstr "Genera un componente Swing in un documento PDF."
#. Tag: para
-#: Itext.xml:2356
+#: Itext.xml:2441
#, no-c-format
msgid "<literal>width</literal> — The width of the component to be rendered."
msgstr "<literal>width</literal> — La larghezza del componente da generare."
#. Tag: para
-#: Itext.xml:2360
+#: Itext.xml:2445
#, no-c-format
msgid "<literal>height</literal> — The height of the component to be rendered."
msgstr "<literal>code</literal> — Il valore da codificare nel barcode."
#. Tag: para
-#: Itext.xml:2364
+#: Itext.xml:2449
#, no-c-format
msgid "<literal>component</literal> — An expression whose value is a Swing or AWT component."
msgstr "<literal>component</literal> — Un'espressione il cui valore è un componente Swing o AWT."
#. Tag: programlisting
-#: Itext.xml:2372
+#: Itext.xml:2457
#, no-c-format
msgid "<![CDATA[<p:swing width=\"310\" height=\"120\" component=\"#{aButton}\" />]]>"
msgstr "<![CDATA[<p:swing width=\"310\" height=\"120\" component=\"#{aButton}\" />]]>"
#. Tag: title
-#: Itext.xml:2383
+#: Itext.xml:2468
#, no-c-format
msgid "Configuring iText"
msgstr "Configurazione di iText"
#. Tag: para
-#: Itext.xml:2385
+#: Itext.xml:2470
#, no-c-format
msgid "Document generation works out of the box with no additional configuration needed. However, there are a few points of configuration that are needed for more serious applications."
msgstr "La generazione del documento funziona senza nessuna ulteriore configurazione. Comunque ci sono alcuni punti della configurazione necessari per applicazioni più serie."
#. Tag: para
-#: Itext.xml:2388
+#: Itext.xml:2473
#, no-c-format
msgid "The default implementation serves PDF documents from a generic URL, <literal>/seam-doc.seam</literal>. Many browsers (and users) would prefer to see URLs that contain the actual PDF name like <literal>/myDocument.pdf</literal>. This capability requires some configuration. To serve PDF files, all <literal>*.pdf</literal> resources should be mapped to the DocumentStoreServlet:"
msgstr "L'implementazione di default serve i documenti PDF da un URL generico, <literal>/seam-doc.seam</literal>. Molti browser (e utenti) preferiscono vedere URL che contengono il vero nome del PDF, come <literal>/myDocument.pdf</literal>. Questa capacità richiede una configurazione. Per servire file PDF, tutte le risorse <literal>*.pdf</literal> devono essere mappate sul DocumentStoreServlet:"
#. Tag: programlisting
-#: Itext.xml:2393
+#: Itext.xml:2478
#, no-c-format
msgid ""
"<![CDATA[<servlet>\n"
@@ -2308,13 +2357,13 @@
"</servlet-mapping>]]>"
#. Tag: para
-#: Itext.xml:2395
+#: Itext.xml:2480
#, no-c-format
msgid "The <literal>use-extensions</literal> option on the document store component completes the functionality by instructing the document store to generate URLs with the correct filename extension for the document type being generated."
msgstr "L'opzione <literal>use-extensions</literal> nel componente document store completa la funzionalità istruendo il document store su come generare l'URL con l'estensione corretta del nome per i tipi di documenti da generare."
#. Tag: programlisting
-#: Itext.xml:2399
+#: Itext.xml:2484
#, no-c-format
msgid ""
"<![CDATA[<components xmlns=\"http://jboss.com/products/seam/components\"\n"
@@ -2336,37 +2385,37 @@
"</components>]]>"
#. Tag: para
-#: Itext.xml:2401
+#: Itext.xml:2486
#, no-c-format
msgid "The document store stores documents in conversation scope, and documents will expire when the conversation ends. At that point, references to the document will be invalid. You can specify a default view to be shown when a document does not exist using the <literal>error-page</literal> property of the <literal>documentStore</literal>."
msgstr "Document store memorizza i documenti nello scope conversazione, ed i documenti scadranno quando termina la conversazione. A quel punto i riferimenti al documento saranno invalidati. Si può specificare la vista di default da mostrare quando un documento non esiste usando la proprietà <literal>error-page</literal> di <literal>documentStore</literal>."
#. Tag: programlisting
-#: Itext.xml:2404
+#: Itext.xml:2489
#, no-c-format
msgid "<![CDATA[<document:document-store use-extensions=\"true\" error-page=\"/documentMissing.seam\" />]]>"
msgstr "<![CDATA[<document:document-store use-extensions=\"true\" error-page=\"/documentMissing.seam\" />]]>"
#. Tag: title
-#: Itext.xml:2408
+#: Itext.xml:2493
#, no-c-format
msgid "Further documentation"
msgstr "Ulteriore documentazione"
#. Tag: para
-#: Itext.xml:2410
+#: Itext.xml:2495
#, no-c-format
msgid "For further information on iText, see:"
msgstr "Per leggere ulteriore documentazione su iText, vedere:"
#. Tag: ulink
-#: Itext.xml:2415
+#: Itext.xml:2500
#, no-c-format
msgid "iText Home Page"
msgstr "iText Home Page"
#. Tag: ulink
-#: Itext.xml:2420
+#: Itext.xml:2505
#, no-c-format
msgid "iText in Action"
msgstr "iText in Action"
Modified: branches/community/Seam_2_1/doc/Seam_Reference_Guide/it-IT/Webservices.po
===================================================================
--- branches/community/Seam_2_1/doc/Seam_Reference_Guide/it-IT/Webservices.po 2009-05-10 10:16:47 UTC (rev 10843)
+++ branches/community/Seam_2_1/doc/Seam_Reference_Guide/it-IT/Webservices.po 2009-05-10 10:28:29 UTC (rev 10844)
@@ -5,8 +5,8 @@
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: http://bugs.kde.org\n"
-"POT-Creation-Date: 2009-04-29 12:40+0000\n"
-"PO-Revision-Date: 2009-04-29 14:52+0100\n"
+"POT-Creation-Date: 2009-05-10 10:19+0000\n"
+"PO-Revision-Date: 2009-05-10 12:27+0100\n"
"Last-Translator: Nicola Benaglia <nico.benaz(a)gmail.com>\n"
"Language-Team: none\n"
"MIME-Version: 1.0\n"
@@ -346,7 +346,7 @@
#. Tag: para
#: Webservices.xml:172
#, no-c-format
-msgid "First, get the RESTEasy libraries and the <literal>jaxrs-api.jar</literal>, deploy them with the other libraries of your application. Also deploy the integration library, <literal>jboss-seam-resteasy.jar</literal>"
+msgid "First, get the RESTEasy libraries and the <literal>jaxrs-api.jar</literal>, deploy them with the other libraries of your application. Also deploy the integration library, <literal>jboss-seam-resteasy.jar</literal>."
msgstr ""
#. Tag: para
@@ -520,13 +520,13 @@
#. Tag: para
#: Webservices.xml:259
#, no-c-format
-msgid "RESTEasy supports plain EJBs (EJBs that are not Seam components) as resources. Instead of configuring the JNDI names in a non-portable fashion in <literal>web.xml</literal> (see RESTEasy documentation), you can simply list the EJB implementation classes, not the business interfaces, in <literal>components.xml</literal> as shown above. Note that you have to annotate the <literal>@Local</literal> interface of the EJB with <literal>@Path</literal>, <literal>@GET</literal>, and so on - not the bean implementation class. This allows you to keep your application deployment-portable with the global Seam <literal>jndi-pattern</literal> switch on <literal><core:init/></literal>. Note that EJB resources will not be found even if scanning of resources is enabled, you always have to list them manually. Again, this is only relevant for EJB resources that are not also Seam components and that do not have a <literal>@Name</literal> annotation."
+msgid "The <literal>use-built-in-providers</literal> switch enables (default) or disables the RESTEasy built-in providers. We recommend you leave them enabled, as they provide plaintext, JSON, and JAXB marshalling out of the box."
msgstr ""
#. Tag: para
-#: Webservices.xml:271
+#: Webservices.xml:265
#, no-c-format
-msgid "The <literal>use-built-in-providers</literal> switch enables (default) or disables the RESTEasy built-in providers. We recommend you leave them enabled, as they provide plaintext, JSON, and JAXB marshalling out of the box."
+msgid "RESTEasy supports plain EJBs (EJBs that are not Seam components) as resources. Instead of configuring the JNDI names in a non-portable fashion in <literal>web.xml</literal> (see RESTEasy documentation), you can simply list the EJB implementation classes, not the business interfaces, in <literal>components.xml</literal> as shown above. Note that you have to annotate the <literal>@Local</literal> interface of the EJB with <literal>@Path</literal>, <literal>@GET</literal>, and so on - not the bean implementation class. This allows you to keep your application deployment-portable with the global Seam <literal>jndi-pattern</literal> switch on <literal><core:init/></literal>. Note that EJB resources will not be found even if scanning of resources is enabled, you always have to list them manually. Again, this is only relevant for EJB resources that are not also Seam components and that do not have a <literal>@Name</literal> annotation."
msgstr ""
#. Tag: para
@@ -626,47 +626,71 @@
#. Tag: para
#: Webservices.xml:309
#, no-c-format
-msgid "An instance of <literal>customerResource</literal> is now handled by Seam when a request hits the server. This is a Seam JavaBean component that is <literal>EVENT</literal>-scoped, hence no different than the default JAX-RS lifecycle. However, you get full Seam injection support and all other Seam components and contexts are available to you. Currently also supported are <literal>SESSION</literal>, <literal>APPLICATION</literal>, and <literal>STATELESS</literal> resource components. Remember that any HTTP request has to transmit a valid session identifier (cookie, URI path parameter) for correct handling of the server-side session context."
+msgid "An instance of <literal>customerResource</literal> is now handled by Seam when a request hits the server. This is a Seam JavaBean component that is <literal>EVENT</literal>-scoped, hence no different than the default JAX-RS lifecycle. You get full Seam injection support and all other Seam components and contexts are available to you. Currently also supported are <literal>APPLICATION</literal> and <literal>STATELESS</literal> resource Seam components. These scopes allow you to create an effectively stateless Seam middle-tier HTTP request-processing application."
msgstr ""
#. Tag: para
-#: Webservices.xml:319
+#: Webservices.xml:318
#, no-c-format
-msgid "Conversation-scoped resource components and mapping of conversations is currently not supported but will be available soon."
+msgid "You can use <literal>SESSION</literal>-scoped Seam components. By default, the session will however be shortened to a single request. In other words, when an HTTP request is being processed by the RESTEasy integration code, an HTTP session will be created so that Seam components can utilize that context. When the request has been processed, Seam will look at the session and decide if the session was created only to serve that single request (no session identifier has been provided with the request, or no session existed for the request). If the session has been created only to serve this request, the session will be destroyed after the request! Assuming that your Seam application only uses event, application, or stateless components, this procedure prevents exhaustion of available HTTP sessions on the server. The RESTEasy integration with Seam assumes by default that sessions are not used, hence anemic sessions would add up as every REST request would start a session!
that will only be removed when timed out."
msgstr ""
#. Tag: para
-#: Webservices.xml:324
+#: Webservices.xml:331
#, no-c-format
-msgid "Provider classes can also be Seam components, they must be <literal>APPLICATION</literal>-scoped or <literal>STATELESS</literal>."
+msgid "If your RESTful Seam application has to preserve session state across REST HTTP requests, disable this behavior in your configuration file:"
msgstr ""
+#. Tag: programlisting
+#: Webservices.xml:336
+#, no-c-format
+msgid "<![CDATA[<resteasy:application destroy-session-after-request=\"false\"/>]]>"
+msgstr "<![CDATA[<resteasy:application destroy-session-after-request=\"false\"/>]]>"
+
#. Tag: para
-#: Webservices.xml:329
+#: Webservices.xml:338
#, no-c-format
-msgid "Resources and providers can be EJBs or JavaBeans, like any other Seam component."
+msgid "Every RESTful HTTP request will now create a new session that will only be removed by timeout or explicit invalidation in your code through <literal>Session.instance().invalidate()</literal>. It is your responsibility to pass a valid session identifier along with your HTTP requests, if you want to utilize the session context across requests."
msgstr ""
+#. Tag: para
+#: Webservices.xml:345
+#, no-c-format
+msgid "<literal>CONVERSATION</literal>-scoped resource components and mapping of conversations to temporary HTTP resources and paths is planned but currently not supported."
+msgstr ""
+
+#. Tag: para
+#: Webservices.xml:350
+#, no-c-format
+msgid "EJB Seam components are currently <emphasis>NOT</emphasis> supported! However, as explained above, you can map plain stateless EJBs (with no Seam lifecycle or injection) as REST resources."
+msgstr ""
+
+#. Tag: para
+#: Webservices.xml:355
+#, no-c-format
+msgid "Provider classes can also be Seam components, currently only <literal>APPLICATION</literal>-scoped provider components are supported."
+msgstr ""
+
#. Tag: title
-#: Webservices.xml:336
+#: Webservices.xml:363
#, no-c-format
msgid "Mapping exceptions to HTTP responses"
msgstr ""
#. Tag: para
-#: Webservices.xml:338
+#: Webservices.xml:365
#, no-c-format
msgid "Section 3.3.4 of the JAX-RS specification defines how checked or unchecked exceptions are handled by the JAX RS implementation. In addition to using an exception mapping provider as defined by JAX-RS, the integration of RESTEasy with Seam allows you to map exceptions to HTTP response codes within Seam's <literal>pages.xml</literal> facility. If you are already using <literal>pages.xml</literal> declarations, this is easier to maintain than potentially many JAX RS exception mapper classes."
msgstr ""
#. Tag: para
-#: Webservices.xml:346
+#: Webservices.xml:373
#, no-c-format
-msgid "Exception handling within Seam requires that the Seam filter is executed for your HTTP request. Ensure that you do filter <emphasis>all</emphasis> requests in your <literal>web.xml</literal>, not - as some Seam examples might show - a request URI pattern that doesn't cover your REST requests. The following example intercepts <emphasis>all</emphasis> HTTP requests and enables Seam exception handling:"
+msgid "Exception handling within Seam requires that the Seam filter is executed for your HTTP request. Ensure that you do filter <emphasis>all</emphasis> requests in your <literal>web.xml</literal>, not - as some Seam examples might show - a request URI pattern that doesn't cover your REST request paths. The following example intercepts <emphasis>all</emphasis> HTTP requests and enables Seam exception handling:"
msgstr ""
#. Tag: programlisting
-#: Webservices.xml:353
+#: Webservices.xml:380
#, no-c-format
msgid ""
"<![CDATA[<filter>\n"
@@ -690,57 +714,57 @@
"</filter-mapping>]]>"
#. Tag: para
-#: Webservices.xml:355
+#: Webservices.xml:382
#, no-c-format
msgid "To convert the unchecked <literal>UnsupportedOperationException</literal> thrown by your resource methods to a <literal>501 Not Implemented</literal> HTTP status response, add the following to your <literal>pages.xml</literal> descriptor:"
msgstr ""
#. Tag: programlisting
-#: Webservices.xml:361
+#: Webservices.xml:388
#, no-c-format
msgid ""
"<![CDATA[<exception class=\"java.lang.UnsupportedOperationException\">\n"
" <http-error error-code=\"501\">\n"
-" <message>The request operation is not supported</message>\n"
+" <message>The requested operation is not supported</message>\n"
" </http-error>\n"
"</exception>]]>"
msgstr ""
"<![CDATA[<exception class=\"java.lang.UnsupportedOperationException\">\n"
" <http-error error-code=\"501\">\n"
-" <message>The request operation is not supported</message>\n"
+" <message>The requested operation is not supported</message>\n"
" </http-error>\n"
"</exception>]]>"
#. Tag: para
-#: Webservices.xml:363
+#: Webservices.xml:390
#, no-c-format
msgid "Custom or checked exceptions are handled the same:"
msgstr ""
#. Tag: programlisting
-#: Webservices.xml:367
+#: Webservices.xml:394
#, no-c-format
msgid ""
"<![CDATA[<exception class=\"my.CustomException\" log=\"false\">\n"
" <http-error error-code=\"503\">\n"
-" <message>The service is currently not available: #{org.jboss.seam.handledException.message}</message>\n"
+" <message>Service not available: #{org.jboss.seam.handledException.message}</message>\n"
" </http-error>\n"
"</exception>]]>"
msgstr ""
"<![CDATA[<exception class=\"my.CustomException\" log=\"false\">\n"
" <http-error error-code=\"503\">\n"
-" <message>The service is currently not available: #{org.jboss.seam.handledException.message}</message>\n"
+" <message>Service not available: #{org.jboss.seam.handledException.message}</message>\n"
" </http-error>\n"
"</exception>]]>"
#. Tag: para
-#: Webservices.xml:369
+#: Webservices.xml:396
#, no-c-format
msgid "You do not have to send an HTTP error to the client if an exception occurs. Seam allows you to map the exception as a redirect to a view of your Seam application. As this feature is typically used for human clients (web browsers) and not for REST API remote clients, you should pay extra attention to conflicting exception mappings in <literal>pages.xml</literal>."
msgstr ""
#. Tag: para
-#: Webservices.xml:376
+#: Webservices.xml:403
#, no-c-format
msgid "Note that the HTTP response still passes through the servlet container, so an additional mapping might apply if you have <literal><error-page></literal> mappings in your <literal>web.xml</literal> configuration. The HTTP status code would then be mapped to a rendered HTML error page with status <literal>200 OK</literal>!"
msgstr ""
15 years, 7 months
Seam SVN: r10843 - branches/community/Seam_2_1/doc/Seam_Reference_Guide/it-IT.
by seam-commits@lists.jboss.org
Author: nico.ben
Date: 2009-05-10 06:16:47 -0400 (Sun, 10 May 2009)
New Revision: 10843
Modified:
branches/community/Seam_2_1/doc/Seam_Reference_Guide/it-IT/Concepts.po
Log:
JBSEAM-3767: Italian translation of Seam guide
Modified: branches/community/Seam_2_1/doc/Seam_Reference_Guide/it-IT/Concepts.po
===================================================================
--- branches/community/Seam_2_1/doc/Seam_Reference_Guide/it-IT/Concepts.po 2009-05-09 00:37:50 UTC (rev 10842)
+++ branches/community/Seam_2_1/doc/Seam_Reference_Guide/it-IT/Concepts.po 2009-05-10 10:16:47 UTC (rev 10843)
@@ -6,7 +6,7 @@
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: http://bugs.kde.org\n"
"POT-Creation-Date: 2009-01-18 15:00+0000\n"
-"PO-Revision-Date: 2009-05-08 20:24+0100\n"
+"PO-Revision-Date: 2009-05-10 12:15+0100\n"
"Last-Translator: Nicola Benaglia <nico.benaz(a)gmail.com>\n"
"Language-Team: none\n"
"MIME-Version: 1.0\n"
@@ -842,7 +842,7 @@
#: Concepts.xml:560
#, no-c-format
msgid "Some Seam component classes can fulfill more than one role in the system. For example, we often have a <literal>User</literal> class which is usually used as a session-scoped component representing the current user but is used in user administration screens as a conversation-scoped component. The <literal>@Role</literal> annotation lets us define an additional named role for a component, with a different scope — it lets us bind the same component class to different context variables. (Any Seam component <emphasis>instance</emphasis> may be bound to multiple context variables, but this lets us do it at the class level, and take advantage of auto-instantiation.)"
-msgstr ""
+msgstr "Alcune classi componenti Seam possono svolgere più di un ruolo nel sistema. Per esempio si haspesso la classe <literal>User</literal> che viene usata come componente con scope sessione e che rappresenta l'utente corrente, ma nelle schermate di amministrazione utente viene usato come componente con scope conversazione. L'annotazione <literal>@Role</literal> consente di definire un ruolo addizionale per un componente, con scope differente — consente di associare la stessa classe componente a variabili di contesto differenti. (Qualsiasi <emphasis>istanza</emphasis> componente Seam può essere associata a variabili di contesto multiple, ma questo è consentito a livello di classe e per sfruttare l'autoistanziamento.)"
#. Tag: programlisting
#: Concepts.xml:570
@@ -902,7 +902,7 @@
#: Concepts.xml:582
#, no-c-format
msgid "Like many good frameworks, Seam eats its own dogfood and is implemented mostly as a set of built-in Seam interceptors (see later) and Seam components. This makes it easy for applications to interact with built-in components at runtime or even customize the basic functionality of Seam by replacing the built-in components with custom implementations. The built-in components are defined in the Seam namespace <literal>org.jboss.seam.core</literal> and the Java package of the same name."
-msgstr ""
+msgstr "Come molti buoni framework, Seam si nutre del proprio cibo ed è implementato come set di interceptor (vedere più avanti) predefiniti e di componenti Seam. Questo consente facilmente alle applicazioni di interagire a runtime con i componenti predefiniti o anche personalizzare le funzionalità base di Seam sostituendo i componenti predefiniti con implementazioni ad hoc. I componenti predefiniti sono definiti nel namespace di Seam <literal>org.jboss.seam.core</literal> e nel pacchetto Java con lo stesso nome."
#. Tag: para
#: Concepts.xml:589
@@ -926,31 +926,31 @@
#: Concepts.xml:600
#, no-c-format
msgid "<emphasis>Dependency injection</emphasis> or <emphasis>inversion of control</emphasis> is by now a familiar concept to most Java developers. Dependency injection allows a component to obtain a reference to another component by having the container \"inject\" the other component to a setter method or instance variable. In all dependency injection implementations that we have seen, injection occurs when the component is constructed, and the reference does not subsequently change for the lifetime of the component instance. For stateless components, this is reasonable. From the point of view of a client, all instances of a particular stateless component are interchangeable. On the other hand, Seam emphasizes the use of stateful components. So traditional dependency injection is no longer a very useful construct. Seam introduces the notion of <emphasis>bijection</emphasis> as a generalization of injection. In contrast to injection, bijection is:"
-msgstr ""
+msgstr "<emphasis>Dependency injection</emphasis> o <emphasis>inversione del controllo</emphasis> è ora un concetto familiare allamaggior parte degli sviluppatori Java. La dependency injection consente ad un componente di ottenere un riferimento ad un altro componente facendo \"iniettare\" dal container l'altro componente in un metodo setter o variabile istanza. In tutte le implementazioni di dependency injection che abbiamo visto, l'injection avviene quando viene costruito il componente, ed il riferimento non cambia durante il ciclo di vita dell'istanza del componente. Per i componenti stateless questo è ragionevole. Dal punto di vista del client tutte le istanzedi un particolare componente stateless sono intercambiabili. Dall'altro lato Seam enfatizza l'uso di componenti stateful. Quindi la tradizionale dependency injection non è più un costrutto utile. Seam introduce la nozione di <emphasis>bijection</emphasis> come generalizzazione dell'injection. In contrasto all'i!
njection, la bijection è:"
#. Tag: para
#: Concepts.xml:614
#, no-c-format
msgid "<emphasis>contextual</emphasis> - bijection is used to assemble stateful components from various different contexts (a component from a \"wider\" context may even have a reference to a component from a \"narrower\" context)"
-msgstr ""
+msgstr "<emphasis>contestuale</emphasis> - la bijection è usata per assemblare i componenti stateful da vari contesti differenti (un componente da un contesto più \"ampio\" può anche fare riferimento ad un componente di un contesto più \"ristretto\")"
#. Tag: para
#: Concepts.xml:621
#, no-c-format
msgid "<emphasis>bidirectional</emphasis> - values are injected from context variables into attributes of the component being invoked, and also <emphasis>outjected</emphasis> from the component attributes back out to the context, allowing the component being invoked to manipulate the values of contextual variables simply by setting its own instance variables"
-msgstr ""
+msgstr "<emphasis>bidirezionale</emphasis> - i valori sono iniettati da variabili di contesto negli attributi del componente invocato, ed anche <emphasis>outjected</emphasis> da attributi di componenti nel contesto, consentendo al componente di essere invocato per manipolare i valori delle variabili contestuali semplicemente impostando le proprie variabili d'istanza"
#. Tag: para
#: Concepts.xml:629
#, no-c-format
msgid "<emphasis>dynamic</emphasis> - since the value of contextual variables changes over time, and since Seam components are stateful, bijection takes place every time a component is invoked"
-msgstr ""
+msgstr "<emphasis>dimanica</emphasis> - poiché il valore delle variabili contestuali cambia neltempo, e poiché i componenti Seam sono stateful, la bijection avviene ogni volta che viene invocato il componente"
#. Tag: para
#: Concepts.xml:636
#, no-c-format
msgid "In essence, bijection lets you alias a context variable to a component instance variable, by specifying that the value of the instance variable is injected, outjected, or both. Of course, we use annotations to enable bijection."
-msgstr ""
+msgstr "In sostanza la bijection consente di rinominare le variabili di contesto in variabili istanza del componente, specificando che il valore della variabile d'istanza sia iniettata, outjected o entrambe, Certamente vengono usate annotazioni per abilitare la bijection."
#. Tag: para
#: Concepts.xml:642
@@ -1016,19 +1016,19 @@
#: Concepts.xml:656
#, no-c-format
msgid "By default, Seam will do a priority search of all contexts, using the name of the property or instance variable that is being injected. You may wish to specify the context variable name explicitly, using, for example, <literal>@In(\"currentUser\")</literal>."
-msgstr ""
+msgstr "Di default Seam esegue una ricerca prioritaria di tutti i contesti, usando il nome della proprietà o variabile d'istanza che viene iniettata. Si può specificare esplicitamente il nome della varibile di contesto, usando, per esempio, <literal>@In(\"currentUser\")</literal>."
#. Tag: para
#: Concepts.xml:662
#, no-c-format
msgid "If you want Seam to create an instance of the component when there is no existing component instance bound to the named context variable, you should specify <literal>@In(create=true)</literal>. If the value is optional (it can be null), specify <literal>@In(required=false)</literal>."
-msgstr ""
+msgstr "Se si vuole che Seam crei un'istanza del componente quando non esiste un'istanza di componente associata alla variabile di contesto, occorre specificare <literal>@In(create=true)</literal>. Se il valore è opzionale (può essere null), specificare <literal>@In(required=false)</literal>."
#. Tag: para
#: Concepts.xml:668
#, no-c-format
msgid "For some components, it can be repetitive to have to specify <literal>@In(create=true)</literal> everywhere they are used. In such cases, you can annotate the component <literal>@AutoCreate</literal>, and then it will always be created, whenever needed, even without the explicit use of <literal>create=true</literal>."
-msgstr ""
+msgstr "Per alcuni componenti può essere ripetitivo dove specificare <literal>@In(create=true)</literal> ogni volta che sono usati. In questi casi si può annotare il componente con <literal>@AutoCreate</literal>, e quindi questo verrà creato, quando necessario, senza dover escplicitare <literal>create=true</literal>."
#. Tag: para
#: Concepts.xml:674
@@ -1064,7 +1064,7 @@
#: Concepts.xml:685
#, no-c-format
msgid "(There is much more information about component lifecycle and injection in the next chapter.)"
-msgstr ""
+msgstr "(Maggiori informazioni sul ciclo di vita dei componenti e su injection nel prossimo capitolo.)"
#. Tag: para
#: Concepts.xml:689
@@ -1450,7 +1450,7 @@
#: Concepts.xml:901
#, no-c-format
msgid "If <literal>User</literal> and <literal>Product</literal> are Seam components available in the current contexts, it gets even better:"
-msgstr ""
+msgstr "Se <literal>User</literal> e <literal>Product</literal> sono componenti Seam disponibili nei contesti correnti, funziona ancora meglio:"
#. Tag: programlisting
#: Concepts.xml:906
15 years, 7 months
Seam SVN: r10842 - modules/trunk.
by seam-commits@lists.jboss.org
Author: dan.j.allen
Date: 2009-05-08 20:37:50 -0400 (Fri, 08 May 2009)
New Revision: 10842
Modified:
modules/trunk/eclipse-code-formatter-profile.xml
Log:
brand to Seam 3
Modified: modules/trunk/eclipse-code-formatter-profile.xml
===================================================================
--- modules/trunk/eclipse-code-formatter-profile.xml 2009-05-08 18:25:28 UTC (rev 10841)
+++ modules/trunk/eclipse-code-formatter-profile.xml 2009-05-09 00:37:50 UTC (rev 10842)
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<profiles version="11">
-<profile kind="CodeFormatterProfile" name="WebBeans" version="11">
+<profiles version="1">
+<profile kind="CodeFormatterProfile" name="Seam 3" version="1">
<setting id="org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters" value="do not insert"/>
15 years, 7 months
Seam SVN: r10841 - branches/community/Seam_2_1/doc/Seam_Reference_Guide/it-IT.
by seam-commits@lists.jboss.org
Author: nico.ben
Date: 2009-05-08 14:25:28 -0400 (Fri, 08 May 2009)
New Revision: 10841
Modified:
branches/community/Seam_2_1/doc/Seam_Reference_Guide/it-IT/Concepts.po
Log:
JBSEAM-3767: Italian translation of Seam guide
Modified: branches/community/Seam_2_1/doc/Seam_Reference_Guide/it-IT/Concepts.po
===================================================================
--- branches/community/Seam_2_1/doc/Seam_Reference_Guide/it-IT/Concepts.po 2009-05-08 09:35:27 UTC (rev 10840)
+++ branches/community/Seam_2_1/doc/Seam_Reference_Guide/it-IT/Concepts.po 2009-05-08 18:25:28 UTC (rev 10841)
@@ -6,7 +6,7 @@
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: http://bugs.kde.org\n"
"POT-Creation-Date: 2009-01-18 15:00+0000\n"
-"PO-Revision-Date: 2009-05-03 21:08+0100\n"
+"PO-Revision-Date: 2009-05-08 20:24+0100\n"
"Last-Translator: Nicola Benaglia <nico.benaz(a)gmail.com>\n"
"Language-Team: none\n"
"MIME-Version: 1.0\n"
@@ -684,7 +684,7 @@
#: Concepts.xml:495
#, no-c-format
msgid "Whenever Seam instantiates a component, it binds the new instance to a variable in the scope configured for the component that matches the component name. This behavior is identical to how JSF managed beans work, except that Seam allows you to configure this mapping using annotations rather than XML. You can also programmatically bind a component to a context variable. This is useful if a particular component serves more than one role in the system. For example, the currently logged in <literal>User</literal> might be bound to the <literal>currentUser</literal> session context variable, while a <literal>User</literal> that is the subject of some administration functionality might be bound to the <literal>user</literal> conversation context variable. Be careful, though, because through a programmatic assignment, it's possible to overwrite a context variable that has a reference to a Seam component, potentially confusing matters."
-msgstr ""
+msgstr "Quando Seam istanzia un componente associa la nuova istanza ad una variabile nello scope configurato per il componente che corrisponde al nome del componente. Questo comportamento è identico al modo in cui funzionano i bean gestiti da JSF, tranne che Seam consente di configurare questa mappatura usando le annotazioni anziché XML. Si può anche associare via codice un componente ad una variabile di contesto. Questo è utile se un particolare componente serve più di un ruolo nel sistema. Per esempio lo <literal>User</literal> correntemente loggato può essere associato alla variabile di contesto sessione <literal>currentUser</literal>, mentre uno <literal>User</literal> che è soggetto ad alcune funzionalità di amministrazione può essere associato alla variabile di contesto conversazione <literal>user</literal>. Attenzione poiché attraverso l'assegnamento programmatico è possibile sovrascrivere la variabile di contesto che ha un riferimento ad un componente Sea!
m, cosa che può creare parecchi problemi."
#. Tag: para
#: Concepts.xml:506
@@ -712,7 +712,7 @@
#: Concepts.xml:513
#, no-c-format
msgid "We may use the qualified component name both in Java code and in JSF's expression language:"
-msgstr ""
+msgstr "Si può utilizzare un nome qualificato di componente sia nel codice Java sia nell'expression language JSF:"
#. Tag: programlisting
#: Concepts.xml:517
@@ -728,7 +728,7 @@
#: Concepts.xml:519
#, no-c-format
msgid "Since this is noisy, Seam also provides a means of aliasing a qualified name to a simple name. Add a line like this to the <literal>components.xml</literal> file:"
-msgstr ""
+msgstr "Poiché questo è noioso, Seam fornisce anche un modo per nominare in altro modo un nome qualificato in un nome semplice. Si aggiunga una linea come questa al file <literal>components.xml</literal>:"
#. Tag: programlisting
#: Concepts.xml:524
@@ -740,7 +740,7 @@
#: Concepts.xml:526
#, no-c-format
msgid "All of the built-in Seam components have qualified names but can be accessed through their unqualified names due to the namespace import feature of Seam. The <literal>components.xml</literal> file included in the Seam JAR defines the following namespaces."
-msgstr ""
+msgstr "Tutti i componenti Seam predefiniti hanno nomi qualificati ma possono essere acceduti attraverso i loro nomi non qualificati grazie alla funzionalità di Seam dell'importazione del namespace. Il file <literal>components.xml</literal> incluso nei jar di Seam definisce i seguenti namespace."
#. Tag: programlisting
#: Concepts.xml:533
@@ -794,7 +794,7 @@
#: Concepts.xml:535
#, no-c-format
msgid "When attempting to resolve an unqualified name, Seam will check each of those namespaces, in order. You can include additional namespaces in your application's <literal>components.xml</literal> file for application-specific namespaces."
-msgstr ""
+msgstr "Quando si tenta di risolvere un nome non qualificato, Seam controlla in ordine ciascuno dei namespace. Si possono includere namespace addizionali nel file <literal>components.xml</literal> per namespace specifici dell'applicazione."
#. Tag: title
#: Concepts.xml:543
@@ -806,7 +806,7 @@
#: Concepts.xml:544
#, no-c-format
msgid "We can override the default scope (context) of a component using the <literal>@Scope</literal> annotation. This lets us define what context a component instance is bound to, when it is instantiated by Seam."
-msgstr ""
+msgstr "Si può sovrascrivere lo scope di default (contesto) di un componente usando l'annotazione <literal>@Scope</literal>. Questo consente di definire a quale contesto è associata un'istanza di componente, quando questo viene istanziato da Seam."
#. Tag: programlisting
#: Concepts.xml:550
@@ -956,7 +956,7 @@
#: Concepts.xml:642
#, no-c-format
msgid "The <literal>@In</literal> annotation specifies that a value should be injected, either into an instance variable:"
-msgstr ""
+msgstr "L'annotazione <literal>@In</literal> specifica che un valore venga iniettato, sia in una variabile istanza:"
#. Tag: programlisting
#: Concepts.xml:647
@@ -1212,13 +1212,13 @@
#: Concepts.xml:727
#, no-c-format
msgid "The <literal>@Create</literal> method is called after Seam instantiates a component. Components may define only one <literal>@Create</literal> method."
-msgstr ""
+msgstr "Il metodo <literal>@Create</literal> viene chiamato dopo che Seam istanzia un componente. I componenti possono definire solo un metodo <literal>@Create</literal>."
#. Tag: para
#: Concepts.xml:732
#, no-c-format
msgid "The <literal>@Destroy</literal> method is called when the context that the Seam component is bound to ends. Components may define only one <literal>@Destroy</literal> method."
-msgstr ""
+msgstr "Il metodo <literal>@Destroy</literal> viene chiamato quando termina il contesto a cui è legato il componente Seam. I componenti possono definire solo un metodo <literal>@Destroy</literal>."
#. Tag: para
#: Concepts.xml:737
@@ -1242,7 +1242,7 @@
#: Concepts.xml:755
#, no-c-format
msgid "The <literal>@Install</literal> annotation lets you control conditional installation of components that are required in some deployment scenarios and not in others. This is useful if:"
-msgstr ""
+msgstr "L'annotazione <literal>@Install</literal> consente di controllare l'installazione condizionale di componenti che sono richiesti in alcuni scenari di deploy e non i altri. Questa è utile se:"
#. Tag: para
#: Concepts.xml:762
@@ -1266,7 +1266,7 @@
#: Concepts.xml:780
#, no-c-format
msgid "<literal>@Install</literal> works by letting you specify <emphasis>precedence</emphasis> and <emphasis>dependencies</emphasis>."
-msgstr ""
+msgstr "<literal>@Install</literal> funziona consentendo di specificare <emphasis>precedence</emphasis> e <emphasis>dependencies</emphasis>."
#. Tag: para
#: Concepts.xml:785
@@ -1828,5 +1828,5 @@
#: Concepts.xml:1024
#, no-c-format
msgid "Here the managed component observes many events which change the underlying object. The component manages these actions itself, and because the object is unwrapped on every access, a consistent view is provided."
-msgstr ""
+msgstr "Qua il componente gestito osserva diversi eventi che cambiano l'oggetto sottostante. Il componente stesso gestisce queste azioni, e poiché l'oggetto è unwrap ad ogni accesso, viene fornita una vista consistente."
15 years, 7 months
Seam SVN: r10840 - in examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace: model and 1 other directory.
by seam-commits@lists.jboss.org
Author: shane.bryzak(a)jboss.com
Date: 2009-05-08 05:35:27 -0400 (Fri, 08 May 2009)
New Revision: 10840
Added:
examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/model/
examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/model/AccountPermission.java
examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/model/BlogComment.java
examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/model/FriendComment.java
examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/model/Member.java
examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/model/MemberAccount.java
examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/model/MemberBlog.java
examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/model/MemberFriend.java
examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/model/MemberImage.java
examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/model/MemberRole.java
Removed:
examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/AccountPermission.java
examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/BlogComment.java
examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/FriendComment.java
examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/Member.java
examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/MemberAccount.java
examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/MemberBlog.java
examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/MemberFriend.java
examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/MemberImage.java
examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/MemberRole.java
Modified:
examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/BlogAction.java
examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/CommentAction.java
examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/ContentAction.java
examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/ContentServlet.java
examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/FriendAction.java
examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/ImagePermission.java
examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/PictureAction.java
examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/PictureSearch.java
examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/ProfileAction.java
examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/RegisterAction.java
Log:
fix deployment errors, minor restructuring
Deleted: examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/AccountPermission.java
===================================================================
--- examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/AccountPermission.java 2009-05-08 07:46:31 UTC (rev 10839)
+++ examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/AccountPermission.java 2009-05-08 09:35:27 UTC (rev 10840)
@@ -1,81 +0,0 @@
-package org.jboss.seam.example.seamspace;
-
-import java.io.Serializable;
-
-import javax.persistence.Entity;
-import javax.persistence.GeneratedValue;
-import javax.persistence.Id;
-
-import org.jboss.seam.security.annotations.permission.PermissionAction;
-import org.jboss.seam.security.annotations.permission.PermissionDiscriminator;
-import org.jboss.seam.security.annotations.permission.PermissionRole;
-import org.jboss.seam.security.annotations.permission.PermissionTarget;
-import org.jboss.seam.security.annotations.permission.PermissionUser;
-
-@Entity
-public class AccountPermission implements Serializable
-{
- private static final long serialVersionUID = -5628863031792429938L;
-
- private Integer permissionId;
- private String recipient;
- private String target;
- private String action;
- private String discriminator;
-
- @Id @GeneratedValue
- public Integer getPermissionId()
- {
- return permissionId;
- }
-
- public void setPermissionId(Integer permissionId)
- {
- this.permissionId = permissionId;
- }
-
- @PermissionUser
- @PermissionRole
- public String getRecipient()
- {
- return recipient;
- }
-
- public void setRecipient(String recipient)
- {
- this.recipient = recipient;
- }
-
- @PermissionTarget
- public String getTarget()
- {
- return target;
- }
-
- public void setTarget(String target)
- {
- this.target = target;
- }
-
- @PermissionAction
- public String getAction()
- {
- return action;
- }
-
- public void setAction(String action)
- {
- this.action = action;
- }
-
- @PermissionDiscriminator
- public String getDiscriminator()
- {
- return discriminator;
- }
-
- public void setDiscriminator(String discriminator)
- {
- this.discriminator = discriminator;
- }
-}
Modified: examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/BlogAction.java
===================================================================
--- examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/BlogAction.java 2009-05-08 07:46:31 UTC (rev 10839)
+++ examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/BlogAction.java 2009-05-08 09:35:27 UTC (rev 10840)
@@ -1,5 +1,6 @@
package org.jboss.seam.example.seamspace;
+import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date;
@@ -9,17 +10,24 @@
import javax.inject.Current;
import javax.inject.Produces;
import javax.persistence.EntityManager;
+import javax.persistence.PersistenceContext;
+import org.jboss.seam.example.seamspace.model.BlogComment;
+import org.jboss.seam.example.seamspace.model.Member;
+import org.jboss.seam.example.seamspace.model.MemberBlog;
+
@Named("blog")
@ConversationScoped
-public class BlogAction
+public class BlogAction implements Serializable
{
+ private static final long serialVersionUID = 1048001063828543101L;
+
private String name;
private Integer blogId;
- @Current EntityManager entityManager;
+ @PersistenceContext EntityManager entityManager;
- @Current Member authenticatedMember;
+ /*@Current */Member authenticatedMember;
@Current Conversation conversation;
private MemberBlog selectedBlog;
Deleted: examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/BlogComment.java
===================================================================
--- examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/BlogComment.java 2009-05-08 07:46:31 UTC (rev 10839)
+++ examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/BlogComment.java 2009-05-08 09:35:27 UTC (rev 10840)
@@ -1,91 +0,0 @@
-package org.jboss.seam.example.seamspace;
-
-import java.io.Serializable;
-import java.text.SimpleDateFormat;
-import java.util.Date;
-
-import javax.persistence.Entity;
-import javax.persistence.GeneratedValue;
-import javax.persistence.Id;
-import javax.persistence.JoinColumn;
-import javax.persistence.ManyToOne;
-import javax.persistence.Transient;
-import javax.validation.constraints.NotNull;
-
-@Entity
-public class BlogComment implements Serializable
-{
- private static final long serialVersionUID = 5495139096911872039L;
-
- private static SimpleDateFormat df = new SimpleDateFormat("EEEE, MMMM d, yyyy 'at' hh:mm a");
-
- private Integer commentId;
- private MemberBlog blog;
- private Member commentor;
- private Date commentDate;
- private String comment;
-
- @Id @GeneratedValue
- public Integer getCommentId()
- {
- return commentId;
- }
-
- public void setCommentId(Integer commentId)
- {
- this.commentId = commentId;
- }
-
- @ManyToOne
- @JoinColumn(name = "BLOG_ID")
- public MemberBlog getBlog()
- {
- return blog;
- }
-
- public void setBlog(MemberBlog blog)
- {
- this.blog = blog;
- }
-
- @NotNull
- public String getComment()
- {
- return comment;
- }
- public void setComment(String comment)
- {
- this.comment = comment;
- }
-
- @NotNull
- public Date getCommentDate()
- {
- return commentDate;
- }
-
- public void setCommentDate(Date commentDate)
- {
- this.commentDate = commentDate;
- }
-
- @Transient
- public String getFormattedCommentDate()
- {
- return df.format(commentDate);
- }
-
- @ManyToOne
- @JoinColumn(name = "COMMENTOR_ID")
- public Member getCommentor()
- {
- return commentor;
- }
-
- public void setCommentor(Member commentor)
- {
- this.commentor = commentor;
- }
-
-
-}
Modified: examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/CommentAction.java
===================================================================
--- examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/CommentAction.java 2009-05-08 07:46:31 UTC (rev 10839)
+++ examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/CommentAction.java 2009-05-08 09:35:27 UTC (rev 10840)
@@ -1,5 +1,6 @@
package org.jboss.seam.example.seamspace;
+import java.io.Serializable;
import java.util.Date;
import javax.annotation.Named;
@@ -7,20 +8,26 @@
import javax.context.ConversationScoped;
import javax.inject.Current;
import javax.persistence.EntityManager;
+import javax.persistence.PersistenceContext;
+import org.jboss.seam.example.seamspace.model.BlogComment;
+import org.jboss.seam.example.seamspace.model.Member;
+import org.jboss.seam.example.seamspace.model.MemberBlog;
import org.jboss.seam.security.Secure;
import org.jboss.seam.security.annotations.Insert;
@Named
@ConversationScoped
@Secure
-public class CommentAction
+public class CommentAction implements Serializable
{
- @Current EntityManager entityManager;
+ private static final long serialVersionUID = -4681499577462031028L;
+
+ @PersistenceContext EntityManager entityManager;
private BlogComment comment;
- @Current Member authenticatedMember;
+ /*@Current*/ Member authenticatedMember;
@Current MemberBlog selectedBlog;
Modified: examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/ContentAction.java
===================================================================
--- examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/ContentAction.java 2009-05-08 07:46:31 UTC (rev 10839)
+++ examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/ContentAction.java 2009-05-08 09:35:27 UTC (rev 10840)
@@ -1,15 +1,21 @@
package org.jboss.seam.example.seamspace;
+import java.io.Serializable;
+
import javax.annotation.Named;
import javax.inject.Current;
import javax.persistence.EntityManager;
+import javax.persistence.PersistenceContext;
+import org.jboss.seam.example.seamspace.model.MemberImage;
import org.jboss.seam.security.Identity;
@Named
-public class ContentAction
+public class ContentAction implements Serializable
{
- @Current EntityManager entityManager;
+ private static final long serialVersionUID = -3028986030113894868L;
+
+ @PersistenceContext EntityManager entityManager;
@Current Identity identity;
public MemberImage getImage(int imageId)
Modified: examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/ContentServlet.java
===================================================================
--- examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/ContentServlet.java 2009-05-08 07:46:31 UTC (rev 10839)
+++ examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/ContentServlet.java 2009-05-08 09:35:27 UTC (rev 10840)
@@ -16,6 +16,8 @@
import javax.servlet.http.HttpServletResponse;
import javax.swing.ImageIcon;
+import org.jboss.seam.example.seamspace.model.MemberImage;
+
/**
* Serves images and other member content
*
Modified: examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/FriendAction.java
===================================================================
--- examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/FriendAction.java 2009-05-08 07:46:31 UTC (rev 10839)
+++ examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/FriendAction.java 2009-05-08 09:35:27 UTC (rev 10840)
@@ -10,7 +10,11 @@
import javax.inject.Produces;
import javax.persistence.EntityManager;
import javax.persistence.NoResultException;
+import javax.persistence.PersistenceContext;
+import org.jboss.seam.example.seamspace.model.FriendComment;
+import org.jboss.seam.example.seamspace.model.Member;
+import org.jboss.seam.example.seamspace.model.MemberFriend;
import org.jboss.seam.international.StatusMessages;
import org.jboss.seam.security.Identity;
@@ -23,9 +27,9 @@
// @RequestParameter("name")
private String name;
- @Current Member authenticatedMember;
+ /*@Current*/ Member authenticatedMember;
- @Current EntityManager entityManager;
+ @PersistenceContext EntityManager entityManager;
@Current Identity identity;
@Current StatusMessages messages;
@Current Conversation conversation;
Deleted: examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/FriendComment.java
===================================================================
--- examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/FriendComment.java 2009-05-08 07:46:31 UTC (rev 10839)
+++ examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/FriendComment.java 2009-05-08 09:35:27 UTC (rev 10840)
@@ -1,88 +0,0 @@
-package org.jboss.seam.example.seamspace;
-
-import java.io.Serializable;
-import java.text.SimpleDateFormat;
-import java.util.Date;
-
-import javax.persistence.Entity;
-import javax.persistence.GeneratedValue;
-import javax.persistence.Id;
-import javax.persistence.JoinColumn;
-import javax.persistence.ManyToOne;
-import javax.persistence.Transient;
-
-@Entity
-public class FriendComment implements Serializable
-{
- private static final long serialVersionUID = -288494386341008371L;
-
- private static SimpleDateFormat df = new SimpleDateFormat("d MMMM yyyy hh:mm a");
-
- private Integer id;
- private Member member;
- private Member friend;
- private Date commentDate;
- private String comment;
-
- @Id @GeneratedValue
- public Integer getId()
- {
- return id;
- }
-
- public void setId(Integer id)
- {
- this.id = id;
- }
-
- public String getComment()
- {
- return comment;
- }
-
- public void setComment(String comment)
- {
- this.comment = comment;
- }
-
- public Date getCommentDate()
- {
- return commentDate;
- }
-
- public void setCommentDate(Date commentDate)
- {
- this.commentDate = commentDate;
- }
-
- @Transient
- public String getFormattedCommentDate()
- {
- return df.format(commentDate);
- }
-
- @ManyToOne
- @JoinColumn(name = "FRIEND_ID")
- public Member getFriend()
- {
- return friend;
- }
-
- public void setFriend(Member friend)
- {
- this.friend = friend;
- }
-
- @ManyToOne
- @JoinColumn(name = "MEMBER_ID")
- public Member getMember()
- {
- return member;
- }
-
- public void setMember(Member member)
- {
- this.member = member;
- }
-
-}
Modified: examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/ImagePermission.java
===================================================================
--- examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/ImagePermission.java 2009-05-08 07:46:31 UTC (rev 10839)
+++ examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/ImagePermission.java 2009-05-08 09:35:27 UTC (rev 10840)
@@ -10,7 +10,11 @@
import javax.context.ConversationScoped;
import javax.inject.Current;
import javax.persistence.EntityManager;
+import javax.persistence.PersistenceContext;
+import org.jboss.seam.example.seamspace.model.Member;
+import org.jboss.seam.example.seamspace.model.MemberAccount;
+import org.jboss.seam.example.seamspace.model.MemberImage;
import org.jboss.seam.international.StatusMessages;
import org.jboss.seam.security.Role;
import org.jboss.seam.security.SimplePrincipal;
@@ -36,7 +40,7 @@
@Current IdentityManager identityManager;
@Current PermissionManager permissionManager;
- @Current EntityManager entityManager;
+ @PersistenceContext EntityManager entityManager;
@Current PermissionSearch permissionSearch;
@Current Conversation conversation;
Deleted: examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/Member.java
===================================================================
--- examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/Member.java 2009-05-08 07:46:31 UTC (rev 10839)
+++ examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/Member.java 2009-05-08 09:35:27 UTC (rev 10840)
@@ -1,252 +0,0 @@
-package org.jboss.seam.example.seamspace;
-
-import java.io.Serializable;
-import java.util.Calendar;
-import java.util.Date;
-import java.util.GregorianCalendar;
-import java.util.Set;
-
-import javax.persistence.Entity;
-import javax.persistence.FetchType;
-import javax.persistence.GeneratedValue;
-import javax.persistence.Id;
-import javax.persistence.JoinColumn;
-import javax.persistence.OneToMany;
-import javax.persistence.OneToOne;
-import javax.persistence.Table;
-import javax.persistence.Transient;
-import javax.persistence.UniqueConstraint;
-import javax.validation.constraints.NotNull;
-import javax.validation.constraints.Min;
-import javax.validation.constraints.Max;
-import javax.validation.constraints.Pattern;
-
-/**
- * A member account
- *
- * @author Shane Bryzak
- */
-@Entity
-@Table(uniqueConstraints = @UniqueConstraint(columnNames = "membername"))
-public class Member implements Serializable
-{
- private static final long serialVersionUID = 5179242727836683375L;
-
- public enum Gender {
- male("Male", "his"),
- female("Female", "her");
-
- private String descr;
- private String possessive;
-
- Gender(String descr, String possessive) {
- this.descr = descr;
- this.possessive = possessive;
- }
- public String getDescr() {
- return descr;
- }
-
- public String getPossessive() {
- return possessive;
- }
- };
-
- private Integer memberId;
- private String memberName;
- private String firstName;
- private String lastName;
- private String email;
- private MemberImage picture;
-
- private String tagline;
- private Gender gender;
- private Date dob;
- private String location;
- private Date memberSince;
-
- private Set<MemberImage> images;
- private Set<MemberFriend> friends;
-
- @Id @GeneratedValue
- public Integer getMemberId()
- {
- return memberId;
- }
-
- public void setMemberId(Integer memberId)
- {
- this.memberId = memberId;
- }
-
- @NotNull
- @Min(3)
- @Max(40)
- @Pattern(regexp="[a-zA-Z]?[a-zA-Z0-9_]+",
- message="Member name must start with a letter, and only contain letters, numbers or underscores")
- public String getMemberName()
- {
- return memberName;
- }
-
- public void setMemberName(String memberName)
- {
- this.memberName = memberName;
- }
-
- @NotNull
- @Min(3)
- @Max(40)
- @Pattern(regexp="[a-zA-Z]+", message="First name must only contain letters")
- public String getFirstName()
- {
- return firstName;
- }
-
- public void setFirstName(String firstName)
- {
- this.firstName = firstName;
- }
-
- @NotNull
- @Min(3)
- @Max(40)
- @Pattern(regexp="[a-zA-Z]+", message="Last name must only contain letters")
- public String getLastName()
- {
- return lastName;
- }
-
- public void setLastName(String lastName)
- {
- this.lastName = lastName;
- }
-
- @NotNull
- public String getEmail()
- {
- return email;
- }
-
- public void setEmail(String email)
- {
- this.email = email;
- }
-
- @OneToOne(fetch = FetchType.LAZY)
- @JoinColumn(name = "PICTURE_ID")
- public MemberImage getPicture()
- {
- return picture;
- }
-
- public void setPicture(MemberImage picture)
- {
- this.picture = picture;
- }
-
- @NotNull
- public Date getDob()
- {
- return dob;
- }
-
- public void setDob(Date dob)
- {
- this.dob = dob;
- }
-
- @NotNull
- public Gender getGender()
- {
- return gender;
- }
-
- public void setGender(Gender gender)
- {
- this.gender = gender;
- }
-
- public String getLocation()
- {
- return location;
- }
-
- public void setLocation(String location)
- {
- this.location = location;
- }
-
- @NotNull
- public Date getMemberSince()
- {
- return memberSince;
- }
-
- public void setMemberSince(Date memberSince)
- {
- this.memberSince = memberSince;
- }
-
- public String getTagline()
- {
- return tagline;
- }
-
- public void setTagline(String tagline)
- {
- this.tagline = tagline;
- }
-
- @OneToMany(mappedBy = "member", fetch = FetchType.LAZY)
- public Set<MemberImage> getImages()
- {
- return images;
- }
-
- public void setImages(Set<MemberImage> images)
- {
- this.images = images;
- }
-
- @OneToMany(mappedBy = "member")
- public Set<MemberFriend> getFriends()
- {
- return friends;
- }
-
- public void setFriends(Set<MemberFriend> friends)
- {
- this.friends = friends;
- }
-
- @Transient
- public boolean isFriend(Member member)
- {
- for (MemberFriend f : friends)
- {
- if (f.getFriend().getMemberId().equals(member.getMemberId())) return true;
- }
-
- return false;
- }
-
- @Transient
- public String getAge()
- {
- Calendar birthday = new GregorianCalendar();
- birthday.setTime(dob);
- int by = birthday.get(Calendar.YEAR);
- int bm = birthday.get(Calendar.MONTH);
- int bd = birthday.get(Calendar.DATE);
-
- Calendar now = new GregorianCalendar();
- now.setTimeInMillis(System.currentTimeMillis());
- int ny = now.get(Calendar.YEAR);
- int nm = now.get(Calendar.MONTH);
- int nd = now.get(Calendar.DATE);
-
- int age = ny - by + (nm > bm || (nm == bm && nd >= bd) ? 0 : -1);
- return String.format("%d years old", age);
- }
-}
Deleted: examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/MemberAccount.java
===================================================================
--- examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/MemberAccount.java 2009-05-08 07:46:31 UTC (rev 10839)
+++ examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/MemberAccount.java 2009-05-08 09:35:27 UTC (rev 10840)
@@ -1,120 +0,0 @@
-package org.jboss.seam.example.seamspace;
-
-import java.io.Serializable;
-import java.util.Set;
-
-import javax.persistence.Entity;
-import javax.persistence.GeneratedValue;
-import javax.persistence.Id;
-import javax.persistence.JoinColumn;
-import javax.persistence.JoinTable;
-import javax.persistence.ManyToMany;
-import javax.persistence.OneToOne;
-import javax.persistence.Table;
-import javax.persistence.UniqueConstraint;
-import javax.validation.constraints.NotNull;
-
-import org.jboss.seam.security.annotations.management.PasswordSalt;
-import org.jboss.seam.security.annotations.management.UserEnabled;
-import org.jboss.seam.security.annotations.management.UserPassword;
-import org.jboss.seam.security.annotations.management.UserPrincipal;
-import org.jboss.seam.security.annotations.management.UserRoles;
-
-@Entity
-@Table(uniqueConstraints = @UniqueConstraint(columnNames = "username"))
-public class MemberAccount implements Serializable
-{
- private static final long serialVersionUID = 6368734442192368866L;
-
- private Integer accountId;
- private String username;
- private String passwordHash;
- private String passwordSalt;
- private boolean enabled;
-
- private Set<MemberRole> roles;
- private Member member;
-
- @Id @GeneratedValue
- public Integer getAccountId()
- {
- return accountId;
- }
-
- public void setAccountId(Integer accountId)
- {
- this.accountId = accountId;
- }
-
- @NotNull @UserPrincipal
- public String getUsername()
- {
- return username;
- }
-
- public void setUsername(String username)
- {
- this.username = username;
- }
-
- @UserPassword
- public String getPasswordHash()
- {
- return passwordHash;
- }
-
- public void setPasswordHash(String passwordHash)
- {
- this.passwordHash = passwordHash;
- }
-
- @PasswordSalt
- public String getPasswordSalt()
- {
- return passwordSalt;
- }
-
- public void setPasswordSalt(String passwordSalt)
- {
- this.passwordSalt = passwordSalt;
- }
-
- @UserEnabled
- public boolean isEnabled()
- {
- return enabled;
- }
-
- public void setEnabled(boolean enabled)
- {
- this.enabled = enabled;
- }
-
- @UserRoles
- @ManyToMany(targetEntity = MemberRole.class)
- @JoinTable(name = "AccountMembership",
- joinColumns = @JoinColumn(name = "AccountId"),
- inverseJoinColumns = @JoinColumn(name = "MemberOf")
- )
- public Set<MemberRole> getRoles()
- {
- return roles;
- }
-
- public void setRoles(Set<MemberRole> roles)
- {
- this.roles = roles;
- }
-
- @OneToOne
- @JoinColumn(name = "MEMBER_ID")
- public Member getMember()
- {
- return member;
- }
-
- public void setMember(Member member)
- {
- this.member = member;
- }
-}
Deleted: examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/MemberBlog.java
===================================================================
--- examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/MemberBlog.java 2009-05-08 07:46:31 UTC (rev 10839)
+++ examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/MemberBlog.java 2009-05-08 09:35:27 UTC (rev 10840)
@@ -1,130 +0,0 @@
-package org.jboss.seam.example.seamspace;
-
-import java.io.Serializable;
-import java.text.SimpleDateFormat;
-import java.util.Collections;
-import java.util.Comparator;
-import java.util.Date;
-import java.util.List;
-
-import javax.persistence.Entity;
-import javax.persistence.GeneratedValue;
-import javax.persistence.Id;
-import javax.persistence.JoinColumn;
-import javax.persistence.ManyToOne;
-import javax.persistence.OneToMany;
-import javax.persistence.PrePersist;
-import javax.persistence.Transient;
-
-@Entity
-public class MemberBlog implements Serializable
-{
- private static final long serialVersionUID = 7824113911888715595L;
-
- private static SimpleDateFormat df = new SimpleDateFormat("EEEE, MMMM d, yyyy - hh:mm a");
-
- private Integer blogId;
- private Member member;
- private Date entryDate;
- private String title;
- private String text;
-
- private List<BlogComment> comments;
-
- /**
- * This is an example of a security restriction. Any attempts to persist a
- * new memberBlog instance requires the user to pass a permission check. In
- * this case, because the method is annotated with <code>@PrePersist</code>
- * the required permission is memberBlog:insert
- */
- @PrePersist // @Restrict
- public void prePersist() {}
-
- @Id @GeneratedValue
- public Integer getBlogId()
- {
- return blogId;
- }
-
- public void setBlogId(Integer blogId)
- {
- this.blogId = blogId;
- }
-
- public Date getEntryDate()
- {
- return entryDate;
- }
-
- public void setEntryDate(Date entryDate)
- {
- this.entryDate = entryDate;
- }
-
- @Transient
- public String getFormattedEntryDate()
- {
- return df.format(entryDate);
- }
-
- @ManyToOne
- @JoinColumn(name = "MEMBER_ID")
- public Member getMember()
- {
- return member;
- }
-
- public void setMember(Member member)
- {
- this.member = member;
- }
-
- public String getText()
- {
- return text;
- }
-
- public void setText(String text)
- {
- this.text = text;
- }
-
- public String getTitle()
- {
- return title;
- }
-
- public void setTitle(String title)
- {
- this.title = title;
- }
-
- @OneToMany(mappedBy = "blog")
- public List<BlogComment> getComments()
- {
- return comments;
- }
-
- public void setComments(List<BlogComment> comments)
- {
- this.comments = comments;
- }
-
- @Transient
- public List<BlogComment> getSortedComments()
- {
- Collections.sort(comments, new Comparator<BlogComment>() {
- public int compare(BlogComment o1, BlogComment o2) {
- return (int) (o1.getCommentDate().getTime() - o2.getCommentDate().getTime());
- }
- });
-
- return comments;
- }
-
- @Transient
- public int getCommentCount()
- {
- return comments.size();
- }
-}
Deleted: examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/MemberFriend.java
===================================================================
--- examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/MemberFriend.java 2009-05-08 07:46:31 UTC (rev 10839)
+++ examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/MemberFriend.java 2009-05-08 09:35:27 UTC (rev 10840)
@@ -1,89 +0,0 @@
-package org.jboss.seam.example.seamspace;
-
-import java.io.Serializable;
-
-import javax.persistence.Entity;
-import javax.persistence.GeneratedValue;
-import javax.persistence.Id;
-import javax.persistence.JoinColumn;
-import javax.persistence.ManyToOne;
-
-@Entity
-public class MemberFriend implements Serializable
-{
- private static final long serialVersionUID = -167586088947004386L;
-
- private Integer id;
- private Member member;
- private Member friend;
-
- private String introduction;
- private String response;
-
- private boolean authorized;
-
- @Id @GeneratedValue
- public Integer getId()
- {
- return id;
- }
-
- public void setId(Integer id)
- {
- this.id = id;
- }
-
- public boolean isAuthorized()
- {
- return authorized;
- }
-
- public void setAuthorized(boolean authorized)
- {
- this.authorized = authorized;
- }
-
- @ManyToOne
- @JoinColumn(name = "FRIEND_ID")
- public Member getFriend()
- {
- return friend;
- }
-
- public void setFriend(Member friend)
- {
- this.friend = friend;
- }
-
- @ManyToOne
- @JoinColumn(name = "MEMBER_ID")
- public Member getMember()
- {
- return member;
- }
-
- public void setMember(Member member)
- {
- this.member = member;
- }
-
- public String getIntroduction()
- {
- return introduction;
- }
-
- public void setIntroduction(String introduction)
- {
- this.introduction = introduction;
- }
-
- public String getResponse()
- {
- return response;
- }
-
- public void setResponse(String response)
- {
- this.response = response;
- }
-}
Deleted: examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/MemberImage.java
===================================================================
--- examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/MemberImage.java 2009-05-08 07:46:31 UTC (rev 10839)
+++ examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/MemberImage.java 2009-05-08 09:35:27 UTC (rev 10840)
@@ -1,84 +0,0 @@
-package org.jboss.seam.example.seamspace;
-
-import java.io.Serializable;
-
-import javax.persistence.Entity;
-import javax.persistence.GeneratedValue;
-import javax.persistence.Id;
-import javax.persistence.JoinColumn;
-import javax.persistence.Lob;
-import javax.persistence.ManyToOne;
-
-import org.jboss.seam.security.annotations.permission.Permission;
-import org.jboss.seam.security.annotations.permission.Permissions;
-
-@Permissions({
- @Permission(action = "view"),
- @Permission(action = "comment")
-})
-@Entity
-public class MemberImage implements Serializable
-{
- private static final long serialVersionUID = -8088455267213832920L;
-
- private Integer imageId;
- private Member member;
- private byte[] data;
- private String contentType;
- private String caption;
-
- @Id @GeneratedValue
- public Integer getImageId()
- {
- return imageId;
- }
-
- public void setImageId(Integer imageId)
- {
- this.imageId = imageId;
- }
-
- @ManyToOne
- @JoinColumn(name = "MEMBER_ID")
- public Member getMember()
- {
- return member;
- }
-
- public void setMember(Member member)
- {
- this.member = member;
- }
-
- public String getContentType()
- {
- return contentType;
- }
-
- public void setContentType(String contentType)
- {
- this.contentType = contentType;
- }
-
- public String getCaption()
- {
- return caption;
- }
-
- public void setCaption(String caption)
- {
- this.caption = caption;
- }
-
- @Lob
- public byte[] getData()
- {
- return data;
- }
-
- public void setData(byte[] data)
- {
- this.data = data;
- }
-
-}
Deleted: examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/MemberRole.java
===================================================================
--- examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/MemberRole.java 2009-05-08 07:46:31 UTC (rev 10839)
+++ examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/MemberRole.java 2009-05-08 09:35:27 UTC (rev 10840)
@@ -1,76 +0,0 @@
-package org.jboss.seam.example.seamspace;
-
-import java.io.Serializable;
-import java.util.Set;
-
-import javax.persistence.Entity;
-import javax.persistence.GeneratedValue;
-import javax.persistence.Id;
-import javax.persistence.JoinColumn;
-import javax.persistence.JoinTable;
-import javax.persistence.ManyToMany;
-
-import org.jboss.seam.security.annotations.management.RoleConditional;
-import org.jboss.seam.security.annotations.management.RoleGroups;
-import org.jboss.seam.security.annotations.management.RoleName;
-
-@Entity
-public class MemberRole implements Serializable
-{
- private static final long serialVersionUID = 9177366120789064801L;
-
- private Integer roleId;
- private String name;
- private boolean conditional;
-
- private Set<MemberRole> groups;
-
- @Id @GeneratedValue
- public Integer getRoleId()
- {
- return roleId;
- }
-
- public void setRoleId(Integer roleId)
- {
- this.roleId = roleId;
- }
-
- @RoleName
- public String getName()
- {
- return name;
- }
-
- public void setName(String name)
- {
- this.name = name;
- }
-
- @RoleGroups
- @ManyToMany(targetEntity = MemberRole.class)
- @JoinTable(name = "RoleGroup",
- joinColumns = @JoinColumn(name = "RoleId"),
- inverseJoinColumns = @JoinColumn(name = "MemberOf")
- )
- public Set<MemberRole> getGroups()
- {
- return groups;
- }
-
- public void setGroups(Set<MemberRole> groups)
- {
- this.groups = groups;
- }
-
- @RoleConditional
- public boolean isConditional()
- {
- return conditional;
- }
-
- public void setConditional(boolean conditional)
- {
- this.conditional = conditional;
- }
-}
Modified: examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/PictureAction.java
===================================================================
--- examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/PictureAction.java 2009-05-08 07:46:31 UTC (rev 10839)
+++ examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/PictureAction.java 2009-05-08 09:35:27 UTC (rev 10840)
@@ -1,20 +1,28 @@
package org.jboss.seam.example.seamspace;
+import java.io.Serializable;
+
import javax.annotation.Named;
import javax.context.Conversation;
import javax.context.ConversationScoped;
import javax.inject.Current;
import javax.persistence.EntityManager;
+import javax.persistence.PersistenceContext;
+import org.jboss.seam.example.seamspace.model.Member;
+import org.jboss.seam.example.seamspace.model.MemberImage;
+
@Named
@ConversationScoped
-public class PictureAction
+public class PictureAction implements Serializable
{
+ private static final long serialVersionUID = -5253276146026546823L;
+
private MemberImage memberImage;
- @Current Member authenticatedMember;
+ /*@Current*/ Member authenticatedMember;
- @Current EntityManager entityManager;
+ @PersistenceContext EntityManager entityManager;
@Current Conversation conversation;
public void uploadPicture()
Modified: examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/PictureSearch.java
===================================================================
--- examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/PictureSearch.java 2009-05-08 07:46:31 UTC (rev 10839)
+++ examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/PictureSearch.java 2009-05-08 09:35:27 UTC (rev 10840)
@@ -7,6 +7,9 @@
import javax.context.RequestScoped;
import javax.inject.Current;
import javax.persistence.EntityManager;
+import javax.persistence.PersistenceContext;
+
+import org.jboss.seam.example.seamspace.model.MemberImage;
import org.jboss.seam.security.Identity;
import org.jboss.seam.security.Secure;
import org.jboss.seam.security.annotations.Delete;
@@ -20,7 +23,7 @@
private String memberName;
- @Current EntityManager entityManager;
+ @PersistenceContext EntityManager entityManager;
@Current Identity identity;
private List<MemberImage> memberImages;
Modified: examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/ProfileAction.java
===================================================================
--- examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/ProfileAction.java 2009-05-08 07:46:31 UTC (rev 10839)
+++ examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/ProfileAction.java 2009-05-08 09:35:27 UTC (rev 10840)
@@ -1,28 +1,35 @@
package org.jboss.seam.example.seamspace;
+import java.io.Serializable;
import java.util.List;
import java.util.Random;
import javax.annotation.Named;
import javax.context.RequestScoped;
-import javax.ejb.Remove;
import javax.inject.Current;
import javax.inject.Produces;
import javax.persistence.EntityManager;
import javax.persistence.NoResultException;
+import javax.persistence.PersistenceContext;
+import org.jboss.seam.example.seamspace.model.FriendComment;
+import org.jboss.seam.example.seamspace.model.Member;
+import org.jboss.seam.example.seamspace.model.MemberBlog;
+
@Named("profile")
@RequestScoped
-public class ProfileAction
+public class ProfileAction implements Serializable
{
+ private static final long serialVersionUID = 8352519286505497298L;
+
//@RequestParameter
private String name;
- @Current Member selectedMember;
+ /*@Current */ Member selectedMember;
- @Current Member authenticatedMember;
+ /*@Current */ Member authenticatedMember;
- @Current EntityManager entityManager;
+ @PersistenceContext EntityManager entityManager;
//@Factory("selectedMember")
public void display()
Modified: examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/RegisterAction.java
===================================================================
--- examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/RegisterAction.java 2009-05-08 07:46:31 UTC (rev 10839)
+++ examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/RegisterAction.java 2009-05-08 09:35:27 UTC (rev 10840)
@@ -1,30 +1,35 @@
package org.jboss.seam.example.seamspace;
+import java.io.Serializable;
import java.util.Date;
import javax.annotation.Named;
import javax.context.Conversation;
import javax.context.ConversationScoped;
-import javax.ejb.Remove;
import javax.event.Observes;
import javax.inject.Current;
import javax.persistence.EntityManager;
+import javax.persistence.PersistenceContext;
+import org.jboss.seam.example.seamspace.model.Member;
+import org.jboss.seam.example.seamspace.model.MemberAccount;
+import org.jboss.seam.example.seamspace.model.MemberImage;
import org.jboss.seam.international.StatusMessages;
import org.jboss.seam.security.Credentials;
import org.jboss.seam.security.Identity;
import org.jboss.seam.security.RunAsOperation;
import org.jboss.seam.security.events.UserCreatedEvent;
import org.jboss.seam.security.management.IdentityManager;
-import org.jboss.seam.security.management.JpaIdentityStore;
@Named("register")
@ConversationScoped
-public class RegisterAction
+public class RegisterAction implements Serializable
{
+ private static final long serialVersionUID = 2943705513616351130L;
+
private Member member;
- @Current EntityManager entityManager;
+ @PersistenceContext EntityManager entityManager;
@Current Identity identity;
@Current Credentials credentials;
Added: examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/model/AccountPermission.java
===================================================================
--- examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/model/AccountPermission.java (rev 0)
+++ examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/model/AccountPermission.java 2009-05-08 09:35:27 UTC (rev 10840)
@@ -0,0 +1,81 @@
+package org.jboss.seam.example.seamspace.model;
+
+import java.io.Serializable;
+
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+
+import org.jboss.seam.security.annotations.permission.PermissionAction;
+import org.jboss.seam.security.annotations.permission.PermissionDiscriminator;
+import org.jboss.seam.security.annotations.permission.PermissionRole;
+import org.jboss.seam.security.annotations.permission.PermissionTarget;
+import org.jboss.seam.security.annotations.permission.PermissionUser;
+
+@Entity
+public class AccountPermission implements Serializable
+{
+ private static final long serialVersionUID = -5628863031792429938L;
+
+ private Integer permissionId;
+ private String recipient;
+ private String target;
+ private String action;
+ private String discriminator;
+
+ @Id @GeneratedValue
+ public Integer getPermissionId()
+ {
+ return permissionId;
+ }
+
+ public void setPermissionId(Integer permissionId)
+ {
+ this.permissionId = permissionId;
+ }
+
+ @PermissionUser
+ @PermissionRole
+ public String getRecipient()
+ {
+ return recipient;
+ }
+
+ public void setRecipient(String recipient)
+ {
+ this.recipient = recipient;
+ }
+
+ @PermissionTarget
+ public String getTarget()
+ {
+ return target;
+ }
+
+ public void setTarget(String target)
+ {
+ this.target = target;
+ }
+
+ @PermissionAction
+ public String getAction()
+ {
+ return action;
+ }
+
+ public void setAction(String action)
+ {
+ this.action = action;
+ }
+
+ @PermissionDiscriminator
+ public String getDiscriminator()
+ {
+ return discriminator;
+ }
+
+ public void setDiscriminator(String discriminator)
+ {
+ this.discriminator = discriminator;
+ }
+}
Added: examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/model/BlogComment.java
===================================================================
--- examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/model/BlogComment.java (rev 0)
+++ examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/model/BlogComment.java 2009-05-08 09:35:27 UTC (rev 10840)
@@ -0,0 +1,91 @@
+package org.jboss.seam.example.seamspace.model;
+
+import java.io.Serializable;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+import javax.persistence.JoinColumn;
+import javax.persistence.ManyToOne;
+import javax.persistence.Transient;
+import javax.validation.constraints.NotNull;
+
+@Entity
+public class BlogComment implements Serializable
+{
+ private static final long serialVersionUID = 5495139096911872039L;
+
+ private static SimpleDateFormat df = new SimpleDateFormat("EEEE, MMMM d, yyyy 'at' hh:mm a");
+
+ private Integer commentId;
+ private MemberBlog blog;
+ private Member commentor;
+ private Date commentDate;
+ private String comment;
+
+ @Id @GeneratedValue
+ public Integer getCommentId()
+ {
+ return commentId;
+ }
+
+ public void setCommentId(Integer commentId)
+ {
+ this.commentId = commentId;
+ }
+
+ @ManyToOne
+ @JoinColumn(name = "BLOG_ID")
+ public MemberBlog getBlog()
+ {
+ return blog;
+ }
+
+ public void setBlog(MemberBlog blog)
+ {
+ this.blog = blog;
+ }
+
+ @NotNull
+ public String getComment()
+ {
+ return comment;
+ }
+ public void setComment(String comment)
+ {
+ this.comment = comment;
+ }
+
+ @NotNull
+ public Date getCommentDate()
+ {
+ return commentDate;
+ }
+
+ public void setCommentDate(Date commentDate)
+ {
+ this.commentDate = commentDate;
+ }
+
+ @Transient
+ public String getFormattedCommentDate()
+ {
+ return df.format(commentDate);
+ }
+
+ @ManyToOne
+ @JoinColumn(name = "COMMENTOR_ID")
+ public Member getCommentor()
+ {
+ return commentor;
+ }
+
+ public void setCommentor(Member commentor)
+ {
+ this.commentor = commentor;
+ }
+
+
+}
Added: examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/model/FriendComment.java
===================================================================
--- examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/model/FriendComment.java (rev 0)
+++ examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/model/FriendComment.java 2009-05-08 09:35:27 UTC (rev 10840)
@@ -0,0 +1,88 @@
+package org.jboss.seam.example.seamspace.model;
+
+import java.io.Serializable;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+import javax.persistence.JoinColumn;
+import javax.persistence.ManyToOne;
+import javax.persistence.Transient;
+
+@Entity
+public class FriendComment implements Serializable
+{
+ private static final long serialVersionUID = -288494386341008371L;
+
+ private static SimpleDateFormat df = new SimpleDateFormat("d MMMM yyyy hh:mm a");
+
+ private Integer id;
+ private Member member;
+ private Member friend;
+ private Date commentDate;
+ private String comment;
+
+ @Id @GeneratedValue
+ public Integer getId()
+ {
+ return id;
+ }
+
+ public void setId(Integer id)
+ {
+ this.id = id;
+ }
+
+ public String getComment()
+ {
+ return comment;
+ }
+
+ public void setComment(String comment)
+ {
+ this.comment = comment;
+ }
+
+ public Date getCommentDate()
+ {
+ return commentDate;
+ }
+
+ public void setCommentDate(Date commentDate)
+ {
+ this.commentDate = commentDate;
+ }
+
+ @Transient
+ public String getFormattedCommentDate()
+ {
+ return df.format(commentDate);
+ }
+
+ @ManyToOne
+ @JoinColumn(name = "FRIEND_ID")
+ public Member getFriend()
+ {
+ return friend;
+ }
+
+ public void setFriend(Member friend)
+ {
+ this.friend = friend;
+ }
+
+ @ManyToOne
+ @JoinColumn(name = "MEMBER_ID")
+ public Member getMember()
+ {
+ return member;
+ }
+
+ public void setMember(Member member)
+ {
+ this.member = member;
+ }
+
+}
Added: examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/model/Member.java
===================================================================
--- examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/model/Member.java (rev 0)
+++ examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/model/Member.java 2009-05-08 09:35:27 UTC (rev 10840)
@@ -0,0 +1,252 @@
+package org.jboss.seam.example.seamspace.model;
+
+import java.io.Serializable;
+import java.util.Calendar;
+import java.util.Date;
+import java.util.GregorianCalendar;
+import java.util.Set;
+
+import javax.persistence.Entity;
+import javax.persistence.FetchType;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+import javax.persistence.JoinColumn;
+import javax.persistence.OneToMany;
+import javax.persistence.OneToOne;
+import javax.persistence.Table;
+import javax.persistence.Transient;
+import javax.persistence.UniqueConstraint;
+import javax.validation.constraints.NotNull;
+import javax.validation.constraints.Min;
+import javax.validation.constraints.Max;
+import javax.validation.constraints.Pattern;
+
+/**
+ * A member account
+ *
+ * @author Shane Bryzak
+ */
+@Entity
+@Table(uniqueConstraints = @UniqueConstraint(columnNames = "membername"))
+public class Member implements Serializable
+{
+ private static final long serialVersionUID = 5179242727836683375L;
+
+ public enum Gender {
+ male("Male", "his"),
+ female("Female", "her");
+
+ private String descr;
+ private String possessive;
+
+ Gender(String descr, String possessive) {
+ this.descr = descr;
+ this.possessive = possessive;
+ }
+ public String getDescr() {
+ return descr;
+ }
+
+ public String getPossessive() {
+ return possessive;
+ }
+ };
+
+ private Integer memberId;
+ private String memberName;
+ private String firstName;
+ private String lastName;
+ private String email;
+ private MemberImage picture;
+
+ private String tagline;
+ private Gender gender;
+ private Date dob;
+ private String location;
+ private Date memberSince;
+
+ private Set<MemberImage> images;
+ private Set<MemberFriend> friends;
+
+ @Id @GeneratedValue
+ public Integer getMemberId()
+ {
+ return memberId;
+ }
+
+ public void setMemberId(Integer memberId)
+ {
+ this.memberId = memberId;
+ }
+
+ @NotNull
+ @Min(3)
+ @Max(40)
+ @Pattern(regexp="[a-zA-Z]?[a-zA-Z0-9_]+",
+ message="Member name must start with a letter, and only contain letters, numbers or underscores")
+ public String getMemberName()
+ {
+ return memberName;
+ }
+
+ public void setMemberName(String memberName)
+ {
+ this.memberName = memberName;
+ }
+
+ @NotNull
+ @Min(3)
+ @Max(40)
+ @Pattern(regexp="[a-zA-Z]+", message="First name must only contain letters")
+ public String getFirstName()
+ {
+ return firstName;
+ }
+
+ public void setFirstName(String firstName)
+ {
+ this.firstName = firstName;
+ }
+
+ @NotNull
+ @Min(3)
+ @Max(40)
+ @Pattern(regexp="[a-zA-Z]+", message="Last name must only contain letters")
+ public String getLastName()
+ {
+ return lastName;
+ }
+
+ public void setLastName(String lastName)
+ {
+ this.lastName = lastName;
+ }
+
+ @NotNull
+ public String getEmail()
+ {
+ return email;
+ }
+
+ public void setEmail(String email)
+ {
+ this.email = email;
+ }
+
+ @OneToOne(fetch = FetchType.LAZY)
+ @JoinColumn(name = "PICTURE_ID")
+ public MemberImage getPicture()
+ {
+ return picture;
+ }
+
+ public void setPicture(MemberImage picture)
+ {
+ this.picture = picture;
+ }
+
+ @NotNull
+ public Date getDob()
+ {
+ return dob;
+ }
+
+ public void setDob(Date dob)
+ {
+ this.dob = dob;
+ }
+
+ @NotNull
+ public Gender getGender()
+ {
+ return gender;
+ }
+
+ public void setGender(Gender gender)
+ {
+ this.gender = gender;
+ }
+
+ public String getLocation()
+ {
+ return location;
+ }
+
+ public void setLocation(String location)
+ {
+ this.location = location;
+ }
+
+ @NotNull
+ public Date getMemberSince()
+ {
+ return memberSince;
+ }
+
+ public void setMemberSince(Date memberSince)
+ {
+ this.memberSince = memberSince;
+ }
+
+ public String getTagline()
+ {
+ return tagline;
+ }
+
+ public void setTagline(String tagline)
+ {
+ this.tagline = tagline;
+ }
+
+ @OneToMany(mappedBy = "member", fetch = FetchType.LAZY)
+ public Set<MemberImage> getImages()
+ {
+ return images;
+ }
+
+ public void setImages(Set<MemberImage> images)
+ {
+ this.images = images;
+ }
+
+ @OneToMany(mappedBy = "member")
+ public Set<MemberFriend> getFriends()
+ {
+ return friends;
+ }
+
+ public void setFriends(Set<MemberFriend> friends)
+ {
+ this.friends = friends;
+ }
+
+ @Transient
+ public boolean isFriend(Member member)
+ {
+ for (MemberFriend f : friends)
+ {
+ if (f.getFriend().getMemberId().equals(member.getMemberId())) return true;
+ }
+
+ return false;
+ }
+
+ @Transient
+ public String getAge()
+ {
+ Calendar birthday = new GregorianCalendar();
+ birthday.setTime(dob);
+ int by = birthday.get(Calendar.YEAR);
+ int bm = birthday.get(Calendar.MONTH);
+ int bd = birthday.get(Calendar.DATE);
+
+ Calendar now = new GregorianCalendar();
+ now.setTimeInMillis(System.currentTimeMillis());
+ int ny = now.get(Calendar.YEAR);
+ int nm = now.get(Calendar.MONTH);
+ int nd = now.get(Calendar.DATE);
+
+ int age = ny - by + (nm > bm || (nm == bm && nd >= bd) ? 0 : -1);
+ return String.format("%d years old", age);
+ }
+}
Added: examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/model/MemberAccount.java
===================================================================
--- examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/model/MemberAccount.java (rev 0)
+++ examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/model/MemberAccount.java 2009-05-08 09:35:27 UTC (rev 10840)
@@ -0,0 +1,120 @@
+package org.jboss.seam.example.seamspace.model;
+
+import java.io.Serializable;
+import java.util.Set;
+
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+import javax.persistence.JoinColumn;
+import javax.persistence.JoinTable;
+import javax.persistence.ManyToMany;
+import javax.persistence.OneToOne;
+import javax.persistence.Table;
+import javax.persistence.UniqueConstraint;
+import javax.validation.constraints.NotNull;
+
+import org.jboss.seam.security.annotations.management.PasswordSalt;
+import org.jboss.seam.security.annotations.management.UserEnabled;
+import org.jboss.seam.security.annotations.management.UserPassword;
+import org.jboss.seam.security.annotations.management.UserPrincipal;
+import org.jboss.seam.security.annotations.management.UserRoles;
+
+@Entity
+@Table(uniqueConstraints = @UniqueConstraint(columnNames = "username"))
+public class MemberAccount implements Serializable
+{
+ private static final long serialVersionUID = 6368734442192368866L;
+
+ private Integer accountId;
+ private String username;
+ private String passwordHash;
+ private String passwordSalt;
+ private boolean enabled;
+
+ private Set<MemberRole> roles;
+ private Member member;
+
+ @Id @GeneratedValue
+ public Integer getAccountId()
+ {
+ return accountId;
+ }
+
+ public void setAccountId(Integer accountId)
+ {
+ this.accountId = accountId;
+ }
+
+ @NotNull @UserPrincipal
+ public String getUsername()
+ {
+ return username;
+ }
+
+ public void setUsername(String username)
+ {
+ this.username = username;
+ }
+
+ @UserPassword
+ public String getPasswordHash()
+ {
+ return passwordHash;
+ }
+
+ public void setPasswordHash(String passwordHash)
+ {
+ this.passwordHash = passwordHash;
+ }
+
+ @PasswordSalt
+ public String getPasswordSalt()
+ {
+ return passwordSalt;
+ }
+
+ public void setPasswordSalt(String passwordSalt)
+ {
+ this.passwordSalt = passwordSalt;
+ }
+
+ @UserEnabled
+ public boolean isEnabled()
+ {
+ return enabled;
+ }
+
+ public void setEnabled(boolean enabled)
+ {
+ this.enabled = enabled;
+ }
+
+ @UserRoles
+ @ManyToMany(targetEntity = MemberRole.class)
+ @JoinTable(name = "AccountMembership",
+ joinColumns = @JoinColumn(name = "AccountId"),
+ inverseJoinColumns = @JoinColumn(name = "MemberOf")
+ )
+ public Set<MemberRole> getRoles()
+ {
+ return roles;
+ }
+
+ public void setRoles(Set<MemberRole> roles)
+ {
+ this.roles = roles;
+ }
+
+ @OneToOne
+ @JoinColumn(name = "MEMBER_ID")
+ public Member getMember()
+ {
+ return member;
+ }
+
+ public void setMember(Member member)
+ {
+ this.member = member;
+ }
+}
Added: examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/model/MemberBlog.java
===================================================================
--- examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/model/MemberBlog.java (rev 0)
+++ examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/model/MemberBlog.java 2009-05-08 09:35:27 UTC (rev 10840)
@@ -0,0 +1,130 @@
+package org.jboss.seam.example.seamspace.model;
+
+import java.io.Serializable;
+import java.text.SimpleDateFormat;
+import java.util.Collections;
+import java.util.Comparator;
+import java.util.Date;
+import java.util.List;
+
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+import javax.persistence.JoinColumn;
+import javax.persistence.ManyToOne;
+import javax.persistence.OneToMany;
+import javax.persistence.PrePersist;
+import javax.persistence.Transient;
+
+@Entity
+public class MemberBlog implements Serializable
+{
+ private static final long serialVersionUID = 7824113911888715595L;
+
+ private static SimpleDateFormat df = new SimpleDateFormat("EEEE, MMMM d, yyyy - hh:mm a");
+
+ private Integer blogId;
+ private Member member;
+ private Date entryDate;
+ private String title;
+ private String text;
+
+ private List<BlogComment> comments;
+
+ /**
+ * This is an example of a security restriction. Any attempts to persist a
+ * new memberBlog instance requires the user to pass a permission check. In
+ * this case, because the method is annotated with <code>@PrePersist</code>
+ * the required permission is memberBlog:insert
+ */
+ @PrePersist // @Restrict
+ public void prePersist() {}
+
+ @Id @GeneratedValue
+ public Integer getBlogId()
+ {
+ return blogId;
+ }
+
+ public void setBlogId(Integer blogId)
+ {
+ this.blogId = blogId;
+ }
+
+ public Date getEntryDate()
+ {
+ return entryDate;
+ }
+
+ public void setEntryDate(Date entryDate)
+ {
+ this.entryDate = entryDate;
+ }
+
+ @Transient
+ public String getFormattedEntryDate()
+ {
+ return df.format(entryDate);
+ }
+
+ @ManyToOne
+ @JoinColumn(name = "MEMBER_ID")
+ public Member getMember()
+ {
+ return member;
+ }
+
+ public void setMember(Member member)
+ {
+ this.member = member;
+ }
+
+ public String getText()
+ {
+ return text;
+ }
+
+ public void setText(String text)
+ {
+ this.text = text;
+ }
+
+ public String getTitle()
+ {
+ return title;
+ }
+
+ public void setTitle(String title)
+ {
+ this.title = title;
+ }
+
+ @OneToMany(mappedBy = "blog")
+ public List<BlogComment> getComments()
+ {
+ return comments;
+ }
+
+ public void setComments(List<BlogComment> comments)
+ {
+ this.comments = comments;
+ }
+
+ @Transient
+ public List<BlogComment> getSortedComments()
+ {
+ Collections.sort(comments, new Comparator<BlogComment>() {
+ public int compare(BlogComment o1, BlogComment o2) {
+ return (int) (o1.getCommentDate().getTime() - o2.getCommentDate().getTime());
+ }
+ });
+
+ return comments;
+ }
+
+ @Transient
+ public int getCommentCount()
+ {
+ return comments.size();
+ }
+}
Added: examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/model/MemberFriend.java
===================================================================
--- examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/model/MemberFriend.java (rev 0)
+++ examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/model/MemberFriend.java 2009-05-08 09:35:27 UTC (rev 10840)
@@ -0,0 +1,89 @@
+package org.jboss.seam.example.seamspace.model;
+
+import java.io.Serializable;
+
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+import javax.persistence.JoinColumn;
+import javax.persistence.ManyToOne;
+
+@Entity
+public class MemberFriend implements Serializable
+{
+ private static final long serialVersionUID = -167586088947004386L;
+
+ private Integer id;
+ private Member member;
+ private Member friend;
+
+ private String introduction;
+ private String response;
+
+ private boolean authorized;
+
+ @Id @GeneratedValue
+ public Integer getId()
+ {
+ return id;
+ }
+
+ public void setId(Integer id)
+ {
+ this.id = id;
+ }
+
+ public boolean isAuthorized()
+ {
+ return authorized;
+ }
+
+ public void setAuthorized(boolean authorized)
+ {
+ this.authorized = authorized;
+ }
+
+ @ManyToOne
+ @JoinColumn(name = "FRIEND_ID")
+ public Member getFriend()
+ {
+ return friend;
+ }
+
+ public void setFriend(Member friend)
+ {
+ this.friend = friend;
+ }
+
+ @ManyToOne
+ @JoinColumn(name = "MEMBER_ID")
+ public Member getMember()
+ {
+ return member;
+ }
+
+ public void setMember(Member member)
+ {
+ this.member = member;
+ }
+
+ public String getIntroduction()
+ {
+ return introduction;
+ }
+
+ public void setIntroduction(String introduction)
+ {
+ this.introduction = introduction;
+ }
+
+ public String getResponse()
+ {
+ return response;
+ }
+
+ public void setResponse(String response)
+ {
+ this.response = response;
+ }
+}
Added: examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/model/MemberImage.java
===================================================================
--- examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/model/MemberImage.java (rev 0)
+++ examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/model/MemberImage.java 2009-05-08 09:35:27 UTC (rev 10840)
@@ -0,0 +1,84 @@
+package org.jboss.seam.example.seamspace.model;
+
+import java.io.Serializable;
+
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+import javax.persistence.JoinColumn;
+import javax.persistence.Lob;
+import javax.persistence.ManyToOne;
+
+import org.jboss.seam.security.annotations.permission.Permission;
+import org.jboss.seam.security.annotations.permission.Permissions;
+
+@Permissions({
+ @Permission(action = "view"),
+ @Permission(action = "comment")
+})
+@Entity
+public class MemberImage implements Serializable
+{
+ private static final long serialVersionUID = -8088455267213832920L;
+
+ private Integer imageId;
+ private Member member;
+ private byte[] data;
+ private String contentType;
+ private String caption;
+
+ @Id @GeneratedValue
+ public Integer getImageId()
+ {
+ return imageId;
+ }
+
+ public void setImageId(Integer imageId)
+ {
+ this.imageId = imageId;
+ }
+
+ @ManyToOne
+ @JoinColumn(name = "MEMBER_ID")
+ public Member getMember()
+ {
+ return member;
+ }
+
+ public void setMember(Member member)
+ {
+ this.member = member;
+ }
+
+ public String getContentType()
+ {
+ return contentType;
+ }
+
+ public void setContentType(String contentType)
+ {
+ this.contentType = contentType;
+ }
+
+ public String getCaption()
+ {
+ return caption;
+ }
+
+ public void setCaption(String caption)
+ {
+ this.caption = caption;
+ }
+
+ @Lob
+ public byte[] getData()
+ {
+ return data;
+ }
+
+ public void setData(byte[] data)
+ {
+ this.data = data;
+ }
+
+}
Added: examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/model/MemberRole.java
===================================================================
--- examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/model/MemberRole.java (rev 0)
+++ examples/trunk/seamspace/ejb-jar/src/main/java/org/jboss/seam/example/seamspace/model/MemberRole.java 2009-05-08 09:35:27 UTC (rev 10840)
@@ -0,0 +1,76 @@
+package org.jboss.seam.example.seamspace.model;
+
+import java.io.Serializable;
+import java.util.Set;
+
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+import javax.persistence.JoinColumn;
+import javax.persistence.JoinTable;
+import javax.persistence.ManyToMany;
+
+import org.jboss.seam.security.annotations.management.RoleConditional;
+import org.jboss.seam.security.annotations.management.RoleGroups;
+import org.jboss.seam.security.annotations.management.RoleName;
+
+@Entity
+public class MemberRole implements Serializable
+{
+ private static final long serialVersionUID = 9177366120789064801L;
+
+ private Integer roleId;
+ private String name;
+ private boolean conditional;
+
+ private Set<MemberRole> groups;
+
+ @Id @GeneratedValue
+ public Integer getRoleId()
+ {
+ return roleId;
+ }
+
+ public void setRoleId(Integer roleId)
+ {
+ this.roleId = roleId;
+ }
+
+ @RoleName
+ public String getName()
+ {
+ return name;
+ }
+
+ public void setName(String name)
+ {
+ this.name = name;
+ }
+
+ @RoleGroups
+ @ManyToMany(targetEntity = MemberRole.class)
+ @JoinTable(name = "RoleGroup",
+ joinColumns = @JoinColumn(name = "RoleId"),
+ inverseJoinColumns = @JoinColumn(name = "MemberOf")
+ )
+ public Set<MemberRole> getGroups()
+ {
+ return groups;
+ }
+
+ public void setGroups(Set<MemberRole> groups)
+ {
+ this.groups = groups;
+ }
+
+ @RoleConditional
+ public boolean isConditional()
+ {
+ return conditional;
+ }
+
+ public void setConditional(boolean conditional)
+ {
+ this.conditional = conditional;
+ }
+}
15 years, 7 months
Seam SVN: r10839 - in branches/community/Seam_2_1: src/resteasy/org/jboss/seam/resteasy and 1 other directory.
by seam-commits@lists.jboss.org
Author: christian.bauer(a)jboss.com
Date: 2009-05-08 03:46:31 -0400 (Fri, 08 May 2009)
New Revision: 10839
Modified:
branches/community/Seam_2_1/doc/Seam_Reference_Guide/en-US/Webservices.xml
branches/community/Seam_2_1/src/resteasy/org/jboss/seam/resteasy/Application.java
branches/community/Seam_2_1/src/resteasy/org/jboss/seam/resteasy/ResteasyResourceAdapter.java
branches/community/Seam_2_1/src/resteasy/org/jboss/seam/resteasy/resteasy-2.1.xsd
Log:
JBSEAM-3264, prevent anemic sessions on REST requests
Modified: branches/community/Seam_2_1/doc/Seam_Reference_Guide/en-US/Webservices.xml
===================================================================
--- branches/community/Seam_2_1/doc/Seam_Reference_Guide/en-US/Webservices.xml 2009-05-07 18:04:50 UTC (rev 10838)
+++ branches/community/Seam_2_1/doc/Seam_Reference_Guide/en-US/Webservices.xml 2009-05-08 07:46:31 UTC (rev 10839)
@@ -232,7 +232,7 @@
<para>
First, get the RESTEasy libraries and the <literal>jaxrs-api.jar</literal>, deploy them with the
other libraries of your application. Also deploy the integration library,
- <literal>jboss-seam-resteasy.jar</literal>
+ <literal>jboss-seam-resteasy.jar</literal>.
</para>
<para>
@@ -350,6 +350,12 @@
</resteasy:application>]]></programlisting>
<para>
+ The <literal>use-built-in-providers</literal> switch enables (default) or disables the RESTEasy built-in
+ providers. We recommend you leave them enabled, as they provide plaintext, JSON, and JAXB marshalling
+ out of the box.
+ </para>
+
+ <para>
RESTEasy supports plain EJBs (EJBs that are not Seam components) as resources. Instead of configuring the
JNDI names in a non-portable fashion in <literal>web.xml</literal> (see RESTEasy documentation), you can
simply list the EJB implementation classes, not the business interfaces, in <literal>components.xml</literal>
@@ -362,12 +368,6 @@
</para>
<para>
- The <literal>use-built-in-providers</literal> switch enables (default) or disables the RESTEasy built-in
- providers. We recommend you leave them enabled, as they provide plaintext, JSON, and JAXB marshalling
- out of the box.
- </para>
-
- <para>
Finally, you can configure media type and language URI extensions:
</para>
@@ -426,27 +426,54 @@
<para>
An instance of <literal>customerResource</literal> is now handled by Seam when a request hits the
server. This is a Seam JavaBean component that is <literal>EVENT</literal>-scoped, hence no different
- than the default JAX-RS lifecycle. However, you get full Seam injection support and all other Seam
- components and contexts are available to you. Currently also supported are <literal>SESSION</literal>,
- <literal>APPLICATION</literal>, and <literal>STATELESS</literal> resource components. Remember that any
- HTTP request has to transmit a valid session identifier (cookie, URI path parameter) for correct handling
- of the server-side session context.
+ than the default JAX-RS lifecycle. You get full Seam injection support and all other Seam
+ components and contexts are available to you. Currently also supported are <literal>APPLICATION</literal>
+ and <literal>STATELESS</literal> resource Seam components. These scopes allow you to create an effectively
+ stateless Seam middle-tier HTTP request-processing application.
</para>
<para>
- Conversation-scoped resource components and mapping of conversations is currently not supported but will
- be available soon.
+ You can use <literal>SESSION</literal>-scoped Seam components. By default, the session will however be shortened
+ to a single request. In other words, when an HTTP request is being processed by the RESTEasy integration code,
+ an HTTP session will be created so that Seam components can utilize that context. When the request has
+ been processed, Seam will look at the session and decide if the session was created only to serve that
+ single request (no session identifier has been provided with the request, or no session existed for the request).
+ If the session has been created only to serve this request, the session will be destroyed after the request!
+ Assuming that your Seam application only uses event, application, or stateless components, this procedure
+ prevents exhaustion of available HTTP sessions on the server. The RESTEasy integration with Seam assumes
+ by default that sessions are not used, hence anemic sessions would add up as every REST request would start
+ a session that will only be removed when timed out.
</para>
<para>
- Provider classes can also be Seam components, they must be <literal>APPLICATION</literal>-scoped
- or <literal>STATELESS</literal>.
+ If your RESTful Seam application has to preserve session state across REST HTTP requests, disable this
+ behavior in your configuration file:
</para>
+ <programlisting role="XML"><![CDATA[<resteasy:application destroy-session-after-request="false"/>]]></programlisting>
+
<para>
- Resources and providers can be EJBs or JavaBeans, like any other Seam component.
+ Every RESTful HTTP request will now create a new session that will only be removed by timeout or explicit
+ invalidation in your code through <literal>Session.instance().invalidate()</literal>.
+ It is your responsibility to pass a valid session identifier along with your HTTP requests, if you want
+ to utilize the session context across requests.
</para>
+ <para>
+ <literal>CONVERSATION</literal>-scoped resource components and mapping of conversations to temporary HTTP
+ resources and paths is planned but currently not supported.
+ </para>
+
+ <para>
+ EJB Seam components are currently <emphasis>NOT</emphasis> supported! However, as explained above, you
+ can map plain stateless EJBs (with no Seam lifecycle or injection) as REST resources.
+ </para>
+
+ <para>
+ Provider classes can also be Seam components, currently only <literal>APPLICATION</literal>-scoped
+ provider components are supported.
+ </para>
+
</sect2>
<sect2>
@@ -463,8 +490,8 @@
<para>
Exception handling within Seam requires that the Seam filter is executed for your HTTP request. Ensure that
you do filter <emphasis>all</emphasis> requests in your <literal>web.xml</literal>, not - as
- some Seam examples might show - a request URI pattern that doesn't cover your REST requests. The following
- example intercepts <emphasis>all</emphasis> HTTP requests and enables Seam exception handling:
+ some Seam examples might show - a request URI pattern that doesn't cover your REST request paths.
+ The following example intercepts <emphasis>all</emphasis> HTTP requests and enables Seam exception handling:
</para>
<programlisting role="XML"><![CDATA[<filter>
@@ -485,7 +512,7 @@
<programlisting role="XML"><![CDATA[<exception class="java.lang.UnsupportedOperationException">
<http-error error-code="501">
- <message>The request operation is not supported</message>
+ <message>The requested operation is not supported</message>
</http-error>
</exception>]]></programlisting>
@@ -495,7 +522,7 @@
<programlisting role="XML"><![CDATA[<exception class="my.CustomException" log="false">
<http-error error-code="503">
- <message>The service is currently not available: #{org.jboss.seam.handledException.message}</message>
+ <message>Service not available: #{org.jboss.seam.handledException.message}</message>
</http-error>
</exception>]]></programlisting>
Modified: branches/community/Seam_2_1/src/resteasy/org/jboss/seam/resteasy/Application.java
===================================================================
--- branches/community/Seam_2_1/src/resteasy/org/jboss/seam/resteasy/Application.java 2009-05-07 18:04:50 UTC (rev 10838)
+++ branches/community/Seam_2_1/src/resteasy/org/jboss/seam/resteasy/Application.java 2009-05-08 07:46:31 UTC (rev 10839)
@@ -35,6 +35,7 @@
private boolean scanProviders = true;
private boolean scanResources = true;
private boolean useBuiltinProviders = true;
+ private boolean destroySessionAfterRequest = true;
private String resourcePathPrefix = "/rest";
private boolean stripSeamResourcePath = true;
@@ -183,6 +184,16 @@
this.useBuiltinProviders = useBuiltinProviders;
}
+ public boolean isDestroySessionAfterRequest()
+ {
+ return destroySessionAfterRequest;
+ }
+
+ public void setDestroySessionAfterRequest(boolean destroySessionAfterRequest)
+ {
+ this.destroySessionAfterRequest = destroySessionAfterRequest;
+ }
+
public String getResourcePathPrefix()
{
return resourcePathPrefix;
Modified: branches/community/Seam_2_1/src/resteasy/org/jboss/seam/resteasy/ResteasyResourceAdapter.java
===================================================================
--- branches/community/Seam_2_1/src/resteasy/org/jboss/seam/resteasy/ResteasyResourceAdapter.java 2009-05-07 18:04:50 UTC (rev 10838)
+++ branches/community/Seam_2_1/src/resteasy/org/jboss/seam/resteasy/ResteasyResourceAdapter.java 2009-05-08 07:46:31 UTC (rev 10839)
@@ -10,6 +10,7 @@
import org.jboss.seam.log.Log;
import org.jboss.seam.servlet.ContextualHttpServletRequest;
import org.jboss.seam.web.AbstractResource;
+import org.jboss.seam.web.Session;
import org.jboss.resteasy.core.SynchronousDispatcher;
import org.jboss.resteasy.core.ThreadLocalResteasyProviderFactory;
import org.jboss.resteasy.plugins.server.servlet.HttpServletInputMessage;
@@ -65,8 +66,7 @@
@Override
public String getResourcePath()
{
- Application appConfig = (Application) Component.getInstance(Application.class);
- return appConfig.getResourcePathPrefix();
+ return application.getResourcePathPrefix();
}
@Override
@@ -111,6 +111,15 @@
);
dispatcher.getDispatcher().invoke(in, theResponse);
+
+ // Prevent anemic sessions clog up the server
+ if (request.getSession().isNew()
+ && application.isDestroySessionAfterRequest()
+ && !Session.instance().isInvalid())
+ {
+ log.debug("Destroying HttpSession after REST request");
+ Session.instance().invalidate();
+ }
}
}.run();
Modified: branches/community/Seam_2_1/src/resteasy/org/jboss/seam/resteasy/resteasy-2.1.xsd
===================================================================
--- branches/community/Seam_2_1/src/resteasy/org/jboss/seam/resteasy/resteasy-2.1.xsd 2009-05-07 18:04:50 UTC (rev 10838)
+++ branches/community/Seam_2_1/src/resteasy/org/jboss/seam/resteasy/resteasy-2.1.xsd 2009-05-08 07:46:31 UTC (rev 10839)
@@ -107,6 +107,14 @@
</xs:documentation>
</xs:annotation>
</xs:attribute>
+ <xs:attribute name="destroy-session-after-request" type="components:boolean">
+ <xs:annotation>
+ <xs:documentation>
+ Destroy the HttpSession after a REST request if it was created for that request (it is a
+ new session), defaults to 'true'.
+ </xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
<xs:attribute name="resource-path-prefix" type="components:string">
<xs:annotation>
<xs:documentation>
15 years, 7 months
Seam SVN: r10838 - tags/JBoss_Seam_2_1_2_CR2.
by seam-commits@lists.jboss.org
Author: norman.richards(a)jboss.com
Date: 2009-05-07 14:04:50 -0400 (Thu, 07 May 2009)
New Revision: 10838
Modified:
tags/JBoss_Seam_2_1_2_CR2/build.xml
Log:
add guice example
Modified: tags/JBoss_Seam_2_1_2_CR2/build.xml
===================================================================
--- tags/JBoss_Seam_2_1_2_CR2/build.xml 2009-05-07 18:03:24 UTC (rev 10837)
+++ tags/JBoss_Seam_2_1_2_CR2/build.xml 2009-05-07 18:04:50 UTC (rev 10838)
@@ -667,6 +667,7 @@
<include name="todo/**/*" />
<include name="numberguess/**/*" />
<include name="groovybooking/**/*" />
+ <include name="guice/**/*" />
<include name="seamdiscs/**/*" />
<include name="quartz/**/*" />
<include name="wiki/**/*" />
15 years, 7 months
Seam SVN: r10837 - branches/community/Seam_2_1.
by seam-commits@lists.jboss.org
Author: norman.richards(a)jboss.com
Date: 2009-05-07 14:03:24 -0400 (Thu, 07 May 2009)
New Revision: 10837
Modified:
branches/community/Seam_2_1/build.xml
Log:
add guice example
Modified: branches/community/Seam_2_1/build.xml
===================================================================
--- branches/community/Seam_2_1/build.xml 2009-05-07 14:01:42 UTC (rev 10836)
+++ branches/community/Seam_2_1/build.xml 2009-05-07 18:03:24 UTC (rev 10837)
@@ -667,6 +667,7 @@
<include name="todo/**/*" />
<include name="numberguess/**/*" />
<include name="groovybooking/**/*" />
+ <include name="guice/**/*" />
<include name="seamdiscs/**/*" />
<include name="quartz/**/*" />
<include name="wiki/**/*" />
15 years, 7 months
Seam SVN: r10834 - modules/trunk/drools/src/main/java/org/jboss/seam/drools.
by seam-commits@lists.jboss.org
Author: shane.bryzak(a)jboss.com
Date: 2009-05-07 06:03:57 -0400 (Thu, 07 May 2009)
New Revision: 10834
Modified:
modules/trunk/drools/src/main/java/org/jboss/seam/drools/DroolsActionHandler.java
modules/trunk/drools/src/main/java/org/jboss/seam/drools/DroolsAssignmentHandler.java
modules/trunk/drools/src/main/java/org/jboss/seam/drools/DroolsDecisionHandler.java
modules/trunk/drools/src/main/java/org/jboss/seam/drools/DroolsHandler.java
Log:
disabled jbpm support in drools
Modified: modules/trunk/drools/src/main/java/org/jboss/seam/drools/DroolsActionHandler.java
===================================================================
--- modules/trunk/drools/src/main/java/org/jboss/seam/drools/DroolsActionHandler.java 2009-05-07 09:38:50 UTC (rev 10833)
+++ modules/trunk/drools/src/main/java/org/jboss/seam/drools/DroolsActionHandler.java 2009-05-07 10:03:57 UTC (rev 10834)
@@ -2,8 +2,8 @@
import java.util.List;
-import org.jbpm.graph.def.ActionHandler;
-import org.jbpm.graph.exe.ExecutionContext;
+//import org.jbpm.graph.def.ActionHandler;
+//import org.jbpm.graph.exe.ExecutionContext;
/**
* A jBPM ActionHandler that delegates to a Drools WorkingMemory
@@ -13,18 +13,18 @@
* @author Gavin King
*
*/
-public class DroolsActionHandler extends DroolsHandler implements ActionHandler
+public class DroolsActionHandler extends DroolsHandler //implements ActionHandler
{
private static final long serialVersionUID = 7752070876220597913L;
public List<String> assertObjects;
public String workingMemoryName;
- public void execute(ExecutionContext executionContext) throws Exception
- {
+ //public void execute(ExecutionContext executionContext) throws Exception
+ //{
// Disabled BPM support for now
//getWorkingMemory(workingMemoryName, assertObjects, executionContext).fireAllRules();
- }
+ //}
}
\ No newline at end of file
Modified: modules/trunk/drools/src/main/java/org/jboss/seam/drools/DroolsAssignmentHandler.java
===================================================================
--- modules/trunk/drools/src/main/java/org/jboss/seam/drools/DroolsAssignmentHandler.java 2009-05-07 09:38:50 UTC (rev 10833)
+++ modules/trunk/drools/src/main/java/org/jboss/seam/drools/DroolsAssignmentHandler.java 2009-05-07 10:03:57 UTC (rev 10834)
@@ -3,9 +3,9 @@
import java.util.List;
import org.drools.WorkingMemory;
-import org.jbpm.graph.exe.ExecutionContext;
-import org.jbpm.taskmgmt.def.AssignmentHandler;
-import org.jbpm.taskmgmt.exe.Assignable;
+//import org.jbpm.graph.exe.ExecutionContext;
+//import org.jbpm.taskmgmt.def.AssignmentHandler;
+//import org.jbpm.taskmgmt.exe.Assignable;
/**
* A jBPM AssignmentHandler that delegates to a Drools WorkingMemory
@@ -15,21 +15,21 @@
* @author Gavin King
*
*/
-public class DroolsAssignmentHandler extends DroolsHandler implements AssignmentHandler
+public class DroolsAssignmentHandler extends DroolsHandler //implements AssignmentHandler
{
private static final long serialVersionUID = -7114640047036854546L;
public String workingMemoryName;
public List<String> assertObjects;
- public void assign(Assignable assignable, ExecutionContext executionContext) throws Exception
- {
+ //public void assign(Assignable assignable, ExecutionContext executionContext) throws Exception
+ //{
// Disabled BPM support for now
/*
WorkingMemory workingMemory = getWorkingMemory(workingMemoryName, assertObjects, executionContext);
workingMemory.setGlobal( "assignable", assignable );
workingMemory.fireAllRules();
*/
- }
+ //}
}
\ No newline at end of file
Modified: modules/trunk/drools/src/main/java/org/jboss/seam/drools/DroolsDecisionHandler.java
===================================================================
--- modules/trunk/drools/src/main/java/org/jboss/seam/drools/DroolsDecisionHandler.java 2009-05-07 09:38:50 UTC (rev 10833)
+++ modules/trunk/drools/src/main/java/org/jboss/seam/drools/DroolsDecisionHandler.java 2009-05-07 10:03:57 UTC (rev 10834)
@@ -3,8 +3,8 @@
import java.util.List;
import org.drools.WorkingMemory;
-import org.jbpm.graph.exe.ExecutionContext;
-import org.jbpm.graph.node.DecisionHandler;
+//import org.jbpm.graph.exe.ExecutionContext;
+//import org.jbpm.graph.node.DecisionHandler;
/**
* A jBPM DecisionHandler that delegates to a Drools WorkingMemory
@@ -14,15 +14,15 @@
* @author Gavin King
*
*/
-public class DroolsDecisionHandler extends DroolsHandler implements DecisionHandler
+public class DroolsDecisionHandler extends DroolsHandler //implements DecisionHandler
{
private static final long serialVersionUID = -8900810376838166513L;
public List<String> assertObjects;
public String workingMemoryName;
- public String decide(ExecutionContext executionContext) throws Exception
- {
+ //public String decide(ExecutionContext executionContext) throws Exception
+ //{
// Disabled BPM support for now
/*
WorkingMemory workingMemory = getWorkingMemory(workingMemoryName, assertObjects, executionContext);
@@ -31,7 +31,7 @@
return ( (Decision) workingMemory.getGlobal("decision") ).getOutcome();
*/
- return null;
- }
+ // return null;
+ //}
}
\ No newline at end of file
Modified: modules/trunk/drools/src/main/java/org/jboss/seam/drools/DroolsHandler.java
===================================================================
--- modules/trunk/drools/src/main/java/org/jboss/seam/drools/DroolsHandler.java 2009-05-07 09:38:50 UTC (rev 10833)
+++ modules/trunk/drools/src/main/java/org/jboss/seam/drools/DroolsHandler.java 2009-05-07 10:03:57 UTC (rev 10834)
@@ -4,8 +4,8 @@
import org.drools.FactHandle;
import org.drools.WorkingMemory;
-import org.jbpm.graph.exe.ExecutionContext;
-import org.jbpm.jpdl.el.ELException;
+//import org.jbpm.graph.exe.ExecutionContext;
+//import org.jbpm.jpdl.el.ELException;
/**
* Common functionality for jBPM handlers for Drools.
15 years, 7 months