# Language ru-RU translations for Seam_Reference_Guide package.
# Automatically generated, 2008.
#
msgid ""
msgstr ""
"Project-Id-Version: Seam_Reference_Guide \n"
"Report-Msgid-Bugs-To: http://bugs.kde.org\n"
"POT-Creation-Date: 2009-06-11 07:43+0000\n"
"PO-Revision-Date: 2008-10-14 11:39+0000\n"
"Last-Translator: Automatically generated\n"
"Language-Team: none\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"

#. Tag: title
#: Wicket.xml:6
#, no-c-format
msgid "Writing your presentation layer using Apache Wicket"
msgstr ""

#. Tag: para
#: Wicket.xml:8
#, no-c-format
msgid ""
"Seam supports Wicket as an alternative presentation layer to JSF. Take a "
"look at the <code>wicket</code> example in Seam which shows the Booking "
"Example ported to Wicket."
msgstr ""

#. Tag: para
#: Wicket.xml:15
#, no-c-format
msgid ""
"Wicket support is new to Seam, so some features which are available in JSF "
"are not yet available when you use Wicket (e.g. pageflow). You'll also "
"notice that the documentation is very JSF-centric and needs reorganization "
"to reflect the first class support for Wicket."
msgstr ""

#. Tag: title
#: Wicket.xml:25
#, no-c-format
msgid "Adding Seam to your wicket application"
msgstr ""

#. Tag: para
#: Wicket.xml:27
#, no-c-format
msgid ""
"The features added to your Wicket application can be split into two "
"categories: bijection and orchestration; these are discussed in detail below."
msgstr ""

#. Tag: para
#: Wicket.xml:33
#, no-c-format
msgid ""
"Extensive use of inner classes is common when building Wicket applications, "
"with the component tree being built in the constructor. Seam fully supports "
"the use of annotation based control in inner classes and constructors "
"(unlike regular Seam components)."
msgstr ""

#. Tag: para
#: Wicket.xml:40
#, no-c-format
msgid ""
"Annotations are processed <emphasis>after</emphasis> any call to a "
"superclass. This mean's that any injected attributes cannot be passed as an "
"argument in a call to <code>this()</code> or <code>super()</code>."
msgstr ""

#. Tag: para
#: Wicket.xml:48
#, no-c-format
msgid "We are working to improve this."
msgstr ""

#. Tag: para
#: Wicket.xml:53
#, no-c-format
msgid ""
"When a method is called in an inner class, bijection occurs for any class "
"which encloses it. This allows you to place your bijected variables in the "
"outer class, and refer to them in any inner class."
msgstr ""

#. Tag: title
#: Wicket.xml:60
#, no-c-format
msgid "Bijection"
msgstr ""

#. Tag: para
#: Wicket.xml:62
#, no-c-format
msgid ""
"A Seam enabled Wicket application has full access to the all the standard "
"Seam contexts (<code>EVENT</code>, <code>CONVERSATION</code>, <code>SESSION</"
"code>, <code>APPLICATION</code> and <code>BUSINESS_PROCESS</code>)."
msgstr ""

#. Tag: para
#: Wicket.xml:69
#, no-c-format
msgid ""
"To access Seam component's from Wicket, you just need to inject it using "
"<code>@In</code>:"
msgstr ""

#. Tag: programlisting
#: Wicket.xml:74
#, no-c-format
msgid ""
"<![CDATA[@In(create=true)\n"
"private HotelBooking hotelBooking;]]>"
msgstr ""

#. Tag: para
#: Wicket.xml:77
#, no-c-format
msgid ""
"As your Wicket class isn't a full Seam component, there is no need to "
"annotate it <code>@Name</code>."
msgstr ""

#. Tag: para
#: Wicket.xml:83
#, no-c-format
msgid ""
"You can also outject an object into the Seam contexts from a Wicket "
"component:"
msgstr ""

#. Tag: programlisting
#: Wicket.xml:88
#, no-c-format
msgid ""
"<![CDATA[@Out(scope=ScopeType.EVENT, required=false)\n"
"private String verify;]]>"
msgstr ""

#. Tag: para
#: Wicket.xml:90
#, no-c-format
msgid "TODO Make this more use case driven"
msgstr ""

#. Tag: title
#: Wicket.xml:97
#, no-c-format
msgid "Orchestration"
msgstr ""

#. Tag: para
#: Wicket.xml:99
#, no-c-format
msgid ""
"You can secure a Wicket component by using the <code>@Restrict</code> "
"annotation. This can be placed on the outer component or any inner "
"components. If <code>@Restrict</code> is specified, the component will "
"automatically be restricted to logged in users. You can optionally use an EL "
"expression in the <code>value</code> attribute to specify a restriction to "
"be applied. For more refer to the <xref linkend=\"security\"/>."
msgstr ""

#. Tag: para
#: Wicket.xml:109 Wicket.xml:136 Wicket.xml:295
#, no-c-format
msgid "For example:"
msgstr ""

#. Tag: programlisting
#: Wicket.xml:113
#, no-c-format
msgid ""
"<![CDATA[@Restrict\n"
"public class Main extends WebPage {\n"
"\n"
"   ...]]>"
msgstr ""

#. Tag: para
#: Wicket.xml:116
#, no-c-format
msgid "Seam will automatically apply the restriction to any nested classes."
msgstr ""

#. Tag: para
#: Wicket.xml:122
#, no-c-format
msgid ""
"You can demarcate conversations from within a Wicket component through the "
"use of <code>@Begin</code> and <code>@End</code>. The semantics for these "
"annotations are the same as when used in a Seam component. You can place "
"<code>@Begin</code> and <code>@End</code> on any method."
msgstr ""

#. Tag: para
#: Wicket.xml:131
#, no-c-format
msgid "The deprecated <code>ifOutcome</code> attribute is not supported."
msgstr ""

#. Tag: programlisting
#: Wicket.xml:140
#, no-c-format
msgid ""
"<![CDATA[item.add(new Link(\"viewHotel\") {\n"
"\n"
"   @Override\n"
"   @Begin\n"
"   public void onClick() {\n"
"      hotelBooking.selectHotel(hotel);\n"
"      setResponsePage(org.jboss.seam.example.wicket.Hotel.class);\n"
"   }\n"
"};]]>"
msgstr ""

#. Tag: para
#: Wicket.xml:142
#, no-c-format
msgid ""
"You may have pages in your application which can only be accessed when the "
"user has a long-running conversation active. To enforce this you can use the "
"<code>@NoConversationPage</code> annotation:"
msgstr ""

#. Tag: programlisting
#: Wicket.xml:148
#, no-c-format
msgid ""
"<![CDATA[@Restrict\n"
"@NoConversationPage(Main.class)\n"
"public class Hotel extends WebPage {]]>"
msgstr ""

#. Tag: para
#: Wicket.xml:150
#, no-c-format
msgid ""
"If you want to further decouple your application classes, you can use Seam "
"events. Of course, you can raise an event using <code>Events.instance()."
"raiseEvent(\"foo\")</code>. Alternatively, you can annotate a method "
"<code>@RaiseEvent(\"foo\")</code>; if the method returns a non-null outcome "
"without exception, the event will be raised."
msgstr ""

#. Tag: para
#: Wicket.xml:159
#, no-c-format
msgid ""
"You can also control tasks and processes in Wicket classes through the use "
"of <code>@CreateProcess</code>, <code>@ResumeTask</code>, <code>@BeginTask</"
"code>, <code>@EndTask</code>, <code>@StartTask</code> and <code>@Transition</"
"code>."
msgstr ""

#. Tag: para
#: Wicket.xml:166
#, no-c-format
msgid "TODO - Implement BPM control - JBSEAM-3194"
msgstr ""

#. Tag: title
#: Wicket.xml:174
#, no-c-format
msgid "Setting up your project"
msgstr ""

#. Tag: para
#: Wicket.xml:176
#, no-c-format
msgid ""
"Seam needs to instrument the bytecode of your Wicket classes to be able to "
"intercept the annotations you use. The first decision to make is: do you "
"want your code instrumented at runtime as your app is running, or at compile "
"time? The former requires no integration with your build environment, but "
"has a performance penalty when loading each instrumented class for the first "
"time. The latter is faster, but requires you to integrate this "
"instrumentation into your build environment."
msgstr ""

#. Tag: title
#: Wicket.xml:186
#, no-c-format
msgid "Runtime instrumentation"
msgstr ""

#. Tag: para
#: Wicket.xml:187
#, no-c-format
msgid ""
"There are two ways to achieve runtime instrumentation. One relies on placing "
"wicket components to be instrumented in a special folder in your WAR "
"deployment. If this is not acceptable or possible, you can also use an "
"instrumentation \"agent,\" which you specify in the command line for "
"launching your container."
msgstr ""

#. Tag: title
#: Wicket.xml:195
#, no-c-format
msgid "Location-specific instrumentation"
msgstr ""

#. Tag: para
#: Wicket.xml:196
#, no-c-format
msgid ""
"Any classes placed in the <literal>WEB-INF/wicket</literal> folder within "
"your WAR deployment will be automatically instrumented by the seam-wicket "
"runtime. You can arrange to place your wicket pages and components here by "
"specifying a separate output folder for those classes in your IDE, or "
"through the use of ant scripts."
msgstr ""

#. Tag: title
#: Wicket.xml:205
#, no-c-format
msgid "Runtime instrumentation agent"
msgstr ""

#. Tag: para
#: Wicket.xml:206
#, no-c-format
msgid ""
"The jar file <literal>jboss-seam-wicket.jar</literal> can be used as an "
"iinstrumentation agent through the Java Instrumentation api. This is "
"accomplished through the following steps:"
msgstr ""

#. Tag: para
#: Wicket.xml:211
#, no-c-format
msgid ""
"Arrange for the <literal>jboss-seam-wicket.jar</literal> file to live in a "
"location for which you have an absolute path, as the Java Instrumentation "
"API does not allow relative paths when specifying the location of an agent "
"lib."
msgstr ""

#. Tag: para
#: Wicket.xml:216
#, no-c-format
msgid ""
"Add <literal>javaagent:/path/to/jboss-seam-wicket.jar</literal> to the "
"command line options when launching your webapp container:"
msgstr ""

#. Tag: para
#: Wicket.xml:220
#, no-c-format
msgid ""
"In addition, you will need to add an environment variable that specifies "
"packages that the agent should instrument. This is accomplished by a comma "
"separated list of package names:"
msgstr ""

#. Tag: programlisting
#: Wicket.xml:223
#, no-c-format
msgid ""
"-Dorg.jboss.seam.wicket.instrumented-packages=my.package.one,my.other.package"
msgstr ""

#. Tag: para
#: Wicket.xml:224
#, no-c-format
msgid ""
"Note that if a package A is specified, classes in subpackages of A are also "
"examined. The classes chosen for instrumentation can be further limited by "
"specifying: <programlisting>-Dorg.jboss.seam.wicket.scanAnnotations=true</"
"programlisting> and then marking instrumentable classes with the "
"<literal>@SeamWicketComponent</literal> annotation, see <xref linkend="
"\"SeamWicketComponent\"/>."
msgstr ""

#. Tag: title
#: Wicket.xml:234
#, no-c-format
msgid "Compile-time instrumentation"
msgstr ""

#. Tag: para
#: Wicket.xml:235
#, no-c-format
msgid ""
"Seam supports instrumentation at compile time through either Apache Ant or "
"Apache Maven."
msgstr ""

#. Tag: title
#: Wicket.xml:238
#, no-c-format
msgid "Instrumenting with ant"
msgstr ""

#. Tag: para
#: Wicket.xml:239
#, no-c-format
msgid ""
"Seam provides an ant task in the <literal>jboss-seam-wicket-ant.jar </"
"literal>. This is used in the following manner:"
msgstr ""

#. Tag: programlisting
#: Wicket.xml:242
#, no-c-format
msgid ""
"<![CDATA[<taskdef name=\"instrumentWicket\" \n"
"   classname=\"org.jboss.seam.wicket.ioc.WicketInstrumentationTask\">\n"
"  <classpath>\n"
"    <pathelement location=\"lib/jboss-seam-wicket-ant.jar\"/>\n"
"    <pathelement location=\"web/WEB-INF/lib/jboss-seam-wicket.jar\"/>\n"
"    <pathelement location=\"lib/javassist.jar\"/>\n"
"    <pathelement location=\"lib/jboss-seam.jar\"/>\n"
"  </classpath>\n"
"</taskdef>\n"
"\n"
"<instrumentWicket outputDirectory=\"${build.instrumented}\" useAnnotations="
"\"true\">\n"
"  <classpath refid=\"build.classpath\"/>\n"
"  <fileset dir=\"${build.classes}\" includes=\"**/*.class\"/>\n"
"</instrumentWicket>]]>"
msgstr ""

#. Tag: para
#: Wicket.xml:244
#, no-c-format
msgid ""
"This results in the instrumented classes being placed in the directory "
"specified by <literal>${build.instrumented}</literal>. You will then need to "
"instruct ant to copy these classes into <literal>WEB-INF/classes</literal>. "
"If you want to hot deploy the Wicket components, you can copy the "
"instrumented classes to <literal>WEB-INF/dev</literal>; if you use hot "
"deploy, make sure that your <literal>WicketApplication</literal> class is "
"also hot-deployed. Upon a reload of hot-deployed classes, the entire "
"WicketApplication instance has to be re-initialized, in order to pick up new "
"references to the classes of mounted pages."
msgstr ""

#. Tag: para
#: Wicket.xml:255
#, no-c-format
msgid ""
"The <literal>useAnnotations</literal> attribute is used to make the ant task "
"only include classes that have been marked with the "
"<literal>@SeamWicketComponent</literal> annotation, see <xref linkend="
"\"SeamWicketComponent\"/>."
msgstr ""

#. Tag: title
#: Wicket.xml:261
#, no-c-format
msgid "Instrumenting with maven"
msgstr ""

#. Tag: para
#: Wicket.xml:262
#, no-c-format
msgid ""
"The jboss maven repository <literal>repository.jboss.org</literal> provides "
"a plugin named <literal>seam-instrument-wicket</literal> with a "
"<literal>process-classes</literal> mojo. An example configuration in your "
"pom.xml might look like: <programlisting role=\"XML\"><![CDATA[<build>\n"
"                <plugins>\n"
"                 <plugin>\n"
"                        <groupId>org.jboss.seam</groupId>\n"
"                        <artifactId>seam-instrument-wicket</artifactId>\n"
"                        <version>2.2.0</version>\n"
"                        <configuration>\n"
"                                <scanAnnotations>true</scanAnnotations>\n"
"                                <includes>\n"
"                                        <include>your.package.name</"
"include>\n"
"                                </includes>\n"
"                        </configuration>\n"
"                        <executions>\n"
"                                <execution>\n"
"                                        <id>instrument</id>\n"
"                                        <phase>process-classes</phase>\n"
"                                        <goals>\n"
"                                                <goal>instrument</goal>\n"
"                                        </goals>\n"
"                                </execution>\n"
"                        </executions>\n"
"                </plugin>\n"
"        </plugins>\n"
"</build>]]></programlisting> The above example illustrates that the "
"instrumentation is limited to classes specified by the <literal>includes</"
"literal> element. In this example, the <literal>scanAnnotations</literal> is "
"specified, see <xref linkend=\"SeamWicketComponent\"/>."
msgstr ""

#. Tag: title
#: Wicket.xml:274
#, no-c-format
msgid "The <literal>@SeamWicketComponent</literal> annotation"
msgstr ""

#. Tag: para
#: Wicket.xml:275
#, no-c-format
msgid ""
"Classes placed in WEB-INF/wicket will unconditionally be instrumented. The "
"other instrumentation mechanisms all allow you to specify that "
"instrumentation should only be applied to classes annotated with the "
"<literal>@SeamWicketComponent</literal> annotation. This annotation is "
"inherited, which means all subclasses of an annotated class will also be "
"instrumented. An example usage is:"
msgstr ""

#. Tag: programlisting
#: Wicket.xml:280
#, no-c-format
msgid ""
"<![CDATA[import org.jboss.seam.wicket.ioc.SeamWicketComponent;\n"
"@SeamWicketComponent\n"
"public class MyPage extends WebPage{\n"
" ...\n"
"}]]>"
msgstr ""

#. Tag: title
#: Wicket.xml:286
#, no-c-format
msgid "Defining the Application"
msgstr ""

#. Tag: para
#: Wicket.xml:288
#, no-c-format
msgid ""
"A Wicket web application which uses Seam should use "
"<code>SeamWebApplication</code> as the base class; this creates hooks into "
"the Wicket lifecycle allowing Seam to automagically propagate the "
"conversation as needed. It also adds status messages to the page."
msgstr ""

#. Tag: para
#: Wicket.xml:299
#, no-c-format
msgid ""
"The <code>SeamAuthorizationStrategy</code> delegates authorization to Seam "
"Security, allowing the use of <code>@Restrict</code> on Wicket components. "
"<code>SeamWebApplication</code> installs the authorization strategy for you. "
"You can specify the login page by implementing the <code>getLoginPage()</"
"code> method."
msgstr ""

#. Tag: para
#: Wicket.xml:307
#, no-c-format
msgid ""
"You'll also need to set the home page of the application by implementing the "
"<code>getHomePage()</code> method."
msgstr ""

#. Tag: programlisting
#: Wicket.xml:312
#, no-c-format
msgid ""
"<![CDATA[public class WicketBookingApplication extends SeamWebApplication {\n"
"\n"
"   @Override\n"
"   public Class getHomePage() {\n"
"      return Home.class;\n"
"   }\n"
"\n"
"   @Override\n"
"   protected Class getLoginPage() {\n"
"      return Home.class;\n"
"   }\n"
"   \n"
"}\n"
"]]>"
msgstr ""

#. Tag: para
#: Wicket.xml:314
#, no-c-format
msgid ""
"Seam automatically installs the Wicket filter for you (ensuring that it is "
"inserted in the correct place for you). But you still need to tell Wicket "
"which <code>WebApplication</code> class to use."
msgstr ""

#. Tag: programlisting
#: Wicket.xml:320
#, no-c-format
msgid ""
"<![CDATA[<components xmlns=\"http://jboss.org/schema/seam/components\"\n"
" xmlns:wicket=\"http://jboss.org/schema/seam/wicket\"\n"
" xsi:schemaLocation=\n"
"  \"http://jboss.org/schema/seam/wicket\n"
"   http://jboss.org/schema/seam/wicket-2.3.xsd\">\n"
"   \n"
"  <wicket:web-application \n"
"    application-class=\"org.jboss.seam.example.wicket."
"WicketBookingApplication\" />\n"
"</components]]>"
msgstr ""

#. Tag: para
#: Wicket.xml:322
#, no-c-format
msgid ""
"In addition, if you plan to use JSF-based pages in the same application as "
"wicket pages, you'll need to ensure that the jsf exception filter is only "
"enabled for jsf urls:"
msgstr ""

#. Tag: programlisting
#: Wicket.xml:327
#, no-c-format
msgid ""
"<![CDATA[<components xmlns=\"http://jboss.org/schema/seam/components\"\n"
" xmlns:web=\"http://jboss.org/schema/seam/web\"\n"
" xmlns:wicket=\"http://jboss.org/schema/seam/wicket\"\n"
" xsi:schemaLocation=\n"
"  \"http://jboss.org/schema/seam/web\n"
"   http://jboss.org/schema/seam/web-2.3.xsd\">\n"
"     \n"
"    <!-- Only map the seam jsf exception filter to jsf paths, which we "
"identify with the *.seam path -->\n"
"        <web:exception-filter url-pattern=\"*.seam\"/>\n"
"</components]]>"
msgstr ""

#. Tag: para
#: Wicket.xml:331
#, no-c-format
msgid ""
"Take a look at the Wicket documentation for more on authorization strategies "
"and other methods you can override on the <code>Application</code> class."
msgstr ""
