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

Error that points to Guzzle when trying to delete an item or media in Omeka #33

Closed
CSSSchaffer opened this issue Dec 14, 2022 · 2 comments

Comments

@CSSSchaffer
Copy link

Describe the bug

We can create an item and upload media hosted by Amazon S3 services through the AnyCloud module in Omeka S. However, when trying to delete the item or media from the item, we receive an error pointing to Guzzle through AnyCloud. The first line states:

method_exists(): Argument #1 ($object_or_class) must be of type object|string, array given

and subsequent lines from the error point to /modules/AnyCloud/vendor/guzzlehttp.

We checked our settings to Amazon and they are correct. We recently updated Omeka S to version 3.2.0 and are using PHP8, and wondering if it has anything to do with this.

To Reproduce
Steps to reproduce the behavior:

The error is happening while logged into our admin view so I can't provide the link here. But here is the whole error copied and pasted from admin view:

TypeError
method_exists(): Argument #1 ($object_or_class) must be of type object|string, array given

Details:

TypeError: method_exists(): Argument #1 ($object_or_class) must be of type object|string, array given in /home/schaffer/digitalcollections.union.edu/modules/AnyCloud/vendor/guzzlehttp/promises/src/RejectedPromise.php:16
Stack trace:
#0 /home/schaffer/digitalcollections.union.edu/modules/AnyCloud/vendor/guzzlehttp/promises/src/RejectedPromise.php(16): method_exists(Array, 'then')
#1 /home/schaffer/digitalcollections.union.edu/modules/AnyCloud/vendor/aws/aws-sdk-php/src/Handler/GuzzleV6/GuzzleHandler.php(56): GuzzleHttp\Promise\RejectedPromise->__construct(Array)
#2 /home/schaffer/digitalcollections.union.edu/modules/AnyCloud/vendor/guzzlehttp/promises/src/Promise.php(203): Aws\Handler\GuzzleV6\GuzzleHandler::Aws\Handler\GuzzleV6{closure}(Object(GuzzleHttp\Exception\ClientException))
#3 /home/schaffer/digitalcollections.union.edu/modules/AnyCloud/vendor/guzzlehttp/promises/src/Promise.php(156): GuzzleHttp\Promise\Promise::callHandler(2, Object(GuzzleHttp\Exception\ClientException), Array)
#4 /home/schaffer/digitalcollections.union.edu/modules/AnyCloud/vendor/guzzlehttp/promises/src/TaskQueue.php(47): GuzzleHttp\Promise\Promise::GuzzleHttp\Promise{closure}()
#5 /home/schaffer/digitalcollections.union.edu/modules/AnyCloud/vendor/guzzlehttp/guzzle/src/Handler/CurlMultiHandler.php(118): GuzzleHttp\Promise\TaskQueue->run()
#6 /home/schaffer/digitalcollections.union.edu/modules/AnyCloud/vendor/guzzlehttp/guzzle/src/Handler/CurlMultiHandler.php(145): GuzzleHttp\Handler\CurlMultiHandler->tick()
#7 /home/schaffer/digitalcollections.union.edu/modules/AnyCloud/vendor/guzzlehttp/promises/src/Promise.php(246): GuzzleHttp\Handler\CurlMultiHandler->execute(true)
#8 /home/schaffer/digitalcollections.union.edu/modules/AnyCloud/vendor/guzzlehttp/promises/src/Promise.php(223): GuzzleHttp\Promise\Promise->invokeWaitFn()
#9 /home/schaffer/digitalcollections.union.edu/modules/AnyCloud/vendor/guzzlehttp/promises/src/Promise.php(267): GuzzleHttp\Promise\Promise->waitIfPending()
#10 /home/schaffer/digitalcollections.union.edu/modules/AnyCloud/vendor/guzzlehttp/promises/src/Promise.php(225): GuzzleHttp\Promise\Promise->invokeWaitList()
#11 /home/schaffer/digitalcollections.union.edu/modules/AnyCloud/vendor/guzzlehttp/promises/src/Promise.php(267): GuzzleHttp\Promise\Promise->waitIfPending()
#12 /home/schaffer/digitalcollections.union.edu/modules/AnyCloud/vendor/guzzlehttp/promises/src/Promise.php(225): GuzzleHttp\Promise\Promise->invokeWaitList()
#13 /home/schaffer/digitalcollections.union.edu/modules/AnyCloud/vendor/guzzlehttp/promises/src/Promise.php(62): GuzzleHttp\Promise\Promise->waitIfPending()
#14 /home/schaffer/digitalcollections.union.edu/modules/AnyCloud/vendor/aws/aws-sdk-php/src/AwsClientTrait.php(58): GuzzleHttp\Promise\Promise->wait()
#15 /home/schaffer/digitalcollections.union.edu/modules/AnyCloud/vendor/aws/aws-sdk-php/src/S3/S3ClientTrait.php(287): Aws\AwsClient->execute(Object(Aws\Command))
#16 /home/schaffer/digitalcollections.union.edu/modules/AnyCloud/vendor/aws/aws-sdk-php/src/S3/S3ClientTrait.php(272): Aws\S3\S3Client->checkExistenceWithCommand(Object(Aws\Command))
#17 /home/schaffer/digitalcollections.union.edu/modules/AnyCloud/vendor/league/flysystem-aws-s3-v3/src/AwsS3Adapter.php(235): Aws\S3\S3Client->doesObjectExist('omekatest-union...', 'original/ddd1e8...', Array)
#18 /home/schaffer/digitalcollections.union.edu/modules/AnyCloud/vendor/league/flysystem/src/Filesystem.php(57): League\Flysystem\AwsS3v3\AwsS3Adapter->has('original/ddd1e8...')
#19 /home/schaffer/digitalcollections.union.edu/modules/AnyCloud/vendor/league/flysystem/src/Filesystem.php(388): League\Flysystem\Filesystem->has('original/ddd1e8...')
#20 /home/schaffer/digitalcollections.union.edu/modules/AnyCloud/vendor/league/flysystem/src/Filesystem.php(235): League\Flysystem\Filesystem->assertPresent('original/ddd1e8...')
#21 /home/schaffer/digitalcollections.union.edu/modules/AnyCloud/src/File/Store/AnyCloud.php(56): League\Flysystem\Filesystem->delete('original/ddd1e8...')
#22 /home/schaffer/digitalcollections.union.edu/application/Module.php(288): AnyCloud\File\Store\AnyCloud->delete('original/ddd1e8...')
#23 /home/schaffer/digitalcollections.union.edu/vendor/laminas/laminas-eventmanager/src/EventManager.php(321): Omeka\Module->deleteMediaFiles(Object(Laminas\EventManager\Event))
#24 /home/schaffer/digitalcollections.union.edu/vendor/laminas/laminas-eventmanager/src/EventManager.php(170): Laminas\EventManager\EventManager->triggerListeners(Object(Laminas\EventManager\Event))
#25 /home/schaffer/digitalcollections.union.edu/application/src/Db/Event/Subscriber/Entity.php(116): Laminas\EventManager\EventManager->triggerEvent(Object(Laminas\EventManager\Event))
#26 /home/schaffer/digitalcollections.union.edu/application/src/Db/Event/Subscriber/Entity.php(57): Omeka\Db\Event\Subscriber\Entity->trigger('entity.remove.p...', Object(Doctrine\ORM\Event\LifecycleEventArgs))
#27 /home/schaffer/digitalcollections.union.edu/vendor/doctrine/event-manager/lib/Doctrine/Common/EventManager.php(41): Omeka\Db\Event\Subscriber\Entity->postRemove(Object(Doctrine\ORM\Event\LifecycleEventArgs))
#28 /home/schaffer/digitalcollections.union.edu/vendor/doctrine/orm/lib/Doctrine/ORM/Event/ListenersInvoker.php(113): Doctrine\Common\EventManager->dispatchEvent('postRemove', Object(Doctrine\ORM\Event\LifecycleEventArgs))
#29 /home/schaffer/digitalcollections.union.edu/vendor/doctrine/orm/lib/Doctrine/ORM/UnitOfWork.php(1252): Doctrine\ORM\Event\ListenersInvoker->invoke(Object(Doctrine\ORM\Mapping\ClassMetadata), 'postRemove', Object(Omeka\Entity\Media), Object(Doctrine\ORM\Event\LifecycleEventArgs), 4)
#30 /home/schaffer/digitalcollections.union.edu/vendor/doctrine/orm/lib/Doctrine/ORM/UnitOfWork.php(443): Doctrine\ORM\UnitOfWork->executeDeletions(Object(Doctrine\ORM\Mapping\ClassMetadata))
#31 /home/schaffer/digitalcollections.union.edu/vendor/doctrine/orm/lib/Doctrine/ORM/EntityManager.php(376): Doctrine\ORM\UnitOfWork->commit(NULL)
#32 /home/schaffer/digitalcollections.union.edu/application/src/Api/Adapter/AbstractEntityAdapter.php(510): Doctrine\ORM\EntityManager->flush()
#33 /home/schaffer/digitalcollections.union.edu/application/src/Api/Manager.php(239): Omeka\Api\Adapter\AbstractEntityAdapter->delete(Object(Omeka\Api\Request))
#34 /home/schaffer/digitalcollections.union.edu/application/src/Api/Manager.php(164): Omeka\Api\Manager->execute(Object(Omeka\Api\Request))
#35 /home/schaffer/digitalcollections.union.edu/application/src/Mvc/Controller/Plugin/Api.php(189): Omeka\Api\Manager->delete('items', '10881', Array, Array)
#36 /home/schaffer/digitalcollections.union.edu/application/src/Controller/Admin/ItemController.php(128): Omeka\Mvc\Controller\Plugin\Api->delete('items', '10881')
#37 /home/schaffer/digitalcollections.union.edu/vendor/laminas/laminas-mvc/src/Controller/AbstractActionController.php(77): Omeka\Controller\Admin\ItemController->deleteAction()
#38 /home/schaffer/digitalcollections.union.edu/vendor/laminas/laminas-eventmanager/src/EventManager.php(321): Laminas\Mvc\Controller\AbstractActionController->onDispatch(Object(Laminas\Mvc\MvcEvent))
#39 /home/schaffer/digitalcollections.union.edu/vendor/laminas/laminas-eventmanager/src/EventManager.php(178): Laminas\EventManager\EventManager->triggerListeners(Object(Laminas\Mvc\MvcEvent), Object(Closure))
#40 /home/schaffer/digitalcollections.union.edu/vendor/laminas/laminas-mvc/src/Controller/AbstractController.php(103): Laminas\EventManager\EventManager->triggerEventUntil(Object(Closure), Object(Laminas\Mvc\MvcEvent))
#41 /home/schaffer/digitalcollections.union.edu/vendor/laminas/laminas-mvc/src/DispatchListener.php(139): Laminas\Mvc\Controller\AbstractController->dispatch(Object(Laminas\Http\PhpEnvironment\Request), Object(Laminas\Http\PhpEnvironment\Response))
#42 /home/schaffer/digitalcollections.union.edu/vendor/laminas/laminas-eventmanager/src/EventManager.php(321): Laminas\Mvc\DispatchListener->onDispatch(Object(Laminas\Mvc\MvcEvent))
#43 /home/schaffer/digitalcollections.union.edu/vendor/laminas/laminas-eventmanager/src/EventManager.php(178): Laminas\EventManager\EventManager->triggerListeners(Object(Laminas\Mvc\MvcEvent), Object(Closure))
#44 /home/schaffer/digitalcollections.union.edu/vendor/laminas/laminas-mvc/src/Application.php(331): Laminas\EventManager\EventManager->triggerEventUntil(Object(Closure), Object(Laminas\Mvc\MvcEvent))
#45 /home/schaffer/digitalcollections.union.edu/index.php(21): Laminas\Mvc\Application->run()
#46 {main}

Expected behavior

The ability to delete an item.

Screenshots
If applicable, add screenshots to help explain your problem.

Additional context
Add any other context about the problem here.

@ivyrze
Copy link

ivyrze commented Jan 13, 2023

It's not just you – I'm getting this error as well when uploading!

@jaredhowland
Copy link
Contributor

@CSSSchaffer Did the latest update @jonfackrell pushed fix this issue too?

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

3 participants