Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Komunikat Error: Class 'GusApi\Adapter\Soap\SoapAdapter' not found in /xxxxxx.pl/controllers/SiteController.php:2028 #104

Open
KrychuM opened this issue May 27, 2021 · 2 comments

Comments

@KrychuM
Copy link

KrychuM commented May 27, 2021

Witam,

Próbuje ściągnąć dane z GUS do witryny postawionej na YII2. Pojawia mi się następujący komunikat:
Error: Class 'GusApi\Adapter\Soap\SoapAdapter' not found in /xxxxxx.pl/controllers/SiteController.php:2028 Stack trace: #0 [internal function]: app\controllers\SiteController->actionLoadGus('773-105-74-03') #1 /xxxxxx.pl/vendor/yiisoft/yii2/base/InlineAction.php(57): call_user_func_array(Array, Array) #2 /xxxxxx.pl/vendor/yiisoft/yii2/base/Controller.php(181): yii\base\InlineAction->runWithParams(Array) #3 /xxxxxx.pl/vendor/yiisoft/yii2/base/Module.php(534): yii\base\Controller->runAction('load-gus', Array) #4 /xxxxxx.pl/vendor/yiisoft/yii2/web/Application.php(104): yii\base\Module->runAction('site/load-gus', Array) #5 /xxxxxx.pl/vendor/yiisoft/yii2/base/Application.php(392): yii\web\Application->handleRequest(Object(yii\web\Request)) #6 /xxxxxx.pl/web/index.php(23): yii\base\Application->run() #7 {main}

Oto funkcja której zadaniem jest zwrócenie wyniku.
` public function actionLoadGus( $nip )
{
$firmname = '';
$address = '';
$city = '';
$error = '';

  $gus = new GusApi(Yii::$app->params[ 'guskey' ],
    new \GusApi\Adapter\Soap\SoapAdapter(
      RegonConstantsInterface::BASE_WSDL_URL_TEST,
      RegonConstantsInterface::BASE_WSDL_ADDRESS_TEST
      ));
  //for development server use:
  //$gus = new GusApi('abcde12345abcde12345', 'dev');
  
  try {
    $nipToCheck = $nip; //change to valid nip value
    $gus->login();
  
    $gusReports = $gus->getByNip($nipToCheck);
  
    $error = $gus->dataStatus();

    foreach ($gusReports as $gusReport) {
      //you can change report type to other one
      // $reportType = ReportTypes::REPORT_PERSON;
      $firmname = $gusReport->getName();
      $address = $gusReport->getStreet(). ' ' . $gusReport->getPropertyNumber() . '/' . $gusReport->getApartmentNumber();
      $city = $gusReport->getCity();
    }
  } catch (InvalidUserKeyException $e) {
      $error = 'Bad user key';
  } catch (NotFoundException $e) {
      $error =  'No data found <br>';
      $error .= 'For more information read server message below: <br>';
      $error .= $gus->getResultSearchMessage();
  }
  
  return $this->renderContent( json::encode( array(
    'firmname'  => $firmname,
    'address'   => $address,
    'city'      => $city,
    'error'     => $error
  )));
}

`

Za wszelką pomoc w rozwiązaniu powyższego błędu z góry dziękuję.

Pozdrawiam

@IonBazan
Copy link
Contributor

Zapomniałeś prawdopodobnie przekopiować katalog vendor po instalacji gusapi/gusapi

@KrychuM
Copy link
Author

KrychuM commented May 27, 2021

W katalogu vendor mam juz gusapi/gusapi a na górze kontrollera mam poustawiane
use yii\helpers\Json; use GusApi\Exception\InvalidUserKeyException; use GusApi\Exception\NotFoundException; use GusApi\GusApi; use GusApi\ReportTypes; use GusApi\BulkReportTypes;
Nigdzie nie znalazłem informacji o konieczności kopiowania katalogu vendor. Teoretycznie wszystko powinno być ładowane za pomocą autoload composera. Możesz mi coś więcej napisać o tym kopiowaniu?

PS: Tak się zastanawiam czy to może mieć wpływ. W momencie instalacji gusapi composer mi wywalił komunikat
plugin was skipped because it requires a Plugin API version ("^1.0") that does not match your Composer installation ("2.0.0"). You may need to run composer update with the "--no-plugins" option
Ale zrobiłem to czego ode mnie żądał i dalej już poszło bez zastezeżeń. Czy to może mieć wpływ na obecny błąd?

Pozdrawiam

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants