Copyright © 2006-2007
Resumen
Estas son las notas de lanzamiento para la Plataforma de Aplicaciones de JBoss Enterprise Lanzamiento 4.2, las cuales incluyen información importante y actualizada.
¿Está buscando una herramienta potente para desarrollar aplicaciones de alto rendimiento, Web 2.0 en una plataforma Java pura?
JBoss Enterprise Application Platform 4.2 is the next evolutionary step in open source enterprise software.
Proporciona compatibilidad completa con aplicaciones Java empresariales J2EE 1.4 ya existentes.
Al mismo tiempo, se soportan casi todas la características y componentes claves definidos en la especificación Java EE 5.0. De esta manera sus nuevas aplicaciones Java empresariales pueden sacar ventaja de manera inmediata del modelo de programación con base en POJO mucho más simple de Java EE 5.0.
Además al integrar las mejores estructuras de código abierto, tal como JBoss Seam, Hibernate, Tomcat y JBoss Cache -- JBoss Enterprise Application Platform saca provecho de las innovaciones en la comunidad de código abierto.
As well, JBoss Enterprise Application Platform 4.2 is fully tested and supported by Red Hat, and is certified to work on many leading enterprise hardware and software products.
Todo esto significa que puede desarrollar su nueva aplicación tomando ventaja de la tecnología Java EE 5.0 de manera inmediata y con la tranquilidad de saber que seguirá siendo compatible con versiones futuras de la plataforma de JBoss.
http://www.redhat.com/support/process/
http://www.redhat.com/support/policy/soc/production
http://www.redhat.com/support/policy/sla/production/
http://www.redhat.com/support/policy/soc/developer/
http://www.redhat.com/support/policy/sla/developer/
http://www.redhat.com/security/updates/jboss_notes/
En la distribución zip, la documentación para la plataforma y sus componentes individuales se distribuyen en un archivo zip que viene por separado, jboss-eap-docs-4.2.0-1.ep1.1.zip.
En un sistema Linux, la documentación se encuentra en dos rpms que se deben instalar manualmente. Estos rpms son jboss-seam-docs-1.2.0-1.AP.ep1.11.noarch.rpm y rh-eap-docs-4.2.0-1.ep1.5.noarch.rpm. Para obtener ayuda sobre como instalar paquetes rpm en Red Hat Enterprise Linux consulte el artículo básico sobre Red Hat que encontrará en http://kbase.redhat.com/faq/FAQ_35_198.shtm.
Updated versions of the documentation may be accessed via the web from http://www.redhat.com/docs
Vea el archivo index.html en el directorio de documentación para obtener una lista de la documentación incluida. También consulte las notas de lanzamiento de JBoss AS 4.2 que se encuentran en JBOSS_DIST/jboss-as/readme.html.
Si está utilizando el rpm o la distribución en formato zip observe que por defecto se habilita la autenticación y no se configuran las cuentas de usuario. Esto se hace para prevenir el acceso no autorizado a varios de los servicios de JBoss AS. Consulte el manual de instalación o vea http://kbase.redhat.com/faq/FAQ_107_9963.shtm para obtener mayor información sobre como hacer accesibles los servicios de nuevo.
Se recomienda que ejecute las aplicaciones Seam de muestra que se encuentran incluídas con el servidor utilizando la configuración de producción. Si utiliza otra configuración esto podría generar problemas con la memoria como se describe en: El desplegar las aplicaciones SEAM de muestra causa un error de espacio: java.lang.OutOfMemoryError: PermGen space . Observe que la configuración predeterminada para el servidor para iniciar es la configuración de producción a menos de que se especifique otra configuración.
Observe que la Hypersonic Database se encuentra incluída como una vista previa y su uso no se soporta en entornos de producción. No hay soporte técnico disponible para este componente y a pesar de que recibimos los reportes de errores sobre este componente no nos comprometemos a arreglarlos dentro de un plazo de tiempo específico.
A continuación encontrará una lista de los problemas conocidos al momento del lanzamiento. Puede encontrar más detalles sobre este tema en JIRA.
El despliegue de algunos MBeans falla con algunos errores.
Aparecen errores similares a los siguientes en server.log:
ERROR [org.apache.catalina.core.ContainerBase.[jboss.web].[localhost].[/portal-core]] Error configuring application listener of class org.apache.myfaces.webapp.StartupServletContextListener java.lang.ClassNotFoundException: org.apache.myfaces.webapp.StartupServletContextListener
Actualmente esperando la incorporación de las soluciones de los errores.
Ninguna en este momento. El portal 2.6 puede desplegar en 4.2 pero no funcionan todos los componentes.
JBoss AS 4.2.0.GA no se puede añadir a la lista del servidor NetBeans 5.5 ya que no es detectado.
Esto ya se arregló en una versión posterior de NetBeans. NetBeans 5.5.1 RC1 y versiones posteriores detectan de manera exitosa JBoss 4.2.0.
Si no es posible utilizar NetBeans 5.5.1 RC 1 o versiones posteriores añada un archivo vacío llamado resolver.jar a $JBOSS_HOME/lib/endorsed. Esto habilitará la detección del servidor por NetBeans 5.5.
Hay dos ejemplos SEAM que se proporcionan con la distribución de la plataforma de aplicaciones SEAM. Además, hay varios ejemplos que se proporcionan en seam/examples. Si intenta desplegar todos los ejemplos esto hará que se agote el espacio PermGen del servidor. El servidor ya no se podrá utilizar y se debe terminar con el comando explícito "kill".
Si inicia el servidor con el perfil production esto resolverá el problema.
Cuando JBoss AS se inicia como un servicio en Linux, HSQL Database Manager no logra iniciar. Se observa un error similar al siguiente en server.log:
2007-05-17 12:15:29,113 ERROR [org.jboss.jdbc.HypersonicDatabase] Failed to star
t database manager
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.jboss.jdbc.HypersonicDatabase$1.run(HypersonicDatabase.java:517)
Caused by: java.awt.HeadlessException:
No X11 DISPLAY variable was set, but this program performed an operation which r
equires it.
at java.awt.GraphicsEnvironment.checkHeadless(GraphicsEnvironment.java:1
59)
at java.awt.Window.<init>
>(Window.java:317)
at java.awt.Frame.<init>(Frame.java:419)
at javax.swing.JFrame.<init>(JFrame.java:194)
at org.hsqldb.util.DatabaseManagerSwing.main(Unknown Source)
HSQL Database Manager arranca si JBoss AS es inicado utilizando run.sh
When JBoss AS has been started using the minimal configuration, the desktop shortcut to shutdown the server results in a verbose error message.
This is expected behaviour for the server. The Server Shutdown desktop shortcut and the shutdown script both rely on the jmx-invoker-service.xml service. As this is not enabled in the minimal configuration these two methods cannot be used to shut down the server. The server may be started manually at a command line and the Ctrl-C key combination used to stop it in this case.
Cuando el agente JON se encuentra ejecutando en una máquina windows y el servidor en una máquina Linux las instrucciones que muestran como utilizar Tomcat no aparecen.
Puede seguir estas instrucciones para manejar Tomcat para monitoreamiento:
Configure Tomcat 6.0 JBoss incluído para monitoreamiento
Observe: si está monitoreando el Tomcat interno de JON estos pasos no son necesarios.
Para habilitar el monitoreamiento de los servidores y servicios de Tomcat el servidor debe ser instrumentado utilizando un filtro para recoger la métrica y una aplicación web para poder entregar los datos métricos a JON. La aplicación web, el filtro y cualquier jar adicional se encuentran empacados en un directorio de agentes JON bajo product_connectors\servlet. Todos los comandos que se muestran a continuación se deben emitir desde este directorio.
El primer paso para poder hacer Tomcat monitoreable es instalar el filtro y la aplicación web. Estos se utilizan para recoger toda la métrica interna de Tomcat.
copie libs\hq-filter.jar %JBOSS_HOME%\server\{default | all|\deploy\jboss-web.deployer
Después despliegue el jbnem-monitor webapp en su servidor JBoss:
xcopy /E jbnem-monitor %JBOSS_HOME%\server\{default | all}\deploy\jboss-web.deployer\..\jbnem-monitor.war\
Finalmente, el filtro debe estar habilitado. Se debe añadir lo siguiente a %JBOSS_HOME%\server\{default | all}\deploy\jboss-web.deployer\conf\web.xml. Tenga en mente que cada etiqueta debe estar agrupada.
<filter>
<filter-name>JMXFilter</filter-name>
<filter-class>net.hyperic.hq.product.servlet.filter.JMXFilter</filter-class>
<!-- Uncomment the following line to enable response time logging.
The directory you specify as the param can include properties
referenced from the System.properties of the vm.
The ResponseTime log file will by default store the last 1 hour's
worth of response time data. This file gets truncated as soon as
data is succesfully sent into the server. The file is named uniquely
for each webapp in the form: yourContextName_JBNEMResponseTime.log
If this fragment is included in the global web.xml for the container,
all webapps in it will generate response time data, and have logs
following the format described above. You can enable it individually
on each webapp as well if you dont want every webapp to generate
response time data
-->
<!--
<init-param>
<param-name>responseTimeLogDir</param-name>
<param-value>%JBOSS_HOME%\jboss-as\server\{default | all}\log</param-value>
</init-param>
-->
<!-- these are optional parameters which you can override to optimize logging -->
<!--
<init-param>
<param-name>bufferSize</param-name>
<param-value>8k</param-value>
</init-param>
<init-param>
<param-name>bufferTime</param-name>
<param-value>1h</param-value>
</init-param>
-->
</filter>
<filter-mapping>
<filter-name>JMXFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<listener>
<listener-class>net.hyperic.hq.product.servlet.filter.JMXSessionListener</listener-class>
</listener>
<servlet>
<servlet-name>JMXWebappMetricServlet</servlet-name>
<servlet-class>net.hyperic.hq.product.servlet.filter.JMXFilterInitServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
Cuando el método de un JSF backing bean requiere la inyección de un bean EJB3 o cuando se llama a una interfaz de bean, invoca una excepción: ERROR [JBossInjectionProvider] Injection failed on managed bean.
JBoss AS 4.2 is fully compatible with Java 1.4 EE applications, and provides extended functionality via an EJB3 plugin. Injections and annotations currently only function within the EJB3 plugin.
Hay dos métodos disponibles para solucionar esto. Uno es utilizar un JNDI lookup explícito. Para ver un ejemplo de esto, refiérase al código para el TodoBean en la aplicación de ejemplo ejb3jsf que se incluye con la documentación. La otra pos¡ble solución es utilizar la estructura Seam para obtener beans EJB3 en el nivel web. Consulte la aplicación de ejemplo seam que está incluida en la documentación.
More information on the workaround is available in the Getting Started Guide in the included documentation.
Ciertos caracteres de ecape cuando se utilizan en una expresión LIKE causan una excepción que ocurre con PostgreSQL 8.2.
Hay ciertos "caracteres de escape" que quiere evitar para poder favorecer la protabilidad entre los diferentes vendedores de bases de datos. Por ejemplo, la barra oblicua ('\') tiene un significado especial en PostgreSQL (y posiblemente en otras bases de datos también) y no se puede utilizar en una secuencia de escape al contrario de otras bases de datos. En su lugar utilice un caracter de escape que sea razonablemente seguro en todas las bases de datos como "pipe" ('|').
There are a number of issues in the EJB3 implementation in this release that need to be understood when developing for the platform. A summary of the issues with a link to further information follows.
EJBTHREE-899 - WebServiceRef injection from deployment descriptor does not work.
EJBTHREE-900 - Injection of WebServiceContext doesn't work.
EJBTHREE-896 - Specifying an interceptor-order in ejb-jar.xml also creates a new instance of the interceptor.
EJBTHREE-985 - env-entry-value is optional (16.4.1.3 last paragraph).
EJBTHREE-989 - Can't inject resources of type URL.
EJBTHREE-967 - Injection of ORB doesn't work (EJB3 16.13).
EJBTHREE-724 - persistence.xml jar-file processing (EJB3 6.2.1.6).
EJBTHREE-757 - getMessageContext Not Implemented.