Uploaded image for project: 'Sakai'
  1. Sakai
  2. SAK-38299

make hibernate mapping/configuration file use local DTD files

    XMLWordPrintable

    Details

    • Type: (Deprecated) Contributed Patch
    • Status: RESOLVED
    • Priority: Major
    • Resolution: Incorporated
    • Affects Version/s: 2.9.0, 10.0
    • Fix Version/s: 2.9.0, 10.1, 11.0
    • Component/s: Lessons
    • Labels:
      None
    • Previous Issue Keys:
      LSNBLDR-401, SAK-27529, LSNBLDR-402

      Description

      We recently experienced a problem restarting our production Sakai instance due to LSNBLDR-305. The LessonBuilder fix is good, but the potential still exists for future problems in almost all Sakai tools.

      In the hibernate mapping/configuration files, the DTD files are downloaded from external web site (http://hibernate.sourceforge.net"), as shown below:

      <!DOCTYPE hibernate-configuration PUBLIC
      "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
      "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"

      So that if the external web site in unavailable, Sakai instance won't start because of it fails to get those files.

      In fact, both hibernate-configuration*.dtd and hibernate-mapping*.dtd files are already included in the hibernate*.jar file, inside /shared folder of the app instance. We should change the above configuration path to look into CLASSPATH resources, instead of downloading them from external web site during the tomcat startup time.

      Attached is a patch showing how to do this in the LessonBuilder, for example.

        Gliffy Diagrams

          Zeplin

            Attachments

              Issue Links

                Activity

                  People

                  Assignee:
                  maintenanceteam Core Team
                  Reporter:
                  zqian Zhen Qian
                  Votes:
                  0 Vote for this issue
                  Watchers:
                  3 Start watching this issue

                    Dates

                    Created:
                    Updated:
                    Resolved:

                      Git Integration