# Language ml-IN translations for PACKAGE package.
# Automatically generated, 2008.
#
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: http://bugs.kde.org\n"
"POT-Creation-Date: 2008-11-06 00:23+0000\n"
"PO-Revision-Date: 2008-04-04 01:24+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
#: Oc4j.xml:2
#, no-c-format
msgid "Seam on OC4J"
msgstr ""

#. Tag: para
#: Oc4j.xml:4
#, no-c-format
msgid ""
"OC4J (Oracle Containers for Java) 11g (currently a \"Technology Preview\" "
"release) is Oracle's JEE5 application server. Seam application can be "
"deployed to OC4J, but require some additional configuration changes, and "
"dependencies. This chapter will show you exactly what must be done. We will "
"start by looking at the building and deploying the JEE5 Hotel Booking "
"example application which comes with Seam. Then we will deploy a project "
"generated by <literal>seam-gen</literal> . First a basic <literal>seam-gen</"
"literal> application with RichFaces ajax components, and facelets. Then "
"expand that application to include Seam security with Drools, JPA provided "
"with hibernate, and automatic CRUD reverse engineering of a MySQL database."
msgstr ""

#. Tag: title
#: Oc4j.xml:17
#, no-c-format
msgid "Installation and operation of OC4J"
msgstr ""

#. Tag: para
#: Oc4j.xml:18
#, no-c-format
msgid ""
"First we need to install the target container - OC4j. This chapter requires "
"you to use OC4J 11g Technology Preview (not OC4J 10g). You can download OC4J "
"11g from <ulink url=\"http://www.oracle.com/technology/tech/java/oc4j/11/\"> "
"http://www.oracle.com/technology/tech/java/oc4j/11/ </ulink> Below are "
"instructions to install. launch, access, and shutdown the 11g release. For "
"further information on installing OC4J, consult the <literal>readme.txt</"
"literal> distributed with OC4J, or the OC4J installation guide and release "
"notes."
msgstr ""

#. Tag: para
#: Oc4j.xml:29
#, no-c-format
msgid "Download and unzip OC4J"
msgstr ""

#. Tag: para
#: Oc4j.xml:32
#, no-c-format
msgid ""
"Make sure you have <literal>$JAVA_HOME</literal> and <literal>$ORACLE_HOME</"
"literal> set as environment variables ( <literal>$ORACLE_HOME</literal> is "
"the directory to which you unzip OC4J). For further information on "
"installing OC4J, consult the <literal>readme.txt</literal> distributed with "
"OC4J"
msgstr ""

#. Tag: para
#: Oc4j.xml:41
#, no-c-format
msgid ""
"Applications (ear/war) are deployed to the <literal>$ORACLE_HOME/j2ee/home/"
"applications</literal> directory."
msgstr ""

#. Tag: para
#: Oc4j.xml:44
#, no-c-format
msgid ""
"Note that OC4J does not support hot deployment by default. This means every "
"time you deploy the application you must restart the server."
msgstr ""

#. Tag: para
#: Oc4j.xml:49
#, no-c-format
msgid ""
"Start OC4J: <literal> $ORACLE_HOME/j2ee/home/java -jar -XX:MaxPermSize=256M "
"oc4j.jar </literal>"
msgstr ""

#. Tag: para
#: Oc4j.xml:51
#, no-c-format
msgid ""
"You must override the default PermGen memory settings using above command. "
"See <ulink url=\"http://www.oracle.com/technology/tech/java/oc4j/11/oc4j-"
"relnotes.html\"> OC4J release notes </ulink> for details."
msgstr ""

#. Tag: para
#: Oc4j.xml:55
#, no-c-format
msgid ""
"You will be asked to set the admin password if this is the first time you "
"have started OC4J"
msgstr ""

#. Tag: para
#: Oc4j.xml:59
#, no-c-format
msgid ""
"Once deployed you can check out your applications at <literal>http://"
"localhost:8888/&lt;your-app-path&gt;</literal>"
msgstr ""

#. Tag: para
#: Oc4j.xml:64
#, no-c-format
msgid ""
"You can stop the server by pressing <literal>CTRL-C</literal> in the console "
"on which the server is running."
msgstr ""

#. Tag: title
#: Oc4j.xml:72
#, no-c-format
msgid "The <literal>jee5/booking</literal> example"
msgstr ""

#. Tag: para
#: Oc4j.xml:74
#, no-c-format
msgid ""
"The <literal>jee5/booking</literal> example is based on the Hotel Booking "
"example (which runs on JBoss AS). Out of the box it is designed to run on "
"Glassfish, but it's easy to build it for OC4J. It is located in the <literal>"
"$SEAM_DIST/examples/jee5/booking</literal> directory."
msgstr ""

#. Tag: title
#: Oc4j.xml:81
#, no-c-format
msgid "Booking Example Dependencies"
msgstr ""

#. Tag: para
#: Oc4j.xml:83
#, no-c-format
msgid ""
"First, lets look at the basic dependencies of the booking example. Armed "
"with this knowledge we can look at the extra dependencies requirements that "
"OC4J adds."
msgstr ""

#. Tag: para
#: Oc4j.xml:87
#, no-c-format
msgid ""
"We will show you how to get these dependencies into the application in <xref "
"linkend=\"oc4j-build-jee5\"/> below."
msgstr ""

#. Tag: title
#: Oc4j.xml:90
#, no-c-format
msgid "Core Seam dependencies"
msgstr ""

#. Tag: simpara
#: Oc4j.xml:93
#, no-c-format
msgid ""
"<literal>jboss-seam.jar</literal> &#8212; We declare this as an EJB3 module "
"(why? well Seam needs to be able to interact with container managed "
"transactions; this is implemented as an EJB3 Stateful Session Bean)"
msgstr ""

#. Tag: literal
#: Oc4j.xml:100
#, no-c-format
msgid "jboss-el.jar"
msgstr ""

#. Tag: simpara
#: Oc4j.xml:103
#, no-c-format
msgid ""
"<literal>jboss-seam-ui.jar</literal> &#8212; Seam's JSF controls depend on "
"Apache's commons-beanutils"
msgstr ""

#. Tag: literal
#: Oc4j.xml:108
#, no-c-format
msgid "jboss-seam-debug.jar"
msgstr ""

#. Tag: literal
#: Oc4j.xml:112
#, no-c-format
msgid "jsf-facelets.jar"
msgstr ""

#. Tag: simpara
#: Oc4j.xml:116
#, no-c-format
msgid ""
"<literal>richfaces-api.jar</literal> , <literal>richfaces-impl.jar</literal> "
"and <literal>richfaces-ui.jar</literal> &#8212; which requires Apache "
"commons-digester and commons-beanutils"
msgstr ""

#. Tag: title
#: Oc4j.xml:126
#, no-c-format
msgid "Extra dependencies"
msgstr ""

#. Tag: para
#: Oc4j.xml:129
#, no-c-format
msgid ""
"Hibernate &#8212; of course, we decided to use Hibernate as the JPA provider "
"(rather than TopLink Essentials which ships with OC4J)."
msgstr ""

#. Tag: para
#: Oc4j.xml:132
#, no-c-format
msgid "To use Hibernate as your JPA provider you need the following jars:"
msgstr ""

#. Tag: literal
#: Oc4j.xml:136
#, no-c-format
msgid "hibernate.jar"
msgstr ""

#. Tag: literal
#: Oc4j.xml:141
#, no-c-format
msgid "hibernate-annotations.jar"
msgstr ""

#. Tag: literal
#: Oc4j.xml:146
#, no-c-format
msgid "hibernate-entitymanager.jar"
msgstr ""

#. Tag: literal
#: Oc4j.xml:151
#, no-c-format
msgid "hibernate-validator.jar"
msgstr ""

#. Tag: literal
#: Oc4j.xml:156
#, no-c-format
msgid "jboss-common-core.jar"
msgstr ""

#. Tag: literal
#: Oc4j.xml:161
#, no-c-format
msgid "commons-logging.jar"
msgstr ""

#. Tag: literal
#: Oc4j.xml:166
#, no-c-format
msgid "commons-collections.jar"
msgstr ""

#. Tag: para
#: Oc4j.xml:172
#, no-c-format
msgid ""
"Third party jars &#8212; various jars needed for seam and this example to "
"run."
msgstr ""

#. Tag: literal
#: Oc4j.xml:176
#, no-c-format
msgid "javaasist.jar"
msgstr ""

#. Tag: literal
#: Oc4j.xml:180
#, no-c-format
msgid "dom4j.jar"
msgstr ""

#. Tag: literal
#: Oc4j.xml:184
#, no-c-format
msgid "cglib.jar"
msgstr ""

#. Tag: literal
#: Oc4j.xml:188
#, no-c-format
msgid "asm.jar"
msgstr ""

#. Tag: literal
#: Oc4j.xml:193
#, no-c-format
msgid "commons-beanutils.jar"
msgstr ""

#. Tag: literal
#: Oc4j.xml:198
#, no-c-format
msgid "commons-digester.jar"
msgstr ""

#. Tag: literal
#: Oc4j.xml:203
#, no-c-format
msgid "concurrent.jar"
msgstr ""

#. Tag: simpara
#: Oc4j.xml:207
#, no-c-format
msgid ""
"<literal>log4j.jar</literal> &#8212; This can be left out if you are not "
"going to configure log4j. If it is packaged but not configured logging will "
"be hidden in oc4j."
msgstr ""

#. Tag: para
#: Oc4j.xml:216
#, no-c-format
msgid ""
"Extra OC4J jars &#8212; Running Seam on most application servers (such as "
"JBoss AS or Glassfish) you only need to include the dependencies for those "
"bits of Seam you actually use (e.g. if you use Seam Text you need to include "
"ANTLR); but, on OC4J, due to its \"interesting\" classloading you must "
"always include them:"
msgstr ""

#. Tag: literal
#: Oc4j.xml:225
#, no-c-format
msgid "hibernate-search.jar"
msgstr ""

#. Tag: simpara
#: Oc4j.xml:229
#, no-c-format
msgid ""
"<literal>hibernate-common-annotations.jar</literal> &#8212; needed for "
"hibernate search"
msgstr ""

#. Tag: simpara
#: Oc4j.xml:235
#, no-c-format
msgid "<literal>lucene-core.jar</literal> &#8212; needed for hibernate search"
msgstr ""

#. Tag: simpara
#: Oc4j.xml:240
#, no-c-format
msgid "<literal>antlr.jar</literal> &#8212; needed for Seam Text"
msgstr ""

#. Tag: simpara
#: Oc4j.xml:244
#, no-c-format
msgid "<literal>jbpm-jpdl.jar</literal> &#8212; needed for Seam's JBPM"
msgstr ""

#. Tag: literal
#: Oc4j.xml:248
#, no-c-format
msgid "quartz.jar"
msgstr ""

#. Tag: simpara
#: Oc4j.xml:252
#, no-c-format
msgid "<literal>dbunit.jar</literal> &#8212; needed for some testing classes"
msgstr ""

#. Tag: simpara
#: Oc4j.xml:257
#, no-c-format
msgid ""
"<literal>jboss-embedded-api.jar</literal> &#8212; needed for some testing "
"classes"
msgstr ""

#. Tag: para
#: Oc4j.xml:263
#, no-c-format
msgid ""
"Drools &#8212; needed for Seam Security. We aren't using Seam security with "
"Drools, but have to include it. Drools consists of 6 jars: <itemizedlist> "
"<listitem> <simpara> <literal>drools-core.jar</literal> </simpara> </"
"listitem> <listitem> <simpara> <literal>drools-compiler.jar</literal> </"
"simpara> </listitem> <listitem> <simpara> <literal>janino.jar</literal> </"
"simpara> </listitem> <listitem> <simpara> <literal>mvel141.jar</literal> </"
"simpara> </listitem> <listitem> <simpara> <literal>core.jar</literal> </"
"simpara> </listitem> <listitem> <simpara> <literal>antlr-runtime.jar</"
"literal> </simpara> </listitem> </itemizedlist> Drools integration is not "
"used in the example."
msgstr ""

#. Tag: title
#: Oc4j.xml:307 Oc4j.xml:505
#, no-c-format
msgid "Configuration file changes"
msgstr ""

#. Tag: para
#: Oc4j.xml:309
#, no-c-format
msgid "There are just a few changes to be made:"
msgstr ""

#. Tag: literal
#: Oc4j.xml:312
#, no-c-format
msgid "web.xml"
msgstr ""

#. Tag: para
#: Oc4j.xml:315
#, no-c-format
msgid ""
"You need to declare all your ejb's in the <literal>web.xml</literal> . This "
"is a silly requirement of a number of JEE5 application servers - for example "
"OC4J and Glassfish."
msgstr ""

#. Tag: para
#: Oc4j.xml:319
#, no-c-format
msgid ""
"This is already done in the example's web.xml file, below is an example."
msgstr ""

#. Tag: programlisting
#: Oc4j.xml:323
#, no-c-format
msgid ""
"<![CDATA[<ejb-local-ref>\n"
"   <ejb-ref-name>\n"
"      jboss-seam-jee5/AuthenticatorAction/local\n"
"   </ejb-ref-name>\n"
"   <ejb-ref-type>Session</ejb-ref-type>\n"
"   <local>\n"
"      org.jboss.seam.example.booking.Authenticator\n"
"   </local>\n"
"   <ejb-link>AuthenticatorAction</ejb-link>\n"
"</ejb-local-ref>]]>"
msgstr ""

#. Tag: literal
#: Oc4j.xml:327
#, no-c-format
msgid "persistence.xml"
msgstr ""

#. Tag: para
#: Oc4j.xml:330
#, no-c-format
msgid ""
"You need to provide the correct configuration for your JPA implementation. "
"We are using Hibernate and due to OC4J bundling an old ANTLR, we need to use "
"an alternative query factory, we also want to use the OC4J transaction "
"manager:"
msgstr ""

#. Tag: para
#: Oc4j.xml:335
#, no-c-format
msgid ""
"For our example modify the <literal>resources/META-INF/persistence.xml</"
"literal> file. Comment out the Glassfish properties and un-comment the OC4J "
"properties."
msgstr ""

#. Tag: programlisting
#: Oc4j.xml:341
#, no-c-format
msgid ""
"<![CDATA[<property name=\"hibernate.dialect\" \n"
"   value=\"org.hibernate.dialect.HSQLDialect\"/>\n"
"<property name=\"hibernate.query.factory_class\" \n"
"   value=\"org.hibernate.hql.classic.ClassicQueryTranslatorFactory\"/>\n"
"<property name=\"hibernate.transaction.manager_lookup_class\" \n"
"   value=\"org.hibernate.transaction.OrionTransactionManagerLookup\"/>]]>"
msgstr ""

#. Tag: title
#: Oc4j.xml:349
#, no-c-format
msgid "Building the <literal>jee5/booking</literal> example"
msgstr ""

#. Tag: para
#: Oc4j.xml:354
#, no-c-format
msgid "Modify the <literal>build.xml</literal> file in the example:"
msgstr ""

#. Tag: para
#: Oc4j.xml:358
#, no-c-format
msgid ""
"Un-comment the labeled OC4J-related library properties. This will include "
"all the extra dependencies discussed above."
msgstr ""

#. Tag: para
#: Oc4j.xml:361
#, no-c-format
msgid "It should look like the following:"
msgstr ""

#. Tag: programlisting
#: Oc4j.xml:364
#, no-c-format
msgid ""
"<![CDATA[<!-- add libs for oc4j (eager classloading) -->\n"
"<property name=\"jbpm.lib\" value=\"true\"/>\n"
"<property name=\"drools.lib\" value=\"true\"/>\n"
"<property name=\"quartz.lib\" value=\"true\" />\n"
"<property name=\"search.lib\" value=\"true\" />\n"
"<property name=\"dbunit.lib\" value=\"true\" />\n"
"<property name=\"jboss-embedded-api.lib\" value=\"true\" />\n"
"    ]]>"
msgstr ""

#. Tag: para
#: Oc4j.xml:369
#, no-c-format
msgid ""
"Build the demo app by running <literal>ant</literal> in the "
"<literal>examples/jee5/booking</literal> directory. The build target is "
"<literal>dist/jboss-seam-jee5.ear</literal>"
msgstr ""

#. Tag: para
#: Oc4j.xml:375
#, no-c-format
msgid ""
"Copy <literal>dist/jboss-seam-jee5.ear</literal> following the instructions "
"below."
msgstr ""

#. Tag: title
#: Oc4j.xml:383
#, no-c-format
msgid "Deploying the Seam application to OC4J"
msgstr ""

#. Tag: para
#: Oc4j.xml:384
#, no-c-format
msgid ""
"This mini-tutorial describes the (fairly tedious) steps required to deploy a "
"JEE 5 application to OC4J. It assumes you have already downloaded and "
"installed it following the instructions in <xref linkend=\"oc4j-install-"
"operation\"/>. It also assumes you are deploying the <literal>jee5/booking</"
"literal> example, using the embedded hsqldb database. To deploy another "
"application you would need to alter the datasource and application name."
msgstr ""

#. Tag: para
#: Oc4j.xml:393
#, no-c-format
msgid ""
"Copy <literal>hsqldb.jar</literal> to OC4J shared library directory: "
"<literal> cp $SEAM_HOME/lib/hsqldb.jar $ORACLE_HOME/j2ee/home/applib/ </"
"literal> (OC4J doesn't come with an embedded database so we decided to use "
"HSQLDB)"
msgstr ""

#. Tag: para
#: Oc4j.xml:400
#, no-c-format
msgid ""
"Edit the OC4J datasource file <literal>$ORACLE_HOME/j2ee/home/config/data-"
"sources.xml</literal> and, inside <literal>&lt;data-sources&gt;</literal> , "
"add"
msgstr ""

#. Tag: programlisting
#: Oc4j.xml:406
#, no-c-format
msgid ""
"<![CDATA[<managed-data-source\n"
"   connection-pool-name=\"jee5-connection-pool\"\n"
"   jndi-name=\"jdbc/__default\"\n"
"   name=\"jee5-managed-data-source\" />\n"
"<connection-pool name=\"jee5-connection-pool\">\n"
"   <connection-factory\n"
"      factory-class=\"org.hsqldb.jdbcDriver\" \n"
"      user=\"sa\"\n"
"      password=\"\" \n"
"      url=\"jdbc:hsqldb:.\" />\n"
"</connection-pool>]]>"
msgstr ""

#. Tag: para
#: Oc4j.xml:408
#, no-c-format
msgid ""
"The <literal>jndi-name</literal> is used as the <literal>jta-data-source</"
"literal> in <literal>persistence.xml</literal> ."
msgstr ""

#. Tag: para
#: Oc4j.xml:413
#, no-c-format
msgid ""
"Edit <literal>$ORACLE_HOME/j2ee/home/config/server.xml</literal> and, inside "
"<literal>&lt;application-server&gt;</literal> , add"
msgstr ""

#. Tag: programlisting
#: Oc4j.xml:419
#, no-c-format
msgid ""
"<![CDATA[<application name=\"jboss-seam-jee5\"\n"
" path=\"../../home/applications/jboss-seam-jee5.ear\"\n"
" parent=\"default\" \n"
" start=\"true\" />]]>"
msgstr ""

#. Tag: para
#: Oc4j.xml:420
#, no-c-format
msgid "To keep things simple use the same names as you used for project."
msgstr ""

#. Tag: para
#: Oc4j.xml:424
#, no-c-format
msgid ""
"Edit <literal> $ORACLE_HOME/j2ee/home/config/default-web-site.xml </"
"literal> , and, inside <literal>&lt;web-site&gt;</literal> , add"
msgstr ""

#. Tag: programlisting
#: Oc4j.xml:430
#, no-c-format
msgid ""
"<![CDATA[<web-app application=\"jboss-seam-jee5\"\n"
" name=\"jboss-seam-jee5\" \n"
" load-on-startup=\"true\"\n"
" root=\"/seam-jee5\" />]]>"
msgstr ""

#. Tag: para
#: Oc4j.xml:431
#, no-c-format
msgid ""
"The <literal>root</literal> is the context path you will put into your web "
"browser to access the application."
msgstr ""

#. Tag: para
#: Oc4j.xml:435
#, no-c-format
msgid ""
"Copy the application to OC4J: <literal> cp dist/jboss-seam-jee5.ear "
"$ORACLE_HOME/j2ee/home/applications/ </literal>"
msgstr ""

#. Tag: para
#: Oc4j.xml:440
#, no-c-format
msgid ""
"Start/stop OC4J following instructions in <xref linkend=\"oc4j-install-"
"operation\"/> above."
msgstr ""

#. Tag: para
#: Oc4j.xml:444
#, no-c-format
msgid "Checkout the app at: <literal>http://localhost:8888/seam-jee5</literal>"
msgstr ""

#. Tag: title
#: Oc4j.xml:452
#, no-c-format
msgid ""
"Deploying an application created using <literal>seam-gen</literal> to OC4J"
msgstr ""

#. Tag: para
#: Oc4j.xml:455
#, no-c-format
msgid ""
"<literal>seam-gen</literal> is a great tool for developers that can quickly "
"get you up and running with a full Seam application. However the project "
"that it created is configured to run on JBoss AS. This means there are some "
"extra steps needed to have it execute on OC4j. The following explanation "
"assumes you are using the command line and a simple text editor, but of "
"course you can use your favorite IDE. <literal>seam-gen</literal> projects "
"come with support for Eclipse and Netbeans."
msgstr ""

#. Tag: para
#: Oc4j.xml:464
#, no-c-format
msgid ""
"We will start by creating and deploying a pretty simple application using "
"<literal>seam-gen</literal> . Then we'll show you how easy it is to use "
"<literal>seam-gen</literal> and Hibernate Tools to reverse engineer a "
"database schema into a functional CRUD application. <literal>seam-gen</"
"literal> will create JPA entity beans, Seam Application Framework components "
"and JSF views for you. We will also add Seam security using Drools."
msgstr ""

#. Tag: para
#: Oc4j.xml:472
#, no-c-format
msgid ""
"This tutorial uses MySQL (but of course you could use any database, altering "
"the SQL and datasources as appropriate); install, configure and run MySQL, "
"then create a database with some sample data. Don't forget to also download "
"the <literal>mysql-connector-java-X.jar</literal> for jdbc support. When "
"setting up Seam security this tutorial will assume there is a table named "
"<literal>User</literal> with columns <literal>username</literal> and "
"<literal>password</literal> with at least one entry. Beyond that you can set "
"up any type of sample data and tables you would like."
msgstr ""

#. Tag: title
#: Oc4j.xml:484
#, no-c-format
msgid "Generating a basic <literal>seam-gen</literal> application"
msgstr ""

#. Tag: para
#: Oc4j.xml:486
#, no-c-format
msgid ""
"First we need to tell the <literal>seam-gen</literal> what we want, run "
"<literal>./seam setup</literal> in the seam distribution directory. Follow "
"the settings example below based on your system and setup (ex. use your "
"database name instead of <literal>oc4jexample</literal> )."
msgstr ""

#. Tag: programlisting
#: Oc4j.xml:493
#, no-c-format
msgid ""
"<![CDATA[> ./seam setup\n"
"Buildfile: build.xml\n"
"\n"
"init:\n"
"\n"
"setup:\n"
"     [echo] Welcome to seam-gen :-)\n"
"    [input] Enter your Java project workspace (the directory that contains "
"your \n"
"Seam projects) [C:/Projects] [C:/Projects]\n"
"/home/jbalunas/workspace\n"
"    [input] Enter your JBoss home directory [C:/Program Files/jboss-4.2.3."
"GA] \n"
"[C:/Program Files/jboss-4.2.3.GA]\n"
"/home/jbalunas/jboss/jboss-4.2.3.GA\n"
"    [input] Enter the project name [myproject] [myproject]\n"
"oc4j_example\n"
"     [echo] Accepted project name as: oc4j_example\n"
"    [input] Select a RichFaces skin (not applicable if using ICEFaces) "
"[blueSky]\n"
" ([blueSky], classic, ruby, wine, deepMarine, emeraldTown, sakura, DEFAULT)\n"
"\n"
"    [input] Is this project deployed as an EAR (with EJB components) or a "
"WAR \n"
"(with no EJB support) [ear]  ([ear], war, )\n"
"\n"
"    [input] Enter the Java package name for your session beans [com."
"mydomain.\n"
"oc4j_example] [com.mydomain.oc4j_example]\n"
"org.jboss.seam.tutorial.oc4j.action\n"
"    [input] Enter the Java package name for your entity beans [org.jboss."
"seam.\n"
"tutorial.oc4j.action] [org.jboss.seam.tutorial.oc4j.action]\n"
"org.jboss.seam.tutorial.oc4j.model\n"
"    [input] Enter the Java package name for your test cases [org.jboss."
"seam.\n"
"tutorial.oc4j.action.test] [org.jboss.seam.tutorial.oc4j.action.test]\n"
"org.jboss.seam.tutorial.oc4j.test\n"
"    [input] What kind of database are you using? [hsql]  ([hsql], mysql, "
"oracle,\n"
" postgres, mssql, db2, sybase, enterprisedb, h2)\n"
"mysql\n"
"    [input] Enter the Hibernate dialect for your database [org.hibernate.\n"
"dialect.MySQLDialect] [org.hibernate.dialect.MySQLDialect]\n"
"\n"
"    [input] Enter the filesystem path to the JDBC driver jar [/tmp/seam/lib/"
"hsqldb.jar] \n"
"[/tmp/seam/lib/hsqldb.jar]\n"
"lib/mysql-connector.jar\n"
"    [input] Enter JDBC driver class for your database [com.mysql.jdbc."
"Driver] \n"
"[com.mysql.jdbc.Driver]\n"
"\n"
"    [input] Enter the JDBC URL for your database [jdbc:mysql:///test] \n"
"[jdbc:mysql:///test]\n"
"jdbc:mysql:///oc4jexample\n"
"    [input] Enter database username [sa] [sa]\n"
"username\n"
"    [input] Enter database password [] []\n"
"password\n"
"    [input] skipping input as property hibernate.default_schema.new has "
"already \n"
"been set.\n"
"    [input] Enter the database catalog name (it is OK to leave this blank) "
"[] []\n"
"\n"
"    [input] Are you working with tables that already exist in the database? "
"[n] \n"
" (y, [n], )\n"
"y\n"
"    [input] Do you want to drop and recreate the database tables and data "
"in \n"
"import.sql each time you deploy? [n]  (y, [n], )\n"
"n\n"
"    [input] Enter your ICEfaces home directory (leave blank to omit "
"ICEfaces) [] []\n"
"\n"
"[propertyfile] Creating new property file: \n"
"/home/jbalunas/workspace/jboss-seam/seam-gen/build.properties\n"
"     [echo] Installing JDBC driver jar to JBoss server\n"
"     [copy] Copying 1 file to /home/jbalunas/jboss/jboss-4.2.3.GA/server/"
"default/lib\n"
"     [echo] Type 'seam create-project' to create the new project\n"
"\n"
"BUILD SUCCESSFUL]]>"
msgstr ""

#. Tag: para
#: Oc4j.xml:495
#, no-c-format
msgid ""
"Type <literal>./seam new-project</literal> to create your project and "
"<literal>cd /home/jbalunas/workspace/oc4j_example</literal> to the newly "
"created project."
msgstr ""

#. Tag: title
#: Oc4j.xml:502
#, no-c-format
msgid "Changes needed for deployment to OC4J"
msgstr ""

#. Tag: para
#: Oc4j.xml:503
#, no-c-format
msgid "We now need to make some changes to the generated project."
msgstr ""

#. Tag: para
#: Oc4j.xml:506
#, no-c-format
msgid "Let's start with the configuration files:"
msgstr ""

#. Tag: literal
#: Oc4j.xml:509
#, no-c-format
msgid "build.xml"
msgstr ""

#. Tag: para
#: Oc4j.xml:514
#, no-c-format
msgid ""
"Change the default target to archive (we aren't going to cover automatic "
"deployment to OC4J)."
msgstr ""

#. Tag: programlisting
#: Oc4j.xml:518
#, no-c-format
msgid ""
"<![CDATA[<project name=\"oc4j_example\" default=\"archive\" basedir=\".\">]]>"
msgstr ""

#. Tag: para
#: Oc4j.xml:521
#, no-c-format
msgid ""
"OC4J looks for the drools file <literal>/security.drl</literal> file in the "
"root of the <literal>war</literal> file instead of the root of the "
"<literal>ear</literal> file so we need to have the <literal>build.xml</"
"literal> move it to the correct location at build time. The following must "
"be added at the top of the <literal> &lt;target name=\"war\" depends="
"\"compile\" description=\"Build the distribution .war file\"&gt; </literal> "
"target."
msgstr ""

#. Tag: programlisting
#: Oc4j.xml:535
#, no-c-format
msgid ""
"<![CDATA[<copy todir=\"${war.dir}\">\n"
" <fileset dir=\"${basedir}/resources\" >\n"
"    <include name=\"*.drl\" />\n"
" </fileset>\n"
" </copy>]]>"
msgstr ""

#. Tag: literal
#: Oc4j.xml:542
#, no-c-format
msgid "resources/META-INF/persistence-dev.xml"
msgstr ""

#. Tag: para
#: Oc4j.xml:547
#, no-c-format
msgid ""
"Alter the <literal>jta-data-source</literal> to be <literal>jdbc/"
"__oc4jexample</literal> (and use this as the <literal>jndi-name</literal> "
"when creating the data source in <literal>data-sources.xml</literal> later "
"during deployment)."
msgstr ""

#. Tag: para
#: Oc4j.xml:557
#, no-c-format
msgid ""
"Add the properties (described in <literal>jee5/booking</literal> example):"
msgstr ""

#. Tag: programlisting
#: Oc4j.xml:562
#, no-c-format
msgid ""
"<![CDATA[<property name=\"hibernate.query.factory_class\"\n"
"   value=\"org.hibernate.hql.classic.ClassicQueryTranslatorFactory\" />\n"
"<property name=\"hibernate.transaction.manager_lookup_class\"\n"
"   value=\"org.hibernate.transaction.OrionTransactionManagerLookup\" />\n"
"<property name=\"hibernate.transaction.flush_before_completion\" \n"
"   value=\"true\"/>\n"
"<property name=\"hibernate.cache.provider_class\" \n"
"   value=\"org.hibernate.cache.HashtableCacheProvider\"/>]]>"
msgstr ""

#. Tag: para
#: Oc4j.xml:565
#, no-c-format
msgid ""
"Remove the JBoss AS specific method of exposing the EntityManagerFactory:"
msgstr ""

#. Tag: programlisting
#: Oc4j.xml:569
#, no-c-format
msgid ""
"<![CDATA[<property \n"
" name=\"jboss.entity.manager.factory.jndi.name\" \n"
" value=\"java:/oc4j_exampleEntityManagerFactory\">]]>"
msgstr ""

#. Tag: para
#: Oc4j.xml:572
#, no-c-format
msgid ""
"You'll need to alter <literal>persistence-prod.xml</literal> as well if you "
"want to deploy to OC4J using the prod profile."
msgstr ""

#. Tag: literal
#: Oc4j.xml:582
#, no-c-format
msgid "resources/META-INF/jboss-app.xml"
msgstr ""

#. Tag: para
#: Oc4j.xml:585
#, no-c-format
msgid ""
"You can delete this file as we aren't deploying to JBoss AS ( <literal>jboss-"
"app.xml</literal> is used to enable classloading isolation in JBoss AS)"
msgstr ""

#. Tag: literal
#: Oc4j.xml:591
#, no-c-format
msgid "resources/*-ds.xml"
msgstr ""

#. Tag: para
#: Oc4j.xml:594
#, no-c-format
msgid ""
"You can delete these file as we aren't deploying to JBoss AS (these files "
"define datasources in JBoss AS, in OC4J you have to edit the master "
"<literal>data-sources.xml</literal> file)"
msgstr ""

#. Tag: literal
#: Oc4j.xml:603
#, no-c-format
msgid "resources/WEB-INF/components.xml"
msgstr ""

#. Tag: para
#: Oc4j.xml:608
#, no-c-format
msgid ""
"Enable container managed transaction integration - add the <literal> &lt;"
"transaction:ejb-transaction /&gt; </literal> component, and it's namespace "
"declaration <literal> xmlns:transaction=\"http://jboss.org/schema/seam/"
"transaction\" </literal>"
msgstr ""

#. Tag: para
#: Oc4j.xml:617
#, no-c-format
msgid ""
"Alter the <literal>jndi-pattern</literal> to <literal> java:comp/env/"
"oc4j_example/#{ejbName}/local </literal>"
msgstr ""

#. Tag: para
#: Oc4j.xml:624
#, no-c-format
msgid ""
"We want to use a Seam Managed Persistence Context in our application. "
"Unfortunately OC4J doesn't expose the EntityManagerFactory in JNDI, but Seam "
"provides a built-in manager component. To activate add the following entry:"
msgstr ""

#. Tag: programlisting
#: Oc4j.xml:632
#, no-c-format
msgid ""
"<![CDATA[<persistence:entity-manager-factory\n"
" auto-create=\"true\" \n"
" name=\"oc4jEntityManagerFactory\"\n"
" persistence-unit-name=\"oc4j_example\" />]]>"
msgstr ""

#. Tag: para
#: Oc4j.xml:633
#, no-c-format
msgid ""
"We then need to tell Seam to use it, so we alter the <literal>managed-"
"persistence-context</literal> injecting the Entity Manager Factory into the "
"existing element:"
msgstr ""

#. Tag: programlisting
#: Oc4j.xml:640
#, no-c-format
msgid ""
"<![CDATA[<persistence:managed-persistence-context\n"
" name=\"entityManager\"\n"
" auto-create=\"true\"\n"
" entity-manager-factory=\"#{oc4jEntityManagerFactory}\" />]]>"
msgstr ""

#. Tag: literal
#: Oc4j.xml:646
#, no-c-format
msgid "resources/WEB-INF/web.xml"
msgstr ""

#. Tag: para
#: Oc4j.xml:649
#, no-c-format
msgid ""
"You must add the Seam container managed transaction integration EJB entry "
"below. Remember for OC4j you need to declare all your EJBs here if you "
"modify the application further."
msgstr ""

#. Tag: programlisting
#: Oc4j.xml:655
#, no-c-format
msgid ""
"<![CDATA[<ejb-local-ref>\n"
"   <ejb-ref-name>\n"
"      oc4j_example/EjbSynchronizations/local\n"
"   </ejb-ref-name>\n"
"   <ejb-ref-type>Session</ejb-ref-type>\n"
"   <local>\n"
"      org.jboss.seam.transaction.LocalEjbSynchronizations\n"
"   </local>\n"
"   <ejb-link>EjbSynchronizations</ejb-link>\n"
"</ejb-local-ref>]]>"
msgstr ""

#. Tag: literal
#: Oc4j.xml:660
#, no-c-format
msgid "resources/META-INF/orion-application.xml"
msgstr ""

#. Tag: para
#: Oc4j.xml:665
#, no-c-format
msgid ""
"This is a file that you must create so that RichFaces and Ajax4Jsf "
"stylesheets will work with OC4J. This file basically tells OC4J not force "
"its own inherited URL settings."
msgstr ""

#. Tag: programlisting
#: Oc4j.xml:671
#, no-c-format
msgid ""
"<![CDATA[<?xml version = '1.0' encoding = 'utf-8'?>\n"
"<orion-application\n"
"        xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"\n"
"        xsi:noNamespaceSchemaLocation=\"http://xmlns.oracle.com/oracleas/"
"schema/\n"
"                                                            orion-"
"application-10_0.xsd\"\n"
"        schema-major-version=\"10\"\n"
"        schema-minor-version=\"0\"\n"
"        component-classification=\"internal\">\n"
"\n"
"    <imported-shared-libraries>\n"
"       <remove-inherited name=\"oracle.xml\"/>\n"
"    </imported-shared-libraries>\n"
"</orion-application>]]>"
msgstr ""

#. Tag: para
#: Oc4j.xml:674
#, no-c-format
msgid ""
"Now you need to tell the <literal>build.xml</literal> file that it needs to "
"copy this file to the <literal>ear</literal> archive. Find the <literal> &lt;"
"target name=\"ear\" description=\"Build the EAR\"&gt; </literal> target and "
"modify the <literal> &lt;copy todir=\"${ear.dir}/META-INF\"&gt; </literal> "
"section to look like the following:"
msgstr ""

#. Tag: programlisting
#: Oc4j.xml:686
#, no-c-format
msgid ""
"<![CDATA[<copy todir=\"${ear.dir}/META-INF\">\n"
"    <fileset dir=\"${basedir}/resources/META-INF\">\n"
"       <include name=\"application.xml\" />\n"
"       <include name=\"orion-application.xml\"/>\n"
"       <include name=\"jboss-app.xml\" />\n"
"    </fileset>\n"
" </copy>]]>"
msgstr ""

#. Tag: title
#: Oc4j.xml:694
#, no-c-format
msgid "Extra jar dependencies"
msgstr ""

#. Tag: para
#: Oc4j.xml:695
#, no-c-format
msgid ""
"This application has similar requirements as the <literal>jee5/booking</"
"literal> example above."
msgstr ""

#. Tag: para
#: Oc4j.xml:697
#, no-c-format
msgid ""
"The <literal>build.xml</literal> must be modified to add the jars listed "
"below to the generated archive files. Look for the <literal>&lt;fileset dir="
"\"${basedir}\"&gt;</literal> section below and add the imports underneath "
"the other libraries being imported."
msgstr ""

#. Tag: programlisting
#: Oc4j.xml:704
#, no-c-format
msgid ""
"<![CDATA[<target name=\"ear\" description=\"Build the EAR\">\n"
"       <copy todir=\"${ear.dir}\">\n"
"               <fileset dir=\"${basedir}/resources\">\n"
"                       <include name=\"*jpdl.xml\" />\n"
"                       <include name=\"*hibernate.cfg.xml\" />\n"
"                       <include name=\"jbpm.cfg.xml\" />\n"
"                       <include name=\"*.drl\" />\n"
"               </fileset>\n"
"            <fileset dir=\"${lib.dir}\">\n"
"                  <include name=\"jboss-seam.jar\" />\n"
"            </fileset>\n"
"               <fileset dir=\"${basedir}\">\n"
"                       <include name=\"lib/jbpm*.jar\" />\n"
"                       <include name=\"lib/jboss-el.jar\" />\n"
"                       <include name=\"lib/drools-*.jar\"/>\n"
"                       <include name=\"lib/janino*.jar\"/>\n"
"                       <include name=\"lib/antlr-*.jar\"/>\n"
"                       <include name=\"lib/mvel*.jar\"/>\n"
"                     <include name=\"lib/richfaces-api*.jar\" />\n"
"               </fileset>\n"
"       </copy>\n"
"       <copy todir=\"${ear.dir}/META-INF\">\n"
"               <fileset dir=\"${basedir}/resources/META-INF\">\n"
"                       <include name=\"application.xml\" />\n"
"                       <include name=\"jboss-app.xml\" />\n"
"               </fileset>\n"
"       </copy>\n"
"</target>]]>"
msgstr ""

#. Tag: para
#: Oc4j.xml:707
#, no-c-format
msgid "Hibernate:"
msgstr ""

#. Tag: programlisting
#: Oc4j.xml:710
#, no-c-format
msgid ""
"<![CDATA[<include name=\"lib/hibernate.jar\"/>\n"
"<include name=\"lib/hibernate-annotations.jar\"/>\n"
"<include name=\"lib/hibernate-commons-annotations.jar\"/>\n"
"<include name=\"lib/hibernate-entitymanager.jar\"/>\n"
"<include name=\"lib/hibernate-search.jar\"/>\n"
"<include name=\"lib/hibernate-validator.jar\"/>\n"
"<include name=\"lib/commons-logging.jar\"/>\n"
"<include name=\"lib/commons-collections.jar\"/>\n"
"<include name=\"lib/jboss-common-core.jar\"/>]]>"
msgstr ""

#. Tag: para
#: Oc4j.xml:713
#, no-c-format
msgid ""
"Drools &#8212; because we are using Drools to provide Seam Security rules, "
"we need to add in Eclipse JDT compiler (you don't need this on JBoss AS; "
"again this is due to OC4J's classloading):"
msgstr ""

#. Tag: programlisting
#: Oc4j.xml:719
#, no-c-format
msgid "<![CDATA[<include name=\"lib/core.jar\"/>]]>"
msgstr ""

#. Tag: para
#: Oc4j.xml:722
#, no-c-format
msgid ""
"Third party jars &#8212; most of these are only needed because of OC4J's "
"classloading:"
msgstr ""

#. Tag: programlisting
#: Oc4j.xml:726
#, no-c-format
msgid ""
"<![CDATA[<include name=\"lib/javassist.jar\"/>\n"
"<include name=\"lib/quartz.jar\"/>\n"
"<include name=\"lib/dbunit.jar\"/>\n"
"<include name=\"lib/jboss-embedded-api.jar\"/>\n"
"<include name=\"lib/dom4j.jar\"/>                             \n"
"<include name=\"lib/lucene-core.jar\"/>\n"
"<include name=\"lib/cglib.jar\"/>\n"
"<include name=\"lib/asm.jar\"/>\n"
"<include name=\"lib/commons-beanutils.jar\"/>\n"
"<include name=\"lib/commons-digester.jar\"/>\n"
"<include name=\"lib/concurrent.jar\"/>\n"
"<include name=\"lib/antlr.jar\"/>]]>"
msgstr ""

#. Tag: para
#: Oc4j.xml:730
#, no-c-format
msgid "You should end up with something like:"
msgstr ""

#. Tag: programlisting
#: Oc4j.xml:733
#, no-c-format
msgid ""
"<![CDATA[<fileset dir=\"${basedir}\">\n"
"      <include name=\"lib/jbpm*.jar\" />\n"
"      <include name=\"lib/jboss-el.jar\" />\n"
"      <include name=\"lib/drools-*.jar\"/>\n"
"      <include name=\"lib/janino*.jar\"/>\n"
"      <include name=\"lib/antlr-*.jar\"/>\n"
"      <include name=\"lib/mvel*.jar\"/>\n"
"      <include name=\"lib/richfaces-api*.jar\" />\n"
"      <include name=\"lib/hibernate.jar\"/>\n"
"      <include name=\"lib/hibernate-annotations.jar\"/>\n"
"      <include name=\"lib/hibernate-commons-annotations.jar\"/>\n"
"      <include name=\"lib/hibernate-entitymanager.jar\"/>\n"
"      <include name=\"lib/hibernate-search.jar\"/>\n"
"      <include name=\"lib/hibernate-validator.jar\"/>\n"
"      <include name=\"lib/commons-logging.jar\"/>\n"
"      <include name=\"lib/commons-collections.jar\"/>\n"
"      <include name=\"lib/jboss-common-core.jar\"/>\n"
"      <include name=\"lib/core.jar\"/>\n"
"      <include name=\"lib/javassist.jar\"/>\n"
"      <include name=\"lib/quartz.jar\"/>\n"
"      <include name=\"lib/dbunit.jar\"/>\n"
"      <include name=\"lib/jboss-embedded-api.jar\"/>\n"
"      <include name=\"lib/dom4j.jar\"/>                             \n"
"      <include name=\"lib/lucene-core.jar\"/>\n"
"      <include name=\"lib/cglib.jar\"/>\n"
"      <include name=\"lib/asm.jar\"/>\n"
"      <include name=\"lib/commons-beanutils.jar\"/>\n"
"      <include name=\"lib/commons-digester.jar\"/>\n"
"      <include name=\"lib/concurrent.jar\"/>\n"
"      <include name=\"lib/antlr.jar\"/>\n"
"</fileset>]]>"
msgstr ""

#. Tag: title
#: Oc4j.xml:738
#, no-c-format
msgid "Building and deploying the seam-gen'd application to OC4J"
msgstr ""

#. Tag: para
#: Oc4j.xml:740
#, no-c-format
msgid ""
"These instructions are very similar to the ones in <xref linkend=\"oc4j-app-"
"deploy\"/> but with the correct references for the <literal>oc4j_example</"
"literal> application."
msgstr ""

#. Tag: para
#: Oc4j.xml:746
#, no-c-format
msgid ""
"Build your application by calling <literal>ant</literal> in the base "
"directory of your project (ex. <literal>/home/jbalunas/workspace/"
"oc4j_example</literal> ). The target of the build will be <literal>dist/"
"oc4j_example.ear</literal> ."
msgstr ""

#. Tag: para
#: Oc4j.xml:754
#, no-c-format
msgid ""
"Copy the <literal>mysql-connector.jar</literal> file to the <literal>"
"$ORACLE_HOME/j2ee/home/applib</literal> directory so that jdbc drivers are "
"available."
msgstr ""

#. Tag: literal
#: Oc4j.xml:761
#, no-c-format
msgid "$ORACLE_HOME/j2ee/home/config/data-sources.xml"
msgstr ""

#. Tag: programlisting
#: Oc4j.xml:766
#, no-c-format
msgid ""
"<![CDATA[<managed-data-source\n"
"   connection-pool-name=\"oc4j-example-connection-pool\"\n"
"   jndi-name=\"jdbc/__oc4jexample\"\n"
"   name=\"oc4j-example-managed-data-source\" />\n"
"<connection-pool\n"
"   name=\"oc4j-example-connection-pool\">\n"
"   <connection-factory\n"
"      factory-class=\"com.mysql.jdbc.Driver\"\n"
"      user=\"username\" \n"
"      password=\"password\"\n"
"      url=\"jdbc:mysql:///oc4j\" />\n"
"</connection-pool>]]>"
msgstr ""

#. Tag: literal
#: Oc4j.xml:770
#, no-c-format
msgid "$ORACLE_HOME/j2ee/home/config/server.xml"
msgstr ""

#. Tag: programlisting
#: Oc4j.xml:774
#, no-c-format
msgid ""
"<![CDATA[<application name=\"oc4j_example\"\n"
" path=\"../../home/applications/oc4j_example.ear\"\n"
" parent=\"default\"\n"
" start=\"true\" />]]>"
msgstr ""

#. Tag: literal
#: Oc4j.xml:777
#, no-c-format
msgid "$ORACLE_HOME/j2ee/home/config/default-web-site.xml"
msgstr ""

#. Tag: programlisting
#: Oc4j.xml:782
#, no-c-format
msgid ""
"<![CDATA[<web-app application=\"oc4j_example\"\n"
" name=\"oc4j_example\" \n"
" load-on-startup=\"true\"\n"
" root=\"/oc4j_example\" />]]>"
msgstr ""

#. Tag: para
#: Oc4j.xml:786
#, no-c-format
msgid ""
"Start/stop OC4J following instructions in the <literal>Installation and "
"operation of OC4J</literal> section above."
msgstr ""

#. Tag: para
#: Oc4j.xml:791
#, no-c-format
msgid ""
"Checkout the app at: <literal>http://localhost:8888/oc4j_example</literal>"
msgstr ""

#. Tag: title
#: Oc4j.xml:800
#, no-c-format
msgid "Extending example with reverse engineered CRUD and Drools"
msgstr ""

#. Tag: para
#: Oc4j.xml:802
#, no-c-format
msgid ""
"In this section we extend the basic <literal>seam-gen</literal> application "
"into a full blown CRUD application based on an existing database. Plus we "
"will add <literal>Drools</literal> based security as well."
msgstr ""

#. Tag: title
#: Oc4j.xml:807
#, no-c-format
msgid "Have <literal>seam-gen</literal> generate your CRUD applications"
msgstr ""

#. Tag: para
#: Oc4j.xml:809
#, no-c-format
msgid ""
"Type <literal>./seam generate-entities</literal> in the base directory of "
"your seam distribution. This will create the entities, the Seam Application "
"Framework classes and the relevant views for the CRUD application."
msgstr ""

#. Tag: para
#: Oc4j.xml:814
#, no-c-format
msgid ""
"That's it...no really...that's it. Build and deploy as before and see for "
"yourself."
msgstr ""

#. Tag: title
#: Oc4j.xml:819
#, no-c-format
msgid "Hook up drools authentication using your new CRUD application"
msgstr ""

#. Tag: para
#: Oc4j.xml:821
#, no-c-format
msgid ""
"As stated above this section assumes your database had a <literal>User</"
"literal> table with <literal>username</literal> and <literal>password</"
"literal> columns with at least one entry. If you don't have this you may "
"need to modify the <literal>authenticate</literal> method below."
msgstr ""

#. Tag: para
#: Oc4j.xml:827
#, no-c-format
msgid ""
"Lets link our <literal>User</literal> entity into Seam Security by making "
"our authenticator class a Stateless Session Bean (OC4J is a EJB3 container "
"after all!):"
msgstr ""

#. Tag: para
#: Oc4j.xml:835
#, no-c-format
msgid ""
"Add the <literal>@Stateless</literal> annotation to the "
"<literal>Authenticator</literal> class."
msgstr ""

#. Tag: para
#: Oc4j.xml:841
#, no-c-format
msgid "Rename the class to <literal>AuthenticatorAction</literal>"
msgstr ""

#. Tag: para
#: Oc4j.xml:846
#, no-c-format
msgid ""
"Create an interface called <literal>Authenticator</literal> which "
"<literal>AuthenticatorAction</literal> implements (EJB3 requires session "
"beans to have a local interface). Annotate the interface with "
"<literal>@Local</literal> , and add a single method with same signature as "
"the <literal>authenticate</literal> in <literal>AuthenticatorAction</"
"literal> ."
msgstr ""

#. Tag: programlisting
#: Oc4j.xml:860
#, no-c-format
msgid ""
"<![CDATA[@Name(\"authenticator\") @Stateless public class\n"
"            AuthenticatorAction implements Authenticator {]]>"
msgstr ""

#. Tag: programlisting
#: Oc4j.xml:863
#, no-c-format
msgid ""
"<![CDATA[@Local public interface Authenticator { \n"
"  public boolean authenticate(); \n"
"}]]>"
msgstr ""

#. Tag: para
#: Oc4j.xml:866
#, no-c-format
msgid ""
"Use <literal>@PersistenceContext</literal> to inject an EntityManager by "
"adding this line the <literal>AuthenticatorAction</literal> class:"
msgstr ""

#. Tag: programlisting
#: Oc4j.xml:872
#, no-c-format
msgid "<![CDATA[@PersistenceContext private EntityManager entityManager;]]>"
msgstr ""

#. Tag: para
#: Oc4j.xml:875
#, no-c-format
msgid "Implement authenticate:"
msgstr ""

#. Tag: programlisting
#: Oc4j.xml:878
#, no-c-format
msgid ""
"<![CDATA[public boolean authenticate() {\n"
"   List <User> users = entityManager .createQuery(\"select u from User u "
"where \n"
"   u.username = #{identity.username} and \n"
"   u.password = #{identity.password}\") .getResultList();\n"
"   if (users.size() == 1) {\n"
"      identity.addRole(\"admin\"); \n"
"      return true; \n"
"   } else {\n"
"      return false; \n"
"   } \n"
"}]]>"
msgstr ""

#. Tag: para
#: Oc4j.xml:881
#, no-c-format
msgid "And then add the EJB3 reference to <literal>web.xml</literal> :"
msgstr ""

#. Tag: programlisting
#: Oc4j.xml:885
#, no-c-format
msgid ""
"<![CDATA[<ejb-local-ref>\n"
"   <ejb-ref-name>\n"
"      oc4j_example/AuthenticatorAction/local\n"
"   </ejb-ref-name>\n"
"   <ejb-ref-type>Session</ejb-ref-type>\n"
"   <local>\n"
"      org.jboss.seam.tutorial.oc4j.action.Authenticator\n"
"   </local>\n"
"   <ejb-link>AuthenticatorAction</ejb-link>\n"
"</ejb-local-ref>]]>"
msgstr ""

#. Tag: para
#: Oc4j.xml:889
#, no-c-format
msgid ""
"Build and deploy as before and notice that now only actual username and "
"passwords are accepted."
msgstr ""

#. Tag: title
#: Oc4j.xml:897
#, no-c-format
msgid "Finishing up"
msgstr ""

#. Tag: para
#: Oc4j.xml:898
#, no-c-format
msgid ""
"That's it, we're through. You now have a great starting point for any Seam "
"based application deployed to OC4J."
msgstr ""
