Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Zend Framework 2 form annotation is ignored without an extra space

I spent hours banging my head against the wall with this. The labels for my form fields didn't appear no matter what.

Finally found that without the extra space where the cursor is (see image), all annotations get ignored. I'm using ZF 2.1.1 with Doctrine Common 2.2.3.

Am I doing something wrong? Or is this a bug in ZF or the Doctrine parser?

Eclipse screenshot

Works:

   class LoginForm
   {
   /** @Annotation\Type("text")
    * @Annotation\Options({"label":"Store ID:"})
    * @Annotation\Required(true)
    * @Annotation\Filter({"name":"StringTrim"})
    * @Annotation\Validator({"name":"StringLength","options":{"min":2,"max":64}})
    */
   public $sStoreId;
   }

Fails, unless there is a space after /**:

   class LoginForm
   {
   /**
    * @Annotation\Type("text")
    * @Annotation\Options({"label":"Store ID:"})
    * @Annotation\Required(true)
    * @Annotation\Filter({"name":"StringTrim"})
    * @Annotation\Validator({"name":"StringLength","options":{"min":2,"max":64}})
    */
   public $sStoreId;
   }
like image 282
Arthur Avatar asked Oct 22 '22 15:10

Arthur


1 Answers

There seems to be no solution so use one of the workarounds provided in the original question:

  • add a space after /** (easy to forget)
  • put the first annotation or any text comment in the same line as /**
like image 190
Arthur Avatar answered Oct 27 '22 11:10

Arthur