6 Replies Latest reply on Apr 20, 2009 5:51 PM by Christian Bauer

    JBoss.com down and xsd problem

    Francis Limousy Newbie

      Hello,


      I have my seam application no longer working as maintenance is performed on the jboss.com website:


      org.dom4j.DocumentException: Error on line 1 of document http://jboss.com/index.html : The markup declarations contained or pointed to by the document type declaration must be well-formed. Nested exception: The markup declarations contained or pointed to by the document type declaration must be well-formed.


      I tracked the problem down to JBSEAM-3517 which has been closed by Pete Muir, indicating that these xsd are now bundled with Seam.


      https://jira.jboss.org/jira/browse/JBSEAM-3517


      So I tried to upgrade all my *.page.xml and changing the old declarations:

      xsi:schemaLocation="http://jboss.com/products/seam/pages"


      becomes


      xsi:schemaLocation="http://jboss.com/products/seam/pages-2.0.xsd"


      But the error remains. I'm not sure what exactly is the procedure to avoid any call to jboss.com. Most of the references found on google are pointing to the jboss.com forums ... which is down for maintenance :)

        • 1. Re: JBoss.com down and xsd problem
          Nicolas Bielza Newbie

          Make sure you're using Seam 2.0. If you upgraded to 2.1, then you'll need to change the names of the XSD again ! You can see the bundled .xsd files in the jboss-seam.jar archive.


          We have blocked outgoing http requests to JBoss.com in our production and preproduction environments to be sure that the schema is always loaded from the local Seam jar.


          Of course we still need to update the xsd names, but this prevents us from being down whenever JBoss is under maintenance (actually I think you need to restart your application during the maintenance to experience this problem).

          • 2. Re: JBoss.com down and xsd problem
            Norman Richards Expert

            The XSDs should not be loaded at runtime in either case in any recent Seam releases.  If it is, please let me know, and I'll look into it.

            • 3. Re: JBoss.com down and xsd problem
              Francis Limousy Newbie

              We haven't move to 2.1 yet, due to other problems. We're using Seam 2.0.3.


              One question btw, the xsd are bundled in seam.jar with a version-specific name (ie pages-2.0.xsd); why isn't the pages.xsd bundled too ?


              This would avoid changing all the pages.xml (and this means plenty as we have a rather big application now) when we upgrade the libraries ...


              Norman, I'm not sure how to check if the xsd are loaded in either case but I don't think that's what happen here.
              I had to restart one of my JBoss server (the development one) during the shutdown, and the pages became unavailable. I didn't tried the production instance; jboss.com went back online before I could checked that.


              I'll try to block access to jboss.com to ensure the xsd aren't loaded every time.


              Regards,

              • 4. Re: JBoss.com down and xsd problem
                Norman Richards Expert

                Again, Seam itself should not be making use of any XSDs, local or otherwise, at runtime.  The DTDs, on the other hand, were being used. 


                We like to keep the version numbers in the XSD files and URLs to avoid confusion over versioning.  I understand that it could be a bit of a pain to update version numbers, but major releases aren't that often and in the overall scheme of things it's one of the simpler migration steps. I think a simple search and replace should be able to handle the task with a total time investment of not more than a couple minutes.

                • 5. Re: JBoss.com down and xsd problem
                  Richard Leherpeur Newbie

                  I'm using Seam 2.1.1.GA and this error is still happening as the file http://jboss.com/products/seam/pageflow-2.1.xsd is currently not reachable on jboss.com and Seam seems to try to get it when restarting the server.



                  2009-04-20 10:17:12,546 DEBUG [org.jboss.seam.util.Resources] Loaded resource from context classloader: postingPageflow.jpdl.xml
                  2009-04-20 10:17:12,593 DEBUG [org.jbpm.configuration.JbpmContextInfo] creating jbpm context with service factories '[]'
                  2009-04-20 10:17:12,609 DEBUG [org.jbpm.JbpmContext] creating org.jbpm.JbpmContext@4dce26
                  2009-04-20 10:17:12,609 DEBUG [org.jboss.mx.loading.RepositoryClassLoader] setRepository, repository=org.jboss.mx.loading.HeirarchicalLoaderRepository3@dfa475, cl=org.jboss.mx.loading.HeirarchicalLoaderRepository3$CacheClassLoader@195e7e{ url=null ,addedOrder=0}
                  2009-04-20 10:17:12,671 DEBUG [org.jbpm.jpdl.xml.JpdlParser] resolving schema reference publicId(null) systemId(http://jboss.com/products/seam/pageflow-2.1.xsd)
                  2009-04-20 10:17:12,671 DEBUG [org.jbpm.jpdl.xml.JpdlParser] original systemId as input source
                  2009-04-20 10:17:13,468 DEBUG [org.jbpm.jpdl.xml.JpdlParser] resolving schema reference publicId(-//W3C//DTD HTML 4.01 Transitional//EN) systemId(http://www.w3.org/TR/html4/loose.dtd)
                  2009-04-20 10:17:13,468 DEBUG [org.jbpm.jpdl.xml.JpdlParser] original systemId as input source
                  2009-04-20 10:17:14,593 ERROR [org.jbpm.jpdl.xml.JpdlXmlReader] couldn't parse process definition
                  org.dom4j.DocumentException: Error on line 31 of document http://www.w3.org/TR/html4/loose.dtd : The declaration for the entity "HTML.Version" must end with '>'. Nested exception: The declaration for the entity "HTML.Version" must end with '>'.
                       at org.dom4j.io.SAXReader.read(SAXReader.java:482)
                       at org.jbpm.jpdl.xml.JpdlParser.parse(JpdlParser.java:58)
                       at org.jbpm.jpdl.xml.JpdlXmlReader.readProcessDefinition(JpdlXmlReader.java:141)
                  



                  My jpdl file is:



                  <?xml version="1.0"?>
                  <pageflow-definition
                       xmlns="http://jboss.com/products/seam/pageflow"
                       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                       xsi:schemaLocation="http://jboss.com/products/seam/pageflow http://jboss.com/products/seam/pageflow-2.1.xsd"
                       name="postingPageflow">
                  ...