2009-08-20 23 views
27

me enfrento a la siguiente excepción:
weblogic.transaction.internal.TimedOutException: Transacción tiempo de espera después de 300 segundosWeblogic espera de transacción: cómo configurar en la consola de administración de WebLogic como 8,1

esto se establece dentro de la sesión sin estado EJB Bean como javax.transaction.UserTransaction jtaTransaction.setTransactionTimeout (300) pero no puedo entender en qué parte de la consola de la aplicación configurar esta propiedad.

+0

Si no es capaz de establecer el tiempo de espera con la consola, consulte [esta respuesta] (http://stackoverflow.com/a/17580412/1782379). – bsiamionau

Respuesta

37

Después de iniciar la sesión, en la página principal de la consola de servidor debería ver 3 secciones:

  • información y recursos
  • Configuraciones del dominio
  • Servicios Configuraciones

Bajo Servicios Configuraciones hay subsección Otros servicios. Haga clic en el Configuración JTA enlace debajo de Otros servicios. El tiempo de espera de la transacción debe ser la configuración superior en la página que se muestra, con la etiqueta Tiempos de espera.

Weblogic Console screenshot

24

tenía el mismo problema, gracias mikej.

En WLS 10.3 esta configuración se puede encontrar en Servicios> JTA menú, o si hace clic en el nombre de dominio (primer elemento en el menú) - en los Configuración> JTA pestañas.

alt text

0

Su posible a nivel de aplicación. Haga clic en EJB debajo de la implementación (como Inicio>> Resumen de implementaciones>). Haga clic en la ficha Configuración y hay "tiempo de espera de la transacción:"

+0

No existe tal cosa ... es tiempo de espera de sesión – Cris

3

En Weblogic 9.2 la configuración a través de la consola es el siguiente:

enter image description here

creo que el valor predeterminado era 60. Recuerde utilizar el botón Release Configuration después de editar el campo.

0

Si no desea cambiar el tiempo de espera predeterminado de todo el dominio, su mejor opción es cambiar el descriptor de despliegue mediante el establecimiento de los trans-timeout segundos atribuyen en el weblogic-ejb-jar.xml - ver http://docs.oracle.com/cd/E11035_01/wls100/jta/trxejb.html

Esto anula el valor predeterminado de "Tiempos de espera", solo para este EJB específico, mientras deja sin afectar al resto de los EJB.

0

El enlace de arriba está bastante desactualizado. Para WebLogic 12c, puede definir el tiempo de ejecución de la transacción en un descriptor de transacción para cada EJB en el descriptor de despliegue de WebLogic weblogic-ejb-jar.xml, consulte weblogic-ejb-jar.xml Deployment Descriptor Reference.

Para un mensaje impulsada estado que se parece a esto:

<weblogic-enterprise-bean> 
    <ejb-name>TestMessageBeanLow</ejb-name> 
    <message-driven-descriptor> 
     <pool> 
      <max-beans-in-free-pool>1</max-beans-in-free-pool> 
     </pool> 
     <destination-jndi-name>jms/ActiveMQ/TestRequestQueue_LOW</destination-jndi-name> 
     <connection-factory-jndi-name>jms/ActiveMQ/TestConnectionFactory</connection-factory-jndi-name> 
    </message-driven-descriptor> 
    <transaction-descriptor> 
     <trans-timeout-seconds>60</trans-timeout-seconds> 
    </transaction-descriptor> 
    <resource-description> 
     <res-ref-name>jms/ConnectionFactory</res-ref-name> 
     <jndi-name>jms/ActiveMQ/TestConnectionFactory</jndi-name> 
    </resource-description> 
</weblogic-enterprise-bean> 

Cuestiones relacionadas