1 Reply Latest reply on Jul 5, 2004 2:32 AM by aloubyansky

    Error for findAll( ) with EJBQLToSQL92Compiler on

    greiezer

      I think this is a bug in the EJBQLToSQL92Compiler:
      If there is a space character between the () in in the findAll() finder method, jboss3.2.5 will throw the following error at deployment time:

      java.lang.StringIndexOutOfBoundsException: String index out of range: 0
       at java.lang.String.charAt(String.java:444)
       at org.jboss.mx.loading.UnifiedClassLoader.loadClassLocally(UnifiedClassLoader.java:305)
      

      So if you use:
       * @ejb.finder
       * signature="java.util.Collection findAll( )"
       * query="SELECT OBJECT(o) FROM WebOrder AS o"
      

      You will get the error described above, but then you wont if you use:
       * @ejb.finder
       * signature="java.util.Collection findAll()"
       * query="SELECT OBJECT(o) FROM WebOrder AS o"
      


        • 1. Re: Error for findAll( ) with EJBQLToSQL92Compiler on
          aloubyansky

          It's a bug in XDoclet. Look at the generated descriptor.

          <query>
           <query-method>
           <method-name>findAll</method-name>
           <method-params>
           <method-param></method-param>
           </method-params>
           </query-method>
           <jboss-ql><![CDATA[select object(o) from A o]]></jboss-ql>
           </query>
          


          Anyway, it now in 3.2.6rc1 throws DeploymentException with appropriate message.