[jboss-jira] [JBoss JIRA] Assigned: (JBAS-6085) If you use turksih locale Jboss AS throw org.jboss.deployment.DeploymentException: TX TYPE was null for: RequiresNew while startup
Dimitris Andreadis (JIRA)
jira-events at lists.jboss.org
Tue Oct 14 07:22:21 EDT 2008
[ https://jira.jboss.org/jira/browse/JBAS-6085?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Dimitris Andreadis reassigned JBAS-6085:
----------------------------------------
Assignee: Dimitris Andreadis
> If you use turksih locale Jboss AS throw org.jboss.deployment.DeploymentException: TX TYPE was null for: RequiresNew while startup
> ----------------------------------------------------------------------------------------------------------------------------------
>
> Key: JBAS-6085
> URL: https://jira.jboss.org/jira/browse/JBAS-6085
> Project: JBoss Application Server
> Issue Type: Bug
> Security Level: Public(Everyone can see)
> Components: Aspects
> Affects Versions: JBossAS-4.2.3.GA
> Environment: Pardus Linux, java jdk 15. Turkish locale
> Reporter: halil agin
> Assignee: Dimitris Andreadis
> Original Estimate: 0 minutes
> Remaining Estimate: 0 minutes
>
>
> 17:05:01,714 ERROR [MainDeployer] Could not create deployment: file:/usr/local/bugreportingfor_jboss423/compiled/jboss423/server/default/deploy/jboss-portal.sar
> org.jboss.deployment.DeploymentException: TX TYPE was null for: RequiresNew; - nested throwable: (java.lang.RuntimeException: TX TYPE was null for: RequiresNew)
> at org.jboss.system.ServiceConfigurator.install(ServiceConfigurator.java:196)
> at org.jboss.system.ServiceController.install(ServiceController.java:226)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:585)
> at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
> at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
> at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
> at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
> at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
> at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
> at $Proxy4.install(Unknown Source)
> at org.jboss.deployment.SARDeployer.create(SARDeployer.java:251)
> at org.jboss.deployment.MainDeployer.create(MainDeployer.java:969)
> at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:818)
> at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:782)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:585)
> at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
> at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
> at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:133)
> at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
> at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:142)
> at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
> at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
> at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
> at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
> at $Proxy9.deploy(Unknown Source)
> at org.jboss.deployment.scanner.URLDeploymentScanner.deploy(URLDeploymentScanner.java:421)
> at org.jboss.deployment.scanner.URLDeploymentScanner.scan(URLDeploymentScanner.java:634)
> at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.doScan(AbstractDeploymentScanner.java:263)
> at org.jboss.deployment.scanner.AbstractDeploymentScanner.startService(AbstractDeploymentScanner.java:336)
> at org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanSupport.java:289)
> at org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport.java:245)
> at sun.reflect.GeneratedMethodAccessor3.invoke(Unknown Source)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:585)
> at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
> at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
> at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
> at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
> at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
> at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:978)
> at $Proxy0.start(Unknown Source)
> at org.jboss.system.ServiceController.start(ServiceController.java:417)
> at sun.reflect.GeneratedMethodAccessor9.invoke(Unknown Source)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:585)
> at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
> at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
> at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
> at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
> at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
> at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
> at $Proxy4.start(Unknown Source)
> at org.jboss.deployment.SARDeployer.start(SARDeployer.java:304)
> at org.jboss.deployment.MainDeployer.start(MainDeployer.java:1025)
> at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:819)
> at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:782)
> at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:766)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:585)
> at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
> at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
> at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:133)
> at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
> at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:142)
> at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
> at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
> at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
> at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
> at $Proxy5.deploy(Unknown Source)
> at org.jboss.system.server.ServerImpl.doStart(ServerImpl.java:482)
> at org.jboss.system.server.ServerImpl.start(ServerImpl.java:362)
> at org.jboss.Main.boot(Main.java:200)
> at org.jboss.Main$1.run(Main.java:508)
> at java.lang.Thread.run(Thread.java:595)
> Caused by: java.lang.RuntimeException: TX TYPE was null for: RequiresNew
> at org.jboss.aspects.tx.TxInterceptorFactory.createPerJoinpoint(TxInterceptorFactory.java:125)
> at org.jboss.aop.advice.AspectFactoryDelegator.createPerJoinpoint(AspectFactoryDelegator.java:119)
> at org.jboss.aop.advice.ScopedInterceptorFactory.create(ScopedInterceptorFactory.java:113)
> at org.jboss.aop.Advisor.createInterceptorChain(Advisor.java:618)
> at org.jboss.aop.Advisor.pointcutResolved(Advisor.java:888)
> at org.jboss.aop.Advisor.resolveMethodPointcut(Advisor.java:650)
> at org.jboss.aop.ClassAdvisor.createInterceptorChains(ClassAdvisor.java:607)
> at org.jboss.aop.ClassAdvisor.access$300(ClassAdvisor.java:82)
> at org.jboss.aop.ClassAdvisor$1.run(ClassAdvisor.java:299)
> at java.security.AccessController.doPrivileged(Native Method)
> at org.jboss.aop.ClassAdvisor.attachClass(ClassAdvisor.java:271)
> at org.jboss.aop.AspectManager.initialiseClassAdvisor(AspectManager.java:591)
> at org.jboss.aop.AspectManager.getAdvisor(AspectManager.java:579)
> at org.jboss.portal.core.aspects.server.TransactionInterceptor.<clinit>(TransactionInterceptor.java)
> at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
> at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
> at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
> at java.lang.reflect.Constructor.newInstance(Constructor.java:494)
> at org.jboss.mx.server.MBeanServerImpl.instantiate(MBeanServerImpl.java:1233)
> at org.jboss.mx.server.MBeanServerImpl.instantiate(MBeanServerImpl.java:286)
> at org.jboss.system.ServiceCreator.install(ServiceCreator.java:170)
> at org.jboss.system.ServiceConfigurator.internalInstall(ServiceConfigurator.java:451)
> at org.jboss.system.ServiceConfigurator.install(ServiceConfigurator.java:171)
> ... 81 more
> the problem occurs if your application environment has the Turkish locale and org.jboss.aspects.tx.TxInterceptorFactory.createPerJoinpoint method is called...
> this method is located in
> ./aspects/src/main/org/jboss/aspects/tx/TxInterceptorFactory.java file.
> in this file there is a loca property named nameMap as below
> <code>
> 42 public class TxInterceptorFactory implements org.jboss.aop.advice.AspectFactory
> 43 {
> 44 protected TxPolicy policy;
> 45 protected HashMap nameMap = new HashMap();
> 46
> </code>
> and this hash map is populated as below
> 52 public void initialize()
> 53 {
> 54 if (policy != null) return;
> 55 initializePolicy();
> 56 nameMap.put("NEVER", new TxInterceptor.Never(TransactionManagerLocator.getInstance().locate(), policy));
> 57 nameMap.put("NOTSUPPORTED", new TxInterceptor.NotSupported(TransactionManagerLocator.getInstance().locate(), policy));
> 58 nameMap.put("SUPPORTS", new TxInterceptor.Supports(TransactionManagerLocator.getInstance().locate(), policy));
> 59 nameMap.put("REQUIRED", new TxInterceptor.Required(TransactionManagerLocator.getInstance().locate(), policy));
> 60 nameMap.put("REQUIRESNEW", new TxInterceptor.RequiresNew(TransactionManagerLocator.getInstance().locate(), policy));
> 61 nameMap.put("MANDATORY", new TxInterceptor.Mandatory(TransactionManagerLocator.getInstance().locate(), policy));
> 62 }
> .The problem occurs when getting the members of nameMap. it is below.
> 120 public Object createPerJoinpoint(Advisor advisor, Joinpoint jp)
> 121 {
> 122 initialize();
> 123 String txType = resolveTxType(advisor, jp);
> 124 Object rtn = nameMap.get(txType.toUpperCase());
> 125 if (rtn == null) throw new RuntimeException("TX TYPE was null for: " + txType);
> 126 return rtn;
> 127 }
> at line 123, the txType variable assigned to "requires" and when the line 124 executed txType.toUpperCase() return "REQU?RESNEW" which is not equal to any kev value in nameMap hashmap. txType.toUpperCase() method should return "REQUIRESNEW" string, which is not the case in this situation.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the jboss-jira
mailing list