[ http://jira.jboss.com/jira/browse/JBAS-1307?page=history ] Scott M Stark resolved JBAS-1307: ---------------------------------
Resolution: Done Fix Version: JBossAS-3.2.7 Final JBossAS-4.0.2RC1 JBossAS-5.0 Alpha The transaction-timeout is not parsed unless its a non-zero string. > Confusing stack trace on EJB deployment for missing optional method attribute > <transaction-timeout> > --------------------------------------------------------------------------------------------------- > > Key: JBAS-1307 > URL: http://jira.jboss.com/jira/browse/JBAS-1307 > Project: JBoss Application Server > Type: Bug > Components: EJBs > Versions: JBossAS-3.2.6 Final > Environment: JBoss 3.2.6, Java 1.4.2, Linux > Reporter: Jurjan-Paul Medema > Assignee: Scott M Stark > Priority: Minor > Fix For: JBossAS-3.2.7 Final, JBossAS-5.0 Alpha, JBossAS-4.0.2RC1 > > > This bug is not critical, but unnecessary stack traces at DEBUG level make > the log look untidy and make both system administrators and developers spend > precious time investigating a problem that doesn't exist. > On deployment of my EJBs in JBoss 3.2.6 NumberFormatExceptions are logged > repeatedly with stack traces on DEBUG level: > 2005-01-19 16:23:21,765 DEBUG [org.jboss.deployment.MainDeployer] create step > for deployment file:/home/jpm/jboss/jboss-3.2.6/ > server/myproject/deploy/myproject-ejb.jar > 2005-01-19 16:23:21,766 DEBUG [org.jboss.ejb.EJBDeployer] create, > myproject-ejb.jar > 2005-01-19 16:23:27,172 DEBUG [org.jboss.metadata.MetaData] Ignoring > transaction-timeout 'null' > java.lang.NumberFormatException: null > at java.lang.Integer.parseInt(Integer.java:436) > at java.lang.Integer.parseInt(Integer.java:518) > at > org.jboss.metadata.BeanMetaData.importJbossXml(BeanMetaData.java:790) > at > org.jboss.metadata.EntityMetaData.importJbossXml(EntityMetaData.java:341) > at > org.jboss.metadata.ApplicationMetaData.importJbossXml(ApplicationMetaData.java:729) > at org.jboss.metadata.XmlFileLoader.load(XmlFileLoader.java:175) > at org.jboss.ejb.EJBDeployer.create(EJBDeployer.java:462) > ... > A relevant piece of the (XDoclet-generated) jboss.xml contained in the .jar > file looks like: > <entity> > <ejb-name>MyEntity</ejb-name> > <jndi-name>ejb/myproject/MyEntity</jndi-name> > <local-jndi-name>ejb/myproject/MyEntity</local-jndi-name> > <method-attributes> > <method> > <method-name>getId</method-name> > <read-only>true</read-only> > </method> > <method> > <method-name>getStatus</method-name> > <read-only>true</read-only> > </method> > ... > </method-attributes> > </entity> > ... > So, my method-attributes don't contain the *optional* <transaction-timeout> > element, which should be perfectly legal (it was in JBoss 3.2.1 anyway). > The following piece of JBoss code (from BeanMetaData.java, from line 787) > appears to be the culprit: > String txTimeout = getOptionalChildContent(maNode, "transaction-timeout"); > try > { > ma.txTimeout = Integer.parseInt(txTimeout); > } > catch (Exception ignore) > { > log.debug("Ignoring transaction-timeout '" + txTimeout + "'", ignore); > } > I suggest that txTimeout should be tested for a null value before attempting > to parse it as integer. Apart from that, no stack trace should be logged for > something that can be legally ignored. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa - If you want more information on JIRA, or have a bug to report see: http://www.atlassian.com/software/jira ------------------------------------------------------- This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting Tool for open source databases. Create drag-&-drop reports. Save time by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc. Download a FREE copy at http://www.intelliview.com/go/osdn_nl _______________________________________________ JBoss-Development mailing list JBoss-Development@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/jboss-development