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

Native XML plugin fails to export submissions with language metadata under PHP 8 #8663

Closed
jonasraoni opened this issue Feb 20, 2023 · 3 comments
Assignees
Milestone

Comments

@jonasraoni
Copy link
Contributor

jonasraoni commented Feb 20, 2023

Describe the bug
When trying to export submissions that have at least one language defined in the metadata section, a fatal error is generated.

PHP Fatal error:  Uncaught TypeError: DOMElement::setAttribute(): Argument #2 ($value) must be of type string, array given in lib/pkp/plugins/importexport/native/filter/PKPPublicationNativeXmlFilter.inc.php:89
Stack trace:
#0 lib/pkp/plugins/importexport/native/filter/PKPPublicationNativeXmlFilter.inc.php(89): DOMElement->setAttribute()
#1 plugins/importexport/native/filter/PublicationNativeXmlFilter.inc.php(52): PKPPublicationNativeXmlFilter->createEntityNode()
#2 lib/pkp/plugins/importexport/native/filter/PKPPublicationNativeXmlFilter.inc.php(52): PublicationNativeXmlFilter->createEntityNode()
#3 lib/pkp/classes/filter/Filter.inc.php(449): PKPPublicationNativeXmlFilter->process()
#4 lib/pkp/plugins/importexport/native/filter/SubmissionNativeXmlFilter.inc.php(182): Filter->execute()
#5 lib/pkp/plugins/importexport/native/filter/SubmissionNativeXmlFilter.inc.php(103): SubmissionNativeXmlFilter->addPublications()
#6 plugins/importexport/native/filter/ArticleNativeXmlFilter.inc.php(49): SubmissionNativeXmlFilter->createSubmissionNode()
#7 lib/pkp/plugins/importexport/native/filter/SubmissionNativeXmlFilter.inc.php(65): ArticleNativeXmlFilter->createSubmissionNode()
#8 lib/pkp/classes/filter/Filter.inc.php(449): SubmissionNativeXmlFilter->process()
#9 plugins/importexport/native/filter/IssueNativeXmlFilter.inc.php(203): Filter->execute()
#10 plugins/importexport/native/filter/IssueNativeXmlFilter.inc.php(108): IssueNativeXmlFilter->addArticles()
#11 plugins/importexport/native/filter/IssueNativeXmlFilter.inc.php(57): IssueNativeXmlFilter->createIssueNode()
#12 lib/pkp/classes/filter/Filter.inc.php(449): IssueNativeXmlFilter->process()
#13 plugins/importexport/native/NativeImportExportPlugin.inc.php(289): Filter->execute()

Solution
Given the languages field is already covered by the "controlled vocabularies" part of the Native Plugin XML it might be dropped partially at stable-3_3_0.
Looks like I've already dropped this at the main branch.

To Reproduce
Steps to reproduce the behavior:

  1. Ensure the submission has at least one language at the metadata section
  2. Attempt to export it

What application are you using?
OJS/stable-3_3_0
PHP 8

PRs

@jonasraoni jonasraoni self-assigned this Feb 20, 2023
jonasraoni added a commit to jonasraoni/pkp-lib that referenced this issue Feb 20, 2023
jonasraoni added a commit to jonasraoni/pkp-lib that referenced this issue Feb 20, 2023
jonasraoni added a commit to jonasraoni/ojs that referenced this issue Feb 20, 2023
@jonasraoni
Copy link
Contributor Author

@asmecher Here are the PRs for this, or should I tag Dimitris to review the Native XML stuff? :)

jonasraoni added a commit to jonasraoni/ojs that referenced this issue Feb 20, 2023
jonasraoni added a commit to jonasraoni/ojs that referenced this issue Feb 20, 2023
jonasraoni added a commit to jonasraoni/ojs that referenced this issue Feb 20, 2023
@asmecher asmecher added this to the 3.3.0-15 milestone Feb 20, 2023
@asmecher
Copy link
Member

Thanks, @jonasraoni; @defstat, could you have a look?

jonasraoni added a commit that referenced this issue Feb 28, 2023
…p-language-attribute

#8663 Dropped language attribute from publications at the …
@jonasraoni
Copy link
Contributor Author

Merged PR at the issue description.

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