[webbeans-commits] Webbeans SVN: r1073 - doc/trunk/reference/zh-TW.

webbeans-commits at lists.jboss.org webbeans-commits at lists.jboss.org
Mon Jan 19 03:32:12 EST 2009


Author: tchuang
Date: 2009-01-19 03:32:12 -0500 (Mon, 19 Jan 2009)
New Revision: 1073

Modified:
   doc/trunk/reference/zh-TW/injection.po
   doc/trunk/reference/zh-TW/intro.po
   doc/trunk/reference/zh-TW/ri.po
   doc/trunk/reference/zh-TW/specialization.po
Log:
translation updated

Modified: doc/trunk/reference/zh-TW/injection.po
===================================================================
--- doc/trunk/reference/zh-TW/injection.po	2009-01-19 07:51:04 UTC (rev 1072)
+++ doc/trunk/reference/zh-TW/injection.po	2009-01-19 08:32:12 UTC (rev 1073)
@@ -8,7 +8,7 @@
 "Project-Id-Version: injection\n"
 "Report-Msgid-Bugs-To: http://bugs.kde.org\n"
 "POT-Creation-Date: 2009-01-06 11:30+0000\n"
-"PO-Revision-Date: 2009-01-15 14:59+1000\n"
+"PO-Revision-Date: 2009-01-19 16:05+1000\n"
 "Last-Translator: Terry Chuang <tchuang at redhat.com>\n"
 "Language-Team: Traditional Chinese <zh at li.org>\n"
 "MIME-Version: 1.0\n"
@@ -793,7 +793,7 @@
 "determined by the order in which they appear in <literal>web-beans.xml</"
 "literal>. In our example, <literal>@Mock</literal> appears later than "
 "<literal>@Production</literal> so it has a higher precedence."
-msgstr ""
+msgstr "這項問題的解決方式就是利用各個 deployment type 的不同<emphasis>優先權</emphasis>。Deployment type 的優先權是透過它們出現在 <literal>web-beans.xml</literal> 中的順序來決定的。在我們的範例中,<literal>@Mock</literal> 出現的順序在 <literal>@Production</literal> 之後,因此它會有較高的優先權。"
 
 #. Tag: para
 #: injection.xml:264
@@ -806,7 +806,7 @@
 "to inject. So, in our example, the Web Bean manager will inject "
 "<literal>MockPaymentProcessor</literal> when executing in our integration "
 "testing environment (which is exactly what we want)."
-msgstr ""
+msgstr "每當管理員發現了多於一個 Web Bean 可滿足由某個注入點所指定的合同(API 類型加上綁定標記)時,它會考量到 Web Bean 的相關優先權。若有一方的優先權較高,它便會選擇優先權較高的那個 Web Bean 來注入。因此,在我們的範例中,當 Web Bean 管理員執行於我們的整合測試環境中的時候(這正是我們想要的),它將會注入 <literal>MockPaymentProcessor</literal>。"
 
 #. Tag: para
 #: injection.xml:271
@@ -822,7 +822,7 @@
 "Beans to be enabled with a single line of XML. Meanwhile, a developer "
 "browsing the code can easily identify what deployment scenarios the Web Bean "
 "will be used in."
-msgstr ""
+msgstr "和現今多人使用的管理員架構相較之下,這個功能相當地有趣。各種「lightweight」的 container 都允許存在 classpath 中的 class 的條件性建置,不過要被建置的 class 必須要明確、各別地列在配置程式碼或是一些 XML 配置檔案中。Web Bean 不支援透過 XML 的 Web Bean 定義與配置,不過在一般情況下當不需要複雜的配置時,deployment type 允許一整組 Web Bean 能夠透過 XML 中的一個單獨行列來被啟用。其間,瀏覽程式碼的開發人員能夠輕易地分辨出 Web Bean 將會使用哪種建置方案(deployment scenario)。"
 
 #. Tag: title
 #: injection.xml:284
@@ -834,7 +834,7 @@
 #: injection.xml:286
 #, no-c-format
 msgid "Deployment types are useful for all kinds of things, here's some examples:"
-msgstr ""
+msgstr "Deployment type 針對於許多情況都相當便於使用,以下為一些範例:"
 
 #. Tag: para
 #: injection.xml:290
@@ -864,19 +864,19 @@
 msgid ""
 "<literal>@Standard</literal> for standard Web Beans defined by the Web Beans "
 "specification"
-msgstr ""
+msgstr "<literal>@Standard</literal> 可用於以 Web Bean 規格所定義的標準 Web Bean"
 
 #. Tag: para
 #: injection.xml:306
 #, no-c-format
 msgid "I'm sure you can think of more applications..."
-msgstr "我們相信您還能想到更多應用程式..."
+msgstr "我們相信您還能夠聯想到更多應用程式..."
 
 #. Tag: title
 #: injection.xml:313
 #, no-c-format
 msgid "Fixing unsatisfied dependencies"
-msgstr ""
+msgstr "修正相依性不足(unsatisfied dependencies)的問題"
 
 #. Tag: para
 #: injection.xml:315
@@ -886,7 +886,7 @@
 "annotations and and deployment types of all Web Beans that implement the API "
 "type of an injection point, the Web Bean manager is unable to identify "
 "exactly one Web Bean to inject."
-msgstr ""
+msgstr "就所有實做某個注入點的 API 類型的 Web Bean 綁定標記和 deployment type 來講,若 Web Bean 管理員無法辨識出正好一個需被注入的 Web Bean 為何,那麼 typesafe 解析演算法便會失敗。"
 
 #. Tag: para
 #: injection.xml:320
@@ -894,7 +894,7 @@
 msgid ""
 "It's usually easy to fix an <literal>UnsatisfiedDependencyException</"
 "literal> or <literal>AmbiguousDependencyException</literal>."
-msgstr ""
+msgstr "要修正一個 <literal>UnsatisfiedDependencyException</literal> 或 <literal>AmbiguousDependencyException</literal> 通常相當容易。"
 
 #. Tag: para
 #: injection.xml:323
@@ -904,7 +904,7 @@
 "a Web Bean which implements the API type and has the binding types of the "
 "injection point&#151;or enable the deployment type of a Web Bean that "
 "already implements the API type and has the binding types."
-msgstr ""
+msgstr "若要修正一項 <literal>UnsatisfiedDependencyException</literal>,只要提供一個實做 API 類型並且擁有注入點的綁定類型的 Web Bean 即可&#151;或是啟用一個已實做 API 類型並且擁有綁定類型的 Web Bean 的 deployment type 即可。"
 
 #. Tag: para
 #: injection.xml:328
@@ -916,7 +916,7 @@
 "Bean manager can use deployment type precedence to choose between them. An "
 "<literal>AmbiguousDependencyException</literal> can only occur if two Web "
 "Beans share a binding type and have exactly the same deployment type."
-msgstr ""
+msgstr "若要修正一項 <literal>AmbiguousDependencyException</literal>,您可加入一個綁定類型來在兩個 API 類型的實做之間進行分辨,或是更改其中一個實做的 deployment type,這樣一來 Web Bean 管理員便可透過使用 deployment type 優先權來在它們之間作選擇。<literal>AmbiguousDependencyException</literal> 只會在有兩個 Web Bean 共享一個綁定類型並擁有相同 deployment type 的情況下才會發生。"
 
 #. Tag: para
 #: injection.xml:335
@@ -938,7 +938,7 @@
 msgid ""
 "Clients of an injected Web Bean do not usually hold a direct reference to a "
 "Web Bean instance."
-msgstr ""
+msgstr "一個已注入的 Web Bean 的客戶端通常不會持有一個 Web Bean instance 的直接參照。"
 
 #. Tag: para
 #: injection.xml:346
@@ -948,7 +948,7 @@
 "reference to a Web Bean bound to the request scope. The application scoped "
 "Web Bean is shared between many different requests. However, each request "
 "should see a different instance of the request scoped Web bean!"
-msgstr ""
+msgstr "想像一個綁定至應用程式 scope 的 Web Bean 持有一個綁定至請求 scope 的 Web Bean 的直接參照。這個應用程式 scope 的 Web Bean 會在許多不同的請求之間被共享。不過,各個請求都應要看見一個不同的請求 scope Web Bean 的 instance!"
 
 #. Tag: para
 #: injection.xml:351
@@ -959,7 +959,7 @@
 "the session context is serialized to disk in order to use memory more "
 "efficiently. However, the application scoped Web Bean instance should not be "
 "serialized along with the session scoped Web Bean!"
-msgstr ""
+msgstr "現在,請想像一個綁定至 session scope 的 Web Bean 持有一個綁定至應用程式 scope 的 Web Bean 的直接參照。有時,session context 會被序列化至磁碟中以便更有效率地使用記憶體。不過,應用程式 scope 的 Web Bean instance 不該和 session scope 的 Web Bean 一起被序列化!"
 
 #. Tag: para
 #: injection.xml:357
@@ -973,7 +973,7 @@
 "client proxy also allows Web Beans bound to contexts such as the session "
 "context to be serialized to disk without recursively serializing other "
 "injected Web Beans."
-msgstr ""
+msgstr "因此,除非有個 Web Bean 擁有預設的 <literal>@Dependent</literal> scope,否則 Web Bean 管理員便必須透過一個 proxy 物件來將所有注入的參照重新指向 Web Bean。這個 <emphasis>client proxy</emphasis> 負責確保收到 method 調用的 Web Bean instance 是個和目前 context 相聯的 instance。客戶端 proxy 亦可允許在不遞迴地序列化其它已注入的 Web Bean 的情況下也能讓綁定至 context(例如 session context)的 Web Bean 被序列化至磁碟。"
 
 #. Tag: para
 #: injection.xml:365
@@ -983,13 +983,13 @@
 "cannot be proxied by the Web Bean manager. Therefore, the Web Bean manager "
 "throws an <literal>UnproxyableDependencyException</literal> if the type of "
 "an injection point cannot be proxied."
-msgstr ""
+msgstr "不巧的是,礙於 Java 語言的限制,有些 Java 類型無法被 Web Bean 管理員代理(proxied)。因此,若某個注入點的 type 無法被代理的話,Web Bean 管理員便會回傳一個 <literal>UnproxyableDependencyException</literal>。"
 
 #. Tag: para
 #: injection.xml:370
 #, no-c-format
 msgid "The following Java types cannot be proxied by the Web Bean manager:"
-msgstr ""
+msgstr "下列 Java 類型無法被 Web Bean 管理員代理:"
 
 #. Tag: para
 #: injection.xml:374
@@ -997,19 +997,19 @@
 msgid ""
 "classes which are declared <literal>final</literal> or have a "
 "<literal>final</literal> method,"
-msgstr ""
+msgstr "所有被宣告 <literal>final</literal> 或是含有一個 <literal>final</literal> method 的 class、"
 
 #. Tag: para
 #: injection.xml:378
 #, no-c-format
 msgid "classes which have no non-private constructor with no parameters, and"
-msgstr ""
+msgstr "沒有非私密 constructor 的無參數 class,以及"
 
 #. Tag: para
 #: injection.xml:381
 #, no-c-format
 msgid "arrays and primitive types."
-msgstr ""
+msgstr "陣列(array)與基本型別(primitive type)。"
 
 #. Tag: para
 #: injection.xml:385
@@ -1019,13 +1019,13 @@
 "literal>. Simply add a constructor with no parameters to the injected class, "
 "introduce an interface, or change the scope of the injected Web Bean to "
 "<literal>@Dependent</literal>."
-msgstr ""
+msgstr "要修正 <literal>UnproxyableDependencyException</literal> 通常相當容易。只要將一個無參數的 constructor 附加至注入的 class、採用一個介面,或將已注入的 Web Bean 的 scope 更改為 <literal>@Dependent</literal> 即可。"
 
 #. Tag: title
 #: injection.xml:392
 #, no-c-format
 msgid "Obtaining a Web Bean by programatic lookup"
-msgstr ""
+msgstr "透過程式性的搜尋來取得一個 Web Bean"
 
 #. Tag: para
 #: injection.xml:394
@@ -1033,7 +1033,7 @@
 msgid ""
 "The application may obtain an instance of the interface <literal>Manager</"
 "literal> by injection:"
-msgstr ""
+msgstr "應用程式可透過注入來取得 <literal>Manager</literal> 這個介面的一個 instance:"
 
 #. Tag: programlisting
 #: injection.xml:397
@@ -1066,7 +1066,7 @@
 "Binding annotations may be specified by subclassing the helper class "
 "<literal>AnnotationLiteral</literal>, since it is otherwise difficult to "
 "instantiate an annotation type in Java."
-msgstr ""
+msgstr "綁定標記能被透過建立 helper class 的 subclass <literal>AnnotationLiteral</literal> 來指定,否則在 Java 中很難例示一個標記類型。"
 
 #. Tag: programlisting
 #: injection.xml:408
@@ -1156,7 +1156,7 @@
 "for injection of Java EE resources, EJBs and JPA persistence contexts, "
 "respectively. Simple Web Beans do not support the use of "
 "<literal>@PersistenceContext(type=EXTENDED)</literal>."
-msgstr ""
+msgstr "企業級和基本的 Web Bean 皆支援使用 <literal>@Resource</literal>、<literal>@EJB</literal> 和 <literal>@PersistenceContext</literal> 來相應地注入 Java EE 資源、EJB 和 JPA 的 persistence context。基本的 Web Bean 不支援使用 <literal>@PersistenceContext(type=EXTENDED)</literal>。"
 
 #. Tag: para
 #: injection.xml:434
@@ -1164,7 +1164,7 @@
 msgid ""
 "The <literal>@PostConstruct</literal> callback always occurs after all "
 "dependencies have been injected."
-msgstr ""
+msgstr "<literal>@PostConstruct</literal> callback 一定會在所有相依性都被注入後才會發生。"
 
 #. Tag: title
 #: injection.xml:440
@@ -1180,7 +1180,7 @@
 "<literal>@Dependent</literal>&#151;that need to know something about the "
 "object or injection point into which they are injected in order to be able "
 "to do what they do. For example:"
-msgstr ""
+msgstr "有幾種特定相依物件&#151;含有 <literal>@Dependent</literal> 這個 scope 的 Web Bean&#151;需要知道有關於物件或是它們被注入的注入點相關資訊才能進行它們本應進行的工作。比方說:"
 
 #. Tag: para
 #: injection.xml:448
@@ -1188,7 +1188,7 @@
 msgid ""
 "The log category for a <literal>Logger</literal> depends upon the class of "
 "the object that owns it."
-msgstr ""
+msgstr "<literal>Logger</literal> 的 log category 取決於擁有它的物件的 class。"
 
 #. Tag: para
 #: injection.xml:452
@@ -1196,7 +1196,7 @@
 msgid ""
 "Injection of a HTTP parameter or header value depends upon what parameter or "
 "header name was specified at the injection point."
-msgstr ""
+msgstr "HTTP 參數或是 header value 的注入取決於在注入點所指定的參數或標頭名稱。"
 
 #. Tag: para
 #: injection.xml:456
@@ -1204,7 +1204,7 @@
 msgid ""
 "Injection of the result of an EL expression evaluation depends upon the "
 "expression that was specified at the injection point."
-msgstr ""
+msgstr "EL 運算式評估(expression evaluation)結果的注入取決於在注入點所指定的運算式。"
 
 #. Tag: para
 #: injection.xml:461
@@ -1213,7 +1213,7 @@
 "A Web Bean with scope <literal>@Dependent</literal> may inject an instance "
 "of <literal>InjectionPoint</literal> and access metadata relating to the "
 "injection point to which it belongs."
-msgstr ""
+msgstr "含有 <literal>@Dependent</literal> 這個 scope 的 Web Bean 能夠注入一個 <literal>InjectionPoint</literal> instance 並存取和它所屬的注入點相關的 metadata。"
 
 #. Tag: para
 #: injection.xml:465

Modified: doc/trunk/reference/zh-TW/intro.po
===================================================================
--- doc/trunk/reference/zh-TW/intro.po	2009-01-19 07:51:04 UTC (rev 1072)
+++ doc/trunk/reference/zh-TW/intro.po	2009-01-19 08:32:12 UTC (rev 1073)
@@ -7,8 +7,8 @@
 msgstr ""
 "Project-Id-Version: intro\n"
 "Report-Msgid-Bugs-To: http://bugs.kde.org\n"
-"POT-Creation-Date: 2009-01-18 16:31+0000\n"
-"PO-Revision-Date: 2009-01-16 12:50+1000\n"
+"POT-Creation-Date: 2009-01-06 11:30+0000\n"
+"PO-Revision-Date: 2009-01-19 18:17+1000\n"
 "Last-Translator: Terry Chuang <tchuang at redhat.com>\n"
 "Language-Team: Traditional Chinese <zh at li.org>\n"
 "MIME-Version: 1.0\n"
@@ -31,11 +31,7 @@
 "specification will make you jump through! The good news is that you've "
 "probably already written and used hundreds, perhaps thousands of Web Beans. "
 "You might not even remember the first Web Bean you wrote."
-msgstr ""
-"您是否已準備好開始編寫您的第一個 Web Bean 了呢?或是您針對於 Web Bean 本身的"
-"規格還是存有著一些疑問呢?不過好消息就是您從以前到現在可能早就已經編寫並使用"
-"了上百甚至是上千個 Web Bean 了。您可能根本已經不記得您所編寫的第一個 Web "
-"Bean 為何了。"
+msgstr "您是否已準備好開始編寫您的第一個 Web Bean 了呢?或是您針對於 Web Bean 本身的規格還是存有著一些疑問呢?不過好消息就是您從以前到現在可能早就已經編寫並使用了上百甚至是上千個 Web Bean 了。您可能根本已經不記得您所編寫的第一個 Web Bean 為何了。"
 
 #. Tag: title
 #: intro.xml:13
@@ -56,7 +52,7 @@
 "into other Web Beans, configuring them via the Web Beans XML configuration "
 "facility, even adding interceptors and decorators to them&#151;without "
 "touching your existing code."
-msgstr ""
+msgstr "我們能夠很明確地告訴您,在絕大部分的情況下,所有含有不接受參數的 constructor 的 java class 都是個 Web Bean。這包含了所有的 JavaBean。另外,所有 EJB 3-style 的 session bean 也都屬於 Web Bean。當然,您先前所編寫的 JavaBean 和 EJB 皆無法有效利用 Web Bean 規格所定義的新服務,不過您卻可將它們全部作為 Web Bean 來使用&#151;將它們注入其它 Web Bean 中,透過 Web Bean XML 配置功能來配置它們,甚至是加入攔截器(interceptor)與裝飾器(decorator)&#151;無須變動到您現有的程式碼。"
 
 #. Tag: para
 #: intro.xml:25
@@ -65,7 +61,7 @@
 "Suppose that we have two existing Java classes, that we've been using for "
 "years in various applications. The first class parses a string into a list "
 "of sentences:"
-msgstr ""
+msgstr "假設我們目前有兩個使用於各種應用程式中多年的 Java class。第一個 class 會將一個字串剖析入一列句子中:"
 
 #. Tag: programlisting
 #: intro.xml:29
@@ -86,7 +82,7 @@
 "The second existing class is a stateless session bean front-end for an "
 "external system that is able to translate sentences from one language to "
 "another:"
-msgstr ""
+msgstr "第二個 class 則是個外部系統的無狀態 session bean 前端,並且它可將句子由一種語言翻譯成另一種語言:"
 
 #. Tag: programlisting
 #: intro.xml:35
@@ -106,7 +102,7 @@
 #: intro.xml:37
 #, no-c-format
 msgid "Where <literal>Translator</literal> is the local interface:"
-msgstr ""
+msgstr "<literal>Translator</literal> 為本地介面:"
 
 #. Tag: programlisting
 #: intro.xml:39
@@ -128,7 +124,7 @@
 msgid ""
 "Unfortunately, we don't have a preexisting class that translates whole text "
 "documents. So let's write a Web Bean that does this job:"
-msgstr ""
+msgstr "不巧的是,我們沒有一個可翻譯整個文字文件的現有 class。所以讓我們來編寫一個能夠完成這項工作的 Web Bean 吧:"
 
 #. Tag: programlisting
 #: intro.xml:44
@@ -184,7 +180,7 @@
 msgid ""
 "We may obtain an instance of <literal>TextTranslator</literal> by injecting "
 "it into a Web Bean, Servlet or EJB:"
-msgstr ""
+msgstr "我們能夠藉由將注入一個 <literal>TextTranslator</literal> 的 instance 注入 Web Bean、Servlet 或是 EJB 中來取得這個 instance:"
 
 #. Tag: programlisting
 #: intro.xml:49
@@ -206,7 +202,7 @@
 msgid ""
 "Alternatively, we may obtain an instance by directly calling a method of the "
 "Web Bean manager:"
-msgstr ""
+msgstr "另外,我們也可藉由直接調用 Web Bean 管理員的一個 method 來取得一個 instance:"
 
 #. Tag: programlisting
 #: intro.xml:54
@@ -226,11 +222,11 @@
 "no parameters! Is it still a Web Bean? Well, a class that does not have a "
 "constructor with no parameters can still be a Web Bean if it has a "
 "constructor annotated <literal>@Initializer</literal>."
-msgstr ""
+msgstr "不過請稍等:<literal>TextTranslator</literal> 並沒有一個無參數的 constructor!這樣它還是個 Web Bean 嗎?一個沒有無參數 constructor 的 class 若有個被標記了 <literal>@Initializer</literal> 的 constructor 的話,它還是能夠是個 Web Bean。"
 
 #. Tag: para
 #: intro.xml:61
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "As you've guessed, the <literal>@Initializer</literal> annotation has "
 "something to do with dependency injection! <literal>@Initializer</literal> "
@@ -238,7 +234,7 @@
 "Bean manager to call that constructor or method when instantiating the Web "
 "Bean. The Web Bean manager will inject other Web Beans to the parameters of "
 "the constructor or method."
-msgstr "依賴注入"
+msgstr "就如您所猜測地,<literal>@Initializer</literal> 這個標記和依賴注入有關係!<literal>@Initializer</literal> 可套用至一個 Web Bean 的 constructor 或是 method 來指示 Web Bean 管理員在例示 Web Bean 時去調用該 constructor 或 method。Web Bean 管理員會將其它 Web Bean 注入至該 constructor 或 method 的參數中。"
 
 #. Tag: para
 #: intro.xml:68
@@ -252,19 +248,19 @@
 "<literal>UnsatisfiedDependencyException</literal>. If more than one "
 "implementation of <literal>Translator</literal> was available, the Web Bean "
 "manager would throw an <literal>AmbiguousDependencyException</literal>."
-msgstr ""
+msgstr "當系統初始化時,Web Bean 管理員必須驗證是否有正好一個滿足所有注入點的 Web Bean 存在。在我們的範例中,若沒有可用的 <literal>Translator</literal> 實做&#151;若 <literal>SentenceTranslator</literal> EJB 沒有被建置&#151;Web Bean 管理員便會回傳一個 <literal>UnsatisfiedDependencyException</literal>。若有超過一個可使用的 <literal>Translator</literal> 實做,那麼 Web Bean 管理員便會回傳一個 <literal>AmbiguousDependencyException</literal>。"
 
 #. Tag: title
 #: intro.xml:80
 #, no-c-format
 msgid "What is a Web Bean?"
-msgstr ""
+msgstr "Web Bean 是什麼?"
 
 #. Tag: para
 #: intro.xml:82
 #, no-c-format
 msgid "So what, <emphasis>exactly</emphasis>, is a Web Bean?"
-msgstr ""
+msgstr "所以 Web Bean <emphasis>到底</emphasis>是什麼?"
 
 #. Tag: para
 #: intro.xml:84
@@ -276,7 +272,7 @@
 "Beans are managed automatically by the Web Bean manager. Most Web Beans are "
 "<emphasis>stateful</emphasis> and <emphasis>contextual</emphasis>. The "
 "lifecycle of a Web Bean is always managed by the Web Bean manager."
-msgstr ""
+msgstr "Web Bean 是個包含了商業邏輯的應用程式 class。Web Bean 可由 Java 程式碼被直接地調用,或是它亦可透過 Unified EL 來引動。Web Bean 可存取交易性的資源。Web Bean 之間的相依性是透過 Web Bean 管理員來自動管理的。大部分的 Web Bean 都屬於 <emphasis>stateful(有狀態)</emphasis> 和 <emphasis>contextual(語意式)</emphasis> 的。Web Bean 的生命週期(lifecycle)總是透過 Web Bean 管理員來管理的。"
 
 #. Tag: para
 #: intro.xml:91
@@ -289,7 +285,7 @@
 "singleton beans), different clients of a Web Bean see the Web Bean in "
 "different states. The client-visible state depends upon which instance of "
 "the Web Bean the client has a reference to."
-msgstr ""
+msgstr "讓我們向後看,「contextual(語意式)」到底代表什麼意思?因為 Web Bean 能夠是有狀態的,而最重要的是我們有<emphasis>哪個</emphasis> bean instance。和無狀態的元件模型(例如無狀態的 session bean)或單元件模型(例如 servlet 或是單獨的 bean)不同的是,對於不同的 Web Bean 客戶端而言,它們會看見不同狀態的 Web Bean。客戶端可看見的狀態基於客戶端參照的是 Web Bean 的哪個 instance。"
 
 #. Tag: para
 #: intro.xml:98
@@ -299,24 +295,24 @@
 "emphasis> stateful session beans, the client does not control the lifecycle "
 "of the instance by explicitly creating and destroying it. Instead, the "
 "<emphasis>scope</emphasis> of the Web Bean determines:"
-msgstr ""
+msgstr "不過,就和無狀態或是單獨的模型一樣,並與有狀態的 session bean <emphasis>不同</emphasis>,客戶端無法藉由明確建立和刪除 instance 來控制 instance 的生命週期。反之,Web Bean 的 <emphasis>scope</emphasis> 可決定:"
 
 #. Tag: para
 #: intro.xml:105
 #, no-c-format
 msgid "the lifecycle of each instance of the Web Bean and"
-msgstr ""
+msgstr "Web Bean 的各個 instance 的生命週期以及"
 
 #. Tag: para
 #: intro.xml:108
 #, no-c-format
-msgid ""
-"which clients share a reference to a particular instance of the Web Bean."
-msgstr ""
+msgid "which clients share a reference to a particular instance of the Web Bean."
+msgstr "哪些客戶端共享 Web Bean 的特定 instance 的參照。"
 
 #. Tag: para
 #: intro.xml:113
 #, no-c-format
+#, fuzzy
 msgid ""
 "For a given thread in a Web Beans application, there may be an "
 "<emphasis>active context</emphasis> associated with the scope of the Web "
@@ -324,7 +320,7 @@
 "is request scoped), or it may be shared with certain other threads (for "
 "example, if the Web Bean is session scoped) or even all other threads (if it "
 "is application scoped)."
-msgstr ""
+msgstr "Web Bean 應用程式中的某個執行緒"
 
 #. Tag: para
 #: intro.xml:119
@@ -333,7 +329,7 @@
 "Clients (for example, other Web Beans) executing in the same context will "
 "see the same instance of the Web Bean. But clients in a different context "
 "will see a different instance."
-msgstr ""
+msgstr "相同 context 的客戶端(例如其它 Web Bean)將會看見相同的 Web Bean instance。不過不同 context 的客戶端則會看見不同的 instance。"
 
 #. Tag: para
 #: intro.xml:123
@@ -345,19 +341,19 @@
 "even need to know what that lifecyle is.</emphasis> Web Beans interact by "
 "passing messages, and the Web Bean implementations define the lifecycle of "
 "their own state. The Web Beans are loosely coupled because:"
-msgstr ""
+msgstr "Contextual model 的其中一個主要優點就是它允許有狀態的 Web Bean 能被視為是一項服務!客戶端不需要擔心如何管理它所使用的 Web Bean 的生命週期,<emphasis>它甚至不需要知道這個生命週期為何。</emphasis>Web Bean 會透過傳送訊息來進行互動,並且 Web Bean 的實做也能定義它們自己的狀態的生命週期。Web Bean 為鬆散耦合(loosely coupled)的,因為:"
 
 #. Tag: para
 #: intro.xml:132
 #, no-c-format
 msgid "they interact via well-defined public APIs"
-msgstr ""
+msgstr "它們透過了定義明確的公用 API 來進行互動"
 
 #. Tag: para
 #: intro.xml:135
 #, no-c-format
 msgid "their lifecycles are completely decoupled"
-msgstr ""
+msgstr "它們的生命週期已被完全地 decouple 了"
 
 #. Tag: para
 #: intro.xml:139
@@ -368,7 +364,7 @@
 "the other Web Bean implementation. In fact, Web Beans defines a "
 "sophisticated facility for overriding Web Bean implementations at deployment "
 "time, as we will see in <xref linkend=\"deploymenttypes\"/>."
-msgstr ""
+msgstr "我們能夠在不影響其它 Web Bean 實做的情況下將一個 Web Bean 取代為另一個實做相同 API 並有不同生命週期(不同 scope)的 Web Bean。事實上,Web Bean 可在建置時定義一項用來置換 Web Bean 實做的複雜功能,就如我們將在 <xref linkend=\"deploymenttypes\"/> 中所見。"
 
 #. Tag: para
 #: intro.xml:145
@@ -377,7 +373,7 @@
 "Note that not all clients of a Web Bean are Web Beans. Other objects such as "
 "Servlets or Message-Driven Beans&#151;which are by nature not injectable, "
 "contextual objects&#151;may also obtain references to Web Beans by injection."
-msgstr ""
+msgstr "請注意,並非所有 Web Bean 的客戶端都是 Web Bean。像是 Servlet 或訊息導向的 Bean 之類的其它物件&#151;無法被注入,並屬於 contextual object&#151;也能透過注入來取得 Web Bean 的參照。"
 
 #. Tag: para
 #: intro.xml:149
@@ -389,55 +385,55 @@
 #: intro.xml:153
 #, no-c-format
 msgid "A Web Bean comprises:"
-msgstr ""
+msgstr "Web Bean 包含著:"
 
 #. Tag: para
 #: intro.xml:156
 #, no-c-format
 msgid "A (nonempty) set of API types"
-msgstr ""
+msgstr "一組(非空的)API 類型(API type)"
 
 #. Tag: para
 #: intro.xml:157
 #, no-c-format
 msgid "A (nonempty) set of binding annotation types"
-msgstr ""
+msgstr "一組(非空的)綁定標記類型(binding annotation type)"
 
 #. Tag: para
 #: intro.xml:158
 #, no-c-format
 msgid "A scope"
-msgstr ""
+msgstr "一個 scope"
 
 #. Tag: para
 #: intro.xml:159
 #, no-c-format
 msgid "A deployment type"
-msgstr ""
+msgstr "一個建置類型(deployment type)"
 
 #. Tag: para
 #: intro.xml:160
 #, no-c-format
 msgid "Optionally, a Web Bean name"
-msgstr ""
+msgstr "亦可選擇性地包含著一組 Web Bean 名稱"
 
 #. Tag: para
 #: intro.xml:161
 #, no-c-format
 msgid "A set of interceptor binding types"
-msgstr ""
+msgstr "一組攔截器綁定類型(interceptor binding type)"
 
 #. Tag: para
 #: intro.xml:162
 #, no-c-format
 msgid "A Web Bean implementation"
-msgstr ""
+msgstr "一個 Web Bean 實做(Web Bean implementation)"
 
 #. Tag: para
 #: intro.xml:167
 #, no-c-format
 msgid "Let's see what some of these terms mean, to the Web Bean developer."
-msgstr ""
+msgstr "讓我們來看看這些術語對 Web Bean 開發人員來說代表什麼。"
 
 #. Tag: title
 #: intro.xml:170
@@ -447,24 +443,24 @@
 
 #. Tag: para
 #: intro.xml:172
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "Web Beans usually acquire references to other Web Beans via dependency "
 "injection. Any injected attribute specifies a \"contract\" that must be "
 "satisfied by the Web Bean to be injected. The contract is:"
-msgstr "依賴注入"
+msgstr "Web Bean 通常會透過依賴注入(dependency injection)來取得其它 Web Bean 的參照。任何被注入的屬性都會指定一個「合同(contract)」,該合同必須被 Web Bean 滿足才可被注入。這個合同為:"
 
 #. Tag: para
 #: intro.xml:177
 #, no-c-format
 msgid "an API type, together with"
-msgstr ""
+msgstr "一個 API 類型,以及"
 
 #. Tag: para
 #: intro.xml:178
 #, no-c-format
 msgid "a set of binding types."
-msgstr ""
+msgstr "一組綁定類型。"
 
 #. Tag: para
 #: intro.xml:181
@@ -475,7 +471,7 @@
 "bean-class local view). A binding type represents some client-visible "
 "semantic that is satisfied by some implementations of the API and not by "
 "others."
-msgstr ""
+msgstr "API 是個用戶定義的 class 或介面。(若 Web Bean 是個 EJB session bean 的話,那麼 API 類形便是 <literal>@Local</literal> 介面或是 bean-class 的 local view)。綁定類型代表一些客戶端可見的語意,這些語意可藉由一些 API 實做來滿足。"
 
 #. Tag: para
 #: intro.xml:186
@@ -485,7 +481,7 @@
 "themselves annotated <literal>@BindingType</literal>. For example, the "
 "following injection point has API type <literal>PaymentProcessor</literal> "
 "and binding type <literal>@CreditCard</literal>:"
-msgstr ""
+msgstr "綁定類型是透過用戶定義、本身已被標記為 <literal>@BindingType</literal> 的標記來表示的。比方說,以下注入點含有一個 <literal>PaymentProcessor</literal> API 類型以及 <literal>@CreditCard</literal> 綁定類型:"
 
 #. Tag: programlisting
 #: intro.xml:191
@@ -499,7 +495,7 @@
 msgid ""
 "If no binding type is explicitly specified at an injection point, the "
 "default binding type <literal>@Current</literal> is assumed."
-msgstr ""
+msgstr "若在注入點沒有綁定類型被明確指定的話,那麼預設的綁定類型 <literal>@Current</literal> 就會被假設。"
 
 #. Tag: para
 #: intro.xml:196
@@ -508,7 +504,7 @@
 "For each injection point, the Web Bean manager searches for a Web Bean which "
 "satisfies the contract (implements the API, and has all the binding types), "
 "and injects that Web Bean."
-msgstr ""
+msgstr "Web Bean 管理員會針對於各個注入點搜尋滿足合同(實做 API 並擁有所有綁定類型)的 Web Bean,然後將該 Web Bean 注入。"
 
 #. Tag: para
 #: intro.xml:200
@@ -517,7 +513,7 @@
 "The following Web Bean has the binding type <literal>@CreditCard</literal> "
 "and implements the API type <literal>PaymentProcessor</literal>. It could "
 "therefore be injected to the example injection point:"
-msgstr ""
+msgstr "下列 Web Bean 的綁定類型為 <literal>@CreditCard</literal> 並且實做了 <literal>PaymentProcessor</literal> 這個 API 類型。因此它可被注入至範例的注入點中:"
 
 #. Tag: programlisting
 #: intro.xml:204
@@ -538,7 +534,7 @@
 "If a Web Bean does not explicitly specify a set of binding types, it has "
 "exactly one binding type: the default binding type <literal>@Current</"
 "literal>."
-msgstr ""
+msgstr "若 Web Bean 不明確指定一組綁定類型的話,它便會只有一個綁定類型:也就是預設的綁定類型 <literal>@Current</literal>。"
 
 #. Tag: para
 #: intro.xml:209
@@ -548,13 +544,13 @@
 "algorithm</emphasis> that helps the container decide what to do if there is "
 "more than one Web Bean that satisfies a particular contract. We'll get into "
 "the details in <xref linkend=\"injection\"/>."
-msgstr ""
+msgstr "Web Bean 會定義一個複雜不過不難理解的 <emphasis>resolution algorithm(解析運算法)</emphasis>,它可在有超過一個滿足特定合同的 Web Bean 存在的情況下協助 container 決定該怎麼作。我們將在 <xref linkend=\"injection\"/> 中詳細討論。"
 
 #. Tag: title
 #: intro.xml:217
 #, no-c-format
 msgid "Deployment types"
-msgstr ""
+msgstr "建置類型(Deployment type)"
 
 #. Tag: para
 #: intro.xml:219
@@ -567,7 +563,7 @@
 "apply the annotation to Web Beans which should be deployed in that scenario. "
 "A deployment type allows a whole set of Web Beans to be conditionally "
 "deployed, with a just single line of configuration."
-msgstr ""
+msgstr "<emphasis>Deployment type</emphasis> 可讓我們透過建置方案(deployment scenario)來為我們的 Web Bean 歸類。建置類型是個表示特定建置方案的標記,例如 <literal>@Mock</literal>、<literal>@Staging</literal> 或 <literal>@AustralianTaxLaw</literal>。我們會將標記套用至應透過該方案來建置的 Web Bean 中。建置類型能透過單行的配置來允許整組 Web Bean 被條件性地建置。"
 
 #. Tag: para
 #: intro.xml:226
@@ -577,7 +573,7 @@
 "literal>, in which case no deployment type need be explicitly specified. All "
 "three Web Bean in our example have the deployment type <literal>@Production</"
 "literal>."
-msgstr ""
+msgstr "許多 Web Bean 只使用預設的建置類型 <literal>@Production</literal>,在此情況下無須明確地指定建置類型。我們範例中的所有三個 Web Bean 都擁有 <literal>@Production</literal> 這個建置類型。"
 
 #. Tag: para
 #: intro.xml:230
@@ -585,7 +581,7 @@
 msgid ""
 "In a testing environment, we might want to replace the "
 "<literal>SentenceTranslator</literal> Web Bean with a \"mock object\":"
-msgstr ""
+msgstr "在測試環境中,我們可能會希望將 <literal>SentenceTranslator</literal> 這個 Web Bean 替換為一個「mock 物件」:"
 
 #. Tag: programlisting
 #: intro.xml:233
@@ -726,8 +722,7 @@
 #. Tag: para
 #: intro.xml:284
 #, no-c-format
-msgid ""
-"It's even easier to just let the name be defaulted by the Web Bean manager:"
+msgid "It's even easier to just let the name be defaulted by the Web Bean manager:"
 msgstr ""
 
 #. Tag: programlisting
@@ -889,7 +884,8 @@
 
 #. Tag: para
 #: intro.xml:360
-#, fuzzy, no-c-format
+#, no-c-format
+#, fuzzy
 msgid ""
 "The specification says that all EJB 3-style session and singleton beans are "
 "<emphasis>enterprise</emphasis> Web Beans. Message driven beans are not Web "
@@ -1078,8 +1074,7 @@
 #. Tag: para
 #: intro.xml:437
 #, no-c-format
-msgid ""
-"The result of a producer method is injected just like any other Web Bean."
+msgid "The result of a producer method is injected just like any other Web Bean."
 msgstr ""
 
 #. Tag: programlisting
@@ -1166,3 +1161,4 @@
 "objects required to send messages to queues and topics. We'll discuss JMS "
 "endpoints in <xref linkend=\"jms\"/>."
 msgstr ""
+

Modified: doc/trunk/reference/zh-TW/ri.po
===================================================================
--- doc/trunk/reference/zh-TW/ri.po	2009-01-19 07:51:04 UTC (rev 1072)
+++ doc/trunk/reference/zh-TW/ri.po	2009-01-19 08:32:12 UTC (rev 1073)
@@ -8,7 +8,7 @@
 "Project-Id-Version: ri\n"
 "Report-Msgid-Bugs-To: http://bugs.kde.org\n"
 "POT-Creation-Date: 2009-01-18 16:31+0000\n"
-"PO-Revision-Date: 2009-01-16 12:56+1000\n"
+"PO-Revision-Date: 2009-01-19 18:21+1000\n"
 "Last-Translator: Terry Chuang <tchuang at redhat.com>\n"
 "Language-Team: Traditional Chinese <zh at li.org>\n"
 "MIME-Version: 1.0\n"
@@ -203,8 +203,7 @@
 #. Tag: para
 #: ri.xml:93
 #, no-c-format
-msgid ""
-"The build scripts for the examples offer a number of targets, these are:"
+msgid "The build scripts for the examples offer a number of targets, these are:"
 msgstr "這些範例的建置 script 提供了一些目標,它們包含了:"
 
 #. Tag: para
@@ -219,14 +218,12 @@
 msgid ""
 "<literal>ant explode</literal> - update an exploded example, without "
 "restarting the deployment"
-msgstr ""
-"<literal>ant explode</literal> - 在不重新建置的情況下更新一個已分解的範例"
+msgstr "<literal>ant explode</literal> - 在不重新建置的情況下更新一個已分解的範例"
 
 #. Tag: para
 #: ri.xml:111
 #, no-c-format
-msgid ""
-"<literal>ant deploy</literal> - deploy the example in compressed jar format"
+msgid "<literal>ant deploy</literal> - deploy the example in compressed jar format"
 msgstr "<literal>ant deploy</literal> - 以 jar 格式來建置範例"
 
 #. Tag: para
@@ -658,8 +655,7 @@
 msgid ""
 "There is also the <literal>@MaxNumber</literal> binding type, used for "
 "injecting the maximum number that can be injected:"
-msgstr ""
-"還有個用來注入可注入之最大號碼的 <literal>@MaxNumber</literal> 綁定類型:"
+msgstr "還有個用來注入可注入之最大號碼的 <literal>@MaxNumber</literal> 綁定類型:"
 
 #. Tag: programlisting
 #: ri.xml:300
@@ -1003,8 +999,7 @@
 msgid ""
 "EJB 3.1 and Jave EE 6 allow you to package EJBs in a war, which will make "
 "this structure much simpler!"
-msgstr ""
-"EJB 3.1 和 Jave EE 6 能讓您將 EJB 封裝為 war,並使得該結構變得更為簡樸!"
+msgstr "EJB 3.1 和 Jave EE 6 能讓您將 EJB 封裝為 war,並使得該結構變得更為簡樸!"
 
 #. Tag: para
 #: ri.xml:351
@@ -1227,7 +1222,7 @@
 
 #. Tag: para
 #: ri.xml:401
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "We've saved the most interesting bit to last, the code! The project has two "
 "simple beans, <literal>SentenceParser</literal> and <literal>TextTranslator</"
@@ -1236,11 +1231,8 @@
 "quite familiar with what a Web Bean looks like by now, so we'll just "
 "highlight the most interesting bits here."
 msgstr ""
-"我們將最有趣的部份保留到了最後,那就是程式碼!該專案含有兩個基本的 bean,"
-"<literal>SentenceParser</literal> 和 <literal>TextTranslator</literal>,以及"
-"兩個企業級的 bean,<literal>TanslatorControllerBean</literal> 和 "
-"<literal>SentenceTranslator</literal>。到了現在您應該已經很熟悉 Web Bean 的長"
-"相如何了,因此我們在此將只著重於其它的部份。"
+"我們將最有趣的部份保留到了最後,那就是程式碼!該專案含有兩個基本的 bean,<literal>SentenceParser</literal> 和 <literal>TextTranslator</literal>,以及兩個企業級的 bean,<literal>TranslatorControllerBean</literal> 和 "
+"<literal>SentenceTranslator</literal>。到了現在您應該已經很熟悉 Web Bean 長得如何了,因此我們在此將只著重於其它較有趣的部份。"
 
 #. Tag: para
 #: ri.xml:411
@@ -1384,3 +1376,4 @@
 msgstr ""
 "我們在所有層面都需要協助 - 錯誤修正、編寫新功能、編寫範例,以及翻譯此參照指"
 "南。"
+

Modified: doc/trunk/reference/zh-TW/specialization.po
===================================================================
--- doc/trunk/reference/zh-TW/specialization.po	2009-01-19 07:51:04 UTC (rev 1072)
+++ doc/trunk/reference/zh-TW/specialization.po	2009-01-19 08:32:12 UTC (rev 1073)
@@ -8,7 +8,7 @@
 "Project-Id-Version: specialization\n"
 "Report-Msgid-Bugs-To: http://bugs.kde.org\n"
 "POT-Creation-Date: 2009-01-18 16:31+0000\n"
-"PO-Revision-Date: 2009-01-15 12:18+1000\n"
+"PO-Revision-Date: 2009-01-19 18:30+1000\n"
 "Last-Translator: Terry Chuang <tchuang at redhat.com>\n"
 "Language-Team: Traditional Chinese <zh at li.org>\n"
 "MIME-Version: 1.0\n"
@@ -20,17 +20,17 @@
 #: specialization.xml:4
 #, no-c-format
 msgid "Specialization"
-msgstr ""
+msgstr "專門化"
 
 #. Tag: para
 #: specialization.xml:6
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "We've already seen how the Web Beans dependency injection model lets us "
 "<emphasis>override</emphasis> the implementation of an API at deployment "
 "time. For example, the following enterprise Web Bean provides an "
 "implementation of the API <literal>PaymentProcessor</literal> in production:"
-msgstr "依賴注入"
+msgstr "我們已經看過了 Web Bean 的依賴注入模型如何讓我們在建置時<emphasis>置換</emphasis>一個 API 的實做了。比方說,下列企業級的 Web Bean 在生產時提供了 <literal>PaymentProcessor</literal> 這個 API 的一個實做:"
 
 #. Tag: programlisting
 #: specialization.xml:11
@@ -54,7 +54,7 @@
 msgid ""
 "But in our staging environment, we override that implementation of "
 "<literal>PaymentProcessor</literal> with a different Web Bean:"
-msgstr ""
+msgstr "不過在我們的中繼環境(staging environment)中,我們利用了不同的 Web Bean 來置換了 <literal>PaymentProcessor</literal> 的實做:"
 
 #. Tag: programlisting
 #: specialization.xml:16
@@ -82,7 +82,7 @@
 "type <literal>@Staging</literal> would have a higher priority than the "
 "default deployment type <literal>@Production</literal>, and therefore "
 "clients with the following injection point:"
-msgstr ""
+msgstr "我們嘗試要對 <literal>StagingCreditCardPaymentProcessor</literal> 進行的就是在系統的某個特定的 deployment 中完全地替換掉 <literal>AsyncPaymentProcessor</literal>。在該 deployment 中,<literal>@Staging</literal> 這個 deployment type 將會擁有比 <literal>@Production</literal> 這個預設 deployment type 還要高的優先權,因此含有下列注入點的客戶端:"
 
 #. Tag: programlisting
 #: specialization.xml:24
@@ -96,13 +96,13 @@
 msgid ""
 "Would receive an instance of <literal>StagingCreditCardPaymentProcessor</"
 "literal>."
-msgstr ""
+msgstr "將會收到 <literal>StagingCreditCardPaymentProcessor</literal> 的一個 instance。"
 
 #. Tag: para
 #: specialization.xml:28
 #, no-c-format
 msgid "Unfortunately, there are several traps we can easily fall into:"
-msgstr ""
+msgstr "不過我們有幾點需要小心:"
 
 #. Tag: para
 #: specialization.xml:32
@@ -287,8 +287,7 @@
 #. Tag: para
 #: specialization.xml:124
 #, no-c-format
-msgid ""
-"there is no other enabled Web Bean that also specializes the superclass."
+msgid "there is no other enabled Web Bean that also specializes the superclass."
 msgstr ""
 
 #. Tag: para
@@ -307,3 +306,4 @@
 "emphasis> be called in any deployment of the system where the Web Bean "
 "annotated <literal>@Specializes</literal> is deployed and enabled."
 msgstr ""
+




More information about the weld-commits mailing list