[jboss-jira] [JBoss JIRA] Created: (JBAS-6085) If you use turksih locale Jboss AS throw org.jboss.deployment.DeploymentException: TX TYPE was null for: RequiresNew while startup

halil agin (JIRA) jira-events at lists.jboss.org
Tue Oct 14 04:15:21 EDT 2008


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


 
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