Edita el archivo pom.xml en la raíz de tu proyecto, allí añade la siguiente dependencia dentro de la parte <dependencies>:
<dependency>
<groupId>net.sf.jt400</groupId>
<artifactId>jt400</artifactId>
<version>20.0.8</version>
<classifier>java8</classifier>
</dependency>
Quizás ya tengas este código en tu pom.xml pero comentado, en ese caso simplemente descoméntalo.<Resource name="jdbc/MiAplicacionDS" auth="Container"
type="javax.sql.DataSource"
maxTotal="100" maxIdle="20" maxWaitMillis="10000"
username="root" password="ao49fmsk"
driverClassName="com.ibm.as400.access.AS400JDBCDriver"
url="jdbc:as400:192.168.1.8/mibiblioteca"/>
CRTJRNRCV JRNRCV(MILIB/MIRCV) THRESHOLD(5000)
CRTJRN JRN(MILIB/MIJRN) JRNRCV(MILIB/MIRCV) MNGRCV(*SYSTEM)
CHGJRN JRN(MILIB/MIJRN) JRNRCV(*GEN) DLTRCV(*YES)
STRJRNPF FILE(MILIB/*ALL) JRN(MILIB/MIJRN) IMAGES(*BOTH) OMTJRNE(*OPNCLO)
STRJRNPF FILE(MILIB/MITABLA) JRN(MILIB/MIJRN)
Después de los cambios has de reconstruir (rebuild) tu proyecto. En OpenXava Studio pulsa con el botón derecho del ratón en tu proyecto y escoge Run As > Maven install, así:
O si tienes Maven instalado en tu ordenador y prefieres usar la línea de órdenes:
$ cd miaplicacion
$ mvn install
Nota de optimización: En lugar de mvn install, que hace un build de Maven completo, puedes usar mvn war:exploded, suficiente para aplicar los cambios de arriba para desarrollo. Puedes llamar a mvn war:exploded desde el OpenXava Studio con Run As > Maven build... y tecleando war:exploded para goal.
Ejecuta tu aplicación, debería funcionar bien contra tu IBM i. Si fallara, verifica que el usuario y la contraseña son correctos, que la IP del AS/400 es correcta. Verifica también que el diario está activado para la biblioteca y las tablas añadidas al diario, como se ha visto arriba.
Si sigue fallando pregúntanos en el foro de ayuda de OpenXava. Incluye el contenido de tu persistence.xml, context.xml (quita las contraseñas) y sobre todo la traza generada, puedes encontrar la traza en la pestaña Console del OpenXava Studio.
Si tu aplicación Java se está ejecutando en un Windows Server y te encuentras con problemas de rendimiento, posiblemente no sea un problema del AS/400 sino un problema de configuración de red en el Windows Server. No te preocupes, el problema es fácil de solucionar, simplemente añade el parametro tcp no delay=true a la URL de conexión a la base de datos. Es decir, la definición de la fuente de datos en el context.xml podría ser:
<Resource name="jdbc/MiAplicacionDS" auth="Container"
type="javax.sql.DataSource"
maxTotal="100" maxIdle="20" maxWaitMillis="10000"
username="root" password="ao49fmsk"
driverClassName="com.ibm.as400.access.AS400JDBCDriver"
url="jdbc:as400:192.168.1.8/mibiblioteca;tcp no delay=true"/>
Fíjate en el tcp no delay=true al final de la URL.