Payara Platform Deployment Issues? Try Switching Off XML Validation

Jakarta EE

During deployment of Jakarta EE applications to the Payara Server, all the xml files (e.g. web.xml, persinstence.xml) are verified against its schema.

Payara Platform includes all standard Jakarta EE schema, so there is typically no reason to download external schema to check against xml files. However, if the application uses external schema, in very rare cases, there may be an error during deployment. In this blog, I describe a quick fix to avoid this. 

If the application uses external schema, they need to be downloaded. The parser is robust for cases when the schema is not available; for example if the file is not present on the server or the server doesn’t respond. Verification is simply skipped and deployment continues.

In very rare cases, the server responds, but provides an unexpected file. Some servers, in the case of abnormal errors (e.g. during DDOS attack), return an error page with an explanation of what’s wrong. This is often in form of XTHML, e.g. they are recognized as XML files, processed as schemas, verification immediately ends with error and the deployment is canceled:

java.io.IOException: org.xml.sax.SAXParseException publicId: http://www.oracle.com/webfolder/technetwork/jsc/xml/ns/persistence/persistence_3_0.xsd; lineNumber: 1; columnNumber: 57; Deployment descriptor file META-INF/persistence.xml in archive [classes]. s4s-elt-character: Non-whitespace characters are not allowed in schema elements other than 'xs:appinfo' and 'xs:documentation'. Saw 'Oracle Access Manager Operation Error'.

In this rare case, it is possible to switch off the validation of XML files during deployment. It can be easily done by asadmin command:

./asadmin set configs.config.server-config.admin-service.das-config.deploy-xml-validation=none

When the temporal problem is solved, the server can be returned to its original state, validating fully:

./asadmin set configs.config.server-config.admin-service.das-config.deploy-xml-validation=full

And that’s it – your deployment issue should be fixed!

For more information on getting Payara Server up and running, you might find our ‘Comprehensive Getting Started Guide’ useful:

For more information on improving performance by finding problems, try our new guide ‘The Complete Guide to Testing on the Jakarta EE Platform’:

Comments (2)

Post a comment

Your email address will not be published. Required fields are marked *

Payara needs the contact information you provide to us to contact you about our products and services. You may unsubscribe from these communications at any time. For information on how to unsubscribe, as well as our privacy practices and commitment to protecting your privacy, please review our Legal & Privacy Policy.

  1. Ana jim

    password to insert keystore doesn’t work with “changeit”

  2. Petr Aubrecht

    Hi Ana,
    Thank you for your question. The password management is described in the documentation:
    https://docs.payara.fish/enterprise/docs/Technical%20Documentation/Payara%20Server%20Documentation/Security%20Guide/Administering%20System%20Security.html

    If something doesn’t work, please open a question in https://forum.payara.fish/
    Describe, what you are doing and what is the exact output you are getting.
    Thanks
    Petr

Related Posts

Payara promotional graphic showing transition from Spring to Jakarta EE, including technology logos, a code icon and arrows leading from Spring to Jakarta EE. 6 minutes
Jakarta EE

From Spring Boot To Jakarta EE 11: How Payara Starter Eases The Transition

If you’ve been living in the Spring ecosystem, you’re used to fast project setup. Spring Initializr gives you a […]

Graphic promoting the Jakarta EE Agentic AI Project by Payara Community. The design shows a laptop screen with a central icon of a person wearing headphones and using a laptop, surrounded by sparkles. The background features blue ocean-themed elements with coral and small fish. Logos for Jakarta EE and Payara Community appear at the top. 3 minutes
Community

Announcing the Jakarta Agentic AI Project

Exploring the Future of AI with the Jakarta EE Community At Payara, we’re passionate about pushing the boundaries of […]

Image promoting a Payara blog with an illustration of a document with checkmarks and a magnifying glass. 5 minutes
Jakarta EE

Why Jakarta EE Standards Make Legacy App Modernization Simple

Legacy Java applications built on enterprise standards don’t have to be roadblocks to modernization. When applications follow established specifications […]