nvlad / yii2support

Yii2 Support for PhpStorm / IntelliJ IDEA
https://plugins.jetbrains.com/idea/plugin/9388-yii2-support
Other
295 stars 52 forks source link

Exception if use unclead/yii2-multiple-input #120

Closed sallfris closed 7 years ago

sallfris commented 7 years ago

Использование unclead/yii2-multiple-input во view вызывает Exception PhpStorm Код:

echo $form->field($model, 'options')->widget(MultipleInput::className(), [
                'max' => 10,
                'allowEmptyList' => true,
                'columns' => [
                    [
                        'name' => 'aphone',
                        'title' => '',
                        'enableError' => true,
                        'type' => Select2::classname(),
                        'options' => [
                            'data' => \app\modules\products\models\ProductsApi::getDishList(),
                            'options' => ['multiple' => true, 'name' => 'Dish[options][' . DishCard::TYPE_COMBO . '][value]'],
                            'pluginOptions' => [
                                //'tags' => true,
                                'tokenSeparators' => [',', ' '],
                                'maximumInputLength' => 10
                            ],
                        ]
                    ]
                ]
            ])->label('Блюда в составе');

Ошибка:

com.jetbrains.php.lang.psi.elements.impl.MethodReferenceImpl cannot be cast to com.jetbrains.php.lang.psi.elements.ClassReference
java.lang.ClassCastException: com.jetbrains.php.lang.psi.elements.impl.MethodReferenceImpl cannot be cast to com.jetbrains.php.lang.psi.elements.ClassReference
    at com.nvlad.yii2support.objectfactory.ObjectFactoryUtils.getPhpClassInGridColumns(ObjectFactoryUtils.java:135)
    at com.nvlad.yii2support.objectfactory.ObjectFactoryUtils.findClassByArrayCreation(ObjectFactoryUtils.java:163)
    at com.nvlad.yii2support.objectfactory.ObjectFactoryUtils.getPhpClassByHash(ObjectFactoryUtils.java:202)
    at com.nvlad.yii2support.objectfactory.ObjectFactoryUtils.findClassByArrayCreation(ObjectFactoryUtils.java:169)
    at com.nvlad.yii2support.objectfactory.ObjectFactoryUtils.getPhpClassByHash(ObjectFactoryUtils.java:202)
    at com.nvlad.yii2support.objectfactory.ObjectFactoryUtils.findClassByArrayCreation(ObjectFactoryUtils.java:169)
    at com.nvlad.yii2support.objectfactory.ObjectFactoryMissedFieldInspection$1.visitPhpArrayCreationExpression(ObjectFactoryMissedFieldInspection.java:31)
    at com.jetbrains.php.lang.psi.elements.impl.ArrayCreationExpressionImpl.accept(ArrayCreationExpressionImpl.java:24)
    at com.intellij.codeInspection.InspectionEngine.acceptElements(InspectionEngine.java:81)
    at com.intellij.codeInspection.InspectionEngine.createVisitorAndAcceptElements(InspectionEngine.java:69)
    at com.intellij.codeInsight.daemon.impl.LocalInspectionsPass.a(LocalInspectionsPass.java:282)
    at com.intellij.codeInsight.daemon.impl.LocalInspectionsPass.a(LocalInspectionsPass.java:250)
    at com.intellij.concurrency.ApplierCompleter.d(ApplierCompleter.java:133)
    at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1147)
    at com.intellij.concurrency.ApplierCompleter.b(ApplierCompleter.java:105)
    at com.intellij.openapi.progress.impl.CoreProgressManager.a(CoreProgressManager.java:556)
    at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:501)
    at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:66)
    at com.intellij.concurrency.ApplierCompleter.a(ApplierCompleter.java:116)
    at com.intellij.concurrency.ApplierCompleter.c(ApplierCompleter.java:96)
    at com.intellij.openapi.application.impl.ReadMostlyRWLock.executeByImpatientReader(ReadMostlyRWLock.java:142)
    at com.intellij.openapi.application.impl.ApplicationImpl.executeByImpatientReader(ApplicationImpl.java:242)
    at com.intellij.concurrency.ApplierCompleter.compute(ApplierCompleter.java:96)
    at java.util.concurrent.CountedCompleter.exec(CountedCompleter.java:731)
    at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289)
    at java.util.concurrent.ForkJoinPool$WorkQueue.pollAndExecCC(ForkJoinPool.java:1190)
    at java.util.concurrent.ForkJoinPool.helpComplete(ForkJoinPool.java:1879)
    at java.util.concurrent.ForkJoinPool.awaitJoin(ForkJoinPool.java:2045)
    at java.util.concurrent.ForkJoinTask.doJoin(ForkJoinTask.java:390)
    at java.util.concurrent.ForkJoinTask.join(ForkJoinTask.java:719)
    at java.util.concurrent.ForkJoinPool.invoke(ForkJoinPool.java:2616)
    at com.intellij.concurrency.JobLauncherImpl.invokeConcurrentlyUnderProgress(JobLauncherImpl.java:63)
    at com.intellij.concurrency.JobLauncher.invokeConcurrentlyUnderProgress(JobLauncher.java:57)
    at com.intellij.codeInsight.daemon.impl.LocalInspectionsPass.a(LocalInspectionsPass.java:253)
    at com.intellij.codeInsight.daemon.impl.LocalInspectionsPass.a(LocalInspectionsPass.java:223)
    at com.intellij.codeInsight.daemon.impl.LocalInspectionsPass.collectInformationWithProgress(LocalInspectionsPass.java:132)
    at com.intellij.codeInsight.daemon.impl.ProgressableTextEditorHighlightingPass.doCollectInformation(ProgressableTextEditorHighlightingPass.java:83)
    at com.intellij.codeHighlighting.TextEditorHighlightingPass.collectInformation(TextEditorHighlightingPass.java:70)
    at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.c(PassExecutorService.java:438)
    at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1153)
    at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.b(PassExecutorService.java:431)
    at com.intellij.openapi.progress.impl.CoreProgressManager.a(CoreProgressManager.java:556)
    at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:501)
    at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:66)
    at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.a(PassExecutorService.java:430)
    at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.d(PassExecutorService.java:406)
    at com.intellij.openapi.application.impl.ReadMostlyRWLock.executeByImpatientReader(ReadMostlyRWLock.java:142)
    at com.intellij.openapi.application.impl.ApplicationImpl.executeByImpatientReader(ApplicationImpl.java:242)
    at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.run(PassExecutorService.java:404)
    at com.intellij.concurrency.JobLauncherImpl$VoidForkJoinTask$1.exec(JobLauncherImpl.java:165)
    at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289)
    at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1056)
    at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1692)
    at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:157)
insperedia commented 7 years ago

This problem seems to be fixed before. Try to update plugin.