Uploaded image for project: 'Beehive'
  1. Beehive
  2. BEEHIVE-486

NPE in APT when Control references another Control via Control Bean

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • V1Beta
    • v1m1
    • Controls
    • None
    • Window NT, Java 1.5

    Description

      Scenario is Control->AnotherControl in the same webapp and package. If the reference is via the Control's public interface, it works fine. If the reference is via the generated Control Bean, then the build fails. It looks like it might be a problem with the order of generation. If I comment out the reference and run the build again, then everything is generated. If I then uncomment the reference, the build works fine and the application runs. At the point of failure, I can see in the generated tmp dir that the referenced Control Bean source file has not yet been created.

      StackTrace:

      [apt] Compiling 4 source files to C:\data\workspaces\aptOnTomcat\WEB-INF\classes
      [apt] C:\data\workspaces\aptOnTomcat\WEB-INF\src\controls\CustomControlImpl.java:15: cannot find symbol
      [apt] symbol : class AnotherCustomControlBean
      [apt] location: class controls.CustomControlImpl
      [apt] protected AnotherCustomControlBean customControlBean;
      [apt] ^
      [apt] Problem encountered during annotation processing;
      [apt] see stacktrace below for more information.
      [apt] java.lang.NullPointerException
      [apt] at org.apache.beehive.controls.runtime.generator.AptEventField.initTypeParameterBindings(AptEventField.java:61)
      [apt] at org.apache.beehive.controls.runtime.generator.AptEventField.getControlInterface(AptEventField.java:108)
      [apt] at org.apache.beehive.controls.runtime.generator.AptControlField.<init>(AptControlField.java:50)
      [apt] at org.apache.beehive.controls.runtime.generator.AptControlImplementation.initControls(AptControlImplementation.java
      :161)
      [apt] at org.apache.beehive.controls.runtime.generator.AptControlImplementation.<init>(AptControlImplementation.java:71)
      [apt] at org.apache.beehive.controls.runtime.generator.apt.ControlAnnotationProcessor.check(ControlAnnotationProcessor.jav
      a:80)

      Attachments

        1. aptOnTomcat.zip
          39 kB
          David Read

        Activity

          People

            kylem Kyle Marvin
            dread David Read
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: