[ 
http://issues.apache.org/jira/browse/AXIS2-600?page=comments#action_12375859 ] 

Kent Tong commented on AXIS2-600:
---------------------------------

I just tried the same code and got an exception as shown below. Are you using 
Sun's JDK? Mine is Sun's JDK 1.5.0 release 2. Maybe your compiler is optimizing 
the code by eliminating the "value" variable as it's only used once. Could you 
try adding some code that can't be optimized eg, add a call to 
OMAbstractFactory.getOMFactory()?

- Undeploying Web service  AxisVersion.aar
- Error in schema generating -1
java.lang.ArrayIndexOutOfBoundsException: -1
        at 
org.apache.axis2.wsdl.builder.bytecode.ClassReader.resolveUtf8(ClassReader.java:276)
        at 
org.apache.axis2.wsdl.builder.bytecode.ParamReader.readLocalVariableTable(ParamReader.java:202)
        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.apache.axis2.wsdl.builder.bytecode.ClassReader.readAttributes(ClassReader.java:368)
        at 
org.apache.axis2.wsdl.builder.bytecode.ParamReader.readCode(ParamReader.java:104)
        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.apache.axis2.wsdl.builder.bytecode.ClassReader.readAttributes(ClassReader.java:368)
        at 
org.apache.axis2.wsdl.builder.bytecode.ParamReader.<init>(ParamReader.java:86)
        at 
org.apache.axis2.wsdl.builder.bytecode.ParamReader.<init>(ParamReader.java:39)
        at 
org.apache.axis2.wsdl.builder.bytecode.ChainedParamReader.<init>(ChainedParamReader.java:33)
        at 
org.apache.axis2.wsdl.builder.bytecode.MethodTable.<init>(MethodTable.java:28)
        at 
org.apache.axis2.wsdl.builder.SchemaGenerator.<init>(SchemaGenerator.java:90)
        at 
org.apache.axis2.deployment.util.Utils.fillAxisService(Utils.java:165)
        at 
org.apache.axis2.deployment.ServiceBuilder.populateService(ServiceBuilder.java:78)
        at 
org.apache.axis2.deployment.repository.util.ArchiveReader.buildServiceGroup(ArchiveReader.java:86)
        at 
org.apache.axis2.deployment.repository.util.ArchiveReader.processServiceGroup(ArchiveReader.java:128)
        at 
org.apache.axis2.deployment.DeploymentEngine.doDeploy(DeploymentEngine.java:428)
        at 
org.apache.axis2.deployment.repository.util.WSInfoList.update(WSInfoList.java:195)
        at 
org.apache.axis2.deployment.RepositoryListener.update(RepositoryListener.java:195)
        at 
org.apache.axis2.deployment.RepositoryListener.checkServices(RepositoryListener.java:145)
        at 
org.apache.axis2.deployment.RepositoryListener.startListener(RepositoryListener.java:187)
        at 
org.apache.axis2.deployment.scheduler.SchedulerTask.checkRepositary(SchedulerTask.java:61)
        at 
org.apache.axis2.deployment.scheduler.SchedulerTask.run(SchedulerTask.java:68)
        at 
org.apache.axis2.deployment.scheduler.Scheduler$SchedulerTimerTask.run(Scheduler.java:76)
        at java.util.TimerThread.mainLoop(Timer.java:512)
        at java.util.TimerThread.run(Timer.java:462)


> Axis can't perform reflection on updated .class file with hotupdate
> -------------------------------------------------------------------
>
>          Key: AXIS2-600
>          URL: http://issues.apache.org/jira/browse/AXIS2-600
>      Project: Apache Axis 2.0 (Axis2)
>         Type: Bug

>   Components: deployment
>     Versions: 0.95
>  Environment: Win XP, Tomcat 5.5.7.
>     Reporter: Kent Tong

>
> 1) Enable hotupdate by editing axis2.xml.
> 2) Add some code to the service implementation code. For example, from:
> public class SimpleService {
>       public OMElement echo(OMElement e) {
>               return e;
>       }
> }
> To:
> public class SimpleService {
>       public OMElement echo(OMElement e) {
>               OMAbstractFactory.getOMFactory();
>               return e;
>       }
> }
> 3) Update the .aar.
> 4) Tomcat will throw an exception when trying to redeploy the service (using 
> reflection). The exception may be a EOFException, ZipException or an 
> ArrayIndexOutOfBoundsException. Two sample stack traces are shown below for 
> the first two exceptions. They're all similar. Suggesting the SchemaGenerator 
> may be reading some outdated class data.
> - Undeploying Web service  test.aar
> - Error in schema generating Error looking for paramter names in bytecode: 
> unexpected end of file
> java.io.EOFException: Error looking for paramter names in bytecode: 
> unexpected end of file
>         at 
> org.apache.axis2.wsdl.builder.bytecode.ClassReader.skipFully(ClassReader.java:173)
>         at 
> org.apache.axis2.wsdl.builder.bytecode.ParamReader.readCode(ParamReader.java:100)
>         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.apache.axis2.wsdl.builder.bytecode.ClassReader.readAttributes(ClassReader.java:368)
>         at 
> org.apache.axis2.wsdl.builder.bytecode.ParamReader.<init>(ParamReader.java:86)
>         at 
> org.apache.axis2.wsdl.builder.bytecode.ParamReader.<init>(ParamReader.java:39)
>         at 
> org.apache.axis2.wsdl.builder.bytecode.ChainedParamReader.<init>(ChainedParamReader.java:33)
>         at 
> org.apache.axis2.wsdl.builder.bytecode.MethodTable.<init>(MethodTable.java:28)
>         at 
> org.apache.axis2.wsdl.builder.SchemaGenerator.<init>(SchemaGenerator.java:90)
>         at 
> org.apache.axis2.deployment.util.Utils.fillAxisService(Utils.java:165)
>         at 
> org.apache.axis2.deployment.ServiceBuilder.populateService(ServiceBuilder.java:78)
>         at 
> org.apache.axis2.deployment.repository.util.ArchiveReader.buildServiceGroup(ArchiveReader.java:86)
>         at 
> org.apache.axis2.deployment.repository.util.ArchiveReader.processServiceGroup(ArchiveReader.java:128)
>         at 
> org.apache.axis2.deployment.DeploymentEngine.doDeploy(DeploymentEngine.java:428)
>         at 
> org.apache.axis2.deployment.repository.util.WSInfoList.update(WSInfoList.java:195)
>         at 
> org.apache.axis2.deployment.RepositoryListener.update(RepositoryListener.java:195)
>         at 
> org.apache.axis2.deployment.RepositoryListener.checkServices(RepositoryListener.java:145)
>         at 
> org.apache.axis2.deployment.RepositoryListener.startListener(RepositoryListener.java:187)
>         at 
> org.apache.axis2.deployment.scheduler.SchedulerTask.checkRepositary(SchedulerTask.java:61)
>         at 
> org.apache.axis2.deployment.scheduler.SchedulerTask.run(SchedulerTask.java:68)
>         at 
> org.apache.axis2.deployment.scheduler.Scheduler$SchedulerTimerTask.run(Scheduler.java:76)
>         at java.util.TimerThread.mainLoop(Timer.java:512)
>         at java.util.TimerThread.run(Timer.java:462)
> - Undeploying Web service  test.aar
> - Error in schema generating ZIP_Read: error reading zip file
> java.util.zip.ZipException: ZIP_Read: error reading zip file
>         at java.util.zip.ZipFile.read(Native Method)
>         at java.util.zip.ZipFile.access$1500(ZipFile.java:35)
>         at java.util.zip.ZipFile$ZipFileInputStream.read(ZipFile.java:559)
>         at java.io.FilterInputStream.read(FilterInputStream.java:111)
>         at java.io.FilterInputStream.read(FilterInputStream.java:90)
>         at 
> org.apache.axis2.wsdl.builder.bytecode.ClassReader.getBytes(ClassReader.java:74)
>         at 
> org.apache.axis2.wsdl.builder.bytecode.ParamReader.<init>(ParamReader.java:39)
>         at 
> org.apache.axis2.wsdl.builder.bytecode.ChainedParamReader.<init>(ChainedParamReader.java:33)
>         at 
> org.apache.axis2.wsdl.builder.bytecode.MethodTable.<init>(MethodTable.java:28)
>         at 
> org.apache.axis2.wsdl.builder.SchemaGenerator.<init>(SchemaGenerator.java:90)
>         at 
> org.apache.axis2.deployment.util.Utils.fillAxisService(Utils.java:165)
>         at 
> org.apache.axis2.deployment.ServiceBuilder.populateService(ServiceBuilder.java:78)
>         at 
> org.apache.axis2.deployment.repository.util.ArchiveReader.buildServiceGroup(ArchiveReader.java:86)
>         at 
> org.apache.axis2.deployment.repository.util.ArchiveReader.processServiceGroup(ArchiveReader.java:128)
>         at 
> org.apache.axis2.deployment.DeploymentEngine.doDeploy(DeploymentEngine.java:428)
>         at 
> org.apache.axis2.deployment.repository.util.WSInfoList.update(WSInfoList.java:195)
>         at 
> org.apache.axis2.deployment.RepositoryListener.update(RepositoryListener.java:195)
>         at 
> org.apache.axis2.deployment.RepositoryListener.checkServices(RepositoryListener.java:145)
>         at 
> org.apache.axis2.deployment.RepositoryListener.startListener(RepositoryListener.java:187)
>         at 
> org.apache.axis2.deployment.scheduler.SchedulerTask.checkRepositary(SchedulerTask.java:61)
>         at 
> org.apache.axis2.deployment.scheduler.SchedulerTask.run(SchedulerTask.java:68)
>         at 
> org.apache.axis2.deployment.scheduler.Scheduler$SchedulerTimerTask.run(Scheduler.java:76)
>         at java.util.TimerThread.mainLoop(Timer.java:512)
>         at java.util.TimerThread.run(Timer.java:462)

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira

Reply via email to