Uploaded image for project: 'Apache Freemarker'
  1. Apache Freemarker
  2. FREEMARKER-67

Doesn't support org.bson.Document's correct order of keys.

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Minor
    • Resolution: Resolved
    • 2.3.23, 2.3.24-incubating, 2.3.25-incubating, 2.3.26-incubating
    • engine
    • Windows7, jdk1.8.0_131 64bit, Tomcat 8.0.45, SpringMVC 4.3.10.RELEASE, mongo-java-driver 3.4.2

    Description

      In mongodb's Java Driver 3.x, org.bson.Document is a representation of a bson document as a Map. Although org.bson.Document is not a subclass of LinkedHashMap, it really DOES maintain a meaningful order for its keys.

      It works good if I use LinkedHashMap to load data.

      LinkedHashMap<String,Object> accepted_sorts = new LinkedHashMap<>();
      accepted_sorts.put("-favorite_time", "Hello");
      accepted_sorts.put("-publish_time", "Welcome");
      model.put("accepted_sorts", accepted_sorts);
      
      <#list accepted_sorts?keys as value>
      	${value?string}
      </#list>
      <br>
      <#list accepted_sorts as key,value>
      	${key?string},${value?string}
      </#list>
      

      it rendered as:

      -favorite_time -publish_time 
      -favorite_time,Hello -publish_time,Welcome 
      

      But Freemarker doesn't support org.bson.Document's correct key order. You can see my test below:

      Document accepted_sorts = new Document();
      accepted_sorts.put("-favorite_time", "Hello");
      accepted_sorts.put("-publish_time", "Welcome");
      model.put("accepted_sorts", accepted_sorts);
      
      <#list accepted_sorts?keys as value>
      	${value?string}
      </#list>
      <br>
      <#list accepted_sorts as key,value>
      	${key?string},${value?string}
      </#list>
      

      it rendered as wrong order:

      -publish_time -favorite_time 
      -publish_time,Welcome -favorite_time,Hello 
      

      So, in the end, I wish freemarker can add support for org.bson.Document's correct order of keys.

      Attachments

        Activity

          People

            Unassigned Unassigned
            mikey Pu Zhongqiang
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: