JRE6 + Java Web Start  + Axis 2 v1.1.1 causes a thread to hang unexpectedly
---------------------------------------------------------------------------

                 Key: AXIS2-2268
                 URL: https://issues.apache.org/jira/browse/AXIS2-2268
             Project: Axis 2.0 (Axis2)
          Issue Type: Bug
          Components: databinding, deployment
    Affects Versions: 1.1.1
         Environment: Windows XP SP2, Java SE 6 build 1.6.0-b105
            Reporter: Chris Gibbs


I have encountered a bizarre problem which seems to surface occasionally when 
using a combination of Java Web Start for Java SE 6 , Axis 2 v1.1.1 and the 
Betfair API. I am using Axis 2 in xmlbeans mode, and it is one Betfair API call 
in particular which is messing up, although the problem seems to lie either in 
JWS or in Axis 2.

Approximately 10-20% of the time, a call to the login() call of the Betfair API 
from a Java desktop app deployed via Java Web Start hangs at least one of the 
threads depending on API services. Here is a stack trace of the guilty thread:

------------------

"Timer 0" prio=6 tid=0x044ba400 nid=0x980 runnable [0x05fce000..0x05fcfb94]
  java.lang.Thread.State: RUNNABLE
   at java.util.HashMap.put(Unknown Source)
   at com.sun.deploy.cache.CacheEntry.readManifest(Unknown Source)
   at com.sun.deploy.cache.CacheEntry.readManifest(Unknown Source)
   at com.sun.deploy.cache.CacheEntry.access$300(Unknown Source)
   at com.sun.deploy.cache.CacheEntry$2.run(Unknown Source)
   at java.security.AccessController.doPrivileged(Native Method)
   at com.sun.deploy.cache.CacheEntry.getJarFile(Unknown Source)
   at com.sun.deploy.net.DownloadEngine.getCachedJarFile(Unknown Source)
   at com.sun.deploy.net.DownloadEngine.getCachedJarFile(Unknown Source)
   at com.sun.jnlp.JNLPClassLoader$3.run(Unknown Source)
   at java.security.AccessController.doPrivileged(Native Method)
   at com.sun.jnlp.JNLPClassLoader.getJarFile(Unknown Source)
   at com.sun.jnlp.JNLPCachedJarURLConnection.connect(Unknown Source)
   at com.sun.jnlp.JNLPCachedJarURLConnection.getInputStream(Unknown Source)
   at java.net.URL.openStream(Unknown Source)
   at java.lang.ClassLoader.getResourceAsStream(Unknown Source)
   at 
org.apache.xmlbeans.impl.schema.SchemaTypeLoaderImpl.crackEntry(SchemaTypeLoaderImpl.java:337)
   at 
org.apache.xmlbeans.impl.schema.SchemaTypeLoaderImpl.typeSystemForComponent(SchemaTypeLoaderImpl.java:256)
   at 
org.apache.xmlbeans.impl.schema.SchemaTypeLoaderImpl.findDocumentTypeRef(SchemaTypeLoaderImpl.java:430)
   at 
org.apache.xmlbeans.impl.schema.SchemaTypeLoaderBase.findDocumentType(SchemaTypeLoaderBase.java:129)
   at org.apache.xmlbeans.impl.store.Locale.autoTypeDocument(Locale.java:312)
   at org.apache.xmlbeans.impl.store.Locale.parseToXmlObject(Locale.java:850)
   at org.apache.xmlbeans.impl.store.Locale.parseToXmlObject(Locale.java:826)
   - locked <0x24903288> (a org.apache.xmlbeans.impl.store.Locale)
   at 
org.apache.xmlbeans.impl.schema.SchemaTypeLoaderBase.parse(SchemaTypeLoaderBase.java:231)
   at 
com.betfair.www.publicapi.v3.bfglobalservice.LoginResponseDocument$Factory.parse(Unknown
 Source)
   at 
com.betfair.www.publicapi.v3.bfglobalservice.BFGlobalServiceStub.fromOM(Unknown 
Source)
   at 
com.betfair.www.publicapi.v3.bfglobalservice.BFGlobalServiceStub.login(Unknown 
Source)

------------

This then results in 100% CPU usage, and the only solution is to then close the 
program and restart it. Quite often there is more than 1 thread stuck in a 
similar situation to the one above, so perhaps they are all waiting on 
java.util.HashMap.put(), not sure. This may be purely a bug in JWS, but I 
submitted it here just in case. 

Unfortunately I'm only creating the bug at the moment using the Betfair API 
(www.betfair.com) and my Betfair account, so if you have a Betfair account let 
me know and I can give your account permission to access the Betfair API using 
my application.

You can access the WSDL for the Betfair API at :

https://api.betfair.com/global/v3/BFGlobalService.wsdl

The API call which is causing problems is Login(). The structure of the WSDL 
file appears to be correct, and all other Betfair API calls are working 
correctly.


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to