NamingException while finding UserTransaction named java:comp/env/UserTransaction in JNDI

お困りですか?

アトラシアン コミュニティをご利用ください。

コミュニティに質問

症状

When JIRA application is running, the following exception is captured and flooding the logs file:

[core.entity.transaction.JNDIFactory] NamingException while finding UserTransaction named java:comp/env/UserTransaction in JNDI.
javax.naming.NameNotFoundException: Name UserTransaction is not bound in this Context
at org.apache.naming.NamingContext.lookup(NamingContext.java:770)
at org.apache.naming.NamingContext.lookup(NamingContext.java:140)
at org.apache.naming.NamingContext.lookup(NamingContext.java:781)
at org.apache.naming.NamingContext.lookup(NamingContext.java:140)
at org.apache.naming.NamingContext.lookup(NamingContext.java:781)
at org.apache.naming.NamingContext.lookup(NamingContext.java:153)
at org.apache.naming.SelectorContext.lookup(SelectorContext.java:152)
at javax.naming.InitialContext.lookup(InitialContext.java:409)
at org.ofbiz.core.entity.transaction.JNDIFactory.getUserTransaction(JNDIFactory.java:113)
at org.ofbiz.core.entity.TransactionFactory.getUserTransaction(TransactionFactory.java:93)
at org.ofbiz.core.entity.TransactionUtil.getStatus(TransactionUtil.java:81)
at org.ofbiz.core.entity.jdbc.SQLProcessor.getConnection(SQLProcessor.java:412)
at org.ofbiz.core.entity.GenericDAO.select(GenericDAO.java:464)
at org.ofbiz.core.entity.GenericHelperDAO.findByPrimaryKey(GenericHelperDAO.java:78)
at org.ofbiz.core.entity.GenericDelegator.findByPrimaryKey(GenericDelegator.java:543)
at org.ofbiz.core.entity.GenericDelegator.findByPrimaryKey(GenericDelegator.java:578)
at com.opensymphony.module.propertyset.ofbiz.OFBizPropertySet.get(OFBizPropertySet.java:277)
at com.opensymphony.module.propertyset.AbstractPropertySet.getString(AbstractPropertySet.java:305)
at com.atlassian.sal.jira.scheduling.JiraPluginSchedulerService.run(JiraPluginSchedulerService.java:66)
at com.atlassian.jira.service.JiraServiceContainerImpl.run(JiraServiceContainerImpl.java:60)
at com.atlassian.jira.service.ServiceRunner.execute(ServiceRunner.java:47)
at org.quartz.core.JobRunShell.run(JobRunShell.java:195)
at com.atlassian.multitenant.quartz.MultiTenantThreadPool$MultiTenantRunnable.run(MultiTenantThreadPool.java:72)
at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:520)
2011-09-14 13:16:31,889 QuartzWorker-1 WARN ServiceRunner com.atlassian.jira.plugin.ext.bamboo.service.PlanStatusUpdateServiceImpl:job [core.entity.transaction.JNDIFactory][JNDIFactory.getUserTransaction] Failed to find UserTransaction named java:comp/env/UserTransaction in JNDI.

原因

This problem mainly affects JIRA EAR/WAR installation type, whereby the 'UserTransaction' Resource is missing from the server.xml file.

ソリューション

  1. In order to fix the issue, we can add the UserTransaction in the server.xml file:

    <Resource name="UserTransaction" auth="Container" type="javax.transaction.UserTransaction"
        factory="org.objectweb.jotm.UserTransactionFactory" jotm.timeout="60"/>
    <Manager pathname=""/>

    (info) Additional details on this are specified in the documentation on Configure JIRA's Context in Tomcat.


  2. Try to force JIRA to recompile the jsp files by doing the following:
    1. Jira をシャットダウンします。
    2. Remove the work folder located in the tomcat installation directory to force JIRA recompile all jsp files.
    3. Delete the webapps/jira subdirectory of your Tomcat installation directory
    4. Jira を再起動します。

There is also a known issue with the configuration of dbconfig.xml as detailed in JIRA server functionality fails due to InstanceAlreadyExistsException that may additionally be related to this.

最終更新日 2023 年 7 月 25 日

この内容はお役に立ちましたか?

はい
いいえ
この記事についてのフィードバックを送信する
Powered by Confluence and Scroll Viewport.