[jboss-user] [Javassist user questions] - Anomalous VerifyError (related to inner classes?)

hlship do-not-reply at jboss.com
Thu Feb 8 15:34:43 EST 2007


Getting VerifyErrors with Javassist 3.4.ga.

Tapestry 5 does some very aggressive, very AOP like things using Javassist. 99% of the time, no problems. here I'm getting an anomalous VerifyError.

java.lang.VerifyError
(class: org/apache/tapestry/corelib/components/Grid, method: access$0 signature: (Lorg/apache/tapestry/corelib/components/Grid;)Lorg/apache/tapestry/grid/GridDataSource;) Unable to pop operand off an empty stack

Stack trace

        * java.lang.Class.getDeclaredConstructors0(Native Method)
        * java.lang.Class.privateGetDeclaredConstructors(Class.java:2328)
        * java.lang.Class.getConstructors(Class.java:1446)
        * org.apache.tapestry.internal.services.ReflectiveInstantiator.findConstructor(ReflectiveInstantiator.java:65)
        * org.apache.tapestry.internal.services.ReflectiveInstantiator.(ReflectiveInstantiator.java:53)

I modified my code to use CtClass.writeDebug() to capture the instrumented version of the class before it is instantiated. Here's the disassembled output:


  | $ javap -c -classpath .:../classes/:~/.m2/repository/jboss/javassist/3.4.ga/javassist-3.4.ga.jar  -private -verbose   org.apache.tapestry.corelib.components.Grid           Compiled from "Grid.java"
  | public class org.apache.tapestry.corelib.components.Grid extends java.lang.Object implements org.apache.tapestry.grid.GridDataProvider,org.apache.tapestry.runtime.Component,org.apache.tapestry.runtime.RenderCommand
  |   SourceFile: "Grid.java"
  |   InnerClass: 
  |    final #39; //class org/apache/tapestry/corelib/components/Grid$1
  |   RuntimeVisibleAnnotations: length = 0xA
  |    00 02 01 FFFFFFE5 00 00 01 FFFFFFE6 00 00 
  |   minor version: 0
  |   major version: 49
  |   Constant pool:
  | const #1 = Asciz        org/apache/tapestry/corelib/components/Grid;
  | const #2 = class        #1;     //  org/apache/tapestry/corelib/components/Grid
  | const #3 = Asciz        java/lang/Object;
  | const #4 = class        #3;     //  java/lang/Object
  | const #5 = Asciz        org/apache/tapestry/grid/GridDataProvider;
  | const #6 = class        #5;     //  org/apache/tapestry/grid/GridDataProvider
  | const #7 = Asciz        org/apache/tapestry/runtime/Component;
  | const #8 = class        #7;     //  org/apache/tapestry/runtime/Component
  | const #9 = Asciz        org/apache/tapestry/runtime/RenderCommand;
  | const #10 = class       #9;     //  org/apache/tapestry/runtime/RenderCommand
  | const #11 = Asciz       <init>;
  | const #12 = Asciz       ()V;
  | const #13 = Asciz       Code;
  | const #14 = class       #3;     //  java/lang/Object
  | const #15 = NameAndType #11:#12;//  "<init>":()V
  | const #16 = Method      #14.#15;        //  java/lang/Object."<init>":()V
  | const #17 = Asciz       LineNumberTable;
  | const #18 = Asciz       LocalVariableTable;
  | const #19 = Asciz       this;
  | const #20 = Asciz       Lorg/apache/tapestry/corelib/components/Grid;;
  | const #21 = Asciz       defaultModel;
  | const #22 = Asciz       ()Lorg/apache/tapestry/Binding;;
  | const #23 = class       #1;     //  org/apache/tapestry/corelib/components/Grid
  | const #24 = Asciz       _resources;
  | const #25 = Asciz       Lorg/apache/tapestry/ComponentResources;;
  | const #26 = NameAndType #24:#25;//  _resources:Lorg/apache/tapestry/ComponentResources;
  | const #27 = Field       #23.#26;        //  org/apache/tapestry/corelib/components/Grid._resources:Lorg/apache/tapestry/ComponentResources;
  | const #28 = Asciz       org/apache/tapestry/ComponentResources;
  | const #29 = class       #28;    //  org/apache/tapestry/ComponentResources
  | const #30 = Asciz       getContainerResources;
  | const #31 = Asciz       ()Lorg/apache/tapestry/ComponentResources;;
  | const #32 = NameAndType #30:#31;//  getContainerResources:()Lorg/apache/tapestry/ComponentResources;
  | const #33 = InterfaceMethod     #29.#32;        //  org/apache/tapestry/ComponentResources.getContainerResources:()Lorg/apache/tapestry/ComponentResources;
  | const #34 = Asciz       _modelSource;
  | const #35 = Asciz       Lorg/apache/tapestry/services/GridDataModelSource;;
  | const #36 = NameAndType #34:#35;//  _modelSource:Lorg/apache/tapestry/services/GridDataModelSource;
  | const #37 = Field       #23.#36;        //  org/apache/tapestry/corelib/components/Grid._modelSource:Lorg/apache/tapestry/services/GridDataModelSource;
  | const #38 = Asciz       org/apache/tapestry/corelib/components/Grid$1;
  | const #39 = class       #38;    //  org/apache/tapestry/corelib/components/Grid$1
  | const #40 = Asciz       (Lorg/apache/tapestry/corelib/components/Grid;Lorg/apache/tapestry/services/GridDataModelSource;Lorg/apache/tapestry/ComponentResources;)V;
  | const #41 = NameAndType #11:#40;//  "<init>":(Lorg/apache/tapestry/corelib/components/Grid;Lorg/apache/tapestry/services/GridDataModelSource;Lorg/apache/tapestry/ComponentResources;)V
  | const #42 = Method      #39.#41;        //  org/apache/tapestry/corelib/components/Grid$1."<init>":(Lorg/apache/tapestry/corelib/components/Grid;Lorg/apache/tapestry/services/GridDataModelSource;Lorg/apache/tapestry/ComponentResources;)V
  | const #43 = Asciz       containerResource;
  | const #44 = Asciz       modelSource;
  | const #45 = Asciz       setupRender;
  | const #46 = Asciz       ()Ljava/lang/Object;;
  | const #47 = Asciz       _$read_parameter_source;
  | const #48 = Asciz       ()Lorg/apache/tapestry/grid/GridDataSource;;
  | const #49 = NameAndType #47:#48;//  _$read_parameter_source:()Lorg/apache/tapestry/grid/GridDataSource;
  | const #50 = Method      #23.#49;        //  org/apache/tapestry/corelib/components/Grid._$read_parameter_source:()Lorg/apache/tapestry/grid/GridDataSource;
  | const #51 = Asciz       org/apache/tapestry/grid/GridDataSource;
  | const #52 = class       #51;    //  org/apache/tapestry/grid/GridDataSource
  | const #53 = Asciz       getAvailableRows;
  | const #54 = Asciz       ()I;
  | const #55 = NameAndType #53:#54;//  getAvailableRows:()I
  | const #56 = InterfaceMethod     #52.#55;        //  org/apache/tapestry/grid/GridDataSource.getAvailableRows:()I
  | const #57 = Asciz       _$read_parameter_empty;
  | const #58 = Asciz       ()Lorg/apache/tapestry/Block;;
  | const #59 = NameAndType #57:#58;//  _$read_parameter_empty:()Lorg/apache/tapestry/Block;
  | const #60 = Method      #23.#59;        //  org/apache/tapestry/corelib/components/Grid._$read_parameter_empty:()Lorg/apache/tapestry/Block;
  | const #61 = Asciz       beginRender;
  | const #62 = NameAndType #47:#48;//  _$read_parameter_source:()Lorg/apache/tapestry/grid/GridDataSource;
  | const #63 = Method      #23.#62;        //  org/apache/tapestry/corelib/components/Grid._$read_parameter_source:()Lorg/apache/tapestry/grid/GridDataSource;
  | const #64 = NameAndType #53:#54;//  getAvailableRows:()I
  | const #65 = InterfaceMethod     #52.#64;        //  org/apache/tapestry/grid/GridDataSource.getAvailableRows:()I
  | const #66 = Asciz       java/lang/Boolean;
  | const #67 = class       #66;    //  java/lang/Boolean
  | const #68 = Asciz       valueOf;
  | const #69 = Asciz       (Z)Ljava/lang/Boolean;;
  | const #70 = NameAndType #68:#69;//  valueOf:(Z)Ljava/lang/Boolean;
  | const #71 = Method      #67.#70;        //  java/lang/Boolean.valueOf:(Z)Ljava/lang/Boolean;
  | const #72 = Asciz       getDataModel;
  | const #73 = Asciz       ()Lorg/apache/tapestry/grid/GridDataModel;;
  | const #74 = Asciz       _$read_parameter_model;
  | const #75 = NameAndType #74:#73;//  _$read_parameter_model:()Lorg/apache/tapestry/grid/GridDataModel;
  | const #76 = Method      #23.#75;        //  org/apache/tapestry/corelib/components/Grid._$read_parameter_model:()Lorg/apache/tapestry/grid/GridDataModel;
  | const #77 = Asciz       access$0;
  | const #78 = Asciz       (Lorg/apache/tapestry/corelib/components/Grid;)Lorg/apache/tapestry/grid/GridDataSource;;
  | const #79 = NameAndType #47:#48;//  _$read_parameter_source:()Lorg/apache/tapestry/grid/GridDataSource;
  | const #80 = Method      #23.#79;        //  org/apache/tapestry/corelib/components/Grid._$read_parameter_source:()Lorg/apache/tapestry/grid/GridDataSource;
  | const #81 = Asciz       postRenderCleanup;
  | const #82 = Asciz       _$empty_invariant;
  | const #83 = Asciz       Z;
  | const #84 = NameAndType #82:#83;//  _$empty_invariant:Z
  | const #85 = Field       #23.#84;        //  org/apache/tapestry/corelib/components/Grid._$empty_invariant:Z
  | const #86 = Asciz       _$empty_default;
  | const #87 = Asciz       Lorg/apache/tapestry/Block;;
  | const #88 = NameAndType #86:#87;//  _$empty_default:Lorg/apache/tapestry/Block;
  | const #89 = Field       #23.#88;        //  org/apache/tapestry/corelib/components/Grid._$empty_default:Lorg/apache/tapestry/Block;
  | const #90 = Asciz       _empty;
  | const #91 = NameAndType #90:#87;//  _empty:Lorg/apache/tapestry/Block;
  | const #92 = Field       #23.#91;        //  org/apache/tapestry/corelib/components/Grid._empty:Lorg/apache/tapestry/Block;
  | const #93 = Asciz       _$empty_cached;
  | const #94 = NameAndType #93:#83;//  _$empty_cached:Z
  | const #95 = Field       #23.#94;        //  org/apache/tapestry/corelib/components/Grid._$empty_cached:Z
  | const #96 = Asciz       _$model_invariant;
  | const #97 = NameAndType #96:#83;//  _$model_invariant:Z
  | const #98 = Field       #23.#97;        //  org/apache/tapestry/corelib/components/Grid._$model_invariant:Z
  | const #99 = Asciz       _$model_default;
  | const #100 = Asciz      Lorg/apache/tapestry/grid/GridDataModel;;
  | const #101 = NameAndType        #99:#100;//  _$model_default:Lorg/apache/tapestry/grid/GridDataModel;
  | const #102 = Field      #23.#101;       //  org/apache/tapestry/corelib/components/Grid._$model_default:Lorg/apache/tapestry/grid/GridDataModel;
  | const #103 = Asciz      _model;
  | const #104 = NameAndType        #103:#100;//  _model:Lorg/apache/tapestry/grid/GridDataModel;
  | const #105 = Field      #23.#104;       //  org/apache/tapestry/corelib/components/Grid._model:Lorg/apache/tapestry/grid/GridDataModel;
  | const #106 = Asciz      _$model_cached;
  | const #107 = NameAndType        #106:#83;//  _$model_cached:Z
  | const #108 = Field      #23.#107;       //  org/apache/tapestry/corelib/components/Grid._$model_cached:Z
  | const #109 = Asciz      _$source_invariant;
  | const #110 = NameAndType        #109:#83;//  _$source_invariant:Z
  | const #111 = Field      #23.#110;       //  org/apache/tapestry/corelib/components/Grid._$source_invariant:Z
  | const #112 = Asciz      _$source_default;
  | const #113 = Asciz      Lorg/apache/tapestry/grid/GridDataSource;;
  | const #114 = NameAndType        #112:#113;//  _$source_default:Lorg/apache/tapestry/grid/GridDataSource;
  | const #115 = Field      #23.#114;       //  org/apache/tapestry/corelib/components/Grid._$source_default:Lorg/apache/tapestry/grid/GridDataSource;
  | const #116 = Asciz      _source;
  | const #117 = NameAndType        #116:#113;//  _source:Lorg/apache/tapestry/grid/GridDataSource;
  | const #118 = Field      #23.#117;       //  org/apache/tapestry/corelib/components/Grid._source:Lorg/apache/tapestry/grid/GridDataSource;
  | const #119 = Asciz      _$source_cached;
  | const #120 = NameAndType        #119:#83;//  _$source_cached:Z
  | const #121 = Field      #23.#120;       //  org/apache/tapestry/corelib/components/Grid._$source_cached:Z
  | const #122 = Asciz      beforeRenderTemplate;
  | const #123 = Asciz      (Lorg/apache/tapestry/MarkupWriter;Lorg/apache/tapestry/runtime/Event;)V;
  | const #124 = Asciz      afterRenderTemplate;
  | const #125 = Asciz      beforeRenderBody;
  | const #126 = Asciz      afterRenderBody;
  | const #127 = Asciz      afterRender;
  | const #128 = Asciz      cleanupRender;
  | const #129 = Asciz      handleComponentEvent;
  | const #130 = Asciz      (Lorg/apache/tapestry/runtime/ComponentEvent;)Z;
  | const #131 = Asciz      containingPageDidLoad;
  | const #132 = Asciz      _$resources;
  | const #133 = Asciz      Lorg/apache/tapestry/internal/InternalComponentResources;;
  | const #134 = NameAndType        #132:#133;//  _$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #135 = Field      #23.#134;       //  org/apache/tapestry/corelib/components/Grid._$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #136 = NameAndType        #24:#25;//  _resources:Lorg/apache/tapestry/ComponentResources;
  | const #137 = Field      #23.#136;       //  org/apache/tapestry/corelib/components/Grid._resources:Lorg/apache/tapestry/ComponentResources;
  | const #138 = NameAndType        #132:#133;//  _$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #139 = Field      #23.#138;       //  org/apache/tapestry/corelib/components/Grid._$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #140 = Asciz      empty;
  | const #141 = String     #140;   //  empty
  | const #142 = Asciz      isBound;
  | const #143 = Asciz      (Ljava/lang/String;)Z;
  | const #144 = NameAndType        #142:#143;//  isBound:(Ljava/lang/String;)Z
  | const #145 = InterfaceMethod    #29.#144;       //  org/apache/tapestry/ComponentResources.isBound:(Ljava/lang/String;)Z
  | const #146 = NameAndType        #132:#133;//  _$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #147 = Field      #23.#146;       //  org/apache/tapestry/corelib/components/Grid._$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #148 = String     #140;   //  empty
  | const #149 = Asciz      _$bindingSource;
  | const #150 = Asciz      Lorg/apache/tapestry/services/BindingSource;;
  | const #151 = NameAndType        #149:#150;//  _$bindingSource:Lorg/apache/tapestry/services/BindingSource;
  | const #152 = Field      #23.#151;       //  org/apache/tapestry/corelib/components/Grid._$bindingSource:Lorg/apache/tapestry/services/BindingSource;
  | const #153 = Asciz      default empty;
  | const #154 = String     #153;   //  default empty
  | const #155 = NameAndType        #132:#133;//  _$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #156 = Field      #23.#155;       //  org/apache/tapestry/corelib/components/Grid._$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #157 = Asciz      block:empty;
  | const #158 = String     #157;   //  block:empty
  | const #159 = Asciz      org/apache/tapestry/services/BindingSource;
  | const #160 = class      #159;   //  org/apache/tapestry/services/BindingSource
  | const #161 = Asciz      newBinding;
  | const #162 = Asciz      (Ljava/lang/String;Lorg/apache/tapestry/ComponentResources;Ljava/lang/String;)Lorg/apache/tapestry/Binding;;
  | const #163 = NameAndType        #161:#162;//  newBinding:(Ljava/lang/String;Lorg/apache/tapestry/ComponentResources;Ljava/lang/String;)Lorg/apache/tapestry/Binding;
  | const #164 = InterfaceMethod    #160.#163;      //  org/apache/tapestry/services/BindingSource.newBinding:(Ljava/lang/String;Lorg/apache/tapestry/ComponentResources;Ljava/lang/String;)Lorg/apache/tapestry/Binding;
  | const #165 = Asciz      org/apache/tapestry/internal/InternalComponentResourcesCommon;
  | const #166 = class      #165;   //  org/apache/tapestry/internal/InternalComponentResourcesCommon
  | const #167 = Asciz      bindParameter;
  | const #168 = Asciz      (Ljava/lang/String;Lorg/apache/tapestry/Binding;)V;
  | const #169 = NameAndType        #167:#168;//  bindParameter:(Ljava/lang/String;Lorg/apache/tapestry/Binding;)V
  | const #170 = InterfaceMethod    #166.#169;      //  org/apache/tapestry/internal/InternalComponentResourcesCommon.bindParameter:(Ljava/lang/String;Lorg/apache/tapestry/Binding;)V
  | const #171 = NameAndType        #132:#133;//  _$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #172 = Field      #23.#171;       //  org/apache/tapestry/corelib/components/Grid._$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #173 = String     #140;   //  empty
  | const #174 = Asciz      org/apache/tapestry/internal/InternalComponentResources;
  | const #175 = class      #174;   //  org/apache/tapestry/internal/InternalComponentResources
  | const #176 = Asciz      isInvariant;
  | const #177 = NameAndType        #176:#143;//  isInvariant:(Ljava/lang/String;)Z
  | const #178 = InterfaceMethod    #175.#177;      //  org/apache/tapestry/internal/InternalComponentResources.isInvariant:(Ljava/lang/String;)Z
  | const #179 = NameAndType        #82:#83;//  _$empty_invariant:Z
  | const #180 = Field      #23.#179;       //  org/apache/tapestry/corelib/components/Grid._$empty_invariant:Z
  | const #181 = NameAndType        #90:#87;//  _empty:Lorg/apache/tapestry/Block;
  | const #182 = Field      #23.#181;       //  org/apache/tapestry/corelib/components/Grid._empty:Lorg/apache/tapestry/Block;
  | const #183 = NameAndType        #86:#87;//  _$empty_default:Lorg/apache/tapestry/Block;
  | const #184 = Field      #23.#183;       //  org/apache/tapestry/corelib/components/Grid._$empty_default:Lorg/apache/tapestry/Block;
  | const #185 = NameAndType        #132:#133;//  _$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #186 = Field      #23.#185;       //  org/apache/tapestry/corelib/components/Grid._$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #187 = Asciz      model;
  | const #188 = String     #187;   //  model
  | const #189 = NameAndType        #142:#143;//  isBound:(Ljava/lang/String;)Z
  | const #190 = InterfaceMethod    #29.#189;       //  org/apache/tapestry/ComponentResources.isBound:(Ljava/lang/String;)Z
  | const #191 = String     #187;   //  model
  | const #192 = NameAndType        #132:#133;//  _$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #193 = Field      #23.#192;       //  org/apache/tapestry/corelib/components/Grid._$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #194 = NameAndType        #21:#22;//  defaultModel:()Lorg/apache/tapestry/Binding;
  | const #195 = Method     #23.#194;       //  org/apache/tapestry/corelib/components/Grid.defaultModel:()Lorg/apache/tapestry/Binding;
  | const #196 = Asciz      org/apache/tapestry/internal/services/ParameterWorker;
  | const #197 = class      #196;   //  org/apache/tapestry/internal/services/ParameterWorker
  | const #198 = Asciz      bind;
  | const #199 = Asciz      (Ljava/lang/String;Lorg/apache/tapestry/internal/InternalComponentResources;Ljava/lang/Object;)V;
  | const #200 = NameAndType        #198:#199;//  bind:(Ljava/lang/String;Lorg/apache/tapestry/internal/InternalComponentResources;Ljava/lang/Object;)V
  | const #201 = Method     #197.#200;      //  org/apache/tapestry/internal/services/ParameterWorker.bind:(Ljava/lang/String;Lorg/apache/tapestry/internal/InternalComponentResources;Ljava/lang/Object;)V
  | const #202 = NameAndType        #132:#133;//  _$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #203 = Field      #23.#202;       //  org/apache/tapestry/corelib/components/Grid._$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #204 = String     #187;   //  model
  | const #205 = NameAndType        #176:#143;//  isInvariant:(Ljava/lang/String;)Z
  | const #206 = InterfaceMethod    #175.#205;      //  org/apache/tapestry/internal/InternalComponentResources.isInvariant:(Ljava/lang/String;)Z
  | const #207 = NameAndType        #96:#83;//  _$model_invariant:Z
  | const #208 = Field      #23.#207;       //  org/apache/tapestry/corelib/components/Grid._$model_invariant:Z
  | const #209 = NameAndType        #103:#100;//  _model:Lorg/apache/tapestry/grid/GridDataModel;
  | const #210 = Field      #23.#209;       //  org/apache/tapestry/corelib/components/Grid._model:Lorg/apache/tapestry/grid/GridDataModel;
  | const #211 = NameAndType        #99:#100;//  _$model_default:Lorg/apache/tapestry/grid/GridDataModel;
  | const #212 = Field      #23.#211;       //  org/apache/tapestry/corelib/components/Grid._$model_default:Lorg/apache/tapestry/grid/GridDataModel;
  | const #213 = NameAndType        #132:#133;//  _$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #214 = Field      #23.#213;       //  org/apache/tapestry/corelib/components/Grid._$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #215 = Asciz      source;
  | const #216 = String     #215;   //  source
  | const #217 = NameAndType        #176:#143;//  isInvariant:(Ljava/lang/String;)Z
  | const #218 = InterfaceMethod    #175.#217;      //  org/apache/tapestry/internal/InternalComponentResources.isInvariant:(Ljava/lang/String;)Z
  | const #219 = NameAndType        #109:#83;//  _$source_invariant:Z
  | const #220 = Field      #23.#219;       //  org/apache/tapestry/corelib/components/Grid._$source_invariant:Z
  | const #221 = NameAndType        #116:#113;//  _source:Lorg/apache/tapestry/grid/GridDataSource;
  | const #222 = Field      #23.#221;       //  org/apache/tapestry/corelib/components/Grid._source:Lorg/apache/tapestry/grid/GridDataSource;
  | const #223 = NameAndType        #112:#113;//  _$source_default:Lorg/apache/tapestry/grid/GridDataSource;
  | const #224 = Field      #23.#223;       //  org/apache/tapestry/corelib/components/Grid._$source_default:Lorg/apache/tapestry/grid/GridDataSource;
  | const #225 = Asciz      containingPageDidDetach;
  | const #226 = Asciz      containingPageDidAttach;
  | const #227 = Asciz      getComponentResources;
  | const #228 = NameAndType        #132:#133;//  _$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #229 = Field      #23.#228;       //  org/apache/tapestry/corelib/components/Grid._$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #230 = Asciz      _$write_modelSource;
  | const #231 = Asciz      (Lorg/apache/tapestry/services/GridDataModelSource;)V;
  | const #232 = Asciz      java/lang/RuntimeException;
  | const #233 = class      #232;   //  java/lang/RuntimeException
  | const #234 = Asciz      Field org.apache.tapestry.corelib.components.Grid._modelSource is read-only.;
  | const #235 = String     #234;   //  Field org.apache.tapestry.corelib.components.Grid._modelSource is read-only.
  | const #236 = Asciz      (Ljava/lang/String;)V;
  | const #237 = NameAndType        #11:#236;//  "<init>":(Ljava/lang/String;)V
  | const #238 = Method     #233.#237;      //  java/lang/RuntimeException."<init>":(Ljava/lang/String;)V
  | const #239 = Asciz      _$write_resources;
  | const #240 = Asciz      (Lorg/apache/tapestry/ComponentResources;)V;
  | const #241 = Asciz      Field org.apache.tapestry.corelib.components.Grid._resources is read-only.;
  | const #242 = String     #241;   //  Field org.apache.tapestry.corelib.components.Grid._resources is read-only.
  | const #243 = NameAndType        #11:#236;//  "<init>":(Ljava/lang/String;)V
  | const #244 = Method     #233.#243;      //  java/lang/RuntimeException."<init>":(Ljava/lang/String;)V
  | const #245 = Asciz      render;
  | const #246 = Asciz      (Lorg/apache/tapestry/MarkupWriter;Lorg/apache/tapestry/runtime/RenderQueue;)V;
  | const #247 = NameAndType        #132:#133;//  _$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #248 = Field      #23.#247;       //  org/apache/tapestry/corelib/components/Grid._$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #249 = Asciz      queueRender;
  | const #250 = Asciz      (Lorg/apache/tapestry/runtime/RenderQueue;)V;
  | const #251 = NameAndType        #249:#250;//  queueRender:(Lorg/apache/tapestry/runtime/RenderQueue;)V
  | const #252 = InterfaceMethod    #166.#251;      //  org/apache/tapestry/internal/InternalComponentResourcesCommon.queueRender:(Lorg/apache/tapestry/runtime/RenderQueue;)V
  | const #253 = NameAndType        #93:#83;//  _$empty_cached:Z
  | const #254 = Field      #23.#253;       //  org/apache/tapestry/corelib/components/Grid._$empty_cached:Z
  | const #255 = NameAndType        #132:#133;//  _$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #256 = Field      #23.#255;       //  org/apache/tapestry/corelib/components/Grid._$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #257 = Asciz      isLoaded;
  | const #258 = Asciz      ()Z;
  | const #259 = NameAndType        #257:#258;//  isLoaded:()Z
  | const #260 = InterfaceMethod    #166.#259;      //  org/apache/tapestry/internal/InternalComponentResourcesCommon.isLoaded:()Z
  | const #261 = NameAndType        #132:#133;//  _$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #262 = Field      #23.#261;       //  org/apache/tapestry/corelib/components/Grid._$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #263 = String     #140;   //  empty
  | const #264 = NameAndType        #142:#143;//  isBound:(Ljava/lang/String;)Z
  | const #265 = InterfaceMethod    #29.#264;       //  org/apache/tapestry/ComponentResources.isBound:(Ljava/lang/String;)Z
  | const #266 = NameAndType        #90:#87;//  _empty:Lorg/apache/tapestry/Block;
  | const #267 = Field      #23.#266;       //  org/apache/tapestry/corelib/components/Grid._empty:Lorg/apache/tapestry/Block;
  | const #268 = NameAndType        #132:#133;//  _$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #269 = Field      #23.#268;       //  org/apache/tapestry/corelib/components/Grid._$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #270 = String     #140;   //  empty
  | const #271 = String     #87;    //  Lorg/apache/tapestry/Block;
  | const #272 = Asciz      javassist/runtime/Desc;
  | const #273 = class      #272;   //  javassist/runtime/Desc
  | const #274 = Asciz      getType;
  | const #275 = Asciz      (Ljava/lang/String;)Ljava/lang/Class;;
  | const #276 = NameAndType        #274:#275;//  getType:(Ljava/lang/String;)Ljava/lang/Class;
  | const #277 = Method     #273.#276;      //  javassist/runtime/Desc.getType:(Ljava/lang/String;)Ljava/lang/Class;
  | const #278 = Asciz      readParameter;
  | const #279 = Asciz      (Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/Object;;
  | const #280 = NameAndType        #278:#279;//  readParameter:(Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/Object;
  | const #281 = InterfaceMethod    #175.#280;      //  org/apache/tapestry/internal/InternalComponentResources.readParameter:(Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/Object;
  | const #282 = Asciz      org/apache/tapestry/Block;
  | const #283 = class      #282;   //  org/apache/tapestry/Block
  | const #284 = NameAndType        #82:#83;//  _$empty_invariant:Z
  | const #285 = Field      #23.#284;       //  org/apache/tapestry/corelib/components/Grid._$empty_invariant:Z
  | const #286 = NameAndType        #132:#133;//  _$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #287 = Field      #23.#286;       //  org/apache/tapestry/corelib/components/Grid._$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #288 = Asciz      org/apache/tapestry/ComponentResourcesCommon;
  | const #289 = class      #288;   //  org/apache/tapestry/ComponentResourcesCommon
  | const #290 = Asciz      isRendering;
  | const #291 = NameAndType        #290:#258;//  isRendering:()Z
  | const #292 = InterfaceMethod    #289.#291;      //  org/apache/tapestry/ComponentResourcesCommon.isRendering:()Z
  | const #293 = NameAndType        #90:#87;//  _empty:Lorg/apache/tapestry/Block;
  | const #294 = Field      #23.#293;       //  org/apache/tapestry/corelib/components/Grid._empty:Lorg/apache/tapestry/Block;
  | const #295 = NameAndType        #93:#83;//  _$empty_cached:Z
  | const #296 = Field      #23.#295;       //  org/apache/tapestry/corelib/components/Grid._$empty_cached:Z
  | const #297 = Asciz      _$update_parameter_empty;
  | const #298 = Asciz      (Lorg/apache/tapestry/Block;)V;
  | const #299 = NameAndType        #132:#133;//  _$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #300 = Field      #23.#299;       //  org/apache/tapestry/corelib/components/Grid._$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #301 = NameAndType        #257:#258;//  isLoaded:()Z
  | const #302 = InterfaceMethod    #166.#301;      //  org/apache/tapestry/internal/InternalComponentResourcesCommon.isLoaded:()Z
  | const #303 = NameAndType        #90:#87;//  _empty:Lorg/apache/tapestry/Block;
  | const #304 = Field      #23.#303;       //  org/apache/tapestry/corelib/components/Grid._empty:Lorg/apache/tapestry/Block;
  | const #305 = NameAndType        #132:#133;//  _$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #306 = Field      #23.#305;       //  org/apache/tapestry/corelib/components/Grid._$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #307 = String     #140;   //  empty
  | const #308 = NameAndType        #142:#143;//  isBound:(Ljava/lang/String;)Z
  | const #309 = InterfaceMethod    #29.#308;       //  org/apache/tapestry/ComponentResources.isBound:(Ljava/lang/String;)Z
  | const #310 = NameAndType        #132:#133;//  _$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #311 = Field      #23.#310;       //  org/apache/tapestry/corelib/components/Grid._$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #312 = String     #140;   //  empty
  | const #313 = Asciz      writeParameter;
  | const #314 = Asciz      (Ljava/lang/String;Ljava/lang/Object;)V;
  | const #315 = NameAndType        #313:#314;//  writeParameter:(Ljava/lang/String;Ljava/lang/Object;)V
  | const #316 = InterfaceMethod    #175.#315;      //  org/apache/tapestry/internal/InternalComponentResources.writeParameter:(Ljava/lang/String;Ljava/lang/Object;)V
  | const #317 = NameAndType        #90:#87;//  _empty:Lorg/apache/tapestry/Block;
  | const #318 = Field      #23.#317;       //  org/apache/tapestry/corelib/components/Grid._empty:Lorg/apache/tapestry/Block;
  | const #319 = NameAndType        #132:#133;//  _$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #320 = Field      #23.#319;       //  org/apache/tapestry/corelib/components/Grid._$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #321 = NameAndType        #290:#258;//  isRendering:()Z
  | const #322 = InterfaceMethod    #289.#321;      //  org/apache/tapestry/ComponentResourcesCommon.isRendering:()Z
  | const #323 = NameAndType        #93:#83;//  _$empty_cached:Z
  | const #324 = Field      #23.#323;       //  org/apache/tapestry/corelib/components/Grid._$empty_cached:Z
  | const #325 = NameAndType        #106:#83;//  _$model_cached:Z
  | const #326 = Field      #23.#325;       //  org/apache/tapestry/corelib/components/Grid._$model_cached:Z
  | const #327 = NameAndType        #132:#133;//  _$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #328 = Field      #23.#327;       //  org/apache/tapestry/corelib/components/Grid._$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #329 = NameAndType        #257:#258;//  isLoaded:()Z
  | const #330 = InterfaceMethod    #166.#329;      //  org/apache/tapestry/internal/InternalComponentResourcesCommon.isLoaded:()Z
  | const #331 = NameAndType        #132:#133;//  _$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #332 = Field      #23.#331;       //  org/apache/tapestry/corelib/components/Grid._$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #333 = String     #187;   //  model
  | const #334 = NameAndType        #142:#143;//  isBound:(Ljava/lang/String;)Z
  | const #335 = InterfaceMethod    #29.#334;       //  org/apache/tapestry/ComponentResources.isBound:(Ljava/lang/String;)Z
  | const #336 = NameAndType        #103:#100;//  _model:Lorg/apache/tapestry/grid/GridDataModel;
  | const #337 = Field      #23.#336;       //  org/apache/tapestry/corelib/components/Grid._model:Lorg/apache/tapestry/grid/GridDataModel;
  | const #338 = NameAndType        #132:#133;//  _$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #339 = Field      #23.#338;       //  org/apache/tapestry/corelib/components/Grid._$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #340 = String     #187;   //  model
  | const #341 = String     #100;   //  Lorg/apache/tapestry/grid/GridDataModel;
  | const #342 = NameAndType        #274:#275;//  getType:(Ljava/lang/String;)Ljava/lang/Class;
  | const #343 = Method     #273.#342;      //  javassist/runtime/Desc.getType:(Ljava/lang/String;)Ljava/lang/Class;
  | const #344 = NameAndType        #278:#279;//  readParameter:(Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/Object;
  | const #345 = InterfaceMethod    #175.#344;      //  org/apache/tapestry/internal/InternalComponentResources.readParameter:(Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/Object;
  | const #346 = Asciz      org/apache/tapestry/grid/GridDataModel;
  | const #347 = class      #346;   //  org/apache/tapestry/grid/GridDataModel
  | const #348 = NameAndType        #96:#83;//  _$model_invariant:Z
  | const #349 = Field      #23.#348;       //  org/apache/tapestry/corelib/components/Grid._$model_invariant:Z
  | const #350 = NameAndType        #132:#133;//  _$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #351 = Field      #23.#350;       //  org/apache/tapestry/corelib/components/Grid._$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #352 = NameAndType        #290:#258;//  isRendering:()Z
  | const #353 = InterfaceMethod    #289.#352;      //  org/apache/tapestry/ComponentResourcesCommon.isRendering:()Z
  | const #354 = NameAndType        #103:#100;//  _model:Lorg/apache/tapestry/grid/GridDataModel;
  | const #355 = Field      #23.#354;       //  org/apache/tapestry/corelib/components/Grid._model:Lorg/apache/tapestry/grid/GridDataModel;
  | const #356 = NameAndType        #106:#83;//  _$model_cached:Z
  | const #357 = Field      #23.#356;       //  org/apache/tapestry/corelib/components/Grid._$model_cached:Z
  | const #358 = Asciz      _$update_parameter_model;
  | const #359 = Asciz      (Lorg/apache/tapestry/grid/GridDataModel;)V;
  | const #360 = NameAndType        #132:#133;//  _$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #361 = Field      #23.#360;       //  org/apache/tapestry/corelib/components/Grid._$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #362 = NameAndType        #257:#258;//  isLoaded:()Z
  | const #363 = InterfaceMethod    #166.#362;      //  org/apache/tapestry/internal/InternalComponentResourcesCommon.isLoaded:()Z
  | const #364 = NameAndType        #103:#100;//  _model:Lorg/apache/tapestry/grid/GridDataModel;
  | const #365 = Field      #23.#364;       //  org/apache/tapestry/corelib/components/Grid._model:Lorg/apache/tapestry/grid/GridDataModel;
  | const #366 = NameAndType        #132:#133;//  _$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #367 = Field      #23.#366;       //  org/apache/tapestry/corelib/components/Grid._$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #368 = String     #187;   //  model
  | const #369 = NameAndType        #142:#143;//  isBound:(Ljava/lang/String;)Z
  | const #370 = InterfaceMethod    #29.#369;       //  org/apache/tapestry/ComponentResources.isBound:(Ljava/lang/String;)Z
  | const #371 = NameAndType        #132:#133;//  _$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #372 = Field      #23.#371;       //  org/apache/tapestry/corelib/components/Grid._$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #373 = String     #187;   //  model
  | const #374 = NameAndType        #313:#314;//  writeParameter:(Ljava/lang/String;Ljava/lang/Object;)V
  | const #375 = InterfaceMethod    #175.#374;      //  org/apache/tapestry/internal/InternalComponentResources.writeParameter:(Ljava/lang/String;Ljava/lang/Object;)V
  | const #376 = NameAndType        #103:#100;//  _model:Lorg/apache/tapestry/grid/GridDataModel;
  | const #377 = Field      #23.#376;       //  org/apache/tapestry/corelib/components/Grid._model:Lorg/apache/tapestry/grid/GridDataModel;
  | const #378 = NameAndType        #132:#133;//  _$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #379 = Field      #23.#378;       //  org/apache/tapestry/corelib/components/Grid._$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #380 = NameAndType        #290:#258;//  isRendering:()Z
  | const #381 = InterfaceMethod    #289.#380;      //  org/apache/tapestry/ComponentResourcesCommon.isRendering:()Z
  | const #382 = NameAndType        #106:#83;//  _$model_cached:Z
  | const #383 = Field      #23.#382;       //  org/apache/tapestry/corelib/components/Grid._$model_cached:Z
  | const #384 = NameAndType        #119:#83;//  _$source_cached:Z
  | const #385 = Field      #23.#384;       //  org/apache/tapestry/corelib/components/Grid._$source_cached:Z
  | const #386 = NameAndType        #132:#133;//  _$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #387 = Field      #23.#386;       //  org/apache/tapestry/corelib/components/Grid._$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #388 = NameAndType        #257:#258;//  isLoaded:()Z
  | const #389 = InterfaceMethod    #166.#388;      //  org/apache/tapestry/internal/InternalComponentResourcesCommon.isLoaded:()Z
  | const #390 = NameAndType        #132:#133;//  _$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #391 = Field      #23.#390;       //  org/apache/tapestry/corelib/components/Grid._$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #392 = String     #215;   //  source
  | const #393 = NameAndType        #142:#143;//  isBound:(Ljava/lang/String;)Z
  | const #394 = InterfaceMethod    #29.#393;       //  org/apache/tapestry/ComponentResources.isBound:(Ljava/lang/String;)Z
  | const #395 = NameAndType        #116:#113;//  _source:Lorg/apache/tapestry/grid/GridDataSource;
  | const #396 = Field      #23.#395;       //  org/apache/tapestry/corelib/components/Grid._source:Lorg/apache/tapestry/grid/GridDataSource;
  | const #397 = NameAndType        #132:#133;//  _$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #398 = Field      #23.#397;       //  org/apache/tapestry/corelib/components/Grid._$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #399 = String     #215;   //  source
  | const #400 = String     #113;   //  Lorg/apache/tapestry/grid/GridDataSource;
  | const #401 = NameAndType        #274:#275;//  getType:(Ljava/lang/String;)Ljava/lang/Class;
  | const #402 = Method     #273.#401;      //  javassist/runtime/Desc.getType:(Ljava/lang/String;)Ljava/lang/Class;
  | const #403 = NameAndType        #278:#279;//  readParameter:(Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/Object;
  | const #404 = InterfaceMethod    #175.#403;      //  org/apache/tapestry/internal/InternalComponentResources.readParameter:(Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/Object;
  | const #405 = NameAndType        #109:#83;//  _$source_invariant:Z
  | const #406 = Field      #23.#405;       //  org/apache/tapestry/corelib/components/Grid._$source_invariant:Z
  | const #407 = NameAndType        #132:#133;//  _$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #408 = Field      #23.#407;       //  org/apache/tapestry/corelib/components/Grid._$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #409 = NameAndType        #290:#258;//  isRendering:()Z
  | const #410 = InterfaceMethod    #289.#409;      //  org/apache/tapestry/ComponentResourcesCommon.isRendering:()Z
  | const #411 = NameAndType        #116:#113;//  _source:Lorg/apache/tapestry/grid/GridDataSource;
  | const #412 = Field      #23.#411;       //  org/apache/tapestry/corelib/components/Grid._source:Lorg/apache/tapestry/grid/GridDataSource;
  | const #413 = NameAndType        #119:#83;//  _$source_cached:Z
  | const #414 = Field      #23.#413;       //  org/apache/tapestry/corelib/components/Grid._$source_cached:Z
  | const #415 = Asciz      _$update_parameter_source;
  | const #416 = Asciz      (Lorg/apache/tapestry/grid/GridDataSource;)V;
  | const #417 = NameAndType        #132:#133;//  _$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #418 = Field      #23.#417;       //  org/apache/tapestry/corelib/components/Grid._$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #419 = NameAndType        #257:#258;//  isLoaded:()Z
  | const #420 = InterfaceMethod    #166.#419;      //  org/apache/tapestry/internal/InternalComponentResourcesCommon.isLoaded:()Z
  | const #421 = NameAndType        #116:#113;//  _source:Lorg/apache/tapestry/grid/GridDataSource;
  | const #422 = Field      #23.#421;       //  org/apache/tapestry/corelib/components/Grid._source:Lorg/apache/tapestry/grid/GridDataSource;
  | const #423 = NameAndType        #132:#133;//  _$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #424 = Field      #23.#423;       //  org/apache/tapestry/corelib/components/Grid._$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #425 = String     #215;   //  source
  | const #426 = NameAndType        #142:#143;//  isBound:(Ljava/lang/String;)Z
  | const #427 = InterfaceMethod    #29.#426;       //  org/apache/tapestry/ComponentResources.isBound:(Ljava/lang/String;)Z
  | const #428 = NameAndType        #132:#133;//  _$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #429 = Field      #23.#428;       //  org/apache/tapestry/corelib/components/Grid._$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #430 = String     #215;   //  source
  | const #431 = NameAndType        #313:#314;//  writeParameter:(Ljava/lang/String;Ljava/lang/Object;)V
  | const #432 = InterfaceMethod    #175.#431;      //  org/apache/tapestry/internal/InternalComponentResources.writeParameter:(Ljava/lang/String;Ljava/lang/Object;)V
  | const #433 = NameAndType        #116:#113;//  _source:Lorg/apache/tapestry/grid/GridDataSource;
  | const #434 = Field      #23.#433;       //  org/apache/tapestry/corelib/components/Grid._source:Lorg/apache/tapestry/grid/GridDataSource;
  | const #435 = NameAndType        #132:#133;//  _$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #436 = Field      #23.#435;       //  org/apache/tapestry/corelib/components/Grid._$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #437 = NameAndType        #290:#258;//  isRendering:()Z
  | const #438 = InterfaceMethod    #289.#437;      //  org/apache/tapestry/ComponentResourcesCommon.isRendering:()Z
  | const #439 = NameAndType        #119:#83;//  _$source_cached:Z
  | const #440 = Field      #23.#439;       //  org/apache/tapestry/corelib/components/Grid._$source_cached:Z
  | const #441 = Asciz      org.apache.tapestry.corelib.components.Grid.setupRender();
  | const #442 = String     #441;   //  org.apache.tapestry.corelib.components.Grid.setupRender()
  | const #443 = Asciz      org/apache/tapestry/runtime/Event;
  | const #444 = class      #443;   //  org/apache/tapestry/runtime/Event
  | const #445 = Asciz      setSource;
  | const #446 = Asciz      (Lorg/apache/tapestry/runtime/Component;Ljava/lang/String;)V;
  | const #447 = NameAndType        #445:#446;//  setSource:(Lorg/apache/tapestry/runtime/Component;Ljava/lang/String;)V
  | const #448 = InterfaceMethod    #444.#447;      //  org/apache/tapestry/runtime/Event.setSource:(Lorg/apache/tapestry/runtime/Component;Ljava/lang/String;)V
  | const #449 = NameAndType        #45:#46;//  setupRender:()Ljava/lang/Object;
  | const #450 = Method     #23.#449;       //  org/apache/tapestry/corelib/components/Grid.setupRender:()Ljava/lang/Object;
  | const #451 = Asciz      storeResult;
  | const #452 = Asciz      (Ljava/lang/Object;)Z;
  | const #453 = NameAndType        #451:#452;//  storeResult:(Ljava/lang/Object;)Z
  | const #454 = InterfaceMethod    #444.#453;      //  org/apache/tapestry/runtime/Event.storeResult:(Ljava/lang/Object;)Z
  | const #455 = Asciz      org.apache.tapestry.corelib.components.Grid.beginRender();
  | const #456 = String     #455;   //  org.apache.tapestry.corelib.components.Grid.beginRender()
  | const #457 = NameAndType        #445:#446;//  setSource:(Lorg/apache/tapestry/runtime/Component;Ljava/lang/String;)V
  | const #458 = InterfaceMethod    #444.#457;      //  org/apache/tapestry/runtime/Event.setSource:(Lorg/apache/tapestry/runtime/Component;Ljava/lang/String;)V
  | const #459 = NameAndType        #61:#46;//  beginRender:()Ljava/lang/Object;
  | const #460 = Method     #23.#459;       //  org/apache/tapestry/corelib/components/Grid.beginRender:()Ljava/lang/Object;
  | const #461 = NameAndType        #451:#452;//  storeResult:(Ljava/lang/Object;)Z
  | const #462 = InterfaceMethod    #444.#461;      //  org/apache/tapestry/runtime/Event.storeResult:(Ljava/lang/Object;)Z
  | const #463 = Asciz      initializer;
  | const #464 = Asciz      (Lorg/apache/tapestry/internal/InternalComponentResources;Lorg/apache/tapestry/services/GridDataModelSource;Lorg/apache/tapestry/services/BindingSource;)V;
  | const #465 = NameAndType        #11:#12;//  "<init>":()V
  | const #466 = Method     #14.#465;       //  java/lang/Object."<init>":()V
  | const #467 = NameAndType        #132:#133;//  _$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #468 = Field      #23.#467;       //  org/apache/tapestry/corelib/components/Grid._$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  | const #469 = NameAndType        #34:#35;//  _modelSource:Lorg/apache/tapestry/services/GridDataModelSource;
  | const #470 = Field      #23.#469;       //  org/apache/tapestry/corelib/components/Grid._modelSource:Lorg/apache/tapestry/services/GridDataModelSource;
  | const #471 = NameAndType        #149:#150;//  _$bindingSource:Lorg/apache/tapestry/services/BindingSource;
  | const #472 = Field      #23.#471;       //  org/apache/tapestry/corelib/components/Grid._$bindingSource:Lorg/apache/tapestry/services/BindingSource;
  | const #473 = NameAndType        #463:#12;//  initializer:()V
  | const #474 = Method     #23.#473;       //  org/apache/tapestry/corelib/components/Grid.initializer:()V
  | const #475 = Asciz      Lorg/apache/tapestry/annotations/Parameter;;
  | const #476 = Asciz      required;
  | const #477 = int        1;
  | const #478 = Asciz      RuntimeVisibleAnnotations;
  | const #479 = Asciz      value;
  | const #480 = Asciz      Lorg/apache/tapestry/annotations/Inject;;
  | const #481 = Asciz      infrastructure:GridDataModelSource;
  | const #482 = Asciz      SourceFile;
  | const #483 = Asciz      Grid.java;
  | const #484 = Asciz      InnerClasses;
  | const #485 = Asciz      Lorg/apache/tapestry/annotations/ComponentClass;;
  | const #486 = Asciz      Lorg/apache/tapestry/annotations/SupportsInformalParameters;;
  | 
  | {
  | private org.apache.tapestry.grid.GridDataSource _source;
  |   RuntimeVisibleAnnotations: length = 0xB
  |    00 01 01 FFFFFFDB 00 01 01 FFFFFFDC 5A 01 FFFFFFDD 
  | 
  | 
  | private org.apache.tapestry.grid.GridDataModel _model;
  |   RuntimeVisibleAnnotations: length = 0x6
  |    00 01 01 FFFFFFDB 00 00 
  | 
  | 
  | private org.apache.tapestry.Block _empty;
  |   RuntimeVisibleAnnotations: length = 0xB
  |    00 01 01 FFFFFFDB 00 01 01 FFFFFFDF 73 00 FFFFFF9D 
  | 
  | 
  | private org.apache.tapestry.ComponentResources _resources;
  |   RuntimeVisibleAnnotations: length = 0x6
  |    00 01 01 FFFFFFE0 00 00 
  | 
  | 
  | private org.apache.tapestry.services.GridDataModelSource _modelSource;
  |   RuntimeVisibleAnnotations: length = 0xB
  |    00 01 01 FFFFFFE0 00 01 01 FFFFFFDF 73 01 FFFFFFE1 
  | 
  | 
  | protected final org.apache.tapestry.internal.InternalComponentResources _$resources;
  | 
  | 
  | private boolean _$empty_cached;
  | 
  | 
  | private org.apache.tapestry.Block _$empty_default;
  | 
  | 
  | private boolean _$empty_invariant;
  | 
  | 
  | protected final org.apache.tapestry.services.BindingSource _$bindingSource;
  | 
  | 
  | private boolean _$model_cached;
  | 
  | 
  | private org.apache.tapestry.grid.GridDataModel _$model_default;
  | 
  | 
  | private boolean _$model_invariant;
  | 
  | 
  | private boolean _$source_cached;
  | 
  | 
  | private org.apache.tapestry.grid.GridDataSource _$source_default;
  | 
  | 
  | private boolean _$source_invariant;
  | 
  | 
  | public org.apache.tapestry.corelib.components.Grid();
  |   Code:
  |    Stack=1, Locals=1, Args_size=1
  |    0:   aload_0
  |    1:   invokespecial   #16; //Method java/lang/Object."<init>":()V
  |    4:   return
  |   LineNumberTable: 
  |    line 23: 0
  |   LocalVariableTable: 
  |    Start  Length  Slot  Name   Signature
  |    0      5      0    this       Lorg/apache/tapestry/corelib/components/Grid;
  | 
  | org.apache.tapestry.Binding defaultModel();
  |   Code:
  |    Stack=5, Locals=3, Args_size=1
  |    0:   aload_0
  |    1:   getfield        #27; //Field org/apache/tapestry/corelib/components/Grid._resources:Lorg/apache/tapestry/ComponentResources;
  |    4:   invokeinterface #33,  1; //InterfaceMethod org/apache/tapestry/ComponentResources.getContainerResources:()Lorg/apache/tapestry/ComponentResources;
  |    9:   astore_1
  |    10:  aload_0
  |    11:  getfield        #37; //Field org/apache/tapestry/corelib/components/Grid._modelSource:Lorg/apache/tapestry/services/GridDataModelSource;
  |    14:  astore_2
  |    15:  new     #39; //class org/apache/tapestry/corelib/components/Grid$1
  |    18:  dup
  |    19:  aload_0
  |    20:  aload_2
  |    21:  aload_1
  |    22:  invokespecial   #42; //Method org/apache/tapestry/corelib/components/Grid$1."<init>":(Lorg/apache/tapestry/corelib/components/Grid;Lorg/apache/tapestry/services/GridDataModelSource;Lorg/apache/tapestry/ComponentResources;)V
  |    25:  areturn
  |   LineNumberTable: 
  |    line 42: 0
  |    line 44: 10
  |    line 46: 15
  |   LocalVariableTable: 
  |    Start  Length  Slot  Name   Signature
  |    0      26      0    this       Lorg/apache/tapestry/corelib/components/Grid;
  |    10      16      1    containerResource       Lorg/apache/tapestry/ComponentResources;
  |    15      11      2    modelSource       Lorg/apache/tapestry/services/GridDataModelSource;
  | 
  | java.lang.Object setupRender();
  |   Code:
  |    Stack=1, Locals=3, Args_size=1
  |    0:   aload_0
  |    1:   astore_1
  |    2:   aconst_null
  |    3:   astore_2
  |    4:   aload_0
  |    5:   invokespecial   #50; //Method org/apache/tapestry/corelib/components/Grid._$read_parameter_source:()Lorg/apache/tapestry/grid/GridDataSource;
  |    8:   astore_2
  |    9:   aload_2
  |    10:  invokeinterface #56,  1; //InterfaceMethod org/apache/tapestry/grid/GridDataSource.getAvailableRows:()I
  |    15:  ifne    29
  |    18:  aload_0
  |    19:  astore_1
  |    20:  aconst_null
  |    21:  astore_2
  |    22:  aload_0
  |    23:  invokespecial   #60; //Method org/apache/tapestry/corelib/components/Grid._$read_parameter_empty:()Lorg/apache/tapestry/Block;
  |    26:  astore_2
  |    27:  aload_2
  |    28:  areturn
  |    29:  aconst_null
  |    30:  areturn
  |   LineNumberTable: 
  |    line 72: 0
  |    line 73: 18
  |    line 75: 29
  |   LocalVariableTable: 
  |    Start  Length  Slot  Name   Signature
  |    0      31      0    this       Lorg/apache/tapestry/corelib/components/Grid;
  | 
  | java.lang.Object beginRender();
  |   Code:
  |    Stack=1, Locals=3, Args_size=1
  |    0:   aload_0
  |    1:   astore_1
  |    2:   aconst_null
  |    3:   astore_2
  |    4:   aload_0
  |    5:   invokespecial   #63; //Method org/apache/tapestry/corelib/components/Grid._$read_parameter_source:()Lorg/apache/tapestry/grid/GridDataSource;
  |    8:   astore_2
  |    9:   aload_2
  |    10:  invokeinterface #65,  1; //InterfaceMethod org/apache/tapestry/grid/GridDataSource.getAvailableRows:()I
  |    15:  ifne    23
  |    18:  iconst_0
  |    19:  invokestatic    #71; //Method java/lang/Boolean.valueOf:(Z)Ljava/lang/Boolean;
  |    22:  areturn
  |    23:  aconst_null
  |    24:  areturn
  |   LineNumberTable: 
  |    line 83: 0
  |    line 84: 18
  |    line 86: 23
  |   LocalVariableTable: 
  |    Start  Length  Slot  Name   Signature
  |    0      25      0    this       Lorg/apache/tapestry/corelib/components/Grid;
  | 
  | public org.apache.tapestry.grid.GridDataModel getDataModel();
  |   Code:
  |    Stack=1, Locals=3, Args_size=1
  |    0:   aload_0
  |    1:   astore_1
  |    2:   aconst_null
  |    3:   astore_2
  |    4:   aload_0
  |    5:   invokespecial   #76; //Method org/apache/tapestry/corelib/components/Grid._$read_parameter_model:()Lorg/apache/tapestry/grid/GridDataModel;
  |    8:   astore_2
  |    9:   aload_2
  |    10:  areturn
  |   LineNumberTable: 
  |    line 91: 0
  |   LocalVariableTable: 
  |    Start  Length  Slot  Name   Signature
  |    0      11      0    this       Lorg/apache/tapestry/corelib/components/Grid;
  | 
  | static org.apache.tapestry.grid.GridDataSource access$0(org.apache.tapestry.corelib.components.Grid);
  |   Code:
  |    Stack=1, Locals=3, Args_size=1
  |    0:   aload_0
  |    1:   astore_1
  |    2:   aconst_null
  |    3:   astore_2
  |    4:   invokespecial   #80; //Method org/apache/tapestry/corelib/components/Grid._$read_parameter_source:()Lorg/apache/tapestry/grid/GridDataSource;
  |    7:   astore_2
  |    8:   aload_2
  |    9:   areturn
  |   LineNumberTable: 
  |    line 26: 0
  | 
  | public void postRenderCleanup();
  |   Code:
  |    Stack=6, Locals=7, Args_size=1
  |    0:   aconst_null
  |    1:   astore_2
  |    2:   jsr     18
  |    5:   aconst_null
  |    6:   astore  4
  |    8:   jsr     41
  |    11:  aconst_null
  |    12:  astore  6
  |    14:  jsr     64
  |    17:  return
  |    18:  astore_1
  |    19:  aload_0
  |    20:  getfield        #85; //Field org/apache/tapestry/corelib/components/Grid._$empty_invariant:Z
  |    23:  ifne    39
  |    26:  aload_0
  |    27:  aload_0
  |    28:  getfield        #89; //Field org/apache/tapestry/corelib/components/Grid._$empty_default:Lorg/apache/tapestry/Block;
  |    31:  putfield        #92; //Field org/apache/tapestry/corelib/components/Grid._empty:Lorg/apache/tapestry/Block;
  |    34:  aload_0
  |    35:  iconst_0
  |    36:  putfield        #95; //Field org/apache/tapestry/corelib/components/Grid._$empty_cached:Z
  |    39:  ret     1
  |    41:  astore_3
  |    42:  aload_0
  |    43:  getfield        #98; //Field org/apache/tapestry/corelib/components/Grid._$model_invariant:Z
  |    46:  ifne    62
  |    49:  aload_0
  |    50:  aload_0
  |    51:  getfield        #102; //Field org/apache/tapestry/corelib/components/Grid._$model_default:Lorg/apache/tapestry/grid/GridDataModel;
  |    54:  putfield        #105; //Field org/apache/tapestry/corelib/components/Grid._model:Lorg/apache/tapestry/grid/GridDataModel;
  |    57:  aload_0
  |    58:  iconst_0
  |    59:  putfield        #108; //Field org/apache/tapestry/corelib/components/Grid._$model_cached:Z
  |    62:  ret     3
  |    64:  astore  5
  |    66:  aload_0
  |    67:  getfield        #111; //Field org/apache/tapestry/corelib/components/Grid._$source_invariant:Z
  |    70:  ifne    86
  |    73:  aload_0
  |    74:  aload_0
  |    75:  getfield        #115; //Field org/apache/tapestry/corelib/components/Grid._$source_default:Lorg/apache/tapestry/grid/GridDataSource;
  |    78:  putfield        #118; //Field org/apache/tapestry/corelib/components/Grid._source:Lorg/apache/tapestry/grid/GridDataSource;
  |    81:  aload_0
  |    82:  iconst_0
  |    83:  putfield        #121; //Field org/apache/tapestry/corelib/components/Grid._$source_cached:Z
  |    86:  ret     5
  | 
  | public void beforeRenderTemplate(org.apache.tapestry.MarkupWriter, org.apache.tapestry.runtime.Event);
  |   Code:
  |    Stack=0, Locals=3, Args_size=3
  |    0:   return
  | 
  | public void afterRenderTemplate(org.apache.tapestry.MarkupWriter, org.apache.tapestry.runtime.Event);
  |   Code:
  |    Stack=0, Locals=3, Args_size=3
  |    0:   return
  | 
  | public void beforeRenderBody(org.apache.tapestry.MarkupWriter, org.apache.tapestry.runtime.Event);
  |   Code:
  |    Stack=0, Locals=3, Args_size=3
  |    0:   return
  | 
  | public void afterRenderBody(org.apache.tapestry.MarkupWriter, org.apache.tapestry.runtime.Event);
  |   Code:
  |    Stack=0, Locals=3, Args_size=3
  |    0:   return
  | 
  | public void afterRender(org.apache.tapestry.MarkupWriter, org.apache.tapestry.runtime.Event);
  |   Code:
  |    Stack=0, Locals=3, Args_size=3
  |    0:   return
  | 
  | public void cleanupRender(org.apache.tapestry.MarkupWriter, org.apache.tapestry.runtime.Event);
  |   Code:
  |    Stack=0, Locals=3, Args_size=3
  |    0:   return
  | 
  | public boolean handleComponentEvent(org.apache.tapestry.runtime.ComponentEvent);
  |   Code:
  |    Stack=1, Locals=2, Args_size=2
  |    0:   iconst_0
  |    1:   ireturn
  | 
  | public void containingPageDidLoad();
  |   Code:
  |    Stack=14, Locals=9, Args_size=1
  |    0:   aconst_null
  |    1:   astore_2
  |    2:   jsr     24
  |    5:   aconst_null
  |    6:   astore  4
  |    8:   jsr     35
  |    11:  aconst_null
  |    12:  astore  6
  |    14:  jsr     103
  |    17:  aconst_null
  |    18:  astore  8
  |    20:  jsr     160
  |    23:  return
  |    24:  astore_1
  |    25:  aload_0
  |    26:  aload_0
  |    27:  getfield        #135; //Field org/apache/tapestry/corelib/components/Grid._$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  |    30:  putfield        #137; //Field org/apache/tapestry/corelib/components/Grid._resources:Lorg/apache/tapestry/ComponentResources;
  |    33:  ret     1
  |    35:  astore_3
  |    36:  aload_0
  |    37:  getfield        #139; //Field org/apache/tapestry/corelib/components/Grid._$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  |    40:  ldc     #141; //String empty
  |    42:  invokeinterface #145,  2; //InterfaceMethod org/apache/tapestry/ComponentResources.isBound:(Ljava/lang/String;)Z
  |    47:  ifne    78
  |    50:  aload_0
  |    51:  getfield        #147; //Field org/apache/tapestry/corelib/components/Grid._$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  |    54:  ldc     #148; //String empty
  |    56:  aload_0
  |    57:  getfield        #152; //Field org/apache/tapestry/corelib/components/Grid._$bindingSource:Lorg/apache/tapestry/services/BindingSource;
  |    60:  ldc     #154; //String default empty
  |    62:  aload_0
  |    63:  getfield        #156; //Field org/apache/tapestry/corelib/components/Grid._$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  |    66:  ldc     #158; //String block:empty
  |    68:  invokeinterface #164,  4; //InterfaceMethod org/apache/tapestry/services/BindingSource.newBinding:(Ljava/lang/String;Lorg/apache/tapestry/ComponentResources;Ljava/lang/String;)Lorg/apache/tapestry/Binding;
  |    73:  invokeinterface #170,  3; //InterfaceMethod org/apache/tapestry/internal/InternalComponentResourcesCommon.bindParameter:(Ljava/lang/String;Lorg/apache/tapestry/Binding;)V
  |    78:  aload_0
  |    79:  aload_0
  |    80:  getfield        #172; //Field org/apache/tapestry/corelib/components/Grid._$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  |    83:  ldc     #173; //String empty
  |    85:  invokeinterface #178,  2; //InterfaceMethod org/apache/tapestry/internal/InternalComponentResources.isInvariant:(Ljava/lang/String;)Z
  |    90:  putfield        #180; //Field org/apache/tapestry/corelib/components/Grid._$empty_invariant:Z
  |    93:  aload_0
  |    94:  aload_0
  |    95:  getfield        #182; //Field org/apache/tapestry/corelib/components/Grid._empty:Lorg/apache/tapestry/Block;
  |    98:  putfield        #184; //Field org/apache/tapestry/corelib/components/Grid._$empty_default:Lorg/apache/tapestry/Block;
  |    101: ret     3
  |    103: astore  5
  |    105: aload_0
  |    106: getfield        #186; //Field org/apache/tapestry/corelib/components/Grid._$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  |    109: ldc_w   #188; //String model
  |    112: invokeinterface #190,  2; //InterfaceMethod org/apache/tapestry/ComponentResources.isBound:(Ljava/lang/String;)Z
  |    117: ifne    134
  |    120: ldc_w   #191; //String model
  |    123: aload_0
  |    124: getfield        #193; //Field org/apache/tapestry/corelib/components/Grid._$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  |    127: aload_0
  |    128: invokevirtual   #195; //Method org/apache/tapestry/corelib/components/Grid.defaultModel:()Lorg/apache/tapestry/Binding;
  |    131: invokestatic    #201; //Method org/apache/tapestry/internal/services/ParameterWorker.bind:(Ljava/lang/String;Lorg/apache/tapestry/internal/InternalComponentResources;Ljava/lang/Object;)V
  |    134: aload_0
  |    135: aload_0
  |    136: getfield        #203; //Field org/apache/tapestry/corelib/components/Grid._$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  |    139: ldc_w   #204; //String model
  |    142: invokeinterface #206,  2; //InterfaceMethod org/apache/tapestry/internal/InternalComponentResources.isInvariant:(Ljava/lang/String;)Z
  |    147: putfield        #208; //Field org/apache/tapestry/corelib/components/Grid._$model_invariant:Z
  |    150: aload_0
  |    151: aload_0
  |    152: getfield        #210; //Field org/apache/tapestry/corelib/components/Grid._model:Lorg/apache/tapestry/grid/GridDataModel;
  |    155: putfield        #212; //Field org/apache/tapestry/corelib/components/Grid._$model_default:Lorg/apache/tapestry/grid/GridDataModel;
  |    158: ret     5
  |    160: astore  7
  |    162: aload_0
  |    163: aload_0
  |    164: getfield        #214; //Field org/apache/tapestry/corelib/components/Grid._$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  |    167: ldc_w   #216; //String source
  |    170: invokeinterface #218,  2; //InterfaceMethod org/apache/tapestry/internal/InternalComponentResources.isInvariant:(Ljava/lang/String;)Z
  |    175: putfield        #220; //Field org/apache/tapestry/corelib/components/Grid._$source_invariant:Z
  |    178: aload_0
  |    179: aload_0
  |    180: getfield        #222; //Field org/apache/tapestry/corelib/components/Grid._source:Lorg/apache/tapestry/grid/GridDataSource;
  |    183: putfield        #224; //Field org/apache/tapestry/corelib/components/Grid._$source_default:Lorg/apache/tapestry/grid/GridDataSource;
  |    186: ret     7
  | 
  | public void containingPageDidDetach();
  |   Code:
  |    Stack=0, Locals=1, Args_size=1
  |    0:   return
  | 
  | public void containingPageDidAttach();
  |   Code:
  |    Stack=0, Locals=1, Args_size=1
  |    0:   return
  | 
  | public final org.apache.tapestry.ComponentResources getComponentResources();
  |   Code:
  |    Stack=1, Locals=1, Args_size=1
  |    0:   aload_0
  |    1:   getfield        #229; //Field org/apache/tapestry/corelib/components/Grid._$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  |    4:   areturn
  | 
  | private void _$write_modelSource(org.apache.tapestry.services.GridDataModelSource);
  |   Code:
  |    Stack=3, Locals=2, Args_size=2
  |    0:   new     #233; //class java/lang/RuntimeException
  |    3:   dup
  |    4:   ldc     #235; //String Field org.apache.tapestry.corelib.components.Grid._modelSource is read-only.
  |    6:   invokespecial   #238; //Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V
  |    9:   athrow
  | 
  | private void _$write_resources(org.apache.tapestry.ComponentResources);
  |   Code:
  |    Stack=3, Locals=2, Args_size=2
  |    0:   new     #233; //class java/lang/RuntimeException
  |    3:   dup
  |    4:   ldc     #242; //String Field org.apache.tapestry.corelib.components.Grid._resources is read-only.
  |    6:   invokespecial   #244; //Method java/lang/RuntimeException."<init>":(Ljava/lang/String;)V
  |    9:   athrow
  | 
  | public void render(org.apache.tapestry.MarkupWriter, org.apache.tapestry.runtime.RenderQueue);
  |   Code:
  |    Stack=2, Locals=3, Args_size=3
  |    0:   aload_0
  |    1:   getfield        #248; //Field org/apache/tapestry/corelib/components/Grid._$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  |    4:   aload_2
  |    5:   invokeinterface #252,  2; //InterfaceMethod org/apache/tapestry/internal/InternalComponentResourcesCommon.queueRender:(Lorg/apache/tapestry/runtime/RenderQueue;)V
  |    10:  return
  | 
  | private org.apache.tapestry.Block _$read_parameter_empty();
  |   Code:
  |    Stack=3, Locals=2, Args_size=1
  |    0:   aload_0
  |    1:   getfield        #254; //Field org/apache/tapestry/corelib/components/Grid._$empty_cached:Z
  |    4:   ifne    19
  |    7:   aload_0
  |    8:   getfield        #256; //Field org/apache/tapestry/corelib/components/Grid._$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  |    11:  invokeinterface #260,  1; //InterfaceMethod org/apache/tapestry/internal/InternalComponentResourcesCommon.isLoaded:()Z
  |    16:  ifne    22
  |    19:  goto    37
  |    22:  aload_0
  |    23:  getfield        #262; //Field org/apache/tapestry/corelib/components/Grid._$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  |    26:  ldc_w   #263; //String empty
  |    29:  invokeinterface #265,  2; //InterfaceMethod org/apache/tapestry/ComponentResources.isBound:(Ljava/lang/String;)Z
  |    34:  ifne    42
  |    37:  aload_0
  |    38:  getfield        #267; //Field org/apache/tapestry/corelib/components/Grid._empty:Lorg/apache/tapestry/Block;
  |    41:  areturn
  |    42:  aload_0
  |    43:  getfield        #269; //Field org/apache/tapestry/corelib/components/Grid._$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  |    46:  ldc_w   #270; //String empty
  |    49:  ldc_w   #271; //String Lorg/apache/tapestry/Block;
  |    52:  invokestatic    #277; //Method javassist/runtime/Desc.getType:(Ljava/lang/String;)Ljava/lang/Class;
  |    55:  invokeinterface #281,  3; //InterfaceMethod org/apache/tapestry/internal/InternalComponentResources.readParameter:(Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/Object;
  |    60:  checkcast       #283; //class org/apache/tapestry/Block
  |    63:  checkcast       #283; //class org/apache/tapestry/Block
  |    66:  astore_1
  |    67:  aload_0
  |    68:  getfield        #285; //Field org/apache/tapestry/corelib/components/Grid._$empty_invariant:Z
  |    71:  ifne    86
  |    74:  aload_0
  |    75:  getfield        #287; //Field org/apache/tapestry/corelib/components/Grid._$resources:Lorg/apache/tapestry/internal/InternalComponentResources;
  |    78:  invokeinterface #292,  1; //InterfaceMethod org/apache/tapestry/ComponentResourcesCommon.isRendering:()Z
  |    83:  ifeq    96
  |    86:  aload_0
  |    87:  aload_1
  |    88:  putfield        #294; //Field org/apache/tapestry/corelib/components/Grid._empty:Lorg/apache/tapestry/Block;
  |    91:  aload_0
  |    92:  iconst_1
  |    93:  putfield        #296; //Field org/apache/tapestry/corelib/components/Grid._$empty_cached:Z
  |    96:  aload_1
  |    97:  areturn
  | 
  | private void _$update_parameter_empty(org.apache.tapestry

View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4013258#4013258

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4013258



More information about the jboss-user mailing list